Microsoft Commerce Server 2000

  • ファースト ステップ ガイド

  • Commerce Server ソリューション サイト

  • Microsoft 製品サポート サービス

  • Commerce Server サポート

  • Commerce Server 2000 ISV パートナー

  • マイクロソフト アクセシビリティ Web サイト

  • ホワイト ペーパー

  • ビジネス デスク チュートリアル

  • フィードバック
Copyright © 1996–2000 Microsoft Corporation.
All rights reserved.


ファースト ステップ ガイド

Microsoft Commerce Server 2000 には、サイト開発者、システム管理者、およびビジネス マネージャが Web 用の Commerce アプリケーションを開発、配置、および管理するためのツール群が用意されています。『ファースト ステップ ガイド』の各トピックは、Commerce Server の機能とツールに慣れ親しむことができるように構成されています。ビジネス ニーズに合わせて拡張したり、既存のシステムやデータと統合できる優れた電子商取引ソリューションを構築する上で、これらの機能やツールが必要になります。

ここでは、次のトピックについて説明します。

  • Commerce Server 2000 の紹介 Commerce Server の基本概念、および今回のリリースで追加された新しい機能について説明します。また、障害をお持ちの方のために用意されている Commerce Server のユーザー補助機能についても説明します。

  • Commerce Server のヘルプの使用 Commerce Server のマニュアルの構成、使い方、およびそれ以外の参照情報について説明します。

  • Commerce Server をインストールする Commerce Server のインストールに必要なハードウェアとソフトウェアについて説明します。また、Commerce Server ビジネス デスクをインストールおよびアンインストールする方法についても説明します。

  • Commerce Server のアーキテクチャ Commerce Server をほかの .NET 技術と組み合わせて使う方法について説明します。また、Commerce Server マネージャと Commerce Server ビジネス デスクのアーキテクチャについても説明します。

  • Commerce Server の概念 Commerce Server の主要な機能と、そのしくみについて説明します。

  • Commerce Server のセキュリティ Commerce Server の主要なセキュリティ機能について説明します。

  • Commerce Server のインストール計画 Commerce Server を正常に実装するために不可欠な、計画段階で検討すべき事項について説明します。また、Site Server 3.0 Commerce Edition のサイトを Commerce Server に移行するためのツールについても説明します。


Commerce Server 2000 の紹介

Microsoft Commerce Server 2000 は、電子商取引用の包括的な統合ソリューションで、Web 用の電子商取引アプリケーションの迅速な開発、導入、および管理にすぐに利用できる機能やツールを備えています。Commerce Server を使うと、拡張性の高い B to C サイトと B to B サイトのアプリケーションを構築できます。

Commerce Server によって、ビジネス マネージャは業務の分析と管理を簡単にできるようになります。高度な分析機能とリアルタイムのフィードバック ループを利用して、顧客や取引先のニーズの変化に対応できます。パーソナライズされたきわめて動的な電子商取引サイトを作成することによって、顧客に快適な利用環境を提供し、再利用を促進して、電子商取引市場における競争で優位に立つことができます。

ここでは、次のトピックについて説明します。

  • Commerce Server の機能の概要 Commerce Server の機能と、それらを使ってサイトを更新、管理する方法を説明します。

  • 開発ツール ソリューション サイト、Commerce Server Software Development Kit (SDK) など、サイト開発者向けのツールについて説明します。

  • 管理ツール Commerce Server マネージャ、Commerce Server サイト パッケージャなど、システム管理者向けのツールについて説明します。

  • サイト管理機能 Commerce Server ビジネス デスクと、それをほかの Commerce Server 機能と併用してサイトを管理する方法について説明します。

  • パイプライン機能 Commerce Server のパイプライン機能について説明します。

  • ユーザー補助機能 Commerce Server のユーザー補助機能について説明します。

  • Microsoft 製品サポート サービス Microsoft テクニカル サポート サービスについて説明し、テクニカル サポートにアクセスするための Web リンクと電話番号を示します。


Commerce Server の機能の概要

Commerce Server の各機能は連携して、商品取引、カタログ表示、顧客サービス、受注と受注確認を行います。

次の表は、Commerce Server の機能の概要を示します。

Commerce Server の機能 説明
商品カタログ システム
  • 販売する商品のカタログの作成と更新を行います。

  • ほかのデータ ソースから商品のカタログをインポートします。XML 形式または CSV 形式のカタログを Commerce Server にインポートします。

  • XML 形式でカタログをエクスポートします。

  • ユーザーが必要なものを簡単に見つけることができるように、次の統合検索機能を追加します。
    • カテゴリ検索 商品カテゴリ別に参照します。

    • フリーテキスト検索 名前またはプロパティの全体または一部によって商品を検索します。

    • プロパティによる検索 価格が 1000 円以下の商品など、プロパティ値によって商品を検索します。

    • 条件指定検索 商品が見つかるまで検索条件を設定し直します。
  • ユーザーのグループごとに特別価格のカスタム カタログを構築します。

  • 商品に割引を適用します。

  • Commerce Server のレポートを実行し、売れ行きの良い商品を特定します。

  • Microsoft BizTalk Server 2000 を使い、カタログ データを製造元とやりとりします。
プロファイル システム
  • 何百万ものユーザーと組織を管理します。

  • ユーザーが各自のプロファイル情報を管理したり、注文の状況を調べることができます。

  • ユーザーや組織など、あらゆるビジネス関連要素のプロファイルを構築します。

  • サイトを訪問するユーザーについて収集する情報を決定します。

  • カスタム カタログなど、特定のユーザーに表示する情報を決定します。

  • サイトを訪問しているユーザーを確認するためにプロファイル情報を分析します。

  • コンテンツをユーザーに合わせるために対象式を作成します。

  • 特定のユーザー グループを対象とした広告、割引、ダイレクト メールの各キャンペーンを作成します。
ビジネス分析システム
  • 各種データ ソースから収集した大量のサイト利用状況データを Commerce Server データ ウェアハウスにインポートし、そのデータを管理します。

  • Commerce Server のレポートを実行するか、または独自のカスタム レポートを作成して、サイトの効果を分析します。

  • レポートを実行して特定のユーザー グループを識別し、その結果をリストにエクスポートします。ダイレクト メール キャンペーンのリストを使用するか、またはユーザーのプロパティを更新し、ユーザーに合わせて商品またはコンテンツを対象化できます。

  • 収集したデータを確認して、隠れた傾向や新しい顧客セグメントを見つけたり、そのセグメントのプロパティを表示します。

  • インテリジェントなクロスセル機能を提供し、ユーザーがサイト内を移動するのに合わせて商品を動的に推奨します。
対象化システム
  • 対象化した商品取引でショッピング体験をパーソナライズします。

  • ユーザーとコンテキストに応じて最適なコンテンツを配信します。

  • パーソナライズされた割引、対象化された割引、ダイレクト マーケティング キャンペーン、およびダイレクト広告キャンペーンを作成、分析、管理します。

  • 予測機能を Web サイトに追加します。

  • 特定のプロファイルを持つユーザーに合わせて広告や割引を対象化します。たとえば、週に 3 回サイトを訪問し、商品を 3 つ以上購入したことのある女性ユーザーを対象に広告を配信できます。

  • 同じ業種で競合する複数の顧客向けにキャンペーンを作成し、スケジュールを設定します。競合する広告が同じページに表示されることは決してありません。

  • 広告主が希望する広告要求数、またはクリック数に応じて広告料を請求します。

  • 広告主が希望する広告表示ページに応じて広告料を請求します。
ビジネス プロセス パイプライン
  • 注文、対象化、商品取引の各プロセスをカスタマイズします。

  • ビジネス プロセスの各ステージを定義し、それぞれをリンクします。


開発ツール

Commerce Server 開発ツールは、サイト開発者が短期間でサイトの構築とカスタマイズを行い、顧客に納品できるようにするためのツールです。Commerce Server は、Site Server 3.0 および Site Server 3.0, Commerce Edition (SSCE) に新しい開発ツールや機能強化を組み込んだものです。

ソリューション サイト

Commerce Server SDK

プログラマーズ マニュアル

ソリューション サイト

Commerce Server には、Site Server 3.0 の Starter Site の代わりに、3 つのソリューション サイトが用意されています。ソリューション サイトは、Commerce Server の機能を総合的に提供する開発用の参考サイトです。商品取引、カタログ表示、顧客サービス、受注と受注確認が用意されています。

ソリューション サイトは包括的な電子商取引機能を備えているため、まず、これらの機能を基に独自の Web サイトを開発し、準備が整ってから、自社のビジネスに固有の機能を追加できます。

Commerce Server には、次のソリューション サイトが用意されています。

  • Blank カスタム サイトを構築する基礎として使用できるソリューション サイトです。Commerce Server のリソースがすべて含まれています。Blank サイトは Commerce Server に同梱されています。

  • Retail B to C サイトを構築する基礎として使用できるソリューション サイトです。パーソナライズ、商品取引、カタログ検索、顧客サービス、ビジネス分析などの B to C 機能が含まれています。ここに含まれる顧客サービスでは、ユーザーが各自のプロファイル情報を管理したり、注文状況を確認することができます。Retail サイトは、http://www.microsoft.com/japan/commerceserver/productinfo/solsites.htm から入手できます。

  • Supplier B to B サイトを構築する基礎として使用できるソリューション サイトです。これは、Microsoft Windows 2000 の Active Directory を使い、安全なユーザー認証とグループのアクセス権を提供します。注文書と申請の処理、XML ベースのカタログの更新と交換、取引先のセルフサービスを備えています。このサイトに含まれる取引先サービスを使うと、代理管理者 (サプライア企業の連絡先) がサプライア企業の組織情報、注文書、および注文状況を管理できます。Supplier サイトは、http://www.microsoft.com/japan/commerceserver/productinfo/solsites.htm から入手できます。

Commerce Server SDK

Commerce Server Software Development Kit (SDK) には、Commerce Server で電子商取引ソリューションを開発するためのヘッダー ファイル、サンプル コード、サイトレット、ツールが含まれています。

ヘッダー ファイル

サンプル コード

サイトレット

ツール

ヘッダー ファイル

SDK の Include フォルダには、Commerce Server が提供するサービスを Microsoft Visual C++ で使用、拡張するために必要なヘッダー ファイルとインターフェイス記述言語 (IDL) ファイルが含まれています。

サンプル コード

次に、SDK に用意されているサンプル コードの一部を紹介します。

  • 管理サンプル (Administration Samples) Commerce Server リソースの作成、Commerce Server マネージャの統合と拡張、Commerce Server サイト パッケージャのカスタム コンポーネントの構築、および Commerce Server ビジネス デスクのカスタム モジュールの構築に利用できるサンプル コードです。

  • ビジネス デスク モジュール フレームワーク (Business Desk Module Framework) 新しいビジネス デスク モジュールの開発に利用できる実用コード ベースです。このコード ベースは、XML データ アイランドの使い方を示し、技術者以外の人が Commerce Server サイトを管理できるように、充実した Web ベースのユーザー インターフェイス (UI) を作成するためのビジネス デスク ウィジェットを組み込んでいます。このサンプルには、Edit ウィジェットを実装するための Edit ページ、List ウィジェットを実装するための List ページ、ビジネス デスクの UI からの要求を処理するための Response ページがあります。さらに、新しいビジネス デスク モジュールを既存のビジネス デスクにインストールする方法を示すスクリプト AddModuleToConfig.vbs も用意されています。

  • ビジネス デスク インストーラ (Business Desk Installer) 管理 API をインターネット インフォメーション サービス (IIS) 5.0 メタベースと併用する方法、および Microsoft Extensible Markup Language (MSXML) パーサーによって新しいビジネス デスク モジュールを既存のビジネス デスクにインストールする方法を示す、単純な COM コンポーネントです。

  • カスタム サイト パッケージャ コンポーネント (Custom Site Packager Component) パッケージ化またはアンパッケージのプロセスにおいて、コマース サイト パッケージで作成したサイト リソース固有のデータをパッケージ化およびアンパッケージする方法を示すコンポーネントです。カスタム サイト パッケージャ コンポーネントは、Microsoft Visual Basic ActiveX ダイナミック リンク ライブラリ (DLL) で、カスタム サイト パッケージャ コンポーネントに必要な IPuP インターフェイスを実装し、Microsoft SQL ServerTM データベースに保存されたデータをパッケージし、そのデータを指定されたサイトに展開します。

  • データ ウェアハウス スキーマ ブラウザ (Data Warehouse Schema Browser) Commerce Server データ ウェアハウスのクラス、クラス プロパティ、データ メンバ、およびクラスの関連付けを、論理スキーマで定義されているとおりに表示するためのスキーマ ブラウザです。このサンプルは、Commerce Server OLE DB プロバイダを使ってデータ ウェアハウスの論理スキーマにアクセスする方法を示します。

  • CSF スコア ヘッドライン (CSF Score Headline) コンテンツ選択フレームワーク (CSF) のキャッシュ読み込みとスコアリング用カスタム コンポーネントを使って、対象化システムを拡張する方法を示すサンプルです。CSF スコア ヘッドラインのサンプルは、ヘッドラインの経過時間と、どのヘッドラインが最も表示されているかに基づいて、サイトのユーザーに合わせてヘッドラインを対象化しようとしていることを前提に作成されています。このサンプルは、Visual C++ と Visual Basic の両方を使った対象化システムとの統合を示します。

  • CSF デバッグ ユーティリティ (CSF Debug Utils) CSF キャッシュの内容をダンプし、特定のコンテンツ要求に適用されるスコアリング論理を追跡するためにスクリプトに組み込む Active Server Pages (ASP) のセットです。CSF スコア ヘッドラインのサンプルでは、これらのデバッグ ユーティリティの使い方を示します。

  • CSF データベース ユーティリティ (CSF DB Utils) すべてのコンテンツの CSF、式エバリュエータ、リスト マネージャの各データベースをパージする SQL スクリプトのセットです。

サイトレット

Commerce Server 2000 SDK には、通常のサンプル コードのほかに、小規模な Commerce Server 2000 サイト ("サイトレット") も含まれています。サイトレットは、API セットを Commerce Server 2000 のほかのランタイム サービスと統合せずに ASP ページから使用する方法を示します。サイトレットを実行すると、実行するタスクと関係がないコードを 1 つずつ手動で除外しなくても、特定の機能を実行するのに必要な API を特定できます。

Commerce Server 2000 SDK には、次のサイトレットが用意されています。

  • 広告サイトレット (Advertising Sitelet) プロファイル システムを対象化システムと併用し、対象化された広告を表示する方法を示します。

  • オークション サイトレット (Auction Sitelet) オークション コンポーネントを使い、入札によるオークションを実装する方法を示します。オークション管理用のカスタム ビジネス デスク モジュールが含まれます。

  • カタログ サイトレット (Catalog Sitelet) 商品カタログ システムを使い、電子商取引サイトにカタログの参照および検索機能を提供する方法を示します。

  • 割引サイトレット (Discount Sitelet) Web サイトの受注プロセスにおいて、対象化された割引を利用する方法を示します。

  • 注文サイトレット (Order Sitelet) Commerce Server で Web サイト上の受注プロセスを実装する方法を示します。

  • パスポート サイトレット (Passport Sitelet) パスポート シングル サイン オン機能をプロファイル システムと統合する方法を示します。この機能を使うと、サイト運営者と顧客がシングル サイン オン認証サービスを利用できる一方で、ユーザーの対象化、ユーザー データの管理などにプロファイル システムを使うこともできます。

  • プロファイル サイトレット (Profile Sitelet) プロファイル システムを使い、電子商取引サイトのユーザーの登録と認証を行う方法を示します。

ツール

Commerce Server 2000 SDK には、Commerce Server で運営するサイトの構築、Commerce Server と統合する商品の構築、および Commerce Server のアドオン コンポーネントの構築に伴う開発プロセスを短期間で簡単に進めるための、いくつかのツールが用意されています。

  • Visual Basic 用パイプライン コンポーネント ウィザード Visual Basic 開発者に、ビジネス処理パイプライン コンポーネントの構築用にリリースおよび配置 (RAD) 環境を提供するツールです。Visual Basic 用パイプライン コンポーネント ウィザードをインストールするには、SDK ツールの [VB Pipe Wizard] フォルダにある PipelineCompWizard.dll ファイルを登録します。このファイルは、C:\Program Files\Microsoft Commerce Server\SDK\Tools\VB Pipe Wizard ディレクトリにあります。

  • Visual C++ 用パイプライン コンポーネント ウィザード Commerce Server パイプライン コンポーネントの作成を自動化するために、Visual C++ 6.0 がインストールされた環境に追加するファイル グループで構成されるツールです。パイプライン コンポーネント ウィザードは、オブジェクト定義ファイルとインプリメンテーション ファイルを作成します。これらのファイルには、完全に機能するパイプライン コンポーネントを作成するために実装する必要がある、すべてのインターフェイスの関数のプロトタイプが含まれています。さらに、パイプライン コンポーネント ウィザードは、プロジェクトのプロパティ ページを作成します。ここに、ユーザーがコンポーネントのプロパティの設定に使うコントロールを追加します。

  • パイプライン コンポーネント登録ツール ステージとの関係についてパイプライン コンポーネントを登録するためのツールです。このツールを実行するコンピュータにパイプライン コンポーネントを登録すると、データをレジストリ スクリプト (.reg) ファイルにエクスポートして、ほかのサーバーに配置できます。パイプライン コンポーネント登録ツールは、SDK の [Registration Tool] フォルダにあります。たとえば、C:\Program Files\Microsoft Commerce Server\SDK\Tools\Registration Tool ディレクトリにあります。

プログラマーズ マニュアル

Commerce Server 2000 のヘルプは、Commerce Server のカスタマイズ方法を詳しく説明するマニュアルです。たとえば、このマニュアルには、次の手順の説明が含まれています。

  • ビジネス デスク モジュールを構築する

  • パイプライン コンポーネントを構築する

  • データ ウェアハウスを操作する

  • コンテンツ選択フレームワークを拡張する

  • BizTalk Server と統合する

  • 世界各国の顧客用にサイトを変更する

このほか、Commerce Server 2000 ヘルプには、各 Commerce Server オブジェクトのサンプル コードが含まれています。


管理ツール

Commerce Server には、次の管理ツールが用意されています。システム管理者は、これらのツールを使って、リソース、サイト、アプリケーション、および Web サーバーを管理します。

  • Commerce Server マネージャ Commerce Server のリソース、サイト、アプリケーション、および Web サーバーの管理と構成を行うためのツールです。Microsoft Windows 2000 に付属の Windows ベースのインターフェイスである Microsoft 管理コンソール (MMC) が、Commerce Server マネージャのホストになります。

    Commerce Server マネージャは、統合された単一のインターフェイス内で複数の Web サイトを管理するための共通のフレームワークを提供します。Commerce Server マネージャの機能は、Web ベース管理やコマンド ラインからの管理からは利用できません。その機能のほとんどは、COM オブジェクトを介して利用したり操作することになります。したがって、開発者は Windows Scripting Host (WSH) スクリプトや ASP ページを作成して管理環境を拡大できます。Commerce Server マネージャの詳細については、｢Commerce Server の管理｣を参照してください。

    注

    • Commerce Server マネージャでは、Site Server 3.0 や Site Server 3.0, Commerce Edition (SSCE) を管理できません。サイトを Site Server から移行する方法については、「Site Server 3.0 からの移行」を参照してください。
  • Commerce Server サイト パッケージャ サイトとそのアプリケーションおよびリソースを 1 つのファイルにパッケージ化し、そのファイルをほかの環境に移動する配置ツールです。Commerce Server サイト (IIS メタベースの設定を含む)、ファイル システム、管理データベースからのリソース、および SQL Server データベースを 1 つのファイルにパッケージ化するときに使います。また、パッケージ化された Commerce Server サイト (またはその一部分) をほかのコンピュータにアンパッケージするときにも使います。

    たとえば、サイトを開発または更新した後、サイト パッケージャを使って、そのサイトをパッケージ化し、開発環境からテスト環境に移動できます。そして最終的には、サイトを運用環境に移動することができます。

    ほとんどの場合、サイトを最初に配置するときにサイト パッケージャを使います。それ以降の配置、インクリメンタル更新、およびロールバックには、Microsoft Application Center 2000 などのツールや、ほかのコンテンツ管理製品を使います。Commerce Server サイト パッケージャの詳細については、｢サイト パッケージャを使う｣を参照してください。

関連項目

Commerce Server の管理

サイト パッケージャを使う

Site Server 3.0 からの移行


サイト管理機能

Commerce Server ビジネス デスクは、ビジネス マネージャが Web サイトの管理および分析に使う拡張性の高いツールです。たとえば、カタログの価格情報を更新したり、特定のユーザーを新しい広告の対象に指定するときに使います。また、レポートを実行して、サイトに加えた変更がサイトの生産性に与える影響を測定するときにも使用できます。

ビジネス デスクは、ビジネス デスク アプリケーションとビジネス デスク クライアントの 2 つの要素で構成されます。

  • ビジネス デスク アプリケーション Web サイトを構成、管理、および分析するために使用する管理ツールです。Commerce Server のインストール後、ソリューション サイトをアンパッケージしてビジネス デスク アプリケーションをインストールできます。ビジネス デスクは、Microsoft Internet Explorer 5.5 を実行する任意のコンピュータから利用でき、安全なリモート アクセスを提供します。

  • ビジネス デスク クライアント ローカル コンピュータにインストールするクライアント ソフトウェアです。ビジネス デスク アプリケーションへのインターフェイスを提供します。ビジネス デスク アプリケーションの URL に初めてアクセスするときに、ビジネス クライアントがコンピュータにダウンロードおよびインストールされます。ビジネス デスク クライアントを実行するコンピュータは、ビジネス デスク アプリケーションに高速接続することをお勧めします。

ビジネス デスクは、Site Server 3.0 と Site Server 3.0, Commerce Edition (SSCE) の Web ベース管理 (WebAdmin) を強化したものです。この WebAdmin は、Site Server をリモートで管理するためのブラウザ ベース インターフェイスです。WebAdmin は、システム管理者向けに設計されたツールです。これに対してビジネス デスクは、ビジネス マネージャを対象にしています。つまり、優れた電子商取引 Web サイトを作成および運用するために必要な事業目標、戦略、およびプロセスについての理解はあっても、サーバー アプリケーションの管理に必要な技術については詳しくないユーザーでも利用できるように設計されています。

次に示すビジネス デスクの新機能は、ビジネス マネージャが Web サイトを簡単に管理できるように設計されています。

プロファイル システム

商品カタログ システム

対象化システム

ビジネス分析システム

プロファイル システム

Site Server 3.0 と SSCE では、プロファイル システムがユーザー情報を収集します。Commerce Server のプロファイル システムでは、ビジネス関連の任意の項目について情報を収集できます。たとえば、匿名ユーザー、コンテキスト (訪問日時など)、組織などのプロファイル情報を収集することが可能です。

プロファイル システムは、Commerce Server マネージャで管理されるプロファイル リソースと、Commerce Server ビジネス デスクで管理されるユーザー モジュールで構成されます。プロファイル情報は、Active Directory、SQL Server、またはその両方のプロファイル データ ストアに格納されます。データ ウェアハウスにプロファイル データをエクスポートし、次に、収集したプロファイル データをビジネス デスクで分析できます。

注

  • Commerce Server には Site Server 3.0 の Membership Directory は含まれていません。Site Server 3.0 の Membership Directory から Commerce Server へプロファイル情報を移行する方法については、「Site Server 3.0 からの移行」を参照してください。

商品カタログ システム

Commerce Server 商品カタログ システムは、オンライン カタログをインポート、エクスポート、作成、および管理するための新機能です。ビジネス マネージャは、ビジネス デスクのカタログ モジュールを使って、商品カタログを作成し、商品データを追加および更新することができます。商品のカタログを複数のサプライアなどの異なるソースから集める場合でも、商品データを格納するデータベースに関する専門知識は必要ありません。たとえば、次のようなことができます。

  • 拡張マークアップ言語 (XML) 形式またはカンマ区切り値ファイル (CSV) 形式のカタログをインポートする。

  • XML 形式または CSV 形式のカタログをエクスポートする。

  • BizTalk Server を使って取引先とカタログを交換する。

  • 商品とカテゴリの価格を設定する。

  • カテゴリ、商品、およびそれらに含まれるデータを追加、更新、削除する。

  • 商品またはグループに割引を適用する。

  • カタログの利用状況を分析するレポートを実行する。

  • サイトを訪問するユーザーがカタログから必要なものを見つけられるように、複数の検索機能を適用する。

カタログ データは、SQL Server (7.0 または 2000) データベースである Commerce Server データベースに保存されます。Commerce Server データベースからデータ ウェアハウスへカタログ データをエクスポートし、次に、収集したカタログ データをビジネス デスクで分析できます。

サイト開発者は、商品カタログ システム COM オブジェクトを使って、商品カタログ システムをカスタマイズできます。

対象化システム

対象化システムは、ビジネス マネージャがコンテンツをビジネス関連の項目や条件に合わせて対象化するための、高性能で柔軟性のあるプラットフォームです。一貫した対象化モデルを採用しているので、1 つの技術でさまざまなビジネス条件を対象化できます。

対象化システムには、次の機能があります。

  • キャンペーン ビジネス デスクのキャンペーン モジュールは、SSCE の Ad Manager の機能が強化されたものです。キャンペーン モジュールは、式によってプロファイル システムおよび商品カタログ システムと密接に統合されています。式を使うと、ユーザーに合わせて広告を対象化したり、商品に割引を適用することができます。また、キャンペーン モジュールはビジネス分析システムとも統合されているので、キャンペーンの成否を分析することも可能です。

  • コンテンツ選択フレームワーク コンテンツ選択フレームワーク (CSF) は、広告キャンペーンや割引キャンペーンで配信するコンテンツを決定するパイプライン ベースのシステムです。CSF では、1 回の呼び出しで複数のコンテンツを取得できるため、速度が大幅に向上します。

    CSF のアーキテクチャは、配信するコンテンツの選択に使うアルゴリズムをサイト開発者が変更できるオープン スコアリング システムをサポートしています。また、コードのデバッグによって、スコアリング プロセス中に発生するイベントを監視できます。

  • 式ビルダ 式ビルダは、ビジネス マネージャがコンテンツを対象化した式をプロファイル付きのビジネス項目に作成しやすいようなユーザー インターフェイスを提供します。

    ビジネス デスクのユーザーは、キャンペーン マネージャとキャンペーン式モジュールを使って式ビルダにアクセスします。また、式ビルダは、サイト開発者がその機能やユーザー インターフェイスを簡単にほかのビジネス デスク モジュールやその他の Web アプリケーションに組み込めるように設計されています。

  • リスト マネージャ リスト マネージャは、ビジネス デスクのユーザー インターフェイスで、このサービスにより、ユーザー プロファイルのリストのインポートとエクスポートが可能になります。ビジネス分析システムと統合されているので、たとえば、プロファイルのリストを生成するレポートを実行し、そのリストをリスト マネージャにインポートできます。また、セグメント データをリスト マネージャにインポートすることもできます。ユーザー プロファイルのリストをリスト マネージャにインポートした後、それをユーザー モジュールにエクスポートし、必要に応じてプロファイル情報を更新します。たとえば、対象化に必要な情報を収集するためのプロパティをユーザー プロファイルに追加します。このリストを使って、ダイレクト メール キャンペーンを実行することもできます。

  • Commerce Server ダイレクト メーラー ダイレクト メーラーは、多数の受信者のグループ宛に Web ページからパーソナライズされた電子メール メッセージを送信したり、フラット テキスト ファイルからパーソナライズされていないメールを送信する、高速でスケーラブルな Windows 2000 サービスです。ダイレクト メーラーは、単体で使うことも、ビジネス デスクのキャンペーン モジュールに統合することもできます。電子メールを追跡し、送信されたメールとクリックされた (開かれた) メールを記録することで、ダイレクト メール キャンペーンの成否を分析することも可能です。

    ダイレクト メーラー パイプラインは、受信者のリストを処理するために使われます。パイプラインに新しいコンポーネントを追加したり、コンポーネントを基幹業務システムに統合したり、そのコンポーネントをサード パーティが供給するコンポーネントと交換することができます。

ビジネス分析システム

ビジネス分析システムは、Site Server 3.0 の分析機能と予測機能を拡張し、機能性、効率、および処理速度を大幅に向上させたものです。

ビジネス分析システムの新機能と拡張機能を次に示します。

  • 分析 ビジネス デスクの分析モジュールは、Site Server 3.0 の Report Writer の機能を持ち、さらに多数の機能が強化されています。分析モジュールでは、次のようなことができます。
    • サイトの利用状況に関するレポートを実行する。

    • Microsoft ピボットテーブルと Microsoft ピボットチャートを使って Internet Explorer でレポートを表示し、操作する。

    • レポートをプロファイル システムや対象化システムにエクスポートし、そのデータをプロファイルの更新やコンテンツの対象化に使用する。

    • レポートをカスタマイズする。

    Commerce Server では、多くのレポートに必要なデータが、オンライン分析処理 (OLAP) データベースに格納されているので、Site Server よりはるかに高速にレポートを実行できます。

  • データ ウェアハウス Commerce Server のデータ ウェアハウスは、Site Server 3.0 の Analysis データベースに代わるものです。SQL Server データベース、OLAP データベース、およびシステム管理者がデータのインポートと保守に使う各プロセスが組み合わされています。複数のデータ ソースから収集した大量のデータをインポートします。サイトに訪れたユーザーに関する操作データを収集します。ユーザー プロファイル データ、トランザクション データ、およびクリック履歴データがあります。また、商品データと広告データも収集します。このデータは、Web サーバー ログ、Commerce Server データベース、およびその他の指定されたデータ ソースから収集されます。データ収集後、ビジネス分析を行うためにデータ ウェアハウスはデータベースでこれらのデータを管理します。

    データのインポート方法は、データ ウェアハウスのプロパティの構成によって指定できます。

  • 予測 予測リソースは、Commerce Server 2000 の完全インストールまたはカスタム インストールでインストール可能な Windows 2000 サービスです。予測リソースを使うと、Web サイトに予測機能を備えることができます。たとえば、推奨商品を表示することができます。

    Commerce Server の予測リソースは、Site Server 3.0 の予測機能を強化したもので、より効率よく予測を行うことができるようになりました。また、モデルを分析する機能も新しく追加されています。

    予測に組み込まれた拡張機能と新機能を次に示します。

    • セグメント モデル 予測モデルのほかに、セグメント モデルを作成できるようになりました。セグメント モデルはクラスタ モデルとも呼ばれ、ユーザーをセグメント、つまり特徴や行動が共通するユーザーのグループに分割します。セグメントは、後でマーケティングに使用できます。

    • モデル ビューア 予測モデルは、予測モデル ビューアで分析できます。このビューアには、Commerce Server マネージャからアクセスします。セグメント モデルは、ビジネス デスクのセグメント ビューア モジュールを使って分析できます。

    • モデル ベースのアルゴリズム Site Server 3.0 の予測機能は、データ ベースの (データに基づく) アルゴリズムによって予測を行っていました。新しいモデル ベースのアルゴリズムは、判断ツリー (依存関係ネットワーク) を使って予測を行うため、精度が高く、処理速度も大幅に向上しました。

    • 自動データ分析 予測には、効率的な自動データ サンプリングの機能が含まれています。また、モデル化する属性を選別する方法が向上し、これらの属性をモデル化するための最適な分布を自動的に "推測" するアルゴリズムも含まれています。

    • オフラインでのモデルの構築 モデルは Web サーバー上には構築されません。したがって、構築プロセスがサイトのパフォーマンスに影響を与えることはありません。

    • すべての Web サーバーが同じモデルを使用 Site Server 3.0 では、Web サーバーごとにモデルを構築する必要がありました。Commerce Server では、すべての Web サーバーが同じモデルを使用します。このため、モデルの構築に使用するリソースを軽減できます。

関連項目

Commerce Server の概念

ビジネス デスクユーザー

ビジネス デスク カタログ

ビジネス デスク キャンペーン

ビジネス デスク分析


パイプライン機能

Commerce Server 2000 には、新しいパイプライン機能がいくつか追加されています。これにより、さまざまな注文や割引に柔軟に対応できるようになり、送料も管理しやすくなっています。また、パイプラインの読み込みや実行も効率的に行えるようになりました。これらの機能には、次のものがあります。

  • 正確な通貨処理

  • 複数の発送処理

  • 割引処理

  • パイプラインのプーリング

関連項目

パイプラインを利用する

Currency の拡張

複数発送アーキテクチャ

割引オブジェクト

プールされたパイプライン


ユーザー補助機能

Microsoft では、すべてのユーザーにとって使いやすい製品とサービスを提供するために努力しています。ここでは、身体に障害のある方のために、Commerce Server 2000 を使いやすくする機能に関する情報を提供します。

キーボードを使ってヘルプ ビューア内を移動する方法については、「ヘルプ ビューアのショートカット キー」を参照してください。

Commerce Server ビジネス デスクで頻繁に使用するキーボード ショートカットの一覧については、「キーボード ショートカットを使う」を参照してください。

Microsoft Windows 2000 のユーザー補助機能

ユーザー補助に関する追加情報

Microsoft Windows 2000 のユーザー補助機能

Commerce Server 2000 では、次に示すユーザー補助機能をサポートしています。これらの機能は、Commerce Server ビジネス デスク、Commerce Server マネージャ、およびパイプライン エディタで使用できます。

  • 拡大鏡 画面の一部を、見やすいように別のウィンドウで拡大表示できるようにします。

  • ナレータ ダイアログ ボックス名、メニュー、入力した文字など、画面上の情報が読み上げられるようにします。ナレータ機能では、目の不自由な方が構成や緊急の際に Commerce Server 2000 と対話するための、最小限のユーザー補助が提供されています。

    注

    • ナレータ機能は英語 (米国) 版でのみ利用できます。
  • スクリーン キーボード 仮想キーボードを表示し、マウスやスイッチ式入力デバイスなどのポインティング デバイスを使って情報を入力できるようにします。スクリーン キーボードは、多くのキーボードおよびキーボード設定と互換性がありますが、すべてのキーボードおよびキーボード設定と互換性があるわけではありません。

これらを始めとするユーザー補助オプションの詳細については、Windows 2000 Server のヘルプの「ユーザー補助機能」を参照してください。

ユーザー補助に関する追加情報

ユーザー補助オプションについては、Windows 2000 のヘルプの「Windows 2000 Server の紹介」ブックの「ユーザー補助機能」を参照してください。

Microsoft SQL Server のユーザー補助オプションについては、SQL Server Books Online の「Accessibility for People with Disabilities (ユーザー補助機能)」を参照してください。

障害をお持ちの方のための Microsoft 製品の詳細については、www.microsoft.com/japan/enable/ を参照してください。このサイトでは、次の情報を提供しています。

  • Microsoft 製品のユーザー補助サービスに関する詳細情報。

  • パーソナル コンピュータを使いやすくする、さまざまなサードパーティ製ハードウェアおよびソフトウェア製品に関する情報。

  • Microsoft およびその他の組織から入手できるその他のユーザー補助製品、サービス、および資料に関する概要。


Microsoft 製品サポート サービス

製品名: Microsoft Commerce Server 2000

サポート オプション: サポート オプションに関する最新の情報を入手するには、Microsoft 製品サポート サービスの Web サイト (http://www.microsoft.com/japan/support/faq/) を参照して、製品一覧から Commerce Server 2000 を選択してください。

条件: Microsoft 製品サポート サービスに関連する費用、期間、および条件は、将来予告なしに変更することがあります。


Commerce Server のヘルプの使用

Commerce Server 2000 のヘルプ システムでは、サイト開発者、システム管理者、およびビジネス マネージャ向けのマニュアルを提供します。

ここでは、次のトピックについて説明します。

  • Commerce Server のヘルプについて Commerce Server 2000 のヘルプの構成および内容について説明します。

  • ヘルプ ビューアを使う ヘルプ ビューアを使って必要な情報を検索する方法について説明します。

  • ヘルプ トピックを検索する 完全に一致する語句を検索する方法、および OR、AND、NEAR、NOT を使ってトピックを検索する方法について説明します。

  • ヘルプ トピックにブックマークを設定する ヘルプ トピックにブックマークを設定し、トピックをすばやく参照できるようにする方法について説明します。

  • ヘルプ トピックを印刷する 1 つまたは複数のトピックを同時に印刷する方法について説明します。

  • ヘルプ トピックをコピーする ヘルプ トピックをコピーして、別の文書に貼り付ける方法について説明します。

  • 言語フィルタリング ツールを使う 言語フィルタリング ツールを使って、C++ または Microsoft Visual Basic のサンプル コードを表示する方法について説明します。

  • ヘルプ ビューアのショートカット キー ヘルプ ビューアを使うためのショートカット キーを示します。

  • その他の参照情報 Commerce Server 2000 のヘルプ以外の参照情報を示します。


Commerce Server のヘルプについて

Commerce Server 2000 のヘルプは、ユーザーが電子商取引サイトを効率的に運用、管理、または開発するために必要な情報 (ワークフロー、概念、操作手順、リファレンスなど) をすばやく見つけられる構成になっています。

ヘルプの構成

開発者向けのヘルプ

ビジネス デスクのヘルプ

ヘルプの構成

目次はいくつかのブックに分かれ、それぞれが主な機能分野に対応しています。各ブックに含まれるノード、つまり章は、各分野でユーザーが行う主な作業に対応しているか、または、それらの作業を完了するために理解する必要のある重要な概念や技術を説明しています。

次の表は、Commerce Server のブックの一覧と、各ブックの説明を示します。

ブック | 説明 | ユーザー
ファースト ステップ ガイド | Commerce Server の機能、ツール、および概念を説明します。Commerce Server サイトを設計する方法を説明し、インストール手順へのリンクを提供します。 | すべての Commerce Server ユーザー
サイトを開発する | 開発環境のセットアップ方法、Commerce Server オブジェクトによるプログラム方法、パイプラインのカスタマイズ方法、および Commerce Server とほかのアプリケーションの統合方法を説明します。 | サイト開発者
サイトの配置 | SQL Server または Active Directory を使うサイトをサイト パッケージャで配置する方法と、サイトにインクリメンタル更新を行う方法を説明します。また、サイトにセキュリティを設定する方法についても説明します。 Commerce Server のインストール方法を、クラスタ構成の 4 台のコンピュータにインストールする場合と、非クラスタ構成の 3 台のコンピュータにインストールする場合に分けて、それぞれ詳細に説明します。 | システム管理者
Commerce Server の管理 | Commerce Server のリソース、サイト、アプリケーション、Web サーバー、および管理データベースと、それらの管理方法を説明します。また、プロファイル、CS 認証、ダイレクト メーラー、データ ウェアハウス、および予測の管理方法についても説明します。BizTalk Server を使うための Commerce Server の設定方法についても説明します。 | システム管理者
ビジネス デスクの活用方法 | ビジネス デスクを使ってサイトを管理する方法を説明します。B to C サイトと B to B サイトの管理方法を学習するための実習を含むチュートリアルが用意されています。 | ビジネス マネージャ
Commerce Server の機能を拡張する | Commerce Server にカスタム リソースを統合する方法、新しいビジネス デスク モジュールを構築する方法、および新しいパイプライン コンポーネントを構築する方法を説明します。また、カスタム レポートを作成し、データ ウェアハウスを拡張して、サードパーティの商品カタログと統合し、Microsoft Passport と統合する方法を説明します。 | サイト開発者
プログラマーズ リファレンス | Commerce Server の各種機能を提供する COM コンポーネントに関する幅広いリファレンス資料を提供します。 | サイト開発者
Commerce Server のトラブルシューティング | Commerce Server の使用中に発生する可能性のある問題の症状と解決方法を説明します。 | システム管理者およびサイト開発者
用語集 | Commerce Server でよく使われる用語を定義します。 | すべての Commerce Server ユーザー

各ブックには、次の各種の情報が含まれるノードがあります。

  • ワークフロー図 ビジネス デスクの各カテゴリのマニュアルには、その機能分野で行う主な作業を説明する図が用意され、それぞれの作業を完了するための手順を説明するトピックにリンクしています。

  • ファーストステップ ガイド Commerce Server とビジネス デスクの両方にあります。

  • 基本トピック 基本トピックは、ビジネス デスク、Commerce Server マネージャ、およびパイプラインの使用にあたって共通する作業を説明し、必要な参照情報を提供します。

  • 概念 ビジネス デスクの各トピックなどで、「～について」というタイトルが付いたものは、Commerce Server とそのコンポーネントを上手に利用するための重要な概念を説明しています。

  • 作業 作業トピックでは、ワークフローで示した作業を完了するための手順を説明しています。

開発者向けのヘルプ

Commerce Server 2000 のヘルプは、使用するプログラミング環境に関連した情報だけを検索できるように、言語フィルタリング ツールを実装しています。「プログラマーズ リファレンス」に含まれるいくつかのトピックのタイトル バーには、言語メニューを表示するフィルタ ボタンがあります。このメニューを使うと、Visual C++ 向けと Visual Basic 向けのどちらのマニュアルを表示するかを選択できます。言語を選択すると、その後のページを表示する際にも選択内容が保持されます。

開発者向けの情報については、ヘルプのほかに、次の資料を参照してください。

  • 『Commerce Server Software Development Kit (SDK)』 Commerce Server で電子商取引ソリューションを開発するためのサンプル コードとマニュアルが含まれています。たとえば、関連セル (アップセル、クロスセル、および在庫セル) のコードを開発する方法が記述されています。SDK は、Commerce Server 2000 と共にインストールされます。

    SDK にアクセスするには、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Software Development Kit] をクリックします。

ビジネス デスクのヘルプ

ビジネス デスクのヘルプ システムは、Commerce Server 2000 のヘルプ システムのサブセットです。ビジネス デスクのユーザーは、「ビジネス デスクの使用」というブックに含まれるヘルプにアクセスできますが、クライアント コンピュータからその他の Commerce Server のブックにアクセスすることはできません。

ビジネス デスクからヘルプにアクセスするには、ツール バーの ビジネス デスクのヘルプのアイコン をクリックします。


ヘルプ ビューアを使う

Commerce Server 2000 のヘルプ システムでは、情報の書式設定と表示に HTML が使われています。ヘルプ ビューアには、目次、キーワード、およびフルテキスト検索の機能が用意されており、情報を簡単に検索できます。ブックのアイコンを開くと、サブブックとトピックが表示されます。

目次を展開してブック内のトピックを表示するには、ブック タイトルの横の展開インジケータ (+) をクリックします。折りたたみインジケータ (-) をクリックすると、トピックは非表示になります。ヘルプ ビューアを使うと、ヘルプ トピックを表示しながら、同時に目次、キーワード、または検索結果を表示できます。

ヘルプ ビューアには [お気に入り] タブも用意されています。このタブを使ってトピックにブックマークを設定できます。ブックマークを設定すると、たびたび参照するトピックをすばやく表示できるようになります。

Commerce Server の詳細な情報を得るには、目次を使ってマニュアル全体に目を通します。目次のトピックをクリックすると、情報がヘルプのコンテンツ ウィンドウに表示されます。

ヘルプ ビューアでは、次の参照および検索のオプションを利用できます。

  • [目次] タブ
    1. 目次を参照するには、[目次] タブをクリックします。ブックのアイコンをダブルクリックすると、トピック エントリとサブブックが表示されます。

    2. 目次のエントリをクリックすると、対応するトピックが表示されます。
  • [キーワード] タブ
    1. キーワード エントリの一覧を表示するには、[キーワード] タブをクリックし、単語を入力するか、または一覧をスクロールします。キーワードの多くは、複数のトピックに関連付けられています。

    2. キーワード エントリをダブルクリックすると、対応するトピックが表示されます。
  • [検索] タブ
    1. 単語または語句が出現するすべての箇所を検索するには、[検索] タブをクリックして検索する単語または語句を入力し、[検索開始] をクリックします。検索結果を絞り込むには、複数の単語または語句を AND、OR、NEAR、または NOT で結合します。

    2. 検索結果のエントリをダブルクリックすると、対応するトピックが表示されます。

    トピックの検索の詳細については、「ヘルプ トピックを検索する」を参照してください。

  • [お気に入り] タブ
    1. トピックにブックマークを設定するには、[目次] タブ、[キーワード] タブ、または [検索] タブを使ってトピックを検索し、表示します。

    2. [お気に入り] タブをクリックし、[追加] をクリックして、そのトピックのタイトルを [トピック] ボックスの一覧に保存します。

    3. [トピック] ボックスの一覧でブックマークをダブルクリックすると、トピックをすばやく表示できます。

関連項目

ヘルプ トピックを検索する

ヘルプ トピックにブックマークを設定する

ヘルプ トピックを印刷する

ヘルプ トピックをコピーする

言語フィルタリング ツールを使う

ヘルプ ビューアのショートカット キー


ヘルプ トピックを検索する

  1. 単語または語句が出現するすべての箇所を検索するには、[検索] タブをクリックして単語を入力し、[検索開始] をクリックします。

  2. 特定の語句を検索するには、その語句を引用符 (") で囲みます。たとえば、「"コンピュータとモニタ"」と入力すると、"コンピュータとモニタ" という語句を含むトピックが検索されます。

  3. 検索結果を絞り込むには、複数の単語または語句を AND、OR、NEAR、または NOT で結合します。

    たとえば、次のように指定します。

    • 「コンピュータ AND モニタ」と指定すると、"コンピュータ" と "モニタ" の両方の単語を含むトピックが検索されます。

    • 「コンピュータ OR モニタ」と指定すると、"コンピュータ" と "モニタ" のどちらかの単語を含むトピックが検索されます。

    • 「コンピュータ NEAR モニタ」と指定すると、"コンピュータ" と "モニタ" の両方の単語が接近して含まれるトピックが検索されます。

    • 「コンピュータ NOT モニタ」と指定すると、"コンピュータ" というキーワードを含んでいて、"モニタ" というキーワードを含んでいないトピックが検索されます。
  4. 検索結果のエントリをダブルクリックすると、対応するトピックが表示されます。

関連項目

ヘルプ トピックにブックマークを設定する

ヘルプ トピックを印刷する

ヘルプ トピックをコピーする

言語フィルタリング ツールを使う

ヘルプ ビューアのショートカット キー


ヘルプ トピックにブックマークを設定する

  1. [目次] タブ、[キーワード] タブ、または [検索] タブを使って、ブックマークを設定するトピックを検索し、表示します。

  2. [お気に入り] タブをクリックし、[追加] をクリックします。

[トピック] ボックスの一覧にトピックのタイトルが追加されます。後からこの一覧に戻ってブックマークをダブルクリックすると、トピックをすばやく表示できます。

注

  • 頻繁に参照するヘルプ トピックの一覧を作成できます。

  • [トピック] ボックスの一覧からブックマークを削除するには、ブックマークをクリックし、[削除] をクリックします。

関連項目

ヘルプ トピックを検索する

ヘルプ トピックを印刷する

ヘルプ トピックをコピーする

言語フィルタリング ツールを使う

ヘルプ ビューアのショートカット キー


ヘルプ トピックを印刷する

  • 印刷するトピックをマウスの右ボタンでクリックし、[印刷] をクリックします。

  • ポップアップ トピックを印刷するには、ポップアップ ウィンドウの内側をマウスの右ボタンでクリックし、[印刷] をクリックします。

  • ブックに含まれるすべての項目を印刷するには、[目次] タブで目的のブックをクリックします。ヘルプのツール バーの [オプション] をクリックし、[印刷] をクリックして、[選択された見出しおよびすべてのサブトピックを印刷] をクリックします。

注

  • 複数の図が含まれる複数のトピックで構成されたセクションを印刷する場合、図は印刷されません。

  • サンプル コードや大きな図を印刷すると、全体を印刷できない場合があります。コードの行が非常に長い場合や、図が非常に大きい場合、コードや図の右端の余白の境界を超えた部分は印刷されません。

関連項目

ヘルプ トピックにブックマークを設定する

ヘルプ トピックを検索する

ヘルプ トピックをコピーする

言語フィルタリング ツールを使う

ヘルプ ビューアのショートカット キー


ヘルプ トピックをコピーする

  1. ヘルプ ビューアのトピック ウィンドウで、ウィンドウの内側をマウスの右ボタンでクリックし、[すべて選択] をクリックします。

  2. トピックの上で、再びマウスの右ボタンをクリックし、[コピー] をクリックします。

  3. トピックのコピー先となる文書を開きます。

  4. 文書内で、コピーした情報を表示する位置をクリックします。

  5. [編集] メニューの [貼り付け] をクリックします。

注

  • トピックの一部だけをコピーする場合は、コピーする部分を選択して、選択部分をマウスの右ボタンでクリックし、[コピー] をクリックします。

  • 順序を示す番号はクリップボードにコピーされません。

関連項目

ヘルプ トピックを印刷する

ヘルプ トピックにブックマークを設定する

ヘルプ トピックを検索する

言語フィルタリング ツールを使う

ヘルプ ビューアのショートカット キー


言語フィルタリング ツールを使う

Commerce Server のヘルプは、使用するプログラミング環境に関連した情報だけを検索できるように、言語フィルタリング ツールを実装しています。「Programmer's Reference」に含まれるいくつかのトピックのタイトル バーには、言語メニューを表示するフィルタ ボタンがあります。このメニューを使うと、Visual C++ 向けと Visual Basic 向けのどちらのマニュアルを表示するかを選択できます。言語を選択すると、その後のページを表示する際にも選択内容が保持されます。

言語フィルタリングのオプションを表示するには、タイトル バーのフィルタ ボタンをクリックし、次のいずれかのオプションをクリックします。

  • C++

  • VB

関連項目

ヘルプ トピックを印刷する

ヘルプ トピックにブックマークを設定する

ヘルプ トピックを検索する

ヘルプ ビューアのショートカット キー

ヘルプ トピックをコピーする

その他の参照情報


ヘルプ ビューアのショートカット キー

マウスが利用できない場合や、キーボードの方が使い慣れている場合は、次のキーボード コマンドを使ってヘルプ ビューア内を移動できます。

ヘルプ ビューアのショートカット キー

キー操作 | 説明
Alt + Space | システム メニューを表示します。
Shift + F10 ヘルプ ビューアのショートカット メニューを表示します。

注

  • このショートカットは、フォーカスがトピック ウィンドウにあるときに使います。
Alt + Tab | ヘルプ ビューアと、開いているほかのウィンドウを切り替えます。
Alt + O | [オプション] メニューを表示します。
Alt + O を押してから、T キーを押す | ナビゲーション ウィンドウの表示/非表示を切り替えます。
Ctrl + Tab | ナビゲーション ウィンドウの次のタブに切り替えます。
Ctrl + Shift + Tab | ナビゲーション ウィンドウの前のタブに切り替えます。
↑ 目次、キーワード、または検索結果の一覧で、1 つ上のトピックに移動します。
↓ 目次、キーワード、または検索結果の一覧で、1 つ下のトピックに移動します。
PageUp | 目次、キーワード、または検索結果の一覧で、1 つ上のページに移動します。
PageDown | 目次、キーワード、または検索結果の一覧で、1 つ下のページに移動します。
F6 | ナビゲーション ウィンドウとトピック ウィンドウの間でフォーカスを切り替えます。
Alt + O を押してから、R キーを押す | トピック ウィンドウに表示されているトピックを更新します。
↑ または ↓ トピックをスクロールします。
Ctrl + Home | トピックの先頭に移動します。
Ctrl + End | トピックの末尾に移動します。
Ctrl + A | トピック ウィンドウのすべてのテキストを強調表示します。
Alt + O を押してから、P キーを押す | トピックを印刷します。
Alt + O を押してから、B キーを押す | 前に表示したトピックに戻ります。
Alt + O を押してから、F キーを押す | 前に表示したトピックの次のトピックに進みます。
Alt + F4 | ヘルプ ビューアを閉じます。

[目次] タブのショートカット キー

キー操作 | 説明
Alt + C | [目次] タブを表示します。
→ | ブックを開きます。
← | ブックを閉じます。
BackSpace | 開いている前のブックに戻ります。
↑ または ↓ | トピックを選択します。
Enter | 選択したトピックを表示します。

[キーワード] タブのショートカット キー

キー操作 | 説明
Alt + N | [キーワード] タブを表示します。
↑ または ↓ | 一覧でキーワードを選択します。
Alt + D または Enter | 関連するトピックを表示します。

[検索] タブのショートカット キー

キー操作 | 説明
Alt + S | [検索] タブを表示します。
Alt + L | 検索を開始します。
Alt + D または Enter | 選択したトピックを表示します。

[お気に入り] タブのショートカット キー

キー操作 | 説明
Alt + I | [お気に入り] タブを表示します。
Alt + A | [トピック] ボックスの一覧にトピックを追加します。
Alt + P [トピック] ボックスの一覧でトピックを選択します。

注

  • このショートカットは、フォーカスがトピック ウィンドウにあり、[トピック] ボックスの一覧に移動するときに使います。
Alt + R | [トピック] ボックスの一覧からトピックを削除します。
Alt + D | [トピック] ボックスの一覧のトピックを表示します。

関連項目

ヘルプ トピックを印刷する

ヘルプ トピックにブックマークを設定する

ヘルプ トピックを検索する

言語フィルタリング ツールを使う

ヘルプ トピックをコピーする


その他の参照情報

Commerce Server 2000 のヘルプ システムのほかに、次のような参照情報を利用できます。

  • Program Files\Microsoft Commerce Server\SDK ディレクトリにある『Software Development Kit (SDK)』

  • Commerce Server の Web サイト


Commerce Server をインストールする

ここでは、Microsoft Commerce Server 2000 に必要なハードウェアとソフトウェアについて、および Commerce Server をアンインストールする方法について説明します。Commerce Server のインストール方法については、http://www.microsoft.com/japan/support/commerceserver/2000/install/default.asp を参照してください。

ここでは、次のトピックについて説明します。

  • ハードウェアの必要条件 Commerce Server 2000 に必要なハードウェアについて説明します。

  • ソフトウェアの必要条件 Commerce Server 2000 に必要なソフトウェアについて説明します。

  • ビジネス デスク クライアントをインストールする クライアント コンピュータに Commerce Server ビジネス デスクをインストールする方法について説明します。

  • Commerce Server をアンインストールする Commerce Server 2000、Commerce Server データベース、サイトの仮想ディレクトリ、およびサイトのフォルダとファイルをアンインストールする方法について説明します。

  • ビジネス デスク クライアントをアンインストールする ビジネス デスク クライアントをアンインストールする方法について説明します。

関連項目

管理ツールだけをインストールする


ハードウェアの必要条件

ここでは、次の各コンポーネントに必要なハードウェアについて説明します。

Commerce Server

管理ツール

ビジネス デスク クライアント

Commerce Server

Commerce Server 2000 サーバーのインストールに必要なハードウェアは次のとおりです。

  • 400 MHz 以上の速度の Pentium 互換 CPU

  • 256 MB の RAM (開発環境では 128 MB の RAM で十分です)

  • 100 MB のハード ディスクの空き容量

  • CD-ROM ドライブ

  • ネットワーク アダプタ カード

  • VGA または Super VGA モニタ

  • Microsoft Mouse または互換性のあるポインティング デバイス

実際の運用環境では、Web サイトのトラフィックの量によって、Web サーバーのハードウェアの要件が異なります。

管理ツール

Commerce Server 2000 の管理ツールだけをインストールする場合に必要なハードウェアは次のとおりです。

  • 266 MHz 以上の速度の Pentium 互換 CPU

  • 128 MB の RAM

  • 20 MB のハード ディスクの空き容量

  • CD-ROM ドライブ

  • ネットワーク アダプタ カード

  • 800 × 600 ピクセル以上の解像度に設定された、VGA または Super VGA モニタ

  • Microsoft Mouse または互換性のあるポインティング デバイス

ビジネス デスク クライアント

ビジネス デスク クライアントに必要なハードウェアは次のとおりです。

  • 266 MHz 以上の速度の Pentium 互換 CPU

  • 5 MB のハード ディスクの空き容量

  • CD-ROM または DVD-ROM ドライブ

  • 800 × 600 ピクセル以上の解像度に設定された、VGA 以上の解像度のモニタ

  • Microsoft Mouse または互換性のあるポインティング デバイス


ソフトウェアの必要条件

ここでは、次の各コンポーネントに必要なソフトウェアについて説明します。

Commerce Server

SQL Server

ビジネス デスク クライアント

Commerce Server

Commerce Server 2000 をインストールする前に、次のソフトウェアを次に示す順序でサーバーにインストールする必要があります。

注

  • Microsoft Professional Support Services では、次のプラットフォームだけがサポートされます。プレリリース版の Windows 2000 はサポートされません。
  1. 日本語オペレーティング システム Microsoft Windows 2000 Server または Advanced Server

    管理ツールまたは Commerce Server 2000 のヘルプだけをインストールする場合は、Microsoft Windows 2000 Professional も使用できます。

  2. Windows 2000 Server Service Pack 1

  3. Microsoft(r) Windows(r) 2000 Hotfix

    これらの Hotfix は、Microsoft Windows 2000 Server、Microsoft Windows Advanced Server、および Microsoft Windows 2000 Professional に適用されます。

また、SQL Server 2000 または SQL Server 7.0 が、Commerce Server と同じネットワークにインストールされている必要があります。SQL Server に必要なソフトウェアについては「SQL Server」を参照してください。

注

  • Commerce Server ダイレクト メーラーは、SQL Server と同じコンピュータにインストールする必要があります。

複数コンピュータの運用環境を構成する方法の詳細については、「サイトの配置」を参照してください。

SQL Server

Commerce Server は、同じネットワーク上で SQL Server 2000 または SQL Server 7.0 にアクセスできる環境が必要です。

SQL Server 2000 の必要条件

  • SQL Server 2000 Client Tools

  • SQL Server 2000 Analysis Services

  • SQL Server 2000 Analysis Services Client Tools

SQL Server 2000 には Microsoft Data Access Components (MDAC) 2.6 が含まれています。

SQL Server 7.0 の必要条件

  • Microsoft SQL Server 7.0 Client Tools

  • Microsoft SQL Server 7.0, Service Pack 2

  • Microsoft SQL Server 7.0 OLAP Services

  • Microsoft SQL Server 7.0 OLAP Services, Service Pack 2

  • OLAP アドイン マネージャ

  • OLAP Server Client Tools

  • Microsoft Data Access Components (MDAC) 2.6

ビジネス デスク クライアント

Commerce Server ビジネス デスク クライアントをインストールする前に、次のソフトウェアをインストールする必要があります。

  • 日本語オペレーティング システム Microsoft Windows 98、Microsoft Windows Millennium Edition、Microsoft Windows NT 4.0、Windows 2000 Professional、Windows 2000 Server、またはWindows 2000 Advanced Server

  • Internet Explorer 5.5

  • Microsoft Office Web コンポーネントまたは SQL Server 2000 Client Tools


ビジネス デスク クライアントをインストールする

Commerce Server を実行しているコンピュータも含め、ビジネス デスクにアクセスするすべてのコンピュータに Commerce Server ビジネス デスク クライアントをインストールする必要があります。サイトをアンパッケージした後で、ビジネス デスク アプリケーションの Uniform Resource Locator (URL) に接続すると、ビジネス デスク クライアントをインストールできます。

また、ビジネス マネージャがビジネス デスク クライアントをダウンロードしてからインストールすることも可能です。ビジネス デスク クライアントをインストールする前に、クライアント コンピュータには次のソフトウェアがインストールされている必要があります。

  • Microsoft Internet Explorer 5.5。Commerce Server 2000 の CD-ROM に同梱されています。

  • Microsoft Office Web コンポーネントまたは SQL Server 2000 Client Tools。

Windows 2000 オペレーティング システムを使用している場合、ビジネス デスク クライアントをインストールするには、管理者のアクセス権が必要です。

注

  • ビジネス デスク クライアントのインストールには、インターネットへの接続が必要です。

  • クライアント コンピュータが、ビジネス デスク アプリケーションに高速で接続できることを強くお勧めします。

ビジネス デスク クライアントをインストールするには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Internet Explorer] をクリックします。

  2. インストールされているビジネス デスクの URL (たとえば、http://<コンピュータ名>/BusinessDesk) を [アドレス] ボックスに入力し、Enter キーを押します。

  3. [フォルダの参照] ダイアログ ボックスでビジネス デスク クライアントをインストールするフォルダを選択し、[OK] をクリックします。

    ビジネス デスク クライアントのセットアップ プログラムが起動します。[ビジネス デスク クライアントのセットアップ] 画面の上部には、ビジネス デスク クライアントのインストールに必要な、Microsoft ActiveX コントロールのダウンロードに関するトラブルシューティングのヒントが表示されます。

    画面の下部には、インストール項目が完了するごとにチェック マークが表示されます。4 つの処理がすべて終了すると、ビジネス デスクのインストールは完了します。ビジネス デスクへのリンクが画面に表示されます。

    注

    • ActiveX コントロールをダウンロードできない場合は、[ビジネス デスク クライアントのセットアップ] 画面に表示される指示に従って操作してください。
  4. ビジネス デスクのインストールが完了したら、Internet Explorer を終了します。

ビジネス デスクのアイコンがデスクトップにショートカットとして表示され、[スタート] メニューにビジネス デスクへのショートカットが追加されます。

ビジネス デスクを起動するには

  • デスクトップ上の [ビジネス デスク] アイコンをダブルクリックするか、または [スタート] ボタンをクリックして [ビジネス デスク] をクリックします。

注

  • 異なるサイト用の 2 つのビジネス デスク クライアントを、コンピュータ上で同時に実行できます。

  • 同じサイト用の同じビジネス デスク クライアントの 2 つのインスタンスを、コンピュータ上で同時に開くことはできません。

関連項目

ハードウェアの必要条件

ソフトウェアの必要条件

ビジネス デスク クライアントをアンインストールする


Commerce Server をアンインストールする

Commerce Server 2000 をアンインストールするには、次に示す手順をこの順序で実行する必要があります。各手順の詳細を次に示します。

  1. Commerce Server 2000 ソリューション サイトを削除します。この手順を実行して、Blank サイトまたは http://www.microsoft.com/japan/commerceserver/productinfo/solsites.htm からダウンロードしたその他のソリューション サイトを削除します。この手順では、Microsoft Commerce Server\PuP Packages ディレクトリからソリューション サイトを削除し、これらのサイトを再びアンパッケージできないようにします。アンパッケージされたソリューション サイトは削除されません。

  2. Commerce Server 2000 のプラットフォームを削除します。この手順を実行すると、Commerce Server Runtime オブジェクト、管理ツール、予測グローバル リソース、およびダイレクト メーラー グローバル リソースが削除されます。

  3. Commerce Server 2000 のインストール フォルダを削除します。

  4. Commerce Server 2000 のデータベースを削除します。データベースには、管理データベース、データ ウェアハウス データベース、プロファイル データベース、カタログ データベースなどがあります。

  5. SQL Server 分析サーバーのデータベース (SQL Server 7.0 では OLAP サーバー) を削除します。

  6. Commerce Server 2000 サイトの仮想ディレクトリを削除します。この手順は、サイトをアンパッケージした場合にのみ実行します。

  7. インターネット インフォメーション サービスから ISAPI フィルタを削除します。この手順は、自動 cookie を設定している場合、または Commerce アプリケーションの認証フィルタの設定をソリューション サイト パッケージが設定した既定値から変更している場合にのみ実行します。

  8. Commerce Server 2000 サイトのフォルダとファイルを削除します。この手順は、サイトをアンパッケージした場合にのみ実行します。

  9. SQL Server のダイレクト メーラー ジョブを削除します。この手順は、ダイレクト メーラーをインストールし、ダイレクト メーラー ジョブを作成した場合にのみ実行します。この手順を実行せずに後でダイレクト メーラーを再インストールすると、以前インストールしていたダイレクト メール ジョブが有効になります。

これらの手順を実行した後に、コンピュータを再起動することをお勧めします。

次に、それぞれの手順を実行する方法について詳しく説明します。

手順 1:Commerce Server 2000 ソリューション サイトを削除する

  1. [スタート] ボタンをクリックし、[設定] をポイントします。次に [コントロール パネル] をクリックします。

  2. [アプリケーションの追加と削除] をダブルクリックします。

  3. [アプリケーションの追加と削除] ダイアログ ボックスの [Commerce Server ソリューション サイト] をクリックし、[追加と削除] をクリックします。

手順 2:Commerce Server 2000 のプラットフォームを削除する

  1. [スタート] ボタンをクリックし、[設定] をポイントします。次に [コントロール パネル] をクリックします。

  2. [アプリケーションの追加と削除] をダブルクリックします。

  3. [アプリケーションの追加と削除] ダイアログ ボックスの [Commerce Server 2000] をクリックし、[追加と削除] をクリックします。

  4. [はい] をクリックして Commerce Server 2000 の削除を確認します。

  5. コンピュータを再起動するかどうかを確認するメッセージが表示されたら、[はい] をクリックします。

手順 3:Commerce Server 2000 のインストール フォルダを削除する

  1. Windows エクスプローラで、Commerce Server がインストールされているディレクトリ (C:\Program Files\Microsoft Commerce Server など) を表示します。

  2. 削除するフォルダをマウスの右ボタンでクリックし、[削除] をクリックします。

  3. [はい] をクリックして削除を確認します。

手順 4:Commerce Server 2000 のデータベースを削除する

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、インストールされているデータベースに応じて [Microsoft SQL Server] または [Microsoft SQL Server 7.0] をポイントし、[Enterprise Manager] をクリックします。

    注

    • SQL Server Enterprise Manager で、SQL Server が実行されていることを確認します。SQL Server が実行されている場合は、[Enterprise Manager] ウィンドウのアイコンが緑色を示しています。実行されていない場合は、SQL Server のコンピュータ名をマウスの右ボタンでクリックし、[開始] をクリックします。
  2. ノードを展開して \Microsoft SQL Servers\SQL Server グループ\<SQL Server 名>\データベースを開きます。

  3. 削除するデータベースをマウスの右ボタンでクリックし、[削除] をクリックします。

    削除するデータベースごとにこの手順を繰り返します。

手順 5:SQL Server 分析サーバーのデータベース (SQL Server 7.0 では OLAP サーバー) を削除する

  1. [スタート] ボタンをクリックして [プログラム] をポイントし、[Microsoft SQL Server] をポイントします。次に [Analysis Services] をポイントして、[分析マネージャ] をクリックします。

  2. ノードを展開して \Analysis Servers\<SQL Server 名> を開きます。

  3. 削除するデータベースをマウスの右ボタンでクリックし、[削除] をクリックします。

  4. 削除するデータベースごとに [はい] をクリックし、フォルダの削除を確認します。

  5. 削除するデータベースごとに 3. と 4. を繰り返します。

手順 6:Commerce Server 2000 サイトの仮想ディレクトリを削除する

  1. [スタート] ボタンをクリックし、[管理ツール] をポイントします。次に [インターネット サービス マネージャ] をクリックします。

  2. ノードを展開して \<コンピュータ名>\<IIS Web サイト名> を開きます。

  3. 削除する仮想ディレクトリ (Retail や Supplier など) をマウスの右ボタンでクリックし、[削除] をクリックします。

  4. 削除する仮想ディレクトリごとに [はい] をクリックします。

  5. 削除する仮想ディレクトリごとに 3. と 4. を繰り返します。

手順 7:インターネット インフォメーション サービスから ISAPI フィルタを削除する

  1. [スタート] ボタンをクリックし、[管理ツール] をポイントします。次に [インターネット サービス マネージャ] をクリックします。

  2. ノードを展開して \<コンピュータ名>\<IIS Web サイト名> を開きます。たとえば、CSServer1\既定の Web サイトを開きます。

  3. IIS Web サイトをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  4. [ISAPI フィルタ] タブの [CSAuthFilter] を選択し、[削除] をクリックします。

手順 8:Commerce Server 2000 サイトのフォルダとファイルを削除する

  1. Windows エクスプローラで、サイトのファイルがインストールされているディレクトリ (C:\Inetpub\wwwroot など) を表示します。

  2. 削除するフォルダをマウスの右ボタンでクリックし、[削除] をクリックします。

  3. 削除するフォルダごとに [はい] をクリックします。

  4. 削除するフォルダごとに 2. と 3. を繰り返します。

手順 9:SQL Server のダイレクト メーラー ジョブを削除する

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、インストールされているデータベースに応じて [Microsoft SQL Server] または [Microsoft SQL Server 7.0] をポイントし、[Enterprise Manager] をクリックします。

  2. ノードを展開して \Microsoft SQL Servers\SQL Server グループ\<SQL Server 名>\管理\SQL Server エージェント\ジョブを開きます。

  3. SQL Server Enterprise Manager の右側のウィンドウにダイレクト メーラー ジョブが表示されます。

  4. 削除するダイレクト メーラー ジョブを選択し、ツール バーの [削除] をクリックします。

これらの手順を実行した後に、コンピュータを再起動することをお勧めします。

関連項目

ビジネス デスク クライアントをアンインストールする


ビジネス デスク クライアントをアンインストールする

ビジネス デスク クライアントをアンインストールするには

  1. [スタート] ボタンをクリックし、[設定] をポイントします。次に [コントロール パネル] をクリックします。

  2. [アプリケーションの追加と削除] をダブルクリックします。

  3. [Commerce Server 2000 ビジネス デスク (アプリケーション名)] を選択し、[変更/削除] をクリックします。

    ビジネス デスク クライアントがコンピュータから削除されます。

関連項目

ビジネス デスク クライアントをインストールする

Commerce Server をアンインストールする


Commerce Server のアーキテクチャ

Microsoft Commerce Server 2000 は、既存のバックエンド システムと統合された高度な電子商取引アプリケーションを構築するための、充実した拡張性のある基盤を提供します。Commerce Server のアーキテクチャは Component Object Model (COM) に基づいているため、サードパーティのさまざまな統合ソリューションの中から選択することや、ビジネス ニーズに合わせてサイト開発者に Commerce Server のツールをカスタマイズしてもらうことによって、プラットフォームを容易に拡張できます。どちらの場合でも、ユーザーの利用環境を最適化し、ビジネス マネージャがリアルタイム分析やオンライン ビジネスの管理を行うための手段を提供する、目的に合わせたスケーラブルな電子商取引ソリューションを構築できるように設計されています。さらに、Microsoft Active Directory サービスのサポートを含めた、Microsoft Windows 2000 の機能を十分に活用しており、ほかの .NET Enterprise Servers と組み合わせて使用できるように最適化されています。

ここでは、Commerce Server のアーキテクチャにおける主要なコンポーネントの概要を紹介します。

ここでは、次のトピックについて説明します。

  • Commerce Server のアーキテクチャの概要 Commerce Server のアーキテクチャを説明し、コンポーネントを表す図を紹介します。

  • Commerce Server と .NET Enterprise Servers 通常、Commerce Server と共に使用される .NET 技術について説明します。

  • Commerce Server マネージャのアーキテクチャ リソース、サイト、アプリケーション、および Web サーバーについて説明し、それぞれが Commerce Server でどのように使用されるかを紹介します。

  • ビジネス デスクのアーキテクチャ Commerce Server ビジネス デスクのコンポーネントと、ビジネス デスクのフレームワークについて説明します。


Commerce Server のアーキテクチャの概要

Commerce Server は、ビジネス分析システム、商品カタログ システム、対象化システム、プロファイル システム、およびビジネス処理パイプライン システムの 5 つの主要なシステムで構成されます。それぞれのシステムは、サイト開発者がビジネス ニーズに合わせて容易にカスタマイズできるように設計されています。

ビジネス マネージャが Commerce Server のシステムを操作するには、Commerce Server ビジネス デスクを使います。たとえば、カタログの更新、コンテンツのユーザーへの対象化、ユーザーと組織のプロファイル、サイトの利用状況と生産性の分析などを行うときに使います。システム管理者は、Commerce Server マネージャを使ってシステム リソースを構成し、アプリケーション、データベース、およびWeb サーバーを管理します。

Commerce Server の各システム、ビジネス デスク、Commerce Server マネージャ、および Commerce Server データベースは、ソリューション サイトにあらかじめ構成され、パッケージ化されています。サイト開発者は、カスタム サイトを構築し、サードパーティ製のアプリケーションを統合するための基礎としてこれらを利用できます。

次の図は、Commerce Server のアーキテクチャの概要を示します。

Commerce Server の概略図
ソリューション サイト
Commerce Server マネージャ
ビジネス デスク
ビジネス分析システム
対象化システム
商品カタログ システム
プロファイル システム
ビジネス処理パイプライン システム
SQL Server
SQL Server
SQL Server
ODBC
LDAP
Commerce Server データ ウェアハウス
カタログ、キャンペーン、注文
プロファイル
ほかのアプリケーション


Commerce Server と .NET Enterprise Servers

Commerce Server 2000 はスタンドアロンの製品ですが、.NET Enterprise Servers を構成するほかの製品とシームレスに運用できるように設計されています。.NET Enterprise Servers は、短期間で市場に投入できる、スケーラブルで統合された Web ソリューションを構築、配置、および管理するための、Microsoft の包括的なサーバー アプリケーション群です。.NET Enterprise Servers を使って、Commerce Server サイトとほかの情報管理システムを統合したシステムを構築できます。このレベルの統合を必要としている場合は、Commerce Server と共に 1 つまたは複数の .NET 技術を実装できます。

通常、Commerce Server と共に使用される .NET 技術には、次のものがあります。

  • BizTalk Server

  • SQL Server

  • Application Center

  • COM+ (コンポーネント オブジェクト モデルの拡張) サービス

  • Host Integration Server

BizTalk Server

Microsoft BizTalk Server 2000 は、企業間の電子文書交換やビジネス プロセス統合のための、包括的なソリューションを提供します。BizTalk Server は、取引先間でのビジネス文書のゲートウェイの役割を果たし、さまざまな転送方法に対応したデータ変換、暗号化、デジタル署名、および文書追跡サービスを管理します。

Commerce Server と BizTalk Server を統合すると、たとえば Web サイトに載せる商品のカタログを交換したり、Web サイトに入力された注文に応じるため、その注文をサプライアに送信することができます。Commerce Server と BizTalk Server の統合の詳細については、「BizTalk Server と統合する」および「BizTalk Server と Commerce Server の使用」を参照してください。

SQL Server

Microsoft SQL Server 2000 は、複雑な分析ツールやデータ ウェアハウス ツールを使いやすくした、スケーラブルなデータベースを提供します。SQL Server には、充実したグラフィカル ユーザー インターフェイス (UI) と共に、データ処理を中心としたアプリケーションを作成するための完成された開発環境が用意されています。

Commerce Server では、いくつかの重要な分野で、SQL Server のデータ ウェアハウス機能と分析機能を利用しています。たとえば、Commerce Server データ ウェアハウスでは、SQL Server のデータ変換サービス (DTS) を使って、SQL Server データベースに格納されているデータを Commerce Server リソースで使用する形式に変換します。

Application Center

Microsoft Application Center 2000 は、Windows 2000 上の Web アプリケーションのための、有用性の高い配置および管理ツールです。Microsoft Windows 2000 で使われる主要な Web アプリケーション サービス (インターネット インフォメーション サービス (IIS) 5.0、アクティブ サーバー ページ (ASP)、COM+、メッセージ キュー) を拡張し、コア オペレーティング システムにはない監視、テスト、および診断ツール群を提供します。Application Center は、スケーラビリティと有用性を強く求める顧客向けに設計されています。

Application Center を Commerce Server と組み合わせることで、配置、Web サイトのインクリメンタル更新、およびロールバックを行うことができます。Application Center を Commerce Server と組み合わせて使う方法の詳細については、「サイトの配置」を参照してください。

COM+ サービス

Microsoft COM+ サービス (MTS を含むコンポーネント サービス) は、コンポーネント ベースの 3 層分散アプリケーションを構築するための、統一プログラミング モデルです。COM+ は、COM と Microsoft Transaction Server (MTS) のトランザクション機能を組み合わせて、Microsoft Component Object Model (COM) 上に構築されています。サイト開発者が、スケーラビリティの高いコンポーネント ベースの分散ソリューションを開発、配置、および管理しやすいように、豊富な機能を追加してプログラミング環境を拡張しています。

Host Integration Server

Microsoft Host Integration Server 2000 は、既存のシステムへの投資を保護しながら、インターネット、イントラネット、およびクライアント/サーバー技術のサポートを提供する包括的な統合プラットフォームです。企業のコンピューティング リソースを活用する上で、既存のデータへのアクセスは単なる第一歩にすぎません。Host Integration Server は、企業の開発者がクライアント/サーバーまたは Web コンピューティングとホスト情報を十分に活用する分散アプリケーションを作成する手段を提供します。

関連項目

BizTalk Server と統合する

BizTalk Server と Commerce Server の使用

サイトの配置

Commerce Server オブジェクトを使ってプログラミングする


Commerce Server マネージャのアーキテクチャ

Commerce Server マネージャは、Commerce Server 2000 のリソース、サイト、アプリケーション、および Web サーバーの管理と設定に使用するツールです。Microsoft Windows 2000 に付属の Windows ベースのインターフェイスである Microsoft 管理コンソール (MMC) が、Commerce Server マネージャのホストになります。ここでは、Commerce Server マネージャの各オブジェクトの機能と関係について説明します。

次の図は、Commerce Server マネージャのコンソールとその構成要素を示します。

図をクリックすると、拡大または縮小します。

ここでは、次のトピックについて説明します。

  • リソース

  • サイト

  • アプリケーション

  • Web サーバー

  • Commerce Server と IIS を使用する


リソース

リソースは、Commerce Server サイトのアプリケーションに機能を提供します。

リソースは、アプリケーションの Web ページでリソース機能へのアクセスに使われる、1 つ以上の COM オブジェクトで構成されます。リソースには、管理データベースに格納されているプロパティがあります。これらのプロパティは、Commerce Server マネージャを使ってアクセスし、変更できます (また、Config オブジェクトを通じてプログラムから変更できます)。

リソースには、グローバル リソースとサイト リソースの 2 種類があります。サード パーティは、Commerce Server で使用するカスタム グローバル リソースとサイト リソースを開発できます。詳細については、「カスタム リソースを統合する」を参照してください。

グローバル リソース

グローバル リソースは、すべてのサイトで使用できます。

グローバル リソースには、Commerce Server のセットアップ時に作成されるものと、Commerce Server サイト パッケージャを使ってサイトをアンパッケージするときに作成されるものがあります。Commerce Server マネージャの [グローバル リソース] ノードには、グローバル レベルのプロパティを持つリソースのみが表示されます。グローバル リソースを使うサイトはすべて、そのグローバル リソースに割り当てられたプロパティも使います。

次の表は、Commerce Server に用意されているグローバル リソースの一覧と説明を示します。

グローバル リソース | 説明 | リソースをインストールするプログラム
Commerce Server ダイレクト メーラー: Direct Mail (Windows 2000 のサービスでもあります) | パーソナライズされたメーリングまたはパーソナライズされていないメーリングを、多数の受信者のグループ宛てに送信します。 | Commerce Server のセットアップ プログラム
予測: Predictor (Windows 2000 のサービスでもあります) | Web サイトに予測機能を追加し、ユーザーのセグメントと傾向を特定するための複雑な分析モデルを構築します。 | Commerce Server のセットアップ プログラム
データ ウェアハウス: Data Warehouse | Web ログ ファイル、Commerce Server データベース、およびその他のデータ ソースから Web サイトのデータをインポートして管理します。 | Commerce Server サイト パッケージャ
CS 認証: CS Authentication | Commerce Server サイトの認証と識別の方法を構成します。 | Commerce Server サイト パッケージャ
プロファイル: Profiles | プロファイル データを格納するデータ ソースを作成し、プロファイル定義とプロパティの作成と格納を行います。 | Commerce Server サイト パッケージャ

サイト リソース

サイト リソースは、特定のサイトに機能を提供します。

Commerce Server マネージャでは、サイトの下にグローバル リソース ポインタとサイト リソースが表示されます。サイト リソースのプロパティはサイト レベルで設定します。グローバル リソース ポインタは、グローバル レベルでグローバル リソースを指すように設定します。

リソースは、そのすべてのプロパティをサイト レベルまたはグローバル レベルにすることができます。ただし、両方のレベルのプロパティを持つことはできません。

次の表は、Commerce Server に用意されているサイト リソースの一覧と説明を示します。

サイト リソース | 説明
App Default Config (アプリケーション既定の構成) | 通貨のロケールと記号、請求と支払いのオプション、プライバシーのオプション、重量の測定単位、BizTalk Server との統合のオプションなど、サイトを構成するためのプロパティを格納します。
Campaigns (キャンペーン) | キャンペーン (広告、割引、およびダイレクト メール) に関するデータを格納するデータベースに接続します。
Product Catalog (商品カタログ) | カタログ スキーマと商品データを格納するデータベースに接続します。
Transactions (トランザクション) | バスケットと注文のデータを格納するデータベースに接続します。
Transactions Config (トランザクションの構成) | 送付方法、税率、都道府県/地域コード、および注文状況コードのデータを格納するデータベースに接続します。

関連項目

Commerce リソースの管理

カスタム リソースを統合する

カスタム スナップイン拡張を統合する

サイトの配置


サイト

サイトとは、リソースを使用および変更する、Commerce Server Component Object Model (COM) オブジェクトを使用する ASP ベースのアプリケーションの集合です。サイトは、サイト内のアプリケーションをまとめて管理するための手段となります。

サイトには、通常、少なくとも 2 つのアプリケーションがあります。1 つはユーザーがオンライン ストアを表示するためのアプリケーションで、もう 1 つはビジネス マネージャが Commerce Server ビジネス デスクにアクセスするために使用するアプリケーションです。また、サイトにほかのアプリケーションが含まれることもあります。たとえば、1 つのサイトには www.alpineskihouse.com、www.alpineskihouse.com/equipment、www.alpineskihouse.com/clothing,、www.alpineskihouse.com/BusinessDesk などが含まれます。これらのアプリケーションはすべて、複数のサーバーに分散できます。

サイトでは、グローバル リソース (複数のサイトで共有されるリソース) と、サイト リソース (特定のサイト用として明示的に定義されるリソース) の両方を使用できます。

Commerce Server マネージャのサイト ノードから、サイトをパッケージ化したり、リソースの追加と削除を行うことができます。

関連項目

Commerce サイトの管理

サイトの配置

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする


アプリケーション

Commerce Server 2000 のアプリケーションは Web サイトです。この Web サイトはインターネット インフォメーション サービス (IIS) 5.0 アプリケーションを論理的に表現したもので、Commerce Server マネージャと IIS の両方のコンソール ツリーに表示されます。IIS のコンソールでは、アプリケーションは Web サイトのホーム ディレクトリ レベルまたはサブディレクトリ レベルで表示されます。

アプリケーションは、Web クライアントがアクセスする Web アドレスを表しています。Commerce Server にアプリケーションを追加すると、そのアプリケーションの構成データを使って、管理データベースが更新されます。アプリケーションに Web サーバーを追加すると、Web サーバー コンピュータに Active Server Pages (ASP) ファイルがインストールされます。

Commerce Server サイトをアンパッケージすると、通常、2 つのアプリケーションがインストールされます。1 つは商品の参照と購入のためにユーザーがアクセスする Web サイト用のアプリケーションで、もう 1 つはそのサイトの管理に使用される Commerce Server ビジネス デスク用のアプリケーションです。アプリケーションが使用できるのは、そのアプリケーションが属するサイトのリソースだけです。

アプリケーションにはそれぞれ独自の Web サーバーがあり、Web サーバーは Web サイト用の ASP ページのコンテンツを提供します。複数の Web サーバーが含まれているアプリケーションもありますが、どのアプリケーションにも少なくとも 1 つの Web サーバーが含まれています。サイトは、IIS Web サイトのルート レベル、またはルートの下の任意レベルの仮想ディレクトリに設定できます。

IIS のコンソールと Commerce Server マネージャのコンソールからは、次の機能を実行できます。

  • IIS スナップインのアプリケーション ノードからは、仮想ディレクトリ レベルにあるすべてのプロパティを設定できます。たとえば、仮想ディレクトリのプロパティ、既定の文書、ディレクトリのセキュリティ、ハイパーテキスト転送プロトコル (HTTP) ヘッダー、カスタム エラーなどを設定できます。また、Microsoft FrontPage Server Extensions を構成したり、アプリケーションの名前の変更や削除を行うこともできます。

  • Commerce Server マネージャのアプリケーション ノードから、保護なしのホスト名の設定、保護付きのホスト名の設定、IIS アプリケーション パスの設定、HTTPS の有効化、自動 cookie の有効化、認証フィルタの有効化、およびアプリケーションに含まれるすべての Web サーバーに共通した設定の構成を行うことができます。

IIS から Commerce Server に継承されるプロパティの詳細については、「Commerce Server と IIS を使用する」を参照してください。

関連項目

Commerce アプリケーションと Web サーバーの管理

サイトの配置

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする


Web サーバー

Commerce Server では、インターネット インフォメーション サービス (IIS) 5.0 がインストールされているコンピュータを Web サーバーと呼びます。Commerce Server 2000 で Web サーバーを使うには、IIS と同じコンピュータに Commerce Server をインストールする必要があります。

Commerce Server では、1 つの Web サーバーを 1 つまたは複数のアプリケーションと関連付けることができます。したがって、複数のアプリケーションで同じ Web サーバーを共有することが可能です。Web サーバーには、アプリケーション用の ASP ファイルとサブフォルダがあります。1 つのアプリケーションに複数の Web サーバーが含まれ、まとまって Web ファームを形成する場合もあります。

Web サーバーに ASP ファイルを追加するには、Commerce Server サイト パッケージャを使って、その Web サーバーをアンパッケージします。アンパッケージが完了すると、Commerce Web サーバー オブジェクトはアプリケーションに追加されます。Commerce Server マネージャでは、Web サーバー オブジェクトは関連付けられたアプリケーションの下に公開されます。

Web サーバー オブジェクトには、データ ウェアハウスにログ ファイルをインポートするために必要なプロパティが含まれています。Commerce Server マネージャの Web サーバー ノードからは、次のプロパティを表示したり変更することができます。

プロパティ | 説明
サーバー名 | IIS がインストールされているコンピュータの名前です。
IP アドレス | アプリケーションの IIS Web サイトのインターネット プロトコル (IP) アドレスです。
ログ ファイル パス | アプリケーションの IIS Web サイトがイベントを書き込むパスです。たとえば、C:\Winnt\System32\Log1 です。
ログ ファイル出力期間 | アプリケーションの IIS Web サイトがログ ファイルを保持する期間です。この期間を過ぎるとデータは上書きされます。

Web サーバーを追加すると、これらのプロパティが IIS 5.0 から Commerce Server 管理データベースに自動的に読み込まれます。

Commerce Server は、IIS が実行されていない Web サーバーや、Commerce Server コンポーネントが含まれていない Web サーバーもサポートしています。このため、Web サーバーのログ ファイルもデータ ウェアハウスにインポートできます。詳細については、「非 Commerce のアプリケーションと Web サーバーを追加する」を参照してください。

複数のアプリケーションで 1 つの Web サーバーを共有できます。各アプリケーションには一意の URL があり、一意の URL は 1 つの IIS Web サイトで利用できます。たとえば、www.microsoft.com と www.microsoft.com/commerceserver は、同じ IIS Web サイトで利用できます。

Web ファームを実行している場合は、Web サーバーを複製する必要があります。Application Center Server 2000 またはその他の製品を使って、コンテンツ レプリケーションを実行することをお勧めします。

関連項目

Commerce Server と IIS を使用する

サイトの配置

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする


Commerce Server と IIS を使用する

Commerce Server 2000 の日常的な管理を担当しているシステム管理者は、一般的にインターネット インフォメーション サービス (IIS) 5.0 の管理も担当します。

Commerce Server は IIS 上で動作しますが、IIS オブジェクトと Commerce Server オブジェクトが厳密な階層を形成しているわけではありません。Commerce Server サイトに影響を与えるプロパティには、次のようなものがあります。

  • IIS レベルでのみ設定されるプロパティ

  • IIS から独立した、Commerce Server でのみ設定されるプロパティ

  • IIS から継承されるプロパティ

Web サイトのアクセス権限とセキュリティ、パフォーマンス、ディレクトリとパス、Web サイト名の識別、およびインターネット プロトコル (IP) アドレスとポート番号の管理には、IIS スナップインを使います。

Commerce Server マネージャでは、次の作業を行います。

  • Commerce Server のグローバル リソースとサイト リソースの管理、Commerce Server 固有のプロパティの設定、リソースのデータベース接続文字列の設定、およびアプリケーションへの Web サーバーの追加と削除。

  • Commerce Server のアプリケーション レベルでは、IIS アプリケーション パス、IIS Web サイト、保護なしのホスト名、保護付きのホスト名、IP ポート、および保護付きの IP ポートを指定できます。また、プロパティを設定することで、HTTPS の有効化、自動 cookie の有効化、および認証フィルタの選択を行うことができます。これらのプロパティは、アプリケーションが使用するすべての Web サーバーに適用されます。

    Commerce Server でポートのプロパティを変更した場合、その変更は自動では IIS に反映されません。ポートのプロパティのうち、IIS で実際に使用されるプロパティを次に示します。

    アプリケーション レベルで使用されるプロパティ

    • 伝送制御プロトコル (TCP) ポート

    • Secure Sockets Layer (SSL) ポート

    各 Web サーバーで使用されるプロパティ

    • IP (インターネット プロトコル) アドレス

    • ログ ファイル パス

    • ログ ファイル出力期間

    IIS でポートのプロパティを変更した場合は、Commerce Server でも同じプロパティを変更する必要があります。

    Web サーバーのプロパティは IIS から継承されます。継承されたプロパティは、簡単にアクセスできるように管理データベースに格納されます。IIS 側のプロパティを変更した場合は、手動で新しい値を更新するか、または [<アプリケーション名> のプロパティ] ダイアログ ボックスの [Web サーバー] タブの [値の同期] をクリックして、管理データベースを同期させる必要があります。詳細については、「アプリケーションを構成する」を参照してください。

    [値の同期] をクリックすると、アプリケーション レベルのプロパティと、そのアプリケーションの下にあるすべての Web サーバー オブジェクトのプロパティとの同期が取られます。具体的には、アプリケーション レベルのプロパティ (TCP ポートと SSL ポート) に、最初の Web サーバーの対応するプロパティの値が読み込まれます。これには、すべての Web サーバーがまったく同一に構成されていることが前提となります。構成が異なると、Web ファームは正常に機能しません。

  • Commerce Server の Web サーバー レベルでは、IP アドレス、ログ ファイルのパス、およびログ ファイル出力期間に関するプロパティを表示したり変更することができます。

次の図は、IIS のコンソール ツリーおよび Commerce Server マネージャのコンソール ツリーに表示されるオブジェクトと、各オブジェクト間の関係を示します。

IIS および Commerce Server マネージャのオブジェクト間の関係を示す図

図をクリックすると、拡大または縮小します。

関連項目

Commerce Server の管理

非 Commerce のアプリケーションと Web サーバーを追加する

サイトの配置

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする


ビジネス デスクのアーキテクチャ

Commerce Server ビジネス デスクは、Commerce Server 2000 で利用できる Web ベースのサイト管理ツールです。ビジネス デスクは、サイトの構成、管理、および分析に使うビジネス管理モジュールのホストの役割を果たします。たとえば、ビジネス デスク モジュールを使って、カタログの価格情報を更新したり、特定のユーザーを新しい広告の対象に指定します。また、レポートを実行して、サイトに加えた変更がサイトの生産性に与える影響を測定するときにも使用できます。

ビジネス デスクは、ビジネス デスク アプリケーションとビジネス デスク クライアントの 2 つの要素で構成されます。

  • ビジネス デスク アプリケーション サイトの構成、管理、および分析を行うための管理ツールです。Commerce Server をインストールした後に、ソリューション サイトをアンパッケージしてインストールします。ビジネス デスクは、Microsoft Internet Explorer 5.5 を実行する任意のコンピュータから利用でき、安全なリモート アクセスを提供します。

  • ビジネス デスク クライアント コンピュータのローカルにインストールされ、ビジネス デスク アプリケーションとのインターフェイスを提供するクライアント ソフトウェアです。URL を指定して初めてビジネス デスク アプリケーションにアクセスしたときに、ビジネス デスク クライアントがダウンロードされ、コンピュータにインストールされます。ビジネス デスク クライアントを実行するコンピュータとビジネス デスク アプリケーションは、高速回線で接続することをお勧めします。

次の図は、ビジネス デスク クライアントを使ってリモートからビジネス デスク アプリケーションにアクセスし、Web サイトを更新する方法を示します。

ビジネス デスク
クライアント
ビジネス デスク
クライアント
ビジネス デスク
クライアント
Commerce Server
データ センター
ビジネス デスク
アプリケーション
Web サイト
ニューヨーク
東京
シカゴ
ニューヨーク
インターネット
ビジネス デスク クライアントがビジネス デスク アプリケーションにアクセスする方法を示す図

ここでは、次のトピックについて説明します。

  • ビジネス デスクのコンポーネント

  • ビジネス デスクで Web サイトを更新する

  • ビジネス デスク モジュールのセキュリティを設定する

  • ビジネス デスクをカスタマイズする

  • ビジネス デスク フレームワーク


ビジネス デスクのコンポーネント

サイトのさまざまな側面の管理には、Commerce Server ビジネス デスクの主要なコンポーネントであるモジュールを使います。次の表は、ビジネス デスクのモジュール、そのモジュールが属するカテゴリ、およびそれぞれの機能の一覧を示します。

カテゴリ 説明
分析

レポート
完了したレポート
セグメント ビューア

 サイトの利用状況を表すレポートの実行や確認を行ったり、予測分析を実行します。分析モジュールには、サイトのさまざまな側面を扱う多くのレポートが含まれています。
キャンペーン

キャンペーン マネージャ
 リスト マネージャ
 キャンペーン式
 対象グループ
 参照テーブル
 キャンペーンの発行

 マーケティング キャンペーンの作成とスケジュール設定を行います。顧客情報を追加し、広告バナー、ダイレクト メーラー ジョブ、および商品割引の作成などによってキャンペーンとキャンペーン項目を管理します。各キャンペーン項目の対象を特定のユーザー層に絞って、きわめてパーソナライズされたユーザー環境を作成できます。
カタログ

カタログ デザイナ
 カタログ エディタ
 カタログ セット

 カタログのインポート、カタログの作成、および商品の追加と価格設定を行います。また、特別価格が含まれ、クラブの会員などの特定のユーザーだけに表示されるカスタム カタログを作成します。
注文

バスケット マネージャ
 データ コード
 注文状況
 送付方法
 税率
 トランザクションの発行

 Commerce Server データベースから既存の注文情報を検索したり、注文情報の追加、削除、承認、および変更を行います。また、送付方法と税率の追加、削除、および変更を行います。
ユーザー

ユーザー
 組織
 プロファイル デザイナ
 サイト用語エディタ
 プロファイルの発行

 ユーザー、組織、およびプロファイルの作成と変更を行います。また、サイト用語の作成と変更を行います。

関連項目

ビジネス デスクの活用方法


ビジネス デスクで Web サイトを更新する

次の図は、Commerce Server ビジネス デスク モジュールを使って Web サイトを更新する方法を示します。たとえば、Web サイトから収集したサイト データをデータ ウェアハウスにインポートすると、分析レポートを実行することができます。広告、割引、および宣伝を作成、表示するには、キャンペーン モジュールを使います。カタログの情報を更新するには、カタログ モジュールを使います。ユーザーの注文を調べるには、注文モジュールを使います。ユーザーのパスワードをリセットしたり、そのほかのユーザー プロファイル情報を変更したり、収集するプロファイル データを指定するには、ユーザー モジュールを使います。

ビジネス デスク モジュールで Web サイトを更新する方法を示す図
ユーザー
注文
キャンペーン
注文
プロファイル
Commerce Server
データ
ウェアハウス
ユーザーの
登録
ビジネス デスク
Commerce Server データベース
Web サイト
カタログの表示
カタログ
カタログ
キャンペーン
分析
ユーザーの
活動の記録
注文の
受け付け
広告の表示


ビジネス デスク モジュールのセキュリティを設定する

Commerce Server ビジネス デスクには、ロール ベースのセキュリティが備わっています。ビジネス デスクのユーザーは、自分が権限を持つモジュールだけを表示および管理することができます。たとえば、あるユーザー グループがカタログ デザイナ モジュールを使わない場合は、そのグループのユーザーがビジネス デスクにアクセスしたときに、カタログ デザイナ モジュールがナビゲーション ウィンドウに表示されないようにすることができます。サイト開発者がモジュールへのユーザー アクセスを制限すると、そのモジュールにアクセスする権限のないユーザーにはモジュールが表示されません。

ビジネス デスクの特定のモジュールへのアクセスを制限する機能は、不正なセキュリティ違反の防止を目的としたものではありません。むしろ、無関係なビジネス デスク モジュールをユーザーから隠すためのものです。

セキュリティは、システム管理者が実装します。ビジネス デスク モジュールのセキュリティを設定する場合、システム管理者はモジュールの Active Server Pages (ASP) ファイルに Windows アクセス制御リスト (ACL) を設定する必要があります。詳細については、「セキュリティ」を参照してください。

注

  • プロファイルの発行、キャンペーンの発行、トランザクションの発行のいずれかのモジュールにセキュリティを設定すると、特に指定しない限り、すべてのモジュールにセキュリティが設定されます。

  • この機能を使って、ビジネス デスク内の特定のデータへのアクセスを制限することはできません。ビジネス デスクに表示されるデータへのアクセスを制限する場合は、システム管理者またはサイト開発者に依頼して、データベース レベルでセキュリティを設定します。たとえば、ビジネス デスクのユーザーに特定のカタログの編集だけを許可する場合は、サイト開発者がセキュリティを設定します。

  • 認証されていないセッションを通じてユーザーがインターネットからビジネス デスクに接続すると、ビジネス デスク アプリケーションに対する認証を行うために、ユーザー名、パスワード、およびドメイン名の入力を求める画面が Internet Explorer に表示されます。

関連項目

ビジネス デスク モジュールへのアクセスを制限する

ビジネス デスク モジュールを構築する


ビジネス デスクをカスタマイズする

サイト開発者とシステム管理者は、ビジネス ニーズに合わせて Commerce Server ビジネス デスクをカスタマイズできます。たとえば、サイト開発者は機能の追加や削除、ビジネス デスクと既存のアプリケーションとの統合、ビジネス デスクが特定の機能を実行する方法の変更などを行うことができます。

次の表は、ビジネス デスクのユーザーがシステム管理者やサイト開発者とカスタマイズを調整できる項目を示します。

ビジネス デスクのコンポーネント カスタマイズと調整
分析 :レポート モジュール
  • サイト開発者は、ビジネス ニーズに合わせて、新規またはカスタマイズされたレポートを作成できます。ビジネス デスクのユーザーも、ビジネス デスクのレポート モジュールの既存の動的レポートを基にして、カスタム レポートを作成できます。

  • システム管理者は、データを定期的にデータ ウェアハウスにインポートする責任があります。ビジネス デスクのユーザーは、データ ウェアハウスにインポートされたデータに対してレポートを実行し、それを分析できます。

  • システム管理者は、データ ウェアハウスにインポートされる Web ログ ファイルのデータをカスタマイズできます。また、実行するレポートの結果に影響を及ぼすユーザーと訪問の定義も設定できます。
分析 :セグメント ビューア モジュール
  • セグメント モデルを表示するには、ビジネス デスクのセグメント ビューア モジュールを使います。システム管理者は、セグメント モデルを構築する必要があります。

  • 予測モデルを表示するには、Commerce Server マネージャの予測モデル ブラウザを使います。予測モデルの表示については、システム管理者に問い合わせてください。
ユーザー
  • システム管理者は、Commerce Server マネージャを使ってプロファイル定義を作成し、データ ソース、データ メンバ、およびデータ オブジェクトを追加します。ビジネス デスクのユーザーは、ビジネス デスクを使ってプロファイル定義にプロファイル プロパティを追加するときに、データ ソース、データ メンバ、およびデータ オブジェクトを必要に応じて選択します。
システムの全般的な設定
  • システム管理者は、測定単位、通貨オプション、支払いオプション、Web サイトの登録とセキュリティのオプションなどのシステム設定を行います。ビジネス デスクのユーザーは、これらのオプションや設定の変更をシステム管理者と調整する必要があります。

関連項目

ビジネス デスク フレームワーク

ビジネス デスク モジュールを構築する


ビジネス デスク フレームワーク

Commerce Server ビジネス デスクは、主に Dynamic Hypertext Markup Language (DHTML) を含んだ Active Server Pages (ASP) として実装されるユーザー インターフェイス フレームワークです。このフレームワークが提供する構造化された環境を利用することによって、サードパーティの開発者は Commerce Server 2000 に備わっている管理機能を容易に拡張できます。この環境には、構造化されたページ ナビゲーション、データ操作のための標準的なしくみ、共有ユーティリティ ルーチン、一貫したユーザー環境を実現するためのさまざまな規則などが含まれます。

特に指定しない限り、すべての Commerce Server Web サイトにビジネス デスクの個別のインスタンスが関連付けられます。ビジネス デスクは、各種のデータベースなど、同じ Commerce Server のリソースを Web サイトと共有しますが、独自のディレクトリ構造と仮想ルートを持つ独立した ASP アプリケーションとして存在します。

Commerce Server ビジネス デスク フレームワークは、ビジネス デスク モジュールの実行環境を提供します。次の図は、ビジネス デスク フレームワークがナビゲーションをサポートするために必要な 2 種類の重要な情報を、構成ファイルで指定するしくみを示します。1 番目の種類の情報は、ビジネス デスク内でアクセスできる分類されたモジュール群を規定します。2 番目の種類の情報は、通常、操作ページごとに異なるタスク バーの作成と管理に使われます。

マスター構成ファイル
モジュール
構成
ファイル
モジュール
構成
ファイル
モジュール
構成
ファイル
ツール バー ボタン
およびメニュー
ナビゲーション ウィンドウ
分析
キャンペーン
カタログ
注文
ユーザー
ナビゲーション
ListSheet HTC
DynamicTable HTC
個々の EditField HTC
モジュール 1
モジュール 1
モジュール 1
?
?
?
?
Commerce Server の概略図

この図は、最初の操作ページが一覧ページであり、そこからタスク ボタンを使って編集ページにアクセスできるようにモジュールがデザインされる一般的なしくみも示しています。また、ユーザーが別のモジュールに移動するには最初の一覧ページに戻る必要がある、一般的なデザインも示しています。

ビジネス デスク フレームワークには、次のような特徴があります。

  • マスター構成ファイルは、一連のモジュール構成ファイルと共に、ビジネス デスク フレームワークが各操作ページに表示されるナビゲーション ウィンドウとタスク バーを管理するために必要な情報を提供します。

  • 読み取り専用の一覧が表示される操作ページ (一覧ページ) は、常にナビゲーション ウィンドウと共に表示されます。このため、別のモジュールに移動する場合、ユーザーは編集ページからではなく、一覧ページから移動する必要があります。一覧ページは (削除タスクを除いて) 読み取り専用なので、通常はモジュールから別のモジュールに移動するユーザーに対して、データの変更を保存するかどうかの確認は行われません。

  • 操作ページ間の移動は、通常、タスク バーのタスク ボタンを使って行います。このしくみを利用することで、ビジネス デスク フレームワークは操作ページ間の移行中に発生するサービスを提供できます。操作ページをページ内のボタンに直接リンクすることは、できるだけ避ける必要があります。

関連項目

ビジネス デスク モジュールを構築する


Commerce Server の概念

Microsoft Commerce Server 2000 を最大限活用するには、この製品の基本概念を十分に理解することが重要です。

ここでは、次のトピックについて説明します。

  • サイト管理サイクル Commerce Server を使って、常に Web サイトでのユーザーの利用状況に関するデータを収集し、そのデータを分析し、分析結果を使ってサイトを更新する方法を説明します。

  • サイト運営のための役割分担と責任 Commerce Server が、3 つの主要なユーザー層の技術に合わせて設計されていることを説明します。3 つのユーザー層とは、Web サイト開発者、システム管理者、およびビジネス マネージャです。また、各ユーザー層が利用できるインターフェイスとツールを紹介します。

  • プロファイル Commerce Server のプロファイル、プロファイルの作成方法、および Web サイトの管理におけるプロファイルの使い方について説明します。

  • ユーザー リストとメーリング リスト Commerce Server のユーザー リストとメーリング リスト、およびWeb サイトの管理におけるこれらのリストの使い方について説明します。

  • cookie と認証 Commerce Server の cookie、および Commerce Server における cookie の使い方について説明します。

  • カタログ : 販売用の商品 Commerce Server のカタログ、Web サイトの管理におけるカタログの使い方、カタログの構築方法、およびカタログの商品データの生成方法について説明します。

  • データ ウェアハウス Commerce Server のデータ ウェアハウス、Web サイトの管理におけるデータ ウェアハウスの使い方、およびデータ ウェアハウスのデータの生成方法について説明します。

  • 予測とデータ マイニング Commerce Server の分析モデル、および Web サイトの管理における分析モデルの使い方について説明します。

  • パイプライン Commerce Server のパイプライン、およびその使い方について説明します。

  • 対象化とパーソナライズ Commerce Server の対象化とパーソナライズ、および Commerce Server で対象化とパーソナライズを実行する方法について説明します。

  • キャンペーン : 広告、割引、および ダイレクト メール Commerce Server のキャンペーン、Web サイトの管理におけるキャンペーンの使い方、キャンペーンの構築方法、およびキャンペーンの処理方法について説明します。


サイト管理サイクル

電子商取引 Web サイトは企業資産です。Web サイトの競争力を保つために、ビジネス マネージャは絶えずサイトを分析して、その機能を強化する必要があります。ビジネス マネージャは、ユーザーの利用状況を迅速に分析してサイトの有効性を測定し、その結果に基づいてサイトを調整する必要があります。サイトを絶えず分析してその機能を強化することにより、電子商取引サイトのサイト管理サイクルが確立されます。

ユーザーおよび顧客
ビジネス
マネージャ
サイト開発者
分析
更新
配置
Web サイト

Commerce Server 2000 には、サイトを管理してその有効性を高めるための、一連の機能が用意されています。Commerce Server を使うと、次のようなことができます。

  • ユーザー データを収集および格納する

  • ユーザー ユーザー データを分析する

  • サイトを更新する

  • サイクルを実現する - 共同作業

サイトでのユーザーの利用状況に関するデータを分析することで、サイトをより良くし、事業目標を達成する方法を決定できます。

ユーザー データを収集および格納する

サイトを訪問するユーザーに関して、次の 3 種類のデータを収集できます。

  • 明示プロファイル データ ユーザーがオンライン フォーム、アンケート、および投票に入力し、自分に関する情報を提供したときに取得されます。

  • クリック履歴 ユーザーがサイトを訪問し、サイト ページへのリンクをクリックしたときに取得されます。クリック履歴には、ユーザーがサイトの訪問に費やした時間、参照元 URL、広告クリック、広告到達、クリックの頻度、および最初に参照したページと最後に参照したページを含めてユーザーがサイトで利用した "経路" が含まれます。たとえば、あるユーザーがサイトを 17 分間訪問し、3 つのカタログ商品のカタログ説明を表示し、そのうちの 2 つをバスケットに入れ、1 つの宣伝広告をクリックし、その宣伝品目をバスケットに追加したというような、ユーザーがサイトを利用する状況を収集できます。

  • トランザクション履歴 ユーザーが商品を購入したときに取得されます。トランザクション履歴には、バスケットと注文が記録されます。たとえば、トランザクション履歴に、ユーザー名、送付先、日時、購入商品、および注文金額合計を含めることができます。

このデータは、Web サーバー ログ ファイルと Commerce Server データベースに収集されます。システム管理者は、Web サーバー ログ ファイルと Commerce Server データベースのデータを、Commerce Server データ ウェアハウスに定期的にインポートします。データ ウェアハウスには、Web サーバー ログ ファイル、Commerce Server データベース、およびユーザーが指定したその他のデータ ソースなど、複数のデータ ソースから収集した大量のデータを格納する管理データベースがあります。

次の図は、ユーザー データが Web サーバー ログと Commerce Server データベースに収集され、データ ウェアハウスに格納されるしくみを示します。

Commerce Server データ ウェアハウス
ユーザー プロファイル データ
イベント データ
トランザクション データ キャンペーン データ
カタログ データ
Commerce Server データベース
ビジネス デスク
データ収集
インポート
表示
インポート
Web サーバー ログ
Web サイト
ユーザー

ユーザー データを分析する

データ ウェアハウスのデータを分析して、ビジネスに関する重要な情報を判断します。サイトを訪問するユーザーの種類、売れ行きの良い商品、および成功した広告キャンペーンを確認できます。

サイトでのユーザーの利用状況に関するデータを分析するには、Commerce Server ビジネス デスクの分析モジュールを使います。ユーザーの利用状況を分析するには、データ ウェアハウスに対してレポートを実行するか、または Commerce Server 予測リソースが生成する分析モデルを表示します。

次の図は、ビジネス デスクを使ってデータ ウェアハウスのデータにアクセスし、さまざまな種類の分析を実行する方法を示します。

ビジネス デスク
ユーザー データの
分析
レポートの実行
セグメント モデルの表示
予測リソース
サイト利用状況データ
サイト利用状況データ
Commerce Server
データ ウェアハウス

Commerce Server には、サイトの利用状況の分析に使用できる次の 2 種類のレポートが用意されています。

  • 動的レポート 特定のデータを MicrosoftR PivotTableR 形式に変換します。これを基に、列の再配置やチャートの作成を行うことができます。

  • 静的レポート ブラウザのウィンドウに HTML 形式で表示されます。この種類のレポートは、電子メールでほかの人に送信したり、Web サイトに掲載したり、ほかのアプリケーションで編集することができます。たとえば、Microsoft Internet Explorer を使ってレポートを Word 文書にエクスポートし、編集することができます。

Commerce Server には、広告のレポート、商品の売り上げのレポート、Web の利用状況のレポートなどの、ビジネス デスクから実行できるさまざまなレポートが用意されています。サイト開発者はこれらのレポートのいずれかを使うことも、ほかのデータを取得できるようにレポートをカスタマイズすることもできます。Commerce Server に用意されているすべてのレポートの一覧については、「Commerce Server のレポート」を参照してください。

レポートを分析するほかに、ビジネス デスクでセグメント ビューアを使って、セグメント モデルを分析することもできます。セグメント モデルは、サイトを訪問するユーザーの中からセグメントを特定します。セグメントとは、同様の特性を持つユーザーのグループです。たとえば、SF 小説を購入する女性ユーザーのセグメントなどが考えられます。また、ゴルフに関する書籍を購入する男性ユーザーのセグメントも考えられます。ユーザー セグメントの特性を特定したら、この情報を使ってサイトを更新し、コンテンツの対象をそのユーザー セグメントに設定できます。

サイトを更新する

対象ユーザーの絞り込みや人気ページの宣伝をしたり、人気商品を検索しやすくするために、ユーザー データの分析に基づいてサイトを変更することができます。たとえば、すべてのユーザーが、ホーム ページから 4 回クリックすると表示されるページを閲覧していることがわかった場合、そのページが 1 回のクリックで表示されるようにサイトのデザインを変更できます。

また、分析結果を使って、特定のユーザー グループに対象を絞ったり、カタログの特定の商品を販売したり、広告や割引を作成することもできます。たとえば、サイトでスポーツ用品を販売するとします。ユーザーの利用状況を分析し、ビジネス デスクのキャンペーンを使って、自転車の好きな登録済みユーザーのリストを生成します。次に、新しい自転車用アクセサリの広告の対象をこのグループに設定し、これらのユーザーがサイトを訪問したときに目立つように広告を表示します。ユーザーの対象化の詳細については、「対象化とパーソナライズ」を参照してください。

サイクルを実現する - 共同作業

サイト管理サイクルを効果的に構築するには、ビジネス マネージャ、サイト開発者、およびシステム管理者が連絡を取り合って、共同でサイトを更新する必要があります。この連絡を円滑に行うには、連絡方法を確立する必要があります。たとえば、多数のユーザー プロファイルを一括更新する場合は、ビジネス マネージャがシステム管理者に連絡し、システム管理者がこの作業を実行します。ビジネス デスクに商品券を販売するモジュールなどの新しい機能を追加する場合は、ビジネス マネージャーがサイト開発者に連絡し、要求を伝える必要があります。

多くの組織では、ビジネス マネージャ、システム管理者、およびサイト開発者が、それぞれ異なる部署、都市、または国に勤務している場合があります。このため、効果的な連絡方法を確立し、適切に機能しているかどうかを定期的に確認する必要があります。

ビジネス マネージャ、サイト開発者、およびシステム管理者が一般的に行う作業の概要については、「サイト運営のための役割分担と責任」を参照してください。

関連項目

対象化とパーソナライズ

サイト運営のための役割分担と責任

プロファイル

予測とデータ マイニング

データ ウェアハウス


サイト運営のための役割分担と責任

Commerce Server 2000 には、Web サイトを開発、配置、および管理するための、一連の機能とツールが用意されています。Commerce Server を扱うには、組織内の 3 つの専門分野に及ぶ特定の技能を必要とします。次の表は、Commerce Server の機能を組織内の 3 つの一般的な役割分野に分類し、それぞれに必要な技能を示します。

役割 | 必要とされる知識
サイト開発者 | Dynamic Hypertext Markup Language (DHTML)、拡張マークアップ言語 (XML)、Microsoft ActiveX Data Objects (ADO)、HTML コンポーネント (HTC)、および Active Server Pages (ASP)
システム管理者 | Microsoft Windows 2000 Server、Microsoft SQL Server 2000、インターネット インフォメーション サービス (IIS) 5.0
ビジネス マネージャ | 優れた電子商取引 Web サイトを作成および運用するための、事業目標、戦略、プロセス

組織によっては、これらの役割がさまざまな形で組み合わされたり、ほかの名前で呼ばれていることがあります。それぞれの役割は、Commerce Server の機能を使うために必要な 3 つの異なる技能を表していると考えてください。

次の表は、これらの 3 つの役割と、それぞれの役割が実行する作業の例を示します。

役割 任務 ツールとユーザー インターフェイス
サイト開発者
  • Web サイトを構築する

  • Web サイトを既存のシステムと統合する

  • 既存の電子商取引サイトとデータベースを移行する

  • Commerce Server ビジネス デスクをカスタマイズする

  • 新しいビジネス デスク モジュールを構築する

  • Microsoft 管理コンソール (MMC) に新しい拡張スナップインを追加する

  • カスタム レポートを作成する

  • データ ウェアハウスを拡張する
  • プログラマーズ リファレンス

  • パイプライン エディタ

  • パイプライン コンポーネント リファレンス

  • サイト パッケージャを使う
システム管理者
  • サイトをパッケージ化し、運用コンピュータに移動する

  • Commerce Server のリソースを設定し、最適化する

  • データ ウェアハウスのインポート タスクのスケジュールを設定する

  • ダイレクト メーラー ジョブのスケジュールを設定する

  • 新しい分析モデルを構築する

  • Commerce Server データベースを保守する

  • Web サイト環境のトラブルシューティングを行なう
  • サイト パッケージャを使う

  • Commerce Server の管理
ビジネス マネージャ
  • Web サイト開発の仕様を作成する

  • 事業目標を達成するためにどのように Web サイトを更新するべきかを決定する

  • ビジネス デスクの新しいモジュールやカスタマイズしたモジュールを要求する

  • 広告キャンペーンを作成する

  • 商品カタログを管理する

  • ユーザーの利用状況とサイトの有効性を分析する

  • 登録済みユーザーと取引先を管理する
  • ビジネス デスクの活用方法


プロファイル

プロファイルとは、ユーザー、会社、コンテキスト (日付と時刻) などのビジネス関連項目を定義する一連の特性です。たとえば、ユーザー プロファイルには、姓、名、住所、性別、年齢、電子メール アドレスなどの特性が含まれます。会社のプロファイルには、会社名、連絡先、市町村、電子メール アドレスなどの特性が含まれます。コンテキスト プロファイルには、ページが表示された日時、ユーザーがそのページにたどり着くまでの経路などの特性が含まれます。

次の図は、各種のプロファイルを示します。

クリック履歴
セッションの長さ
会社名
連絡先
市町村
電子メール アドレス
クリック履歴
セッションの長さ
名
姓
市町村
性別
年齢
電子メール アドレス
クリック履歴
セッションの長さ

会社のプロファイル

匿名ユーザーの
プロファイル

登録済みユーザーの
プロファイル

Commerce Server では、プロファイルを使ってビジネス関連項目に関する情報を格納します。たとえば、プロファイルを使って Web サイト上のユーザーからデータを収集します。また、ビジネス デスクを使って、ユーザーおよび組織のプロファイルにデータを直接入力することもできます。

Commerce Server のプロファイル システムは、Commerce Server マネージャで管理されるプロファイル リソースと、Commerce Server ビジネス デスクで管理されるユーザー モジュールで構成されます。プロファイル データは、Microsoft Active Directory凵ASQL Server、Active Directory とSQL Server のプロファイル データ ストア、または OLE DB 準拠の任意のデータ ストアに格納されます。データをプロファイル データ ストアからデータ ウェアハウスにエクスポートしてから、収集したプロファイル データをビジネス デスクで分析できます。

注

  • Commerce Server に、Microsoft Site Server 3.0 の Membership Directory は含まれていません。Membership Directory から Commerce Server へプロファイル情報を移行する方法については、「Site Server 3.0 からの移行」を参照してください。

Web サイトの管理にプロファイルを使う

プロファイルの構造

プロファイルを収集および格納する

ユーザー データを分析する

サンプルのプロファイル定義

Web サイトの管理にプロファイルを使う

プロファイルは、サイトを訪問するユーザーや、それらのユーザーがサイトをどのように使うかといった情報を提供するため、Web サイトの管理には必要不可欠です。プロファイルを使ってユーザー データを分析し、分析結果に基づいてコンテンツの対象となるユーザー層を設定します。

Commerce Server ビジネス デスクを使うと、次のようなことができます。

  • サイトを訪問するユーザーについて収集する情報の決定

  • プロファイル情報の分析

  • コンテンツをユーザーに合わせるための対象式の作成

  • 特定のユーザー グループを対象とした広告、割引、ダイレクト メールの各キャンペーンの作成

  • パーソナライズしたダイレクト メール メッセージのユーザーへの配信

たとえば、サイトでスポーツ用品を販売しているとします。次のワークフローは、ビジネス デスクを使ってユーザーの利用状況を分析し、コンテンツをユーザーに合わせて対象化する方法の例を示します。

  1. システム管理者が、登録済みユーザーとゲスト ユーザーのプロファイル定義を作成します。

  2. サイトを一定期間運用した後で、プロファイル データを分析し、サイトを訪問しているユーザー層を調べます。
    • サイトを訪問しているユーザー層を分析するレポートを実行します。

    • カタログ内のよく売れている商品とあまり売れていない商品を分析するレポートを実行します。
  3. 分析結果に基づいて、コンテンツをユーザーに合わせて対象化したキャンペーンを作成します。
    • プロファイルを使って、対象式と対象グループを作成します。

    • この特定のユーザー層に割引を提供する割引キャンペーンを作成します。
  4. 割引キャンペーンを一定期間実施した後で、キャンペーンの結果を分析します。
    • キャンペーンの成果を分析するレポートを実行します。

    • このユーザー グループによる割引項目の購入が増えたかどうかを調査するレポートを実行します。
  5. 割引項目の購入が増えていない場合は、ダイレクト メール キャンペーンを作成し、ユーザーに特定の商品の割引を提供するパーソナライズされたメッセージを配信します。

式の作成、およびユーザーに合わせたコンテンツの対象化については、「対象化とパーソナライズ」を参照してください。

プロファイルの構造

Commerce Server のプロファイルは、次の要素で構成されます。

  • プロファイル定義 特定の種類のプロファイルについて収集するデータの詳細です。1 つのプロファイル定義に基づいて、複数のプロファイルを作成できます。たとえば、"ユーザー" はプロファイル定義で、"アドレス" もプロファイル定義です。システム管理者は、Commerce Server マネージャでプロファイル リソースを使ってプロファイル定義を作成します。

  • プロファイル プロパティ ユーザーが Web サイトを訪問したときに収集するプロファイル データを指定する特性です。たとえば、"名" プロパティでは、ユーザーの名を収集することを指定します。ビジネス デスクのプロファイル デザイナ モジュールを使って、プロファイル プロパティを作成し、プロファイル定義に追加します。

  • 属性 プロパティのデータ型 (たとえば、数値、文字列、10 進、サイト用語) など、プロパティに関する情報を指定する特性です。

  • プロファイル データを含むプロファイル定義の 1 つのインスタンスです。各プロファイルは、1 つのプロファイル定義に基づいています。

次の表は、User プロファイル定義の例、および Sean Chai のデータを使った User プロファイル定義の例のインスタンスを示します。

プロファイル定義:ユーザー | プロファイル:Sean Chai
姓 | Sean
名 | Chai
市町村 | Seattle
性別 | M
年齢 | 52
電子メール アドレス | seanchai@microsoft.com

プロファイル定義

システム管理者は、新しいプロファイル定義を作成する前に、まずプロファイル データをデータベースのどこに格納するかを決めて、データ用の適切なテーブルと列を追加する必要があります。たとえば、ビジネス マネージャから Music という名前の新しいプロファイル定義の作成依頼があり、First Concert、Last Concert、Favorite CD、およびまだ決まっていない 2 つのプロファイル プロパティを格納することになったとします。システム管理者は、このデータを Arts という名前の新しい SQL Server データベースの、Music という名前の新しいテーブルに格納することが適切であると判断します。Music プロファイル定義を作成するには、次の手順を実行します。

  • SQL Server Enterprise Manager を使って、次の操作を行います。
    1. Arts という名前の SQL Server データベースを作成します。

    2. Arts データベースに Music テーブルを作成し、そこに格納される 5 つのデータ メンバ用の列を追加します。
  • プロファイル リソースを使って、次の操作を行います。
    1. 新しいデータ ソースの Arts にマップします。この手順は 1 度だけ実行します。新しいデータ ソースをプロファイル リソースにマップした後は、同じ操作をもう一度実行する必要はありません。

    2. Music という名前のデータ オブジェクトを作成し、Arts データベースの Music テーブルにマップします。

    3. First Concert、Last Concert、Favorite CD、Placeholder1、および Placeholder2 という名前のデータ メンバを作成し、Music テーブルの該当する列にマップします。

    次の図は、SQL Server データベース、プロファイル リソース、およびプロファイル定義の各要素が互いにマップされた状態を示します。

SQL Server、プロファイル リソース、およびプロファイル定義の関係を示す図
Enterprise Manager
プロファイル リソース
SQL Server
データベース
データ ソース
プロファイル定義
テーブル
列
データ オブジェクト
プロパティ
属性
データ メンバ

アート
データベース

アート データ
ソース

ミュージック プロファイル定義

ミュージック テーブル
ミュージック
オブジェクト
ファースト コンサート プロパティ
ファースト
コンサート列
ファースト
コンサート列
単一値
必須

プロファイル リソースを使ってプロファイル スキーマを拡張する方法の詳細については、「プロファイル リソースの実行」を参照してください。

プロファイル定義とプロパティを作成すると、ビジネス マネージャはビジネス デスクのプロファイル デザイナ モジュールを使って、First Concert、Last Concert、および Favorite CD をプロファイル定義に追加できるようになります。この手順を実行するためには、ビジネス マネージャはシステム管理者が作成したデータ メンバにこれらのプロパティをマップします。そのため、システム管理者はデータ メンバの名前をビジネス マネージャに通知する必要があります。システム管理者がデータ メンバにプロパティをマップする場合は、Commerce Server マネージャを使います。

後日、Music プロファイル定義を使って収集する残りの情報が決まったら、ビジネス マネージャはプロファイル デザイナ モジュールを使って 2 つの新しいプロパティを作成し、システム管理者が Music テーブルに作成したプレースホルダのデータ メンバにマップします。

Commerce Server ソリューション サイトには、住所、一括注文数、組織、ユーザー オブジェクト、および対象とするコンテキストというサンプルのプロファイル定義が用意されています。ユーザー オブジェクトには、名前の付いていないプロパティが 5 つ含まれているので、データベースを拡張せずに、ユーザー プロファイル定義にプロパティを追加できます。各プロファイル定義に含まれるプロパティの一覧については、「サンプルのプロファイル定義」を参照してください。

プロファイル プロパティ

ビジネス デスクのプロファイル デザイナ モジュールを使うと、システム管理者が作成したプロファイル定義にプロファイル プロパティを追加できます。プロファイル プロパティは、プロファイルに収集する情報の種類を指定します。たとえば、ユーザー プロファイル定義には、姓、名、住所、性別、年齢、電子メール アドレスなどのプロパティを含めることができます。

次の図は、ユーザー プロファイル定義の例の各要素を示します。

プロファイル
プロパティ
プロファイル
属性
ユーザー プロファイル定義
名
単一値 必須 インデックス付き
姓
単一値 必須 インデックス付き
市町村
(サイト用語:市町村)
(文字列)
(文字列)
(サイト用語:市町村)
メキシコ シティ モントリオール
ニューヨーク
性別
(サイト用語:性別)
性別
男性
女性
不明
年齢
(数値)
電子メール アドレス
(文字列)
電子メール アドレス
電子メール アドレス
データ型

属性

各プロファイル プロパティには属性があります。属性は、プロパティのデータ型 (たとえば、数値、文字列、10 進、サイト用語) 、プロパティが単一の値と (たとえば、First Name は 1 つしか設定できません) 複数値のどちらであるか、プロファイル プロパティがインデックス付きかどうか (つまり、Web サイトを訪問したユーザーがこのプロパティを使って検索を実行できるかどうか)、といったプロパティに関する情報を提供します。

サイト用語は、ビジネス デスクのユーザーが作成するデータ型です。これは、サイトに関連する特定の値のリストです。サイト用語を使って、この値のリストを属性としてプロパティに割り当てます。たとえば、"性別" という名前のサイト用語を作成し、"女性"、"男性"、"不明" といった選択値を定義します。"性別" という名前のプロファイル プロパティを作成し、それに "サイト用語" というデータ型を割り当てると、定義した選択値のいずれか 1 つだけをプロファイルに割り当てることができます。サイト用語は、ビジネス デスクのサイト用語エディタ モジュールを使って作成し、プロファイル デザイナ モジュールを使ってプロファイル定義に割り当てます。

サイト用語をプロファイル プロパティに割り当て、Commerce Server 全体で使用できる一般的な用語を確立することで、たとえば、ユーザーの好みとコンテンツを対応付けることができます。プロファイルを使ってコンテンツを配信する方法の詳細については、「対象化とパーソナライズ」を参照してください。

プロファイルを収集および格納する

プロファイル データは、Commerce サイトで 2 とおりの方法で収集されます。サイトを訪問するユーザーが自分自身に関するプロファイル データを提供する方法を、明示プロファイルといいます。たとえば、ユーザーがサイトで商品を購入するときには、通常、名前、住所、電話番号、および電子メール アドレスを入力します。この情報をユーザー プロファイルの生成に使います。

黙示プロファイルでデータを収集する方法もあります。黙示プロファイルでは、すべてのユーザー (匿名ユーザーと登録済みユーザー) が Web サイトを訪問したときに、そのユーザーのアクションが Web ログ ファイルに記録されます。たとえば、匿名ユーザーがクリックしたリンク、検索した商品、セッションの長さ、およびその Web ページで費やした時間が Web ログ ファイルに記録されます。ユーザーが匿名で、名前や電子メール アドレスなどの情報がわからなくても、ユーザーがサイトをどのように利用したかという情報は貴重です。たとえば、クリック履歴はユーザーが訪問した Web ページの経路を示します。この情報を使って、特定の興味対象の組み合わせを知ることができます。cookie が Commerce Server でどのように使われるかについては、「cookie と認証」を参照してください。

黙示プロファイルは、Commerce Server 予測リソースで利用することもできます。ユーザーの音楽の好みなど、あるユーザーに関して不足している情報があった場合、サイトを訪問するユーザーのプロパティの集計と、ユーザーが購入する CD に基づいて、予測リソースで情報を推測できます。予測機能については、「予測とデータ マイニング」を参照してください。

特定のユーザー セッションで収集されたすべての情報は、1 つのプロファイル、つまりプロファイル定義の 1 つのインスタンスに収集されます。

プロファイル データが最初に収集されたときには、まず Commerce Server データベースと Web サーバー ログに格納されます。システム管理者は、プロファイル データを定期的にデータ ウェアハウスにインポートします。プロファイルがデータ ウェアハウスにインポートされると、ビジネス デスクを使ってユーザー データを分析し、その分析結果に基づいて Web サイトを更新したり、値をユーザー プロファイル プロパティに適用することができます。

ユーザー データを分析する

ユーザー データは、レポートまたはセグメント モデルで分析できます。セグメント モデルの分析については、「ユーザーのセグメントを分析する」を参照してください。

次の表は、ユーザー データを分析するために、Commerce Server に用意されているレポートを示します。

レポート | 説明
ユーザー数と訪問数 (週単位) | 少数のユーザーがサイトを何度も訪問しているのか、または多くのユーザーが同時にサイトを訪問しているのかを分析します。
ユーザー数 (日単位) | 特定の日にサイトを訪問した一意のユーザーの数を分析します。
新規登録済みユーザー | 新しい登録済みユーザーを特定します。このデータを利用して、特別な宣伝キャンペーンを作成できます。たとえば、リスト マネージャにレポートをエクスポートし、これらのユーザーにダイレクト メールの宣伝を送信できます。
登録済みユーザーのプロパティ | 登録済みユーザーが提供した情報を分析します。このデータを利用して、特別な宣伝キャンペーンを作成できます。たとえば、特定のプロパティを持つユーザーを対象にした広告や割引を作成できます。
登録済みユーザー数 (登録日別) | ユーザーの登録時状況を分析します。
ユーザー登録までの日数 | ゲスト ユーザーがサイトに登録するまでの平均日数を追跡します。
ユーザーの登録状況 | サイトでの登録にまで至るゲスト ユーザーの割合を分析します。
ユーザーの傾向 | リピータをどの程度うまく引き寄せているかを分析します。

Commerce Server のすべてのレポートの一覧については、「Commerce Server のレポート」を参照してください。レポートを実行する方法については、「レポートを実行する」を参照してください。

サンプルのプロファイル定義

Commerce Server ソリューション サイトには、サンプルのプロファイル定義が含まれています。サイト開発者がサイトを構築するのにソリューション サイトを使う場合は、次の表に示す 5 つのプロファイル定義を利用できます。

プロファイル定義 | プロパティ (データ型) | 説明
住所 | 住所 ID (文字列) | 住所 ID
 | ID (文字列) | 組織/ユーザー ID
 | 姓 (文字列) | ユーザーの姓
 | 名 (文字列) | ユーザーの名
 | 住所名 (文字列) | この住所の名前
 | 住所の種類 (数値) | 住所/送付先/請求先
 | 説明 (文字列) | この住所の説明
 | 住所欄 1 (文字列) | 住所の 1 行目
 | 住所欄 2 (文字列) | 住所の 2 行目
 | 市町村 (文字列) | 市町村名
 | 地域コード (文字列) | 州、地域、または都道府県コード
 | 都道府県名 (文字列) | 州、地域、または都道府県名
 | 郵便番号 (文字列) | 郵便番号
 | 国/地域コード (文字列) | 国/地域の国際標準化機構 (ISO) コード
 | 国/地域名 (文字列) | 国/地域名
 | 電話番号 (文字列) | この住所の電話番号
 | 内線番号 (文字列) | この住所の電話内線番号
 | ロケール ID (数値) | 住所フォームを表示するロケール
 | 変更者 (文字列) | 最後にこのプロファイルを変更したユーザーの名前
 | 最終変更日時 (日付/時刻) | 最後にこのプロファイルが変更された日付
 | 作成日時 (日付/時刻) | このプロファイルが作成された日付
一括注文数 | 注文書 ID (文字列) | 一括注文を示すグローバル一意識別子 (GUID)
 | 組織 ID (文字列) | 組織 ID
 | 注文書番号 (文字列) | 一括注文書番号
 | 説明 (文字列) | 注文書の説明
 | 変更者 (文字列) | 最後にこのプロファイルを変更したユーザーの名前
 | 最終変更日時 (日付/時刻) | 最後にこのプロファイルが変更された日付
 | 作成日時 (日付/時刻) | このプロファイルが作成された日付
組織 | 組織 ID (文字列) | 組織 ID
 | 名前 (文字列) | 組織の名前
 | 取引先番号 (文字列) | 取引先番号
 | 管理連絡先 (文字列) | 管理連絡先の GUID
 | 受取人 (文字列) | サプライアからの商品を受け取る担当者のユーザー ID
 | 組織カタログ セット (文字列) | 組織カタログ セット
 | 変更者 (文字列) | 最後にこのプロファイルを変更したユーザーの名前
 | 購買マネージャ (文字列) | 購入側組織の購買マネージャのユーザー ID
 | 最終変更日時 (日付/時刻) | 最後にこのプロファイルが変更された日付
 | 作成日時 (日付/時刻) | このプロファイルが作成された日付
ユーザー オブジェクト | ユーザー ID (文字列) | ユーザー ID
 | ログオン名 (文字列) | ログオン名
 | ユーザー パスワード (パスワード) | ユーザー パスワード
 | 電子メール (文字列) | ユーザーの電子メール アドレス
 | ユーザーの種類 (数値) | ユーザーの種類
 | ユーザー タイトル (文字列) | ユーザー タイトル
 | 姓 (文字列) | ユーザーの姓
 | 名 (文字列) | ユーザーの名
 | 電話番号 (文字列) | ユーザーの電話番号
 | 内線番号 (文字列) | ユーザーの電話内線番号
 | FAX 番号 (文字列) | ユーザーの FAX 番号
 | FAX 内線番号 (文字列) | ユーザーの FAX 内線番号
 | 変更者 (文字列) | 最後にこのプロファイルを変更したユーザーの名前
 | 組織 ID (文字列) | 組織 ID
 | アカウントの状態 (数値) | アカウントの状態
 | ユーザー カタログ セット (文字列) | ユーザー カタログ セット
 | 登録日 (日付/時刻) | ユーザーが登録した日付
 | キャンペーン履歴 (文字列) | キャンペーン履歴
 | 取引先サービス ロール フラグ (数値) | 取引先サービス ロール
 | 最終変更日時 (日付/時刻) | 最後にこのプロファイルが変更された日付
 | 作成日時 (日付/時刻) | このプロファイルが作成された日付
対象とするコンテキスト | ページ グループ (文字列) | ページ グループの名前 (スポーツ ページなど)

関連項目

プロファイル リソースの実行

Site Server 3.0 からの移行

Membership Directory を移行する

ビジネス デスクユーザー

Commerce Server のレポート


ユーザー リストとメーリング リスト

ユーザー リストとメーリング リストは、ユーザー プロファイル プロパティを含むテキスト ファイルです。ユーザー リストは、ユーザー プロファイル プロパティを検索したり更新するときに使います。メーリング リストは、ダイレクト メール キャンペーンを送信するときに使います。

Web サイトの管理にリストを使う

メーリング リスト

ユーザー リスト

汎用リスト

動的リストと静的リスト

Web サイトの管理にリストを使う

Commerce Server ビジネス デスクのリスト マネージャ モジュールを使って、ビジネス デスクのユーザー リストとメーリング リストのインポートとエクスポートを行います。

  • リストをリスト マネージャに追加する Commerce Server 分析レポートを、リストとしてリスト マネージャにエクスポートできます。また、SQL Server (SQL テーブルを作成する場合)、メモ帳 (ASCII テキスト ファイルを作成する場合)、Microsoft Excel (スプレッドシートを作成する場合)、Microsoft Outlook (アドレスのリストを含む .pst ファイルをエクスポートする場合) など、ほかのアプリケーションで作成したリストも、リスト マネージャにインポートできます。

    たとえば、アドレスのリストが Microsoft Excel のスプレッドシートにある場合は、リスト マネージャを使ってそれをビジネス デスクにインポートし、ダイレクト メール キャンペーンで使用できます。分析レポートでユーザーのリストを特定した場合は、レポートの結果をリストとしてリスト マネージャにエクスポートし、ダイレクト メール キャンペーンで使用できます。

    リスト マネージャへのリストのインポートについては、「リストをインポートおよびエクスポートする」を参照してください。リスト マネージャに Commerce Server 分析レポートをエクスポートする方法については、「静的レポートをエクスポートする」を参照してください。

  • リスト マネージャからリストを使う リスト マネージャ モジュールからユーザー モジュールにユーザー リストをインポートし、リストのユーザー プロファイルを更新できます。たとえば、Commerce Server の顧客別の売り上げレポートを実行して、最も多くの商品を購入するユーザーを特定し、そのレポートをリストとしてリスト マネージャにエクスポートします。リスト マネージャからユーザー モジュールにユーザー リストをインポートし、ユーザー プロファイルのプロファイル プロパティに特別な値を割り当てて、リストのユーザー プロファイルを更新します。その値を使って、変更したプロファイルを持つユーザーを、特定の広告または割引キャンペーンの対象に指定します。ユーザー モジュールへのリストのインポートについては、「ユーザー プロファイルの一覧をインポートする」を参照してください。複数のユーザー プロファイルの変更については、「複数のユーザーを編集する」を参照してください。

    また、リストをほかのアプリケーションにエクスポートすることもできます。たとえば、分析レポートから生成されたリストを Microsoft Excel のスプレッドシートにエクスポートできます。ファイルへのリストのエクスポートについては、「リストをインポートおよびエクスポートする」を参照してください。

メーリング リスト

メーリング リストには、ダイレクト メール キャンペーン用の電子メール アドレスが列挙されます。リストの各行に受信者が 1 人ずつ記載され、次の要素がカンマ区切り形式で並べられます。

要素 | 説明
電子メール アドレス | 必須。名前または <名前@ドメイン>。
GUID | 省略可。パーソナライズされたメール メッセージにコンテンツを提供するときに使用する一意のユーザー ID です。
メッセージ形式 | 省略可。Collaboration Data Object (CDO) が結果をどのメッセージ形式に変換するかを制御します。たとえば、テキスト、MIME Encapsulation of Aggregate HTML Documents (MHTML)、Multipurpose Internet Mail Extensions (MIME) などの形式があります。
言語 | 省略可。メール メッセージのコード ページ値です。
URL | 省略可。ユーザーごとに個々の URL を CDO に渡すことができます。

リストは、メモ帳などの任意のテキスト エディタを使って作成できます。リスト マネージャ モジュールを使って、ASCII テキスト ファイル、Microsoft Excel や Microsoft Outlook のファイル、または SQL Server データベースのテーブルをインポートすると、ビジネス デスクにメーリング リストを追加できます。Microsoft Outlook の .pst ファイルの情報を使ってメーリング リストを作成する方法については、Microsoft Outlook のオンライン ヘルプの「ファイルや個人用フォルダ ファイルにアイテムをエクスポートする」を参照してください。

ダイレクト メール キャンペーン用のメーリング リストのインポートについては、「メーリング リストをインポートする」を参照してください。

ユーザー リスト

ユーザー リストには、ユーザー ID と、必要に応じてその他のユーザー プロファイル プロパティが列挙されます。リスト マネージャ モジュールからプロファイル デザイナ モジュールにユーザー リストをエクスポートし、特定のユーザーのプロパティに対する一括更新を実行できます。

たとえば、セグメント ビューア モジュールからリストをインポートし、特定のセグメントに所属していることを示すプロパティを、各ユーザーのユーザー プロファイルに設定できます。この情報を利用して、そのユーザー セグメントを広告や割引の対象に指定できます。

汎用リスト

汎用リストには、任意の情報を入れることができるほか、次の例に示すようにヘッダーを含めることができます。

ProductID | ProductName | Unit
1 | Socks | 100
2 | Shirts | 20

ユーザー リストやメーリング リストと異なり、汎用リストに内容の必要条件はありません。汎用リストを使うには、サイト開発者がアプリケーションをカスタマイズする必要があります。

汎用リストは、商品プロパティを設定する場合などに使います。Commerce Server の商品別売り上げレポートを実行し、Web サイトで最も人気のある商品 (売上高の点で) を特定します。次に、リスト マネージャ モジュールを使って、このレポートの結果を商品のリストとしてインポートし、カタログ エディタ モジュールを使って、これらが売れ筋商品であることを示すプロパティを設定します。このプロパティを使って、対象式を作成したり、売れ筋商品の価格を 5% 割り増しすることができます。

汎用リストのその他の使い方として、現実世界の店舗で利用できる割引券を、オンラインのリピータに郵送できます。そのためには、ユーザーの購入を分析するレポートを実行し、そのレポートの結果を住所を含むリストとしてエクスポートします。次に、リスト マネージャを使って、このリストをラベル作成用のアプリケーションで使用できるようにエクスポートします。

動的リストと静的リスト

ユーザー リスト、メーリング リスト、および汎用リストは、動的または静的のどちらかになります。

  • 動的リストは、実行時に作成されます。たとえば、ダイレクト メール キャンペーンで使うリストを、リスト マネージャからエクスポートするときに作成されます。リストを要求されるたびに、リスト マネージャはデータ ウェアハウスにある最新データを収集します。リスト マネージャが使用するデータベースには、リストの作成に必要な情報だけが格納されます。動的リストは、頻繁に実行するダイレクト メール キャンペーンや、頻繁に更新される受信者のリストに使います。

  • 静的リストは、要求に応じて直ちに作成され、リスト マネージャが使用するデータベースに格納されます。静的リストは、まれに実行するダイレクト メール キャンペーンや、あまり変更されない受信者のリストに使います。

関連項目

リストをインポートおよびエクスポートする

ユーザー プロファイルの一覧をインポートする

ユーザー レコード リストを管理する

メーリング リストを作成する


cookie と認証

Commerce Server の cookie には、ログオン ID、ユーザーが前回サイトを訪問した日付、cookie の有効期間を示す時間ウィンドウなど、サイトを訪問するユーザーに関する情報が含まれます。Commerce Server は、cookie を使ってユーザーの識別と認証を行い、ユーザーに関して収集したプロファイル情報にユーザー ID を関連付けます。

Commerce Server には、システム管理者が cookie をサイトに実装する方法を指定するための CS 認証リソースがあります。システム管理者が CS 認証リソースを設定するには、Commerce Server マネージャを使います。

cookie を使う

cookie の種類

CS 認証リソース

Web ファームでユーザーを認証する

Commerce Server での cookie の使い方

cookie を使う

Commerce Server には、サイトで cookie に適用できるさまざまな機能があります。

  • cookie の暗号化 アプリケーションが生成する cookie を暗号化するように、Commerce Server を設定できます。cookie を暗号化すると、使用する Commerce Server アプリケーションでしか cookie を読み取れなくなります。

  • ドメイン間での cookie の共有 システム管理者は、複数のドメイン間で cookie を共有するように、Commerce Server を設定できます。各 cookie は、その cookie が有効なドメインを示すドメイン プロパティを持ちます。ドメインは、".com" (またはほかの拡張子) の前の文字列によって判断されます。たとえば、premier.microsoft.com と msn.microsoft.com という 2 つのドメインがあるとします。この例では、ドメインは microsoft.com になります。

  • アプリケーション間での cookie の共有 システム管理者は、同じサイトのアプリケーション間で cookie を共有するように CS 認証リソースを設定できます。

    cookie があるとサイトでのユーザーの利用状況の分析結果に影響を及ぼすため、同じサイトのアプリケーション間で cookieを 共有しない方がよい場合もあります。たとえば、オフィス用品を販売するサイトを運用し、サプライア アプリケーションとリテール アプリケーションで cookie を共有する場合、分析結果に 2 つのアプリケーション間のユーザーの利用状況の違いが現れません。Supplier サイトで行われる購入では、1 人のユーザーが大量のオフィス用品を購入することが考えられます。これに対して Retail サイトの場合は、ユーザーが少量のオフィス用品を購入すると考えられます。

システム管理者は、アプリケーションの認証プロパティを構成することによって、Commerce Server マネージャでの cookie の使い方を指定します。アプリケーションの設定については、「アプリケーションを構成する」を参照してください。

cookie の種類

Commerce Server は、固定 cookie と非固定 cookie の 2 種類の cookie を作成します。

  • 固定 cookie サイトを訪問する匿名ユーザーの追跡に使われます。cookie を許可している匿名ユーザーの場合、cookie はユーザーのコンピュータに格納されます。CS 認証リソースを構成するときに、固定 cookie の有効期間を決定します。通常、有効期間は数年間です。固定 cookie には MSCSProfile チケットが保存されます。

  • 非固定 cookie (セッション cookie) サイトを訪問する認証済みユーザーの追跡に使われます。セッションが終了すると、cookie は削除されます。非固定 cookie には MSCSAuth チケットが保存されます。

チケットとは、userID とその値など、プロパティ/値の組です。たとえば、userID/joeuser はチケットです。Commerce Server は、チケットを使って、サイトを訪問するユーザーに関する情報を保存します。チケットは、cookie と URL クエリ文字列のいずれにも格納できます。

固定 cookie と非固定 cookie は、どちらも暗号化できます。これらの cookie には、次のデータが含まれます。

  • ユーザー ID 固定 cookie と非固定 cookie に使われます。サイト開発者は、ユーザー ID に使用する値を決定できます。たとえば、ユーザーのログイン名や電子メール アドレスを使用できます。匿名ユーザーの場合は、ユーザー ID が、たとえばいずれかの ASP ページが生成するグローバル一意識別子 (GUID) などになります(Commerce Server には、GUID の生成に使用できる GenID オブジェクトが含まれています)。

  • 前回のログイン時刻 非固定 cookie に使われます。認証を受けたユーザーが、ログオフせずにコンピュータから離れ (または、しばらくコンピュータを操作せずに)、時間ウィンドウが閉じる前に戻った場合、そのユーザーは再び認証を受ける必要がありません。ただし、時間ウィンドウが閉じた後で戻った場合は、再度ログインする必要があります。

  • 時間ウィンドウ 非固定 cookie の有効期間を分単位で決定するために使われます。

ユーザーがサイトからログオフすると、認証の有効期間は終了します。

サイト開発者は、どちらの種類の cookie にもカスタム プロパティを追加できます。

CS 認証リソース

CS 認証リソースには、次の 2 つの要素が含まれます。

  • 認証マネージャ セキュリティの設定されたすべての ASP ページで、ユーザーがページを表示する認証を受けているかどうかを調べるために使われる Component Object Model (COM) オブジェクトです。ソリューション サイトでは認証マネージャを使います。認証マネージャは、アンパッケージ処理中に適用される構成設定には依存しません。

    認証マネージャは、cookie を使わないショッピングをサポートしています。チケット データ (GUID など) は、クエリ文字列に追加されます。

  • 認証フィルタ インターネット インフォメーション サービス (IIS) 5.0 の Commerce Server サイト レベルで使われるインターネット サーバー API (ISAPI) フィルタです。サイトを訪問するすべてのユーザーに適用できます。認証フィルタは、アンパッケージ処理の後で構成します。

    認証フィルタには、次の 3 つのモードがあります。

    • Windows 認証モード Active Directory (またはローカルな Security Access Manager アカウント) に照合して、ユーザーのログインとパスワードを確認します。

    • カスタム認証モード SQL Server データベースやほかの種類のデータベースに照合して、ユーザーのログインとパスワードを確認します。

    • 自動 cookie 生成モード 匿名ユーザーに対して自動的に cookie を生成することで、匿名ユーザーがサイト内をどのように移動し、サイトをどのように使うかというプロファイル データを収集できます。匿名ユーザーが登録したときにはそのユーザーの固定 cookie を更新できるため、ユーザーが匿名であったときに収集したプロファイル データは失われません。

    • 認証フィルタは、cookie を使わないショッピングをサポートしていません。

Web ファームでユーザーを認証する

ユーザーがサイトにログインすると、Commerce Server は、プロファイル データ ストアに格納されているログインおよびパスワードと照合してログインおよびパスワードを確認し、ユーザーを認証します。ユーザー情報が確認されると、Commerce Server は非固定 cookie を作成し、そのアプリケーションの ISAPI フィルタ キャッシュに格納します。cookie は、ユーザーが認証され、セキュリティの設定されたサイト上のページを見る許可を得ていることを示します。

Commerce Server は、Web サーバー ファームにおけるユーザーの単一認証をサポートしています。たとえば、ある Web サーバーでユーザーが認証され、リダイレクトや負荷分散によってほかの Web サーバーに移動した場合、2 番目の Web サーバーがユーザーに再びログインを求めることはありません。この機能をサポートするには、IIS Web サイト レベルにインストールされる ISAPI フィルタ (認証フィルタ) を使います。ユーザーが 2 番目の Web サーバーにリダイレクトされると、ISAPI フィルタはユーザーの cookie を読み取り、その cookie にユーザー ID が含まれ有効であることを確認します。カスタム認証モードを使っている場合、これ以外の手順は実行されません。Windows 認証モードを使っている場合、Commerce Server は次の手順を実行します。

  • セキュリティの設定されたページに対する要求を Login.asp にリダイレクトします。この処理はユーザーには見えません。

  • Login.asp でユーザー ID を使用し、プロファイル データ ストアに対してユーザー プロファイルに関するクエリを実行します。これによって、ユーザーのログイン ID とパスワードがクリア テキストで返されます。

  • このログイン ID とパスワードを URL に追加し、セキュリティの設定されたページに対する要求をリダイレクトします。

  • フィルタは、セキュリティの設定されたページに対する要求を読み取り、URL からユーザー ID とパスワードを削除し、ログイン ID とパスワードを ISAPI フィルタ キャッシュに格納します。

  • 次に、フィルタはセキュリティの設定されたページをユーザーに表示します。ユーザー ID とパスワードはユーザーに転送されません。

Commerce Server での cookie の使い方

ユーザーがサイトを参照すると、cookie が Web ログ ファイルに格納されます。システム管理者は、Commerce Server DTS タスクを使って、Web ログ ファイルのサイト利用状況データとCommerce Server データベースのプロファイル データをデータ ウェアハウスにインポートします。Commerce Server Web ログ インポート DTS タスクは、cookie データを読み取り、ユーザー ID を解読して、cookie データをプロファイル データに関連付けられるようにします。これにより、ユーザー データの分析が可能になります。

データは、インポート時にユーザー ID ごとに解析されます。ユーザー ID の各インスタンスが、データ ウェアハウスの行になります。ユーザー ID は各行のプライマリ キーとなります。このため、ユーザー データの分析時には、ユーザー ID ごとにデータにアクセスされます。

ユーザーが cookie を許可しておらず、認証マネージャが実装されている場合、GUID を含むチケット データはエンコードされた URL 文字列に含まれます。ページ間でユーザー情報を渡すために、URL 文字列が使われる場合があります。Commerce Server は、サイトで行われるユーザーの利用状況に GUID を関連付けることで、匿名ユーザーの利用状況の分析を可能にします。

関連項目

Commerce Server のセキュリティ

セキュリティの計画

サイト セキュリティとフィルタを使用する

サイト セキュリティ オブジェクト

CS 認証リソースの管理


カタログ : 販売用の商品

カタログは、販売する商品を系統立てる手段です。カタログを簡単に作成して整理できるように、ビジネス デスクはさまざまなカタログ項目に必要なプロパティの記述を保持しています。この記述をカタログ スキーマと呼びます。スキーマには、カタログで許可されるすべての種類のカテゴリ、商品、およびプロパティが列挙されます。

Commerce Server 2000 では、カタログを使って、サイトで公開するデータベースの商品データを整理および管理したり、商品の対象ユーザーを特定します。

Web サイトの管理にカタログを使う

カタログに商品データを取り込む

BizTalk Server を使ってカタログを交換する

カタログの構造

カタログの構成 : 階層と関連付け

カタログの一意識別子

基本カタログ、カスタム カタログ、およびカタログ セット

商品価格の設定方法

カタログ売り上げを分析する

Web サイトの管理にカタログを使う

カタログを保守、分析、および拡張するには、Commerce Server ビジネス デスクのカタログ モジュールを使います。たとえば、サイトの運用中に、ビジネス デスクからレポートを実行して売れ行きの良くない商品を特定し、これらの商品の売り上げを拡大するための割引キャンペーンを作成できます。

ビジネス デスクを使うと、次のようなことができます。

  • ほかのデータ ソースからカタログをインポートする 外部ソースから拡張マークアップ言語 (XML) 形式またはカンマ区切り値 (CSV) 形式のカタログをインポートできます。たとえば、ほかのデータベースにカタログがある場合は、Commerce Server のカタログ データベースにインポートし、ビジネス デスクを使って管理できます。

    カタログを XML 形式または CSV 形式に変換するには、既存のデータベース管理システムを使って XML 形式または CSV 形式でカタログを保存するか、またはカタログを変換する Microsoft Visual Basic スクリプトの作成をサイト開発者に依頼します。

    カタログをインポートするには、システム管理者が Commerce Server 上にあらかじめ共有フォルダを作成しておく必要があります。Windows エクスプローラを使ってカタログを共有フォルダにコピーしてから、ビジネス デスクを使って Commerce Server データベースにインポートします。

  • カタログをエクスポートする カタログを XML 形式でエクスポートできます。たとえば、商品を卸で販売している場合、小売業者にカタログを提示するには、カタログをエクスポートします。また、在庫管理システムや価格設定システムなどのアプリケーションに、カタログをエクスポートすることもできます。

    カタログをエクスポートするには、システム管理者が Commerce Server 上にあらかじめ共有フォルダを作成しておくか、またはサーバー上でアクセスできるディレクトリの名前を知っておく必要があります。次に、ビジネス デスクを使って、カタログを共有フォルダまたはアクセスできるディレクトリにエクスポートします。

    カタログを定期的に Commerce Server にインポートまたはエクスポートする場合は、サイト開発者がその機能を提供できます。

  • 商品に割引を適用する 割引は、カテゴリのすべての商品に適用することも、指定した条件を満たす特定の商品に適用することもできます。たとえば、Product.price = 2000 であれば、ユーザーがこの商品をショッピング バスケットに追加したときに、商品の価格に 10% の割引を適用することができます。商品への割引の適用については、「キャンペーン : 広告、割引、および ダイレクト メール」を参照してください。割引キャンペーンを追加する方法については、「割引キャンペーン項目を追加する」を参照してください。

  • カタログの商品を編集する 商品名、価格、説明などを変更できます。

  • 商品情報をリアルタイムで更新する 商品価格などの商品情報を更新し、変更を Web サイトで公開できます。たとえば、買物客がバスケットに商品を追加し、その支払いの前にサイトが更新された場合は、バスケットに新しい価格が適用されます。買物客がバスケットを保存し、価格の更新後にバスケットに戻ると、新しい価格が表示されます。

  • 売れている商品を特定する Commerce Server のレポートを実行すると、最もよく売れている商品を数量または売上額に基づいて特定できます。また、最もよく売れているカテゴリも、数量または売上額に基づいて特定できます。分析結果を利用して、売れ行きのよくない商品に割引を適用したり、よく売れている商品の付属品の販売を促進することもできます。さらに、サイト開発者は、アップセルやインテリジェントなクロスセルなどの関連セルをサポートするようにサイトをカスタマイズできます。

  • 商品を検索する プロパティによる検索やフリーテキスト検索を実行することによって、商品を簡単に検索できます。

カタログに商品データを取り込む

ビジネス デスクのカタログ エディタ モジュールを使って、商品データを手動で入力することも、XML ファイルや CSV ファイルからデータをインポートすることもできます。たとえば、既にほかのデータベースにカタログがある場合は、システム管理者に XML ファイルとしてエクスポートするよう依頼し、カタログ エディタ モジュールを使って Commerce Server のカタログ データベースにインポートできます。

BizTalk Server を使ってカタログを交換する

BizTalk Server 2000 は、企業と取引先 (製造元) の間でビジネス文書を送信するためのゲートウェイとして機能します。企業と取引先がすべて BizTalk Server を使っている場合は、カタログ、注文、文書、およびその他の電子書式を交換できます。たとえば、製造元から送られてきたカタログを、自社のカタログと共に Web サイトに掲載できます。ユーザーが Web サイトで注文を入力すると、注文が製造元に直接送られます。

各取引先は、1 つまたは複数の商品カタログを送信できます。サイトの設定によって、これらのカタログを Web サイトに 1 つのカタログとして表示することも、個別のカタログとして表示することもできます。BizTalk Server の使い方の詳細については、「BizTalk Server を使う」および「BizTalk Server と統合する」を参照してください。

カタログの構造

Commerce Server のカタログは、2 つの主要な要素で構成されます。

  • カタログ スキーマ サイトのカテゴリと商品を記述したものです。カタログ スキーマは、サイトのすべてのカタログに適用できます。

  • カタログ カタログ スキーマの単一のインスタンスで、データが格納されます。

次の表は、カタログ スキーマの例 Clothes と、Sports Clothes カタログのデータが格納された Clothes カタログ スキーマの単一のインスタンスを示します。

カタログ スキーマ カタログ :Sports Clothes
カテゴリ定義 : Department

カテゴリ プロパティ
 Name
Description
Image_filename
Image_width
Image_height

 カテゴリ :Sport Shirts Department

Sport Shirts Department
2000 catalog of sports shirts
Sports_shirts.gif
100
200

商品定義 : Shirts

商品プロパティ :
Name
Manufacturer
Price

商品バリエーション プロパティ :
Size
Color
SKU

 商品 :Ace Soccer Shirt

Ace Soccer Shirt
Ace Shirts
$20.00

M
Green
23354

カタログ スキーマ

カタログ スキーマは、特定の種類のカタログにおけるカテゴリと商品の特性を記述したものです。たとえば、Sports Clothes カタログのカタログ スキーマには、Shirt、Pants、Shoes などの商品定義が含まれることが考えられます。カタログ スキーマを作成するには、ビジネス デスクのカタログ デザイナ モジュールを使います。

カタログ スキーマは、カテゴリ定義、商品定義、およびプロパティ定義で構成されます。カテゴリ定義と商品定義は、プロパティ定義を使って作成されます。次の図は、商品定義とカテゴリ定義がどのようにプロパティ定義を共有するかを示します。

Name (テキスト)
Manufacturer (テキスト)
Price (通貨)
カテゴリ定義
Color (複数選択) Description (テキスト) Image_filename (ファイル名) Image_width (数値) Image_height (数値) Manufacture (テキスト)
Name (テキスト)
Price (通貨)
Size (複数選択)
SKU (数値)
プロパティ
商品定義
Color (複数選択) Description (テキスト) Image_filename (ファイル名) Image_width (数値) Image_height (数値) Manufacture (テキスト)
Name (テキスト)
Price (通貨)
Size (複数選択)
SKU (数値)
Name (テキスト) Description (テキスト) Image_file name (ファイル名) Image_width (数値) Image_height (数値)
Variant プロパティ
Size (複数選択)
Color (複数選択)
SKU (数値)
カタログ スキーマ

カテゴリ定義は、カタログの各カテゴリの特性を記述したものです。これらの特性は、"カテゴリ プロパティ" と呼ばれます。カテゴリ定義を作成するには、カテゴリ定義にカテゴリ プロパティを割り当てます。たとえば、Department カテゴリ定義に Name、Description、Image File Name、Image Height、Image Width などのカテゴリ プロパティを割り当てます。Department カテゴリ定義に基づいてカテゴリを作成する場合は、カテゴリ プロパティの値を入力します。たとえば、Name カテゴリ プロパティに "Sport Shirts Department" と指定します。

商品定義は、特定の商品の特性を記述したものです。これらの特性は、"商品プロパティ" と呼ばれます。商品定義を作成するには、商品定義に商品プロパティを割り当てます。たとえば、Shirt という商品定義を作成し、Name、Manufacturer、および Price という 3 つの商品プロパティを割り当てます。Shirt 商品定義に基づいて商品を作成する場合は、商品プロパティの値を入力します。たとえば、Name 商品プロパティは "Ace Soccer Shirt" とします。

商品プロパティとカテゴリ プロパティは、いずれもプロパティ定義に基づいています。プロパティ定義は、プロパティに関する情報を記述したものです。プロパティのデータ型 (整数、テキスト、10 進など)、プロパティの名前、およびプロパティの最小値を記述します。たとえば、Small、Medium、Large のいずれかの値を取る Shirt_Size という名前のプロパティを作成したり、最小値が 10 で最大値が 120 である Length という名前のプロパティを作成することができます。

カタログ スキーマは変更できます。カタログにデータを登録した後でも、カタログ スキーマは編集できます。たとえば、プロパティ定義を追加または削除したり、プロパティ定義の名前を変更したり、プロパティのデータ型を数値から文字列などに変更することもできます。

カタログ スキーマの作成方法については、「カタログ スキーマを作成する」を参照してください。

カタログ

カタログはカタログ スキーマのインスタンスであり、個別の商品およびその商品が属するカテゴリに関するデータが格納されます。カタログを作成するには、ビジネス デスクのカタログ エディタ モジュールを使います。

カタログは、カテゴリ、商品、商品バリエーション、およびプロパティで構成されます。次の図は、カタログ スキーマの例の各要素と、それらがカタログの各要素にどのようにマップされるかを示します。プロパティは、カテゴリ定義と商品定義で使われています。"Dept" カテゴリ定義は、"Soccer Shirts" カテゴリに使われています。"Soccer Shirt" 商品定義は、"Ace Soccer Shirt" 商品に使われています。

カタログ スキーマ
カタログ データ
カテゴリ定義
カテゴリ タイプ 'DEPT'
プロパティ 'Name'
プロパティ 'Size'
プロパティ 'Color'
プロパティ 'SKU'
価格: 20
[プロパティ]
商品定義
サッカー シャツ
サッカー シャツ
カテゴリ
Ace サッカー シャツ 価格: 20
スポーツ ウェア
カタログ
サイズ:S
サイズ:S
サイズ:M
サイズ:M
サイズ:L
色:グリーン
SKU:115
カテゴリ
カタログ
商品ファミリ 一意識別子 = Name
商品バリエーション 一意識別子 = SKU

カテゴリは、カテゴリ定義の個別のインスタンスです。たとえば、Department という名前のカテゴリ定義を使って、Soccer Shirts カテゴリを作成できます。

商品は、カタログの中の 1 項目です。商品は、プロパティ定義の組み合わせによって定義されます。たとえば、Soccer Shirts という名前の商品定義が存在し、Name、Color、および Size という 3 つのプロパティが定義されている場合は、名前、色、およびサイズの組み合わせをカタログに登録するごとに商品を 1 つ作成します。

関連性の強い商品をグループにまとめることもできます。これらのグループは "商品ファミリ" といいます。商品ファミリは、商品バリエーションを含む商品のグループです。たとえば、サイズが L、色がグリーン、SKU が 114 のシャツは、Soccer Shirt 商品の商品バリエーションの 1 つです。この場合、サイズ、色、および SKU の組み合わせが商品バリエーションを構成します。商品バリエーションには、SKU などの一意識別子と価格が必ず含まれます。各商品バリエーションは、同じ商品定義に基づいています。

カタログの作成方法については、「カタログを作成する」を参照してください。

カタログの構成 : 階層と関連付け

カタログの商品を整理して、ユーザーが目的の項目に移動しやすいようにするには、カテゴリと商品の間でカテゴリの階層と関連付けを作成できます。たとえば、子カテゴリと呼ばれるカテゴリを 2 つ含む親カテゴリを作成できます。ユーザーが親カテゴリに移動すると、子カテゴリが表示され、目的の商品をすぐに見つけられます。

次の図は、親カテゴリに含まれる複数の子カテゴリが、同時に親カテゴリにもなっているようすを示します。

カタログ コレクション
カタログ B
カタログ C
スポーツ ウェア カタログ
パンツ
シャツ
サッカー シャツ
ツーピースの
トラックスーツ
Ace サッカーシャツ
Ace サッカー ショーツ
アクセサリ

サイズ:
色:
SKU:

サイズ:
色:
SKU:

サイズ:
色:
SKU:

S
ブラック
113

M
ブルー
114

L
グリーン
115

上の図で、Sports Clothes カタログには Shirts と Pants という 2 つのカテゴリがあります。Shirts カテゴリには、Soccer Shirts と Two-piece Track Suits という 2 つの子カテゴリがあります。このように構成することによって、ユーザーは Two-piece Track Suits カテゴリに 2 つの経路で移動できます。つまり、Shirts カテゴリ経由と Pants カテゴリ経由になります。この図は、Ace Soccer Shirt と Ace Soccer Shorts の間のアクセサリの関連付けも示しています。シャツに関心を示すユーザーは、ショートパンツにも関心を示す可能性があります。

階層の作成方法については、「カテゴリ階層を作成する」を参照してください。関連付けの作成方法については、「カテゴリと商品の関連付けを作成する」を参照してください。

カタログの一意識別子

商品と商品バリエーションは、いずれも一意の識別子を持ちます。一意の識別子は、テキスト型または数値型のプロパティです。たとえば、書籍のカタログの場合、書名を商品の一意の識別子とし、ISBN 番号を商品バリエーションの一意の識別子とすることができます。『The Quest Ahead』という書籍の場合、ハード カバー版が第 1 のバリエーション、ペーパーバック版が第 2 のバリエーション、オーディオ版が第 3 のバリエーションになります。これら 3 つの商品バリエーションは、いずれも商品ファミリ "The Quest Ahead" の一部となります。

次の例は、商品ファミリ "The Quest Ahead" のコンポーネントを示します。

Product Family = The Quest Ahead
Unique ID = Title:The Quest Ahead

Product Variant = The Quest Ahead hardback
Unique ID = ISBN:1102334
Price = 2000

Product Variant = The Quest Ahead paperback
Unique ID = ISBN:1102335
Price = 1000

Product Variant = The Quest Ahead audio
Unique ID = ISBN:1102336
Price = 1500

カタログを作成するときには、商品と商品バリエーションの一意識別子となるプロパティを指定します。

基本カタログ、カスタム カタログ、およびカタログ セット

作成できるカタログの種類は 2 つあります。また、複数のカタログをカタログ セットに結合することもできます。

  • 基本カタログは、カテゴリと商品が含まれますが、特定の価格設定ルールは含まれません。カタログの作成については、「新しいカタログを作成する」を参照してください。

  • カスタム カタログは基本カタログから派生したものですが、そのカタログの商品に関する特定の価格設定ルールが含まれます。カスタム カタログの価格は基本カタログの価格に優先します。カスタム カタログは、たとえば Supplier サイトで、一部の企業に対して特定の商品を特別価格で提供する場合に使います。また、たとえば Retail サイトで顧客に複数の会員レベルを設定していて、会員レベルに応じて異なる価格設定を行う場合にも使います。リピータに対して特別価格を提供するときにも使用できます。カスタム カタログの作成については、「カスタム カタログを作成する」を参照してください。

カタログ セットを作成すると、サイトでユーザーに対して表示するカタログを決定できます。カタログ セットとは、さまざまなユーザーや組織に対して公開する 1 つまたは複数のカタログのグループのことです。たとえば、カスタム カタログを 1 つ作成し、それを一般のカタログと組み合わせて、特定の組織のメンバにそのカタログ セットを表示することができます。次の図は、特別価格が設定されたチーム ウェアのカタログを、サッカー クラブのメンバが表示できるようにするしくみを示します。

スポーツ ウェア カタログ
冬物衣料カタログ
スポーツ ウェア カタログ
冬物衣料カタログ
チーム ウェア カタログ (カテゴリ レベルでの特別価格)
サッカー メンバ用のカタログ セット
サッカー クラブのメンバ
すべてのユーザー
一般のカタログ セット

カタログ セットの作成については、「カタログ セットを作成する」を参照してください。

ユーザーに表示するカタログ セットは、ビジネス デスクのユーザー モジュールで指定します。新しいユーザーを作成するときに、カタログ セットの名前を指定します。新しいユーザーの作成とカタログ セットの指定については、「ユーザーを追加する」を参照してください。

商品価格の設定方法

カタログの商品の価格は、次の 3 つの方法で設定できます。

  • 直接価格設定 商品の価格を商品定義で定義します。商品を作成または編集するときに価格を設定できます。直接価格設定を適用する方法については、「商品の価格を設定する」および「商品バリエーション レベルで価格を設定する」を参照してください。

  • 間接価格設定 価格は、特定の価格カテゴリとの関連によって決定されます。商品が価格カテゴリに関連付けられていると、商品の価格は価格カテゴリで定義された価格で上書きされます。すべての商品が 200 円の特別なカテゴリを作成するなど、商品のグループに同じ価格設定をする場合は、通常、間接価格設定を使います。間接価格設定を適用する方法については、「カテゴリの商品の価格を設定する」を参照してください。

  • 特別価格設定 価格をカテゴリに適用します。これを行うと、カスタム カタログを作成することになります。カスタム カタログに適用できる特別価格設定には、次の 3 種類があります。
    • 割合調整 標準価格に対する商品価格の割合を指定します。たとえば、10% の割引を適用する場合は「90」と入力します。これは、標準価格の 90% で販売されることを示します。

    • 定数調整 標準価格から増減する正確な金額を指定します。たとえば、200 円値下げして販売する場合は、価格を標準価格よりも 200 円減らすので「?200」と入力します。200 円値上げして販売する場合は、価格を標準価格よりも 200 円増やすので「200」と入力します。

    • 設定価格 正確な商品価格を指定します。たとえば、商品を 1000 円で販売するときに使います。

    特別価格設定を適用する方法については、「カスタム カタログで価格を設定する」を参照してください。

カタログ売り上げを分析する

次の表は、カタログ売り上げデータを分析するために、Commerce Server に用意されているレポートを示します。

レポート | 説明
顧客別の売り上げ | 顧客の詳細、売上額、および合計注文量を調べます。この情報を利用して、顧客をオンライン キャンペーン (ダイレクト メールの宣伝など) の対象に指定できます。
買い物バスケット イベント | 項目がショッピング バスケットに追加された日時、またはショッピング バスケットから削除された日時を調べます。
買い物客の参照の状況 | ユーザーの訪問パターンを分析します。このレポートから、平均訪問数、購入あたりの訪問数、売上額、売上のカウント、訪問者のカウントなどのデータが得られます。
商品別売り上げ | 日付ごとの商品販売量と収益を分析します。このレポートから、数量と収益のデータが得られます。
注文イベント | サイトでいつ注文が行われているかを分析します。このレポートから、日付、時刻、イベント、ユーザーの種類などのデータが得られます。
顧客の消費の要約 | 顧客ごとの販売量と収益を分析します。

Commerce Server のすべてのレポートの一覧については、「Commerce Server のレポート」を参照してください。レポートを実行する方法については、「レポートを実行する」を参照してください。

関連項目

ビジネス デスク カタログ

割引キャンペーン項目を追加する

サード パーティの商品カタログを統合する


データ ウェアハウス

Commerce Server 2000 のデータ ウェアハウスは、SQL Server データベースとオンライン分析処理 (OLAP) データベースとの組み合わせで、システム管理者がデータのインポートと保守に使用する一連のプロセスです。データ ウェアハウスは、さまざまなデータ ソースから収集した大量のサイト利用状況データをインポートします。このデータは、Web サーバー ログや Commerce Server データベース (プロファイル、カタログ、キャンペーン、およびトランザクション) から収集されます。また、データ ソースを指定することもできます。収集されたデータは、SQL Server と OLAP データベースで管理されます。さらに、これらのデータベースを使って、レポートの作成、およびユーザーのセグメントの分析と表示が行われます。

データ ウェアハウスは、強力なクエリや分析機能をサポートしています。データ ウェアハウスのデータを分析するには、Commerce Server ビジネス デスクの分析モジュールを使います。たとえば、ユーザーの傾向やキャンペーンの効果を分析して、コンテンツの対象を特定のユーザー グループに設定したり特定の商品を販売するように、サイトを更新できます。

Web サイトの管理にデータ ウェアハウスを使う

データ ウェアハウスの構造

データ ウェアハウスにデータをインポートする

OLAP Server で分析するデータを準備する

ユーザー データを分析する

Web サイトの管理にデータ ウェアハウスを使う

データ ウェアハウスは、複数のデータ ソースから収集したデータを 1 つの構造にまとめます。このため、レポートの作成およびユーザーのセグメントの分析や表示に使うデータが、一貫したものになります。これを Commerce Server ビジネス分析システムと呼びます。ビジネス分析では、Web サイトのデータに基づいて Web サイトのパフォーマンスを確認します。ビジネス分析で得られた情報を使って、顧客サービスの向上を図り、コンテンツの対象となるユーザーを設定できます。

ビジネス分析を行うと、Web サイトのパフォーマンスについて、次のような判断材料が得られます。

  • このサイトにアクセスする前にユーザーが訪問していた URL (参照元 URL)

  • 効果的な広告

  • 最も人気があるページ

  • 最も売れ行きが良い商品

  • 最も商品を購入しているユーザー層

これらの判断材料を利用すると、売り上げを伸ばしてユーザーを維持するように、Web サイトを変更できます。たとえば、広告を表示して、新しい商品を宣伝するとします。広告を 1 週間表示した後でレポートを実行し、広告によって商品の売り上げが伸びたかどうかを確認できます。売り上げが伸びなかった場合は、新しい商品に 10% の割引を適用するなどしてサイトを更新し、割引によって売り上げが伸びたかどうかを 1 週間後に確認します。

データ ウェアハウスの構造

データ ウェアハウスには、2 つの主要な要素があります。

  • 物理ストア SQL クエリを使ってクエリを実行できる Microsoft SQL Server データベース、およびレポートの実行に使用できる OLAP データベースです。

  • 論理スキーマ 物理ストアのデータにマッピングする概念モデルです。

次の図は、物理ストアと論理スキーマの関係を示します。

Commerce Server
データ ウェアハウス
論理スキーマ

クラス 1
データ メンバ
データ メンバ

クラス 2
データ メンバ
データ メンバ

クラス 3
データ メンバ
データ メンバ

マップ先

物理ストア
レポート準備 DTS タスク

OLAP サーバー

SQL Server

物理ストア

データ ウェアハウスの物理ストアには、SQL クエリを使ってクエリを実行できる、1 つのデータベースが含まれます。物理ストアには、さまざまなデータ ソースからインポートしたすべてのデータが格納されます。

Commerce Server は、SQL Server データベースと OLAP データベースの両方に、自動的にデータ ウェアハウスの物理ストアを構築します。データ ウェアハウスは、ビジネス デスクの分析モジュールで利用できるすべての Commerce Server レポートに必要なデータを提供します。

データ ウェアハウスの物理ストアを直接変更する必要はありません。たとえば、サードパーティのデータを含めるためにデータ ウェアハウスを拡張する必要がある場合、論理スキーマで必要になるフィールドを、サイト開発者がプログラムで追加できます。

論理スキーマ

論理スキーマは、データ ウェアハウスのデータをわかりやすい形式で表示し、効率的なインポート処理をサポートします。たとえば、サイト開発者は論理スキーマを使って、基になる物理テーブルにおけるデータの格納場所を変更します。サイト開発者がデータ ウェアハウスのデータを追加、更新、または削除するコードを記述する場合は、論理スキーマと対話します。Commerce Server がデータ ウェアハウスのデータにアクセスするときには、論理スキーマを通じてアクセスします。論理スキーマに関する詳細な知識を必要とするのは、サイト開発者だけです。

論理スキーマには次の要素が含まれます。

  • クラス データ メンバの論理コレクションです。たとえば、RegisteredUser クラスには、登録済みユーザーを表すデータ メンバが含まれます。

  • データ メンバ データを格納する構造体です。たとえば、RegisteredUser クラスの E-mail データ メンバは、登録済みユーザーの電子メール アドレスを格納します。

  • 関連 2 つのクラス間の親子関係による結びつきです。この関連は、各クラスのインスタンスの数を定義し、クラス間でデータ メンバを共有する手段を提供します。たとえば、RegisteredUser は子クラス Request の親です。1 人の登録済みユーザーに対して多くの要求が発生する可能性があります。

論理スキーマは、クラス、データ メンバ、関連、およびその他のデータ構造を使って、物理ストアのデータをマッピングします。

データ ウェアハウスにデータをインポートする

データ ウェアハウスに格納されるデータは、通常、Web サーバー ログ、Commerce Server データベース、およびその他の指定されたデータ ソースなど、複数のデータ ソースから収集されます。次の図は、操作データのソース、およびビジネス デスクで実行する作業のサポートにデータが使われる方法を示します。

ビジネス デスク
レポートの実行
および
データの分析
ユーザー
プロファイルの
管理
ダイレクト
メール キャンペーンの
実行
Commerce Server
データ
ウェアハウス
ダイレクト メーラー データベース
Commerce Server データベース
ユーザー プロファイル データ/イベント データ/トランザクション データ/キャンペーン データ/カタログ データ
その他
カタログ データ
キャンペーン データ
トランザクション データ
Web 利用状況データ
ユーザー プロファイル データ
Web サーバー ログ ファイル
Web サイト
ユーザー

データ ウェアハウスはランタイム環境の一部ではありません。このため、システム管理者は、操作データをデータ ウェアハウスにインポートする頻度を決定する必要があります。たとえば、新しいデータを自動的に毎日または毎週インポートするように、データ ウェアハウスを設定できます。データをインポートする頻度は、操作データ ソースで毎日収集される新しいデータの量によって異なります。Commerce Server には、データ ウェアハウスへのデータのインポートを簡略化する、カスタム データ変換サービス (DTS) タスクが含まれています。これらの DTS タスクは、ビジネス デスクで利用できるレポートが使うデータをインポートします。

操作データは、さまざまな種類のデータベースから、またデータベースではない記憶媒体からもインポートできますが、データ ウェアハウスに収集された後で、すべてのデータが一貫した方法で構築されます。たとえば、ユーザーの姓と名が同じフィールドに格納されたデータ ソースと、姓と名が別個のフィールドに格納されたデータ ソースがあるとします。これらのデータをデータ ウェアハウスにインポートすると、自動的に同じ形式に構築されるため、分析が可能になります。

OLAP Server で分析するデータを準備する

データがデータ ウェアハウスの SQL Server データベースにインポートされた後で、ビジネス マネージャがレポートを実行できるように、分析の準備を行う必要があります。レポート用のデータを準備するには、システム管理者が DTS タスクを実行して、選択したデータのサブセットを SQL Server データベースから OLAP データベースにエクスポートします。OLAP Server データベースでは、データがマルチディメンション キューブに格納されます。

データを SQL Server のリレーショナル テーブルではなく OLAP キューブに格納すると、データ ウェアハウスがレポート用にデータを取得する速度が向上します。データは集計されているため、キューブから取得する方が速くなります。つまり、同じ属性のデータが既に関連付けられているため、リレーショナル データベース全体から小さな部分を検索するより簡単です。たとえば、OLAP サーバーを使って、ユーザーの訪問時刻と最初にアクセスした ASP ページに基づいて、サイトを訪問したユーザーをリストするレポートを実行できます。大規模な SQL Server データベースに対してこのようなレポートを実行するのは困難です。

マルチディメンション キューブでは、データは次の 2 種類の構造体にグループ化されます。

  • メジャー 分析の対象となる数値です。

  • ディメンション 色、サイズ、商品、時刻などのビジネス エンティティです。たとえば、赤色の商品と青色の商品の販売数量を比較するには色ディメンションを使い、大きい商品と小さい商品の販売数量を比較するにはサイズ ディメンションを使います。

ユーザーの利用状況に関するレポートの基礎となるのは、ディメンション (色など) とメジャー (商品の販売数量など) の関係です。

次の図は、レポートのディメンションとメジャーを示します。

図をクリックすると、拡大または縮小します。

データを分析する

サイトでのユーザーの利用状況に関するデータを分析するには、ビジネス デスクの分析モジュールを使います。分析モジュールを使うと、データ ウェアハウスに対してレポートを実行したり、サイトを訪問するユーザーのセグメントを特定するセグメント モデルを表示および分析することができます。

レポート

Commerce Server には、ユーザー データの分析に使用できる 2 種類のレポートが用意されています。

  • 動的レポートは、実行時に作成されます。レポートを実行するたびに、データ ウェアハウスにある最新データが収集されます。時間が経過しても変化しないレポート定義だけが保存されます。Commerce Server は、完成した動的レポートを保存しません。ただし、動的レポートの結果を Microsoftｮ Excel にエクスポートして保存することはできます。動的レポートの結果を Microsoft Excel にエクスポートする方法については、「動的レポートをエクスポートする」を参照してください。

  • 静的レポートは、要求に応じて直ちに実行され、データと共に完成したレポート モジュールに格納されます。レポートはブラウザのウィンドウに HTML 形式で表示されます。静的レポートの結果をリスト マネージャ モジュールにエクスポートし、このリストをダイレクト メール キャンペーンで使用できます。これらのレポートは、電子メールでほかの人に送信したり、Web サイトに掲載したり、ほかのアプリケーションで編集することができます。たとえば、Microsoft Internet Explorer を使ってレポートを Word 文書にエクスポートし、編集することができます。

Commerce Server 2000 には、エグゼクティブ サマリー レポート、販売数量別商品レポート、ユーザー ヒット数レポートなど、ビジネス デスクから実行できるレポートがいくつか含まれています。これらのレポートのいずれかを使うことも、レポートをカスタマイズしてほかのデータを取得することもできます。Commerce Server に用意されているレポートの一覧については、「Commerce Server のレポート」を参照してください。

セグメント モデル

セグメント モデルは、同様の特性を持つユーザーのグループを特定します。Commerce Server 予測リソースを使ってデータ ウェアハウスのデータを検索し、セグメント モデルを生成できます。セグメント モデルの分析には、ビジネス デスクのセグメント ビューア モジュールを使います。セグメント モデルの概念については、「予測とデータ マイニング」を参照してください。

関連項目

データ ウェアハウスを操作する

データ ウェアハウスの実行

ビジネス デスク分析


予測とデータ マイニング

Commerce Server 予測リソースは、強力なデータ マイニング ツールです。予測リソースを使うと、Web サイトに予測機能を追加して、推奨商品を表示することなどができます。また、予測リソースを使うと、サイトを訪問するユーザーの特性を分析して、特性間の関係を調べることもできます。この情報を利用して、類似した特性を持つユーザーをコンテンツの対象に設定することができます。

予測リソースは、データ ウェアハウスに収集されたデータを採取します。データ ウェアハウスのデータベースには、ユーザー プロファイル データ、クリック履歴データ、およびトランザクション データを含む、すべてのサイト データを格納できます。データ ウェアハウスのデータベースはサイズが非常に大きくなりますが、予測リソースの機能を使うことで、データを効率よく採取できます。

Web サイトの管理に予測を使う

分析モデル

分析モデルを作成する

Web サイトの管理に予測を使う

サイト開発者は、Commerce Server の予測リソースを使って、サイトに予測機能を追加します。予測リソースを使うと、次のようなプロファイリングと対象化を実行できます。

  • インテリジェントなクロスセル サポートを提供する ユーザーに関するプロパティやユーザーが注文した商品と、ほかのユーザーが以前注文した商品のデータベースの相関関係を調べて、ユーザーの興味を引きそうな商品を推奨します。推奨された商品は、カタログの一部だけに制限できます。

  • 行動やプロファイルに基づいてユーザーをセグメント化する これらのセグメント モデルを分析し、ユーザーをセグメント化する特性を確認します。システム管理者が構築したセグメント モデルは、Commerce Server ビジネス デスクのセグメント ビューア モジュールを使って分析できます。

  • ユーザー プロファイル データに欠けている値を入力する ユーザーが入力しなかった、ユーザー プロファイル プロパティなどの欠けている値を推測します。

分析モデル

予測リソースは、データから分析モデルを構築します。分析モデルは、過去のサイト ユーザーの既に確認されているプロパティ、購入履歴、クリック履歴などを統計的に関連付けたものです。分析モデルには、サイトを訪れたユーザーの種類に関する情報は含まれますが、特定のユーザーに関する情報は含まれません。分析モデルを構築するための詳細な情報は、Commerce Server のデータ ウェアハウス、またはほかのデータ ソースに格納されます。

分析モデルを利用して、黙示プロファイルを実行し、コンテンツの対象ユーザーを設定できます。

  • 黙示プロファイル ユーザーの性別など、ユーザーに関するプロファイル情報が欠けている場合は、サイトを訪問するすべてのユーザーのプロパティの集計に基づいて、分析モデルで推測できます。

  • コンテンツの対象化 分析モデルを使って、Web サイトに予測機能を追加できます。たとえば、カタログ商品のランク付き推奨リストをユーザーに表示したり、興味を引きそうな広告を表示することができます。また、分析モデルを使ってサイトを訪問するユーザーの特性を分析し、確認された特性間の関係に基づいて、同様の特性を持つユーザーをコンテンツの対象として特定できます。

Commerce Server では、予測モデルとセグメント モデルの 2 種類の分析モデルが使われます。

予測モデル

予測モデルは、依存関係ネットワークとも呼ばれる判断ツリーの集まりです。この予測モデルを使って、サイトを訪問するユーザーにリアルタイムで推奨商品を提示したり、ユーザーに関する未知のプロファイル プロパティを推測したりします。予測モデルは、データ内の関係をルールの形で要約します。たとえば、予測モデルによって、サイトの訪問者が 55 歳以上の男性で、スポーツウェアを購入した場合は、ゴルフ用品も購入する可能性が高いことが予測されたとします。このモデルを使うと、このプロファイルに一致するユーザーに、その場でゴルフ用品を勧めることができます。

予測モデルは、サイトでの過去の活動に基づいて予測するため、一般に人間が作成したルールよりも的確な推奨商品を提示します。その結果、通常は売り上げの拡大に結び付きます。

予測モデルを分析するには、Commerce Server の予測モデル ビューアを使います。予測モデルを表示する方法については、「分析モデルを表示する」を参照してください。

セグメント モデル

セグメント モデルは、クラスタ モデルとも呼ばれ、プロパティや行動が共通するユーザーをセグメントに分割します。これらのセグメントを使って、サイトを訪問するユーザーを的確に把握し、マーケティングに結び付けることができます。たとえば、子供向け空想小説の売り上げが急増したとします。ここで、この本を購入した人のほとんどが、女性、40 歳以上、年収 500 万円以上、大卒という特性を持つセグメントのユーザーであることを確認します。これによって、このセグメントのユーザーに同様の商品を提供できます。

セグメント モデルを分析するには、ビジネス デスクのセグメント ビューア モジュールを使います。セグメント ビューアについては、「ユーザーのセグメントを分析する」を参照してください。

分析モデルを作成する

各分析モデルは、モデルの構築に使うデータが記述されているモデル構成に基づいています。モデル構成は、次の要素を指定します。

  • 分析モデルを構築するデータ ソース 通常は、大量のユーザー データが格納されているデータ ウェアハウスがデータ ソースとなります。ただし、外部データベースを使って分析モデルを構築することもできます。

  • モデルの属性 属性は、テーブルに表示されたユーザー データのどの列をモデルに含めるかを示します。属性には、ユーザー プロファイル データ、購入履歴、またはクリック履歴があります。

Commerce Server には、データ ウェアハウス スキーマで定義されるトランザクション モデル構成が含まれています。このトランザクション モデル構成を使って、購入履歴に基づくモデルを構築します。サイトにカスタム モデル構成が必要な場合、サイト開発者は新しいモデル構成を構築できます。カスタム モデル構成の構築については、「予測スキーマ」を参照してください。

データを収集したら、すぐにモデル構成を使って分析モデルを構築できます。分析モデルを構築するために、システム管理者は Commerce Server マネージャの予測リソースを使います。モデルは Web サーバー上には構築されません。したがって、構築プロセスがサイトのパフォーマンスに影響を与えることはありません。

モデルを構築したら、システム管理者は各 Web サーバーにモデルのコピーを移動して (すべての Web サーバーが同じモデルを使います)、サイトの予測機能を有効にします。予測モデルまたはセグメント モデルを表示して、サイトを訪問するユーザーのパターンを分析できます。

大量の新規データを収集した場合、システム管理者は分析モデルを再構築する必要があります。ただし、予測対象や分析対象を変更する場合に限っては、分析モデル構成を頻繁に再構築する必要はありません。

関連項目

予測スキーマ

予測リソースの実行

ユーザーのセグメントを分析する

プログラマーズ リファレンス

対象化とパーソナライズ


パイプライン

パイプラインは、1 ステージ以上のビジネス プロセスを定義して相互にリンクし、それらを順次実行して特定のタスクを完了する、拡張可能なソフトウェア フレームワークです。たとえば、注文処理パイプラインは、サイトで行われた購入の処理に使われる一連の手順を提供します。注文処理パイプラインの最初のステージでは、カタログ データを格納するデータベースから商品情報を取得します。次のステージでは、注文にユーザーの住所を追加します。パイプラインの各ステージは、作業のカテゴリを表します。各ステージの順序によって、作業を完了する順序が決まります。

Commerce Server 2000 には、Commerce Server サイトで必要とされる標準的な処理の大部分を実行する、パイプラインのセットが用意されています。サイト開発者は、サイトのニーズに応じて、これらのパイプラインを調整できます。たとえば、パイプラインに新しいステージを追加したり、パイプライン コンポーネントを既存のシステムと統合したり、コンポーネントをサードパーティが供給するほかのコンポーネントに置き換えることができます。

パイプラインの種類

パイプラインの構造

パイプラインを作成および編集する

パイプラインの種類

Commerce Server には、次のパイプラインが用意されています。

  • コンテンツ選択パイプライン ユーザーに対して表示するコンテンツを選択します。たとえば、Commerce Server ビジネス デスクを使って作成した対象式、配信する広告の数などに基づいて、ユーザーに対して表示する広告、またはユーザーに提供する割引を決定します。

  • イベント処理パイプライン 表示されたコンテンツに関連するイベント (ユーザーによる広告のクリックなど) を記録し、Commerce Server データベースに格納します。この情報は、たとえば広告をクリックしたユーザーの数など、レポートのために使われます。

  • ダイレクト メーラー パイプライン ダイレクト メール キャンペーン用のメッセージを構築および配信します。パーソナライズした電子メール メッセージも、静的な内容の電子メール メッセージも構築できます。

  • 注文処理パイプライン B to C サイト (Retail) での注文と B to B サイト (Supplier) での注文の両方を処理します。これらのパイプラインによって、必要なステージをすべて経由して、注文が適切に処理されます。たとえば、カタログから商品説明を取得し、ユーザーの送付先を取得し、税額を計算し、合計金額を計算します。

    Commerce Server には、次の注文処理パイプラインが用意されています。

    • 商品パイプライン 商品の価格情報と割引情報を計算します。

    • プラン パイプライン 注文が完全であるかどうかを確認します。たとえば、注文に項目が含まれていない場合は、エラーが生成されます。

    • 購入パイプライン 注文フォームの最終的な購入を受け付けて、データベースの記憶領域に注文を書き込みます。また、レシートを作成して、注文の内容をレシート データベースに書き込むことも可能です。

パイプラインの構造

パイプラインは、パイプライン構成ファイル (.pcf) で定義されます。.pcf ファイルでは、パイプラインの各ステージが示されます。各ステージには、1 つ以上のパイプライン コンポーネントが含まれます。サイト開発者は、サイト固有の要求に対応するように、各ステージを構成できます。

次の図は、リテール購入パイプライン (Purchase.pcf ファイル) の各ステージを示します。

図をクリックすると、拡大または縮小します。

ASP ページからパイプラインに情報が渡されるときには、次の 2 つのディクショナリが使われます。

  • コンテキスト ディクショナリ 環境に関する情報をパイプラインに提供する、読み取り専用のディクショナリです。たとえば、データベースの接続文字列などが含まれます。

  • 注文ディクショナリ パイプラインが処理するデータを提供する、読み取りと書き込みの両方が可能なディクショナリです。たとえば、ユーザーが注文を送信すると、注文ディクショナリにすべての情報が収集され、注文処理パイプラインに渡されます。

各ディクショナリの内容は、パイプラインの種類に依存します。サイト開発者は、ASP ページのディクショナリに含める情報を指定します。

Commerce Server のパイプラインはトランザクションとして実行できるため、エラーが発生した場合は処理をロール バックできます。さらに、Commerce Server のパイプラインでは、Microsoft Windows 2000 Server のオブジェクト プーリングを利用して、処理速度が大幅に強化されています。オブジェクト プーリングについては、Windows 2000 Server のオンライン マニュアルを参照してください。

パイプラインを作成および編集する

サイト開発者が新しいパイプラインを作成したり、既存のパイプラインを変更するには、パイプライン エディタを使います。Commerce Server には、独自のカスタム パイプラインの基礎として使用できる、7 つの構成済みパイプライン テンプレートが用意されています。新しいパイプラインを作成するためのテンプレート ファイルは、.pct (パイプライン構成テンプレートの略) というファイル拡張子を持ちます。ステージの名前を変更したり、ステージを追加または削除することができます。任意のステージの任意のコンポーネントを追加または削除できます。詳細については、「パイプラインを利用する」を参照してください。

関連項目

パイプラインを利用する

パイプライン コンポーネントを構築する

パイプライン コンポーネント リファレンス

コンテンツ選択フレームワークを拡張する


対象化とパーソナライズ

対象化とパーソナライズは、パーソナライズされたコンテンツを 1 人または複数のユーザー、あるいはプロファイルを持つその他のビジネス エンティティに配信する処理です。たとえば、スポーツに関する Web サイトを運用している場合、テニス関連の情報を、テニス プレーヤーのみに配信したり、テニスに興味がある人に配信することができます。近日開催されるテニス トーナメントに関する発表や、テニス商品の広告と宣伝を配信することもできます。

Commerce Server 2000 では、2 種類の対象化が可能です。

  • 式に基づく対象化 明示対象化とも呼ばれます。配信対象となるユーザーのプロファイル プロパティがわかっている場合、またはコンテキストがわかっている場合で、配信するコンテンツが明確なときに使われます。Commerce Server ビジネス デスクのキャンペーン モジュールを使ってこの情報を指定し、ユーザーにコンテンツを配信します。

  • 予測 黙示対象化とも呼ばれます。ユーザーの対象化に必要なすべてのプロファイル プロパティがわかっていない場合、または配信するコンテンツが明確でない場合に使われます。ユーザーの興味を引くコンテンツを配信できるように、Commerce Server 予測リソースを使って、既存のユーザー データからこのような情報を推測します。予測の概念については、前の「予測とデータ マイニング」を参照してください。

式に基づく対象化または予測を使った場合、受信するユーザーの興味を引くコンテンツを配信できる可能性が高まります。パーソナライズされたコンテンツを期待できる場合、ユーザーが再びサイトを訪問する確率が上がります。

Web サイトの管理に対象化を使う

式に基づく対象化

式ビルダ

式を処理する

Web サイトの管理に対象化を使う

プロファイルを持つビジネス関連の項目に合わせて、コンテンツを対象化できます。たとえば、匿名ユーザー、登録済みユーザー、企業、またはコンテキストに合わせて、コンテンツを対象化できます。プロファイルの概念については、「プロファイル」を参照してください。

ビジネス関連の項目に合わせてコンテンツを対象化するには、ビジネス デスクを使います。たとえば、次の作業を行うことができます。

  • ユーザーにパーソナライズされたメッセージを配信するためのダイレクト メール キャンペーンを作成する。

  • 特定のユーザー プロファイル プロパティに基づいて、ユーザーに広告などのコンテンツを配信する。たとえば、Favorite Sport プロパティが "Biking" に設定されているユーザーに、自転車の広告を表示します。

  • Web ページのグループを特定し、それらのページにのみ、または特定のプロパティを持つユーザーがそれらのページにアクセスした場合にのみ表示されるようにコンテンツを対象化する。

  • ページ上のほかのコンテンツのプロパティに基づいて、ページにコンテンツを表示する。たとえば、Web サイトでニュースを提供する場合、Weather_Type プロパティが "Hot" か "Cold" かを指定して、コンテンツにプロファイルを割り当てます。Weather_Type = Hot の場合、エアコンの広告を表示できます。

  • 商品自体の特性やユーザー プロファイルに基づいて、カタログの特定の商品に割引を適用する。

  • 割引を表示する時期、および注文に割引を適用する時期を選択する。たとえば、ユーザーが項目をバスケットに入れたとき、または支払うときに、割引を適用できます。

式に基づく対象化

式に基づく対象化は、対象化するユーザーまたはコンテキスト、および配信するコンテンツを定義する式を作成する処理です。式とは、プロファイルに対して評価される条件で、コンテンツを配信するか、またはその他のアクションを実行するかを決定します。たとえば、user.totalvisit > 100 という式があるとします。この式の評価結果が True の場合、ユーザーに対して該当するコンテンツが表示されます。

ビジネス デスクのキャンペーン モジュールを使って式を作成し、式を評価した後に実行するアクションに式を結合します。次の 2 種類の式を作成できます。

  • 対象式 どこで、いつ、だれにコンテンツを表示するかを特定します。たとえば、特定のプロファイル プロパティを持つユーザーをコンテンツの対象に設定できます。また、ページ グループと呼ばれる、Web サイトの特定のセクションをコンテンツの対象に設定することもできます。たとえば、スポーツのページにのみ特定の広告を表示する対象式を作成できます。

  • カタログ式 割引を適用できるカタログの商品を指定します。たとえば、Product.price = 2000 というカタログ式を作成します。この式の評価結果が特定の商品で True の場合、ユーザーがショッピング バスケットにその商品を追加すると、商品の価格に 10% の割引が適用されます。

対象式を作成した後で、それらを結合して対象グループを形成できます。対象グループは、式とアクションの集合です。たとえば、サイトを 10 回訪問したユーザーに特定のコンテンツを表示する式と、サッカー シャツを購入したユーザーにコンテンツを表示する式を作成します。これら 2 つの式を AND または OR ステートメントで結合し、対象グループにします。たとえば、次のように指定します。

ユーザーがサイトを 10 回訪問し、かつ、そのユーザーがサッカー シャツを購入した場合、

サッカー商品の広告を表示する。

対象グループでは、各式の評価結果が True になったときに実行するアクションを指定して、式を結合します。各アクションにはそれぞれ 2 つの乗数があります。式が True の場合に適用する乗数と、式が False の場合に適用する乗数です。乗数が適用されると、式にはスコアが与えられ、コンテンツの配信が有効かどうかに影響します。次のアクションを指定できます。

  • 対象 式の評価結果が True の場合、スコアは増加し、コンテンツが表示される確率も上がります。式の評価結果が False の場合、スコアは変わりません。いずれの場合でも、コンテンツの配信は有効です。

  • 適用 式の評価結果が True の場合、コンテンツの配信は有効です。False の場合、コンテンツの配信は無効です。

  • 除外 式の評価結果が True の場合、コンテンツの配信は無効です。False の場合、コンテンツの配信は有効です。

  • スポンサー 式の評価結果が True の場合、コンテンツの配信は有効です。ほかのコンテンツは、同じ action = Sponsor の式がない限り無効です(スポンサーの乗数は 1 つだけです)。たとえば、Microsoft がホーム ページの広告のスポンサーである場合は、Microsoft の広告だけが表示されます。ただし、ほかにもそのホーム ページのスポンサー企業の広告がある場合は、それらの広告の表示も有効になります。

サイト開発者は、Commerce Server に用意されている乗数の値を変更できます。あるアクション タイプが設定された式の優先順位を、ほかのアクション タイプが設定された式より高くする場合などに、この値を変更します。

式ビルダ

ビジネス マネージャによる式の作成、編集、および表示を可能にする Commerce Server の機能を、式ビルダといいます。式ビルダは、式を構築するためのユーザー インターフェイスを提供します。式ビルダは、式を構築するための適切なプロパティにアクセスし、式に名前を付け、Commerce Server データベースに格納します。

式ビルダは、サイト開発者が、その機能やユーザー インターフェイスを簡単にほかのビジネス デスク モジュールに組み込めるように設計されています。また、式を使用し操作する任意の Web アプリケーションから呼び出せるため、ほかの処理と統合できます。たとえば、既存のコンテンツ管理処理がある場合、式ビルダの機能を組み込んで、ユーザーに合わせてコンテンツを対象化できます。

式ビルダを使用するアプリケーションを作成するには、次の操作を行います。

  • プロファイルの定義 式が使うプロファイルを指定します。式ビルダは、これらのプロファイル定義を読み込んで式を構築します。プロファイル プロパティ フィルタを指定して、式ビルダのユーザーが利用できるプロファイルのプロパティを制限することもできます。

  • 式の保存 使用する式ストアまたはプロファイル ストアを指定できます。式ビルダは、このデータベースに式を読み込んで保存します。

  • ユーザーに対するメッセージの表示 式ビルダのユーザー インターフェイス (UI) に表示されるメッセージをカスタマイズできます。たとえば、独自のメッセージとして [広告の対象式を作成します] などに変更できます。

式ビルダは UI に Dynamic Hypertext Markup Language (DHTML) を使うため、アプリケーションのスタイルシートが式ビルダの UI に適用され、アプリケーションの外観が一貫したものになります。

式を処理する

Commerce Server は、いくつかの手順を実行して、ユーザーに対して表示するコンテンツを指定します。この処理では、次のコンポーネントが使われます。

  • 式エバリュエータ この Component Object Model (COM) オブジェクトは、式とユーザー データを入力すると、式を処理して評価結果が True と False のいずれになるかを決定します。

  • コンテンツ選択フレームワーク (CSF) このプラットフォーム レベルのフレームワークには、式の結果として実行されるアクションを決定する一連のコンポーネントとパイプライン (コンテンツ選択パイプラインとイベント処理パイプライン) が含まれます。

次の図は、対象式、カタログ式、ユーザー データ、およびコンテキスト データが式エバリュエータに入力され、その結果が True、False、または未定義になるしくみを示します。結果は CSF に入力され、CSF は実行するアクションを決定します。

式エバリュエータと CSF が式を処理するしくみを表す図
対象式
カタログ式
ユーザー データ

コンテキスト データ
式エバリュエータ
True、False、または未定義の結果
コンテンツ選択フレームワーク
結果に基づくアクションの決定

関連項目

コンテンツ選択フレームワークを拡張する

予測とデータ マイニング

キャンペーン : 広告、割引、および ダイレクト メール

ビジネス デスク キャンペーン


キャンペーン : 広告、割引、および ダイレクト メール

キャンペーンとは、市場シェアの拡大、新製品の発売、顧客の維持など、特定の目的を達成するために、さまざまなコミュニケーション手段を使って行うマーケティング プログラムです。Commerce Server には、オンライン キャンペーンを実施するためのさまざまな機能が用意されています。たとえば、広告、割引、またはダイレクト メールのキャンペーンを作成し、分析機能を使って特定のユーザー グループを対象に設定できます。

Web サイトの管理にキャンペーンを使う

キャンペーンの構造

キャンペーン目標設定

参照テーブル

広告

割引

ダイレクト メール

キャンペーンの効果を分析する

Web サイトの管理にキャンペーンを使う

キャンペーン モジュールは、顧客と協力し、広告、割引、およびダイレクト メールの効果を最大にできるように設計されています。キャンペーンを使うと、次のようなことができます。

  • 広告や割引の対象を特定のプロファイルのユーザーに設定する プロファイル デザイナ モジュールを使ってユーザー プロファイルを設定し、キャンペーンに統合します。ページを参照しているユーザーのプロファイルを、対象化されたコンテンツ用に検討するか、またはまったく検討しないかについて、広告のページごとに指定できます。

  • 同じ業種で競合する複数の顧客向けにキャンペーンを実行する 競合する広告が同じページに表示されることは決してありません。

  • 顧客が希望する広告要求数に基づいて顧客に料金を請求する コンテンツ選択フレームワークは、コンテンツのランク付けの際にこれを考慮します。

キャンペーンの構造

キャンペーン、およびキャンペーンに関連付けられたキャンペーン項目は、顧客ごとにグループ化されます。請求先などの顧客情報が、その顧客用に作成されるすべてのキャンペーン、およびレポートの作成に使われます。キャンペーン マネージャでは、すべての顧客をアルファベット順で表示できます。

キャンペーンは、キャンペーン項目をグループ化したものです。キャンペーン項目には、広告、割引、およびダイレクト メール キャンペーンの 3 種類があります。各キャンペーンは、複数のキャンペーン項目を持つことができます。たとえば、新しい商品を宣伝するキャンペーンに、ホーム ページ上の広告バナー、新しい商品を発表するパーソナライズされたダイレクト メール メッセージ、および 6 月中にその商品を購入したユーザーに 10% の割引を提供する割引キャンペーン項目の 3 つのキャンペーン項目を含めることができます。

1 つのキャンペーンに含まれるキャンペーン項目は、顧客と日付範囲がすべて共通です。たとえば、新聞サイトの旅行セクションで、広告主が米国北西部からユーザーに対して 1 週間以内に 10,000 件の要求を配信するように要求したとします。この広告主は、10,000 件の要求を実現するために 3 種類の広告を掲載し、クリック数が最も多い広告を特定しようとしているとします。この場合、各広告がキャンペーン項目となります。

キャンペーン目標設定

キャンペーン目標設定は、一定期間内に配信する広告の数 (目標) を指定する処理です。広告のクリック数または広告に対する要求数で目標を設定できます。キャンペーンの目標は、キャンペーン レベルまたは広告レベルで設定できます。

  • キャンペーン レベルの目標設定では、要求の総数を優先度に従って配分することによって、キャンペーンのすべてのキャンペーン項目 (広告) に目標を適用します。

    たとえば、ある顧客について、キャンペーン レベルで目標を設定するとします。顧客からは 2 種類の広告を与えられ、25,000 回の広告要求の注文を受けています。キャンペーン レベルでは、一方の広告が広告要求の 60% 表示されるように設定し、もう一方の広告が広告要求の 40% 表示されるように設定します。たとえば、顧客が広告要求の数を 40,000 回に変更した場合でも、広告が表示される回数を手動で変更する必要はありません。表示回数は 60% と 40% のままになります。

  • 広告レベルの目標設定では、キャンペーン項目レベルで目標を適用します。キャンペーンの要求の総数は、注文された各キャンペーン項目の要求の合計数と等しくなります。たとえば、ある顧客が 1 か月で 50,000 回の広告要求を注文したとします。この場合は、1 つの広告項目を 50,000 回配信する必要があります。

キャンペーン レベルの目標設定と広告レベルの目標設定は、切り替えることができます。たとえば、ある顧客が合計で 1,000 回の広告要求を均等に実行する 2 つの広告キャンペーン項目を注文したとします。この場合は、次のような手順を実行します。

  1. キャンペーンにキャンペーン項目を追加し、各項目に優先度 1 を割り当てます。項目ごとの広告要求の注文の数量は 500 回になります。

  2. その後、同じ顧客が広告 1 の要求数を 500 回追加で注文したとします。キャンペーンを開き、目標設定を広告レベルに変更します。次に、広告 1 を選択し、数量に 500 回追加します。

    広告 1 の注文の数量は 1,000 回になります。広告 2 の注文の数量は 500 回です。広告レベルで目標を設定したキャンペーンでは、注文の合計数がキャンペーン マネージャに表示されません。

  3. さらに、顧客が注文を再配分し、広告 1 と広告 2 を 3 対 1 の割合で実行するように求めてきたとします。目標設定をキャンペーン レベルに変更します。注文の数量が再び表示され、すべての広告の合計注文数、つまり 1,500 回が表示されます。これで、各広告の優先度が注文の数量と同じになります。

    この時点で、優先度が 3 と 1 になるように各広告の優先度を編集します。Commerce Server は新しい数量を計算し、広告 1 の優先度を1,125、広告 2 の優先度を 375 と算出します。

別の状況で、たとえば手順 2. の後で、顧客がキャンペーンを 2 対 1 の割合で実行し、さらに 3 番目の広告を注文して優先度 1 を割り当てるように求めてきたとします。広告レベルの目標設定からキャンペーン レベルの目標設定に変換したキャンペーンに広告を追加し、その優先度を 1 にした状態でほかの広告の優先度を変更しない場合は、広告の配信にゆがみが生じます。キャンペーン マネージャを再度開き、すべての広告に新しい優先度を割り当て、実際に計算される結果を確認する必要があります。

参照テーブル

ビジネス デスクの参照テーブル モジュールは、サイトに表示されるコンテンツのサイズを設定し、ページ グループの名前を管理し、同じ業種の 2 つの広告が同時に同じページに表示されないようにするための業種コードを設定するときに使います。参照テーブル モジュールのプロパティによって、サイト全体で広告コンテンツの一貫性を保つことができます。

  • コンテンツ サイズは、コンテンツ (広告および割引) に指定するサイズです。Commerce Server 2000 では、既定のコンテンツ サイズがいくつか用意されています。これらのコンテンツ サイズは、Internet Advertising Bureau (IAB) によって承認された、一般に使われるサイズのリストに基づいています。コンテンツ サイズは、参照テーブル モジュールの [コンテンツ サイズ] セクションで確認します。

    参照テーブルのコンテンツ サイズは、キャンペーン項目のコンテンツ サイズを選択するときに利用できます。定義済みのサイズは、どれでも表示、編集、および削除できます。必要に応じて新しいコンテンツ サイズを作成することもできます。

  • 業種コードは、自動車、航空、飲料などのさまざまな業種に対応するコードです。業種コードを使うと、広告に関連付けられている業種を特定できるため、同じ業種で競合している複数の企業の広告が同じページに表示されないようにすることができます。業種コードは、割引には適用されません。

    たとえば、業種コードを更新して、コーヒー用に 1 つとミルク用に 1 つ、のように複数の飲料コードを含めると、種類の異なる飲料の広告を同じページに表示できます。たとえば、コーヒーの広告とミルクの広告が同じページで競合しても問題のない場合があります。このテーブルのエントリ数を調整することによって、業種の競合を監視するレベルを設定できます。

    Commerce Server には、一般的な業種コードがいくつか用意されています。広告で使用する業種コードは、参照テーブル モジュールの [業種コード] セクションで確認します。参照テーブルの業種コードは、キャンペーン項目の業種コードを選択するときに利用できます。参照テーブル モジュールの [業界コード] セクションでは、現在のすべての業種コードを一覧表示したり、新しい業種コードを追加したり、業種コードを編集および削除することができます。

  • ページ グループは、特定のページ グループ名を付けられ、広告の対象化に使われる、関連性のある Web ページの集合です。たとえば、新聞のサイトを運用している場合は、トップ記事用に 1 つとローカル ニュース用に 1 つ、スポーツのページ グループを作成できます。次に、特定のページ グループのページだけに表示されるように広告の対象を指定できます。

    サイトで表示する広告の料金を顧客に請求するときには、ページ グループを広告料の基準に設定できます。たとえば、ホーム ページに表示される広告には割増料金を請求し、それ以外のページに表示される広告には低い料金を請求することができます。

    注

    • ページ グループを使用するには、ページでの広告を有効にする必要があります。詳細については、『Commerce Server Software Development Kit』を参照してください。

広告

Commerce Server では、有料広告と自社広告の 2 種類の広告がサポートされています。

  • 有料広告は、表示頻度 (NOD) と呼ばれる配信用の特定の計算式に基づいて配信されるコンテンツです。

  • 自社広告は、有料広告が指定された表示頻度のスケジュールよりも先行して配信された場合に配信されるコンテンツです。たとえば、顧客が 1,000 回の有料広告を 4 か月かけて配信する注文をしているにもかかわらず、最初の 2 か月で 850 回の広告が配信されたとします。この場合、表示頻度のスケジュールを調整するために、自社広告を配信します。

    自社広告は、有料広告を円滑に配信する上で重要な役割を果たします。また、要求に適した有料広告がない場合にも、自社広告が表示されます。たとえば、すべての有料広告が、要求される対象に適さない場合には、自社広告が配信されます。

    自社広告は、売れ残りの在庫を割引価格で販売するときにも使われます。また、サイトの広告が特定の配信目標を持たないけれども指定した優先度で広告を実行する必要がある場合にも使われます。

広告のコンポーネント

Commerce Server では、広告を次の 4 つの部分から成るものとして扱います。

  • 広告プロパティは、広告の名前、種類 (有料広告または自社広告)、優先度または配信する要求数やクリック数 (有料広告と自社広告の割合)、表示上限回数、および広告に関連付けられた業種を指定します。

  • 広告のスケジュールは、開始日/時刻と終了日/時刻です。広告を表示する曜日と、曜日ごとの時刻を選択できます。

  • 広告の対象は、割引を表示するページと、その対象グループを指定します。

  • 広告の表示は、広告のサイズや種類 (イメージ、テキスト、HTML など) を指定できます。また、必要に応じて、ユーザーがほかのページ (または Web サイト) に移動するためにクリックする画像や URL も指定します。広告は、イメージ、テキスト、HTML、クリックできないイメージ、Buy Now 広告、Windows メディア サービス、またはビネットとして表示できます(ビネット広告は、広告を表示するイメージと、それに隣接して表示されるテキストで構成されます)。

広告を対象化する

Commerce Server を使って、広告をいつ、どこで、誰に対して表示するかを指定できます。広告を作成するときに、次の項目を指定します。

  • 表示上限回数 1 回のセッション中にユーザーに広告を表示できる回数です。

  • 優先度 特定の顧客のすべてのキャンペーン項目との相関関係で、広告を表示する頻度を決める方法です。キャンペーンでは、キャンペーン レベルで目標が設定されている広告にのみ優先度が適用されます。広告の目標が項目レベルで設定されている場合、有料広告に優先度は適用されません。

    自社広告では、優先度はすべての顧客およびすべてのキャンペーンのほかのすべての自社広告との相関関係になります。有料広告では、優先度は同じキャンペーンのほかの有料広告との相関関係になります。個々のキャンペーン項目の優先度は、ほかのすべてのキャンペーン項目の優先度との相関関係になります。

    たとえば、塗料を販売する 4 つの広告に、次のような優先度を割り当てるとします。

広告 | 優先度 | 配信回数の割合
青色の塗料 | 1 | 10
緑色の塗料 | 2 | 20
赤色の塗料 | 3 | 30
黄色の塗料 | 4 | 40
優先度の合計 | 10 | 100

すべての広告の優先度の合計は、10 (1+2+3+4 = 10) です。青色の塗料の広告の優先度は 1 なので、10 回の広告要求ごとに 1 回表示されます。

有料広告の優先度は、そのキャンペーンのすべてのキャンペーン項目の合計に対する 1 つの広告の割合になります。自社広告の場合、キャンペーンのほかのすべての自社広告の優先度の合計が優先度になります。

キャンペーン項目レベルで目標が設定されている広告では、広告配信の決定に優先度は使われません。代わりに、配信する要求数またはクリック数を直接指定します。

  • ページ グループ 特定のページ グループ名を付けられ、広告の対象化に使われる、関連性のある Web ページの集合です。たとえば、新聞のサイトを運用している場合は、トップ記事用に 1 つとローカル ニュース用に 1 つ、スポーツのページ グループを作成できます。次に、特定のページ グループのページだけに表示されるように広告の対象を指定できます。

    ページ グループは、参照テーブル モジュールを使って作成します。

  • 対象グループ コンテンツが表示される対象の集合です。たとえば、特定のプロファイル プロパティを持つユーザーを広告の対象に指定できます。対象と対象グループの詳細については、「対象化とパーソナライズ」を参照してください。

広告キャンペーン項目を処理する

コンテンツ選択フレームワーク (CSF) は、広告に指定するキャンペーン目標設定、表示上限回数、スケジュール、優先度、ページ グループ、および対象グループの各変数を処理します。ユーザーがサイトを訪問するたびに、コンテンツ選択フレームワークは広告を表示すべきかどうかを判断します。

広告のコンテンツ選択フレームワークは、表示頻度 (NOD) と呼ばれる計算式を使って、まず配信がどの程度スケジュールより遅れているかを基準に広告のスコアを付けます。この計算式では、配信するコンテンツの合計数と、その数量を配信する期間が考慮に入れられます。表示頻度は、コンテンツ選択フレームワークが広告要求を処理した後で、広告要求ごとに計算されます。表示頻度は有料広告にのみ適用され、自社広告には適用されません。

複数の広告があり、それらがどのような基準で表示されているかを知る必要がある場合は、サイト開発者に問い合わせてください。Commerce Server には、サイト開発者が選択処理を追跡するための TraceScores というツールが用意されています。TraceScores を使って、内部のコンテンツ決定処理が実際にどのように機能しているのかを調べます。

同じ対象グループと同じ優先順位を使って、Commerce Server で多くのキャンペーンを同時に実行する場合、コンテンツ選択フレームワークは広告の種類に基づいて表示する広告を選択します。広告がどちらも自社広告の場合は、優先度を相対的確率として使った無作為の選択が行われます。広告が有料広告の場合、表示される広告は表示頻度の計算に基づいて選択されます。この計算では、開始日、終了日、スケジュールされているイベントの数、および現在までに配信されたイベントの数が考慮されます。スコアを変更する要因の 1 つがペナルティ履歴で、ユーザーが最近表示した広告に、スコアを減らすペナルティが適用されます。ペナルティ履歴を有効にすると、広告は時間の経過と共に "循環" します。

割引

割引は、カタログのどの項目にも適用できます。割引は、注文全体に対して適用する (注文レベルの割引) ことも、注文の特定の項目に対して適用する (項目レベルの割引) こともできます。

  • 注文レベルの割引は、ショッピング バスケットのすべての商品に適用されます。たとえば、送料を無料にする割引は注文レベルの割引の一種です。バスケットのすべての商品の送料を無料にすることができます。Commerce Server に用意されている注文レベルの割引は、送料を無料にする割引のみです。優待ユーザーに対する 10% の割引など、送料を無料にする割引以外の注文レベルの割引を提供する場合は、サイト開発者がサイトに独自の変更を加える必要があります。

  • 項目レベルの割引は、バスケットの特定の商品に適用されます。

割引を注文全体に適用すると、割引は各項目に個別に適用されます。注文項目の単品に適用できる割引は 1 つだけです。2 つの割引を項目の同じ単品に適用することはできません。

Commerce Server を使って、次の種類の割引を作成および適用できます。

  • クリック必須の割引は、ユーザーが割引 URL をクリックした場合にのみ適用されます。たとえば、"10% オフ" などと書かれた商品のイメージが、割引 URLになります。サイト開発者は、この種類の割引をほかの用途に拡張し、たとえば顧客が割引を受けるために必要な割引券を提供することなどができます。

  • レバレッジ割引は、ほかの商品の購入に基づいて適用されます。たとえば、ユーザーがバスケットに電話機を追加したら、支払い時に無料のアドレス帳を提供し、ユーザーがそれをバスケットに追加して受け取るようにすることができます。また、ほかの付属品を割引価格で提供することもできます。

  • パーセンテージ割引は、商品の価格を金額ではなくパーセンテージで引き下げます。たとえば、商品に 10% の割引を適用した後で、必要に応じて商品の価格を変更できます。商品の価格を変更すると、割引金額は自動的に更新されます。

  • 金額割引は、商品の価格を固定金額で引き下げます。たとえば、特定の商品に対して 500 円の割引を提供できます。商品の価格を変更しても、この割引金額 (500 円) は変わりません。

  • 期間限定割引は、特定の日数の間だけ商品の価格を引き下げます。割引を特定の時間帯だけ適用するようにスケジュールを設定するには、現在の時刻を評価する式を作成します。たとえば、現在の時刻 > 5:00 pm および現在の時刻 < 9:00 pm の場合は、商品に 10% の割引を適用します。

これらの割引は、個別の商品に適用することも、カテゴリのすべての商品に適用することもできます。また、特定のメーカーのすべての項目に 10% の割引を適用するような、特定の条件を満たす商品に割引を適用する式を作成することもできます。

たとえば、次の状況で適用する割引を作成できます。

  • 商品の価格が 2,000 円を超えている 割引条件式です。割引条件式は、商品プロパティに基づいています。

  • 商品を 2 点購入した 必要な割引条件基準の一部です。

  • スポーツ ページの割引広告をクリックした 割引でクリックが必要な部分です。

  • 登録済みユーザーである 割引資格要件式です。割引資格要件式は、ユーザー プロファイルとコンテキスト プロファイルに基づいています。

1 つの商品に、複数の割引を同時に適用することはできません。顧客は 1 つの商品につき 1 つの割引だけを受けることができます。または、条件を 1 つの割引に対してのみ適用できます。商品を 1 つの割引の条件または特典として使った後で、その商品をほかの割引の条件または特典として使うことはできません。

割引のコンポーネント

割引キャンペーン項目のコンポーネントには、割引プロパティ、割引定義、割引表示対象、および割引の表示があります。これらのコンポーネントは、割引を作成するときにキャンペーン マネージャを使って定義します。

  • 割引プロパティは、割引名、優先順位、開始日、および終了日です。

  • 割引定義は、割引を適用する項目、金額、および対象の内訳です。割引定義には、次の要素があります。
    • 対象式は、割引を適用する項目を指定します。たとえば、Book_price > 2000 という対象式は、この条件を満たすすべての本に割引を適用します。

    • 必要条件は、割引が広告されるユーザー、コンテキスト、またはその両方を指定します。たとえば、ユーザーが登録済みの女性で、前回の訪問時に 5,000 円分の商品を購入した場合に、割引を提供することができます。あるいは、ユーザーが特定の日にサイトでショッピングをしたか、または特定のページを表示した場合に、コンテキストの必要条件を満たしたものとして 10% の割引を受けられるようにすることもできます。

    • 特典は、10% の割引や送料無料など、ユーザーに提供される割引の内容を指定します。割引を受けるには、特典の条件を満たす必要があります。特典の条件は、注文フォームの項目ごとに評価されます。特典の条件を式にして、割引を特定の項目に適用することも、すべての項目に適用するように指定することもできます。
  • 割引表示対象は、割引を広告するページと、その対象グループを指定します。

  • 割引の表示は、割引をユーザーに表示する回数、ユーザーが割引を受けるためにクリックするイメージや URL、および支払い時にバスケットに表示される割引情報を指定します。

割引の優先順位

割引にはすべて優先順位を設定し、商品に適用される可能性のあるほかの割引との相関関係で、その割引をいつ適用するかを決定します。広告とは異なり、割引では適用のタイミングの決定に優先度を使いません。たとえば、3 種類の割引を作成し、それぞれに次の表に示す優先順位を割り当てます。

割引 | 優先順位
電話機に対して 10% の割引 | 10
電話機、ラジオ、またはコンピュータを購入した優待ユーザーに対して 30% の割引 | 20
送料の免除 | 30

優待ユーザーがサイトでショッピングをして、ほかの項目と共に電話機を購入した場合は、10% の割引だけが電話機に適用されます。30% の割引や送料免除の割引は優先順位が低いため、電話機の購入には適用されません。

2 つの割引の優先順位が同じ場合は、使用中のデータベースの種類によって、適用される割引が変わることがあります。同じ優先順位の割引については、結果が確定しません。

購入した数量または金額に基づく割引

割引は、ユーザーが購入した数量または金額に基づいて適用できます。たとえば、ユーザーがジュースを 3 ケース購入した場合 (数量) に適用される割引や、ジュースを 2,000 円分購入した場合 (金額) に適用される割引を作成できます。

数量ごとまたは金額ごとに 1 つの割引を適用できます。たとえば、オンライン ストアの飲料部門が、夏に向けて "ジュースを 1 ケース購入すると 2 ケース目は半額" という特別提供を実施するとします。ただし、このオンライン ストアでは、飲料カテゴリの各商品に 10% の割引を適用する特別提供も実施しています。これらの割引に、次の表に示す優先順位を設定します。

割引 | 優先順位
ジュースを 1 ケース購入すると 2 ケース目は 50% の割引 | 10
飲料カテゴリの各商品に対して 10% の割引 | 20

ユーザーがジュースを 4 ケース購入した場合、割引は次のように適用されます。

  • 1 ケース目 : 割引なし。

  • 2 ケース目 : 50% の割引。

  • 3 ケース目 : 10% の割引。

  • 4 ケース目 : "1 ケース購入すると 2 ケース目は半額" の割引に制限が設定されていない場合にのみ、50% の割引。50% の割引の方が優先順位が高いので、10% の割引ではなく 50% の割引が再び適用されます。

割引の制限

バスケットに適用できる割引の回数を制限できます。割引の制限の値をゼロ (0) に設定すると、割引は無制限になります。バスケットで割引の条件が何回も満たされた場合には、割引が何回も適用されます。割引の制限は 1 つのバスケットの制限なので、ほかのバスケットでは適用されません。たとえば、支払いを終えたユーザーが、再び戻って同じ割引項目を購入した場合は、再度同じ割引を受けることができます。

割引キャンペーン項目を処理する

割引キャンペーンは、割引コンテンツ選択パイプラインと注文割引パイプライン コンポーネントによって処理されます。割引 CSF パイプラインは、ユーザーに最適な割引を広告するために使います。バスケット パイプラインの注文割引コンポーネントは、ショッピング バスケットに割引を適用するために使います。

  • 割引コンテンツ選択パイプラインは、割引の開始日と終了日をチェックし、適用可能な割引の一覧のスコアを調整します。これにより、現在のユーザーに最も関連のある割引に最高の優先順位が与えられるようにします。

  • 注文割引パイプライン コンポーネントは、まず利用可能な割引に必要条件を適用します。適用される割引に応じて、ユーザー プロファイルとコンテキスト プロファイルの情報を使って対象式を評価します。さらに、クリックが必要な割引の場合は、クリックされるすべての項目のキャンペーン項目 ID の一覧をチェックします。次に、注文パイプラインは条件と特典をテストしながら各項目を処理します。割引は、優先順位が最も高いものから適用されます。2 つの割引の優先順位が同じ場合、割引は非確定的になります。つまり、優先順位以外のプロパティによって、割引が適用される順序が決まります。

ダイレクト メール

ダイレクト メール キャンペーン項目を作成し、対象となるユーザー グループに電子メール メッセージの広告を配信します。メールに高い応答率を得ることが目的となります。Web ページからパーソナライズされた電子メール メッセージを送ることも、フラット テキスト ファイルからパーソナライズされていないメッセージを送ることもできます。写真、割引、URL などのアタッチメントを含むダイレクト メール メッセージを作成できます。ダイレクト メール サービスは、パーソナライズされた電子メール メッセージを大量のユーザーに一括送信するように設計されています。

ダイレクト メール キャンペーンを設定するには、ビジネス デスクのキャンペーン マネージャ モジュールを使います。ダイレクト メール キャンペーン項目は、大量の電子メールを高速に送信できる強力なエンジンである、ダイレクト メーラー サービスによって処理されます。

ダイレクト メール キャンペーン項目を作成するには、次の手順を実行します。

  • メッセージを作成する パーソナライズされた電子メール メッセージを作成するには、まずサイト開発者がパーソナライズされたテキストを含む ASP ページを作成し、Web サーバーに追加する必要があります。サイト開発者は、ASP ページの場所の URL をビジネス デスクのユーザーに知らせる必要があります。パーソナライズされていないメッセージを作成するには、メモ帳などを使ってテキストをフラット テキスト ファイルに入力します。

  • 受信者のリストを生成する Commerce Server の強力な分析ツールを使って、ダイレクト メール キャンペーンの受信者のリストを生成できます。たとえば、ビジネス デスクのレポート モジュールを使うと、データ ウェアハウスのデータに対してレポートを実行し、特定のユーザーのリストを取得できます。こうして取得したリストを、リスト マネージャにエクスポートできます。また、予測リソースを使ってユーザーのセグメントに含まれるユーザーのリストを生成し、そのリストをリスト マネージャにエクスポートすることもできます。リスト マネージャにエクスポートしたリストは、ダイレクト メーラーで利用できます。

    対象グループを使って、ユーザーの電子メール アドレスにダイレクト メールを直接送信することはできません。

  • ダイレクト メール キャンペーンを作成し、スケジュールを設定する キャンペーン マネージャ モジュールを使って、キャンペーンの名前、受信者のリストの名前、キャンペーン項目の開始時刻と日付、およびダイレクト メーラーがメッセージ本文を取得する URL (パーソナライズされたメッセージの場合) または静的ファイルを指定します。

ダイレクト メール キャンペーン項目の追加の詳細については、「ダイレクト メール キャンペーン項目を追加する」を参照してください。

脱退リスト

ダイレクト メーラーは、脱退機能をサポートしています。キャンペーン項目の一部として実行されるダイレクト メール ジョブでは、個々の受信者がダイレクト メール キャンペーン項目からの脱退を要求できます。ソリューション サイトに含まれる脱退用の ASP ページを使って、脱退リストと照合してメーリング リストをフィルタ処理できます。

Web サーバーからのダイレクト メーラー ジョブ向けの ASP ページを作成する開発者であれば、opt-out.asp ページへのリンクを配置できます。これにより、受信者は、該当するリンクをクリックすることで、サイトまたはダイレクト メール キャンペーン項目から脱退できるようになります。キャンペーン項目の一部として実行されるダイレクト メーラー ジョブが実行されると、ダイレクト メーラーはサイト レベルの脱退リストとキャンペーン項目レベルの脱退リストが存在するかどうかを調べます。両方の脱退リストが存在していれば、これらの脱退リストが元のメーリング リストから削除され、削除後のリストが新しいメーリング リストとして機能します。

ダイレクト メール キャンペーン項目を処理する

ダイレクト メーラーでは、次の作業を行います。

  • ダイレクト メール ジョブの管理。

  • パーソナライズされているメッセージ本文、またはパーソナライズされていないメッセージ本文の作成。

  • 電子メール メッセージ ヘッダーの書式設定。

  • コード ページ値 (言語) の設定と、メッセージ本文の正しいメッセージ形式への変換。MIME Encapsulation of Aggregate HTML Documents (MHTML)、Multipurpose Internet Mail Extensions (MIME)、またはテキストに変換します。

  • 受信者への電子メール メッセージの送信。

ダイレクト メーラー パイプラインは、受信者のリストを処理するために使われます。パイプラインに新しいコンポーネントを追加したり、コンポーネントを基幹業務システムに統合したり、そのコンポーネントをサード パーティが供給するコンポーネントと交換することができます。

キャンペーンの効果を分析する

次の表は、キャンペーン項目の効果を分析するために、Commerce Server に用意されているレポートを示します。

レポート | 説明
キャンペーン項目の要約 | サイトでのキャンペーン活動の要約を調べます。このレポートには、クリックの数と割合、残りの広告要求の数などの情報が表示されます。
広告の表示回数とヒット率 (日単位) | キャンペーンと対話する日々の一意のユーザーの行動を分析します。このレポートを使って、日々の一意のユーザーによるキャンペーンとの対話を把握します。
広告の表示回数とヒット率 (キャンペーン項目別) | 一意のユーザーによるキャンペーン項目との対話を分析します。このレポートには、キャンペーン項目と対話する一意のユーザーの行動が、すべての時間にわたって表示されます。
広告の表示回数とヒット率 (キャンペーン別) | 一意のユーザーによるキャンペーンとの対話を分析します。このレポートには、キャンペーンと対話する一意のユーザーの行動が、すべての時間にわたって表示されます。
キャンペーン イベントの要約 | サイトでのキャンペーンの効果を分析します。このレポートには、サイトでのキャンペーン活動の要約が表示されます。
広告の利用状況 | サイトのどこに配置した広告が最も効果的であるかを分析します。このレポートには、サイトの場所ごとのキャンペーン活動の要約が表示されます。

Commerce Server のすべてのレポートの一覧については、「Commerce Server のレポート」を参照してください。レポートを実行する方法については、「レポートを実行する」を参照してください。

関連項目

ビジネス デスク キャンペーン

ダイレクト メーラーの実行

パイプラインを利用する

コンテンツ選択フレームワークを拡張する

対象化とパーソナライズ


Commerce Server のセキュリティ

Commerce Server には、ユーザーの認証と識別を管理するために、認証マネージャ (AuthManager) オブジェクトと認証フィルタという 2 つのツールが用意されています。

  • 認証マネージャ (AuthManager) は、ユーザーを識別するメソッドと、動的に生成されたコンテンツへのアクセスを制御するメソッドを公開する Component Object Model (COM) オブジェクトです。たとえば、サイト開発者は、AuthManager オブジェクトの GetUserID メソッドを呼び出して、cookie やクエリ文字列に基づいてユーザーを識別できます。

  • 認証フィルタは、インターネット インフォメーション サービス (IIS) の Commerce Server アプリケーション レベルで使用されるInternet Server API (ISAPI) フィルタです。アプリケーションを訪問するすべてのユーザーに適用できます。認証フィルタが使用するプロパティは、グローバルな CS 認証レベルで構成します。認証モードは、アプリケーション レベルで構成します。認証モードは、Windows 認証、カスタム認証、自動 cookie から選択できます。

AuthManager オブジェクトと認証フィルタを構成すると、認証プロパティが管理データベースに格納されます。CS 認証リソースは、Config オブジェクトを使用して、管理データベースのプロパティを格納および取得します。

ソリューション サイトは、cookie を使わない B to C をサポートするように設計されているため、認証フィルタを使いません。

次の表は、認証フィルタ、AuthManager オブジェクト、およびソリューション サイトがサポートする機能の違いをまとめたものです。

機能 | 認証フィルタ | 認証マネージャ | ソリューション サイト
セッション cookie (非固定 cookie) がサポートされているかどうかの確認 | あり | なし | あり
cookie を使わない B to C のサポート | なし | あり | あり
アクセス制御リスト (ACL) を使ったきめ細かなアクセス制御の提供 | あり | なし | なし
Windows 資格情報を取得するカスタム ログイン ページのサポート | あり | あり | なし
URL の大文字小文字の訂正 | あり | なし | あり

ここでは、次のトピックについて説明します。

  • 一般的なセキュリティ要素 インストールされた Commerce Server で使用する主なセキュリティ要素について説明します。

  • Commerce Server の認証方法 AuthManager オブジェクトと認証フィルタについて説明します。

  • 認証チケット MSCSProfile チケットと MSCSAuth チケットについて説明し、Commerce Server がこれらを使ってゲスト ユーザーと登録済みユーザーを識別する方法を説明します。

  • IIS の認証方法 Commerce Server で使用されるインターネット インフォメーション サービス (IIS) 5.0 の認証方法について説明します。

  • セキュリティに関する追加情報 AuthManager オブジェクトと認証フィルタによる開発に関するその他の情報源の一覧と、サイトのセキュリティ設定に関するトピックへのリンクを示します。

関連項目

セキュリティの計画

サイト セキュリティとフィルタを使用する

サイト セキュリティ オブジェクト

CS 認証リソースの管理

Commerce Server セキュリティ チェックリスト

サイトにセキュリティを設定する


一般的なセキュリティ要素

ここでは、インストールされた Commerce Server で使用する主なセキュリティ要素、つまり、アクセス制御、暗号化、監査、および証明書について説明します。

認証の概要

アクセス制御の概要

証明書の概要

暗号化の概要

監査の概要

認証の概要

Commerce Server は、7 種類の認証方法をサポートしています。それらは、Commerce Server が提供する 3 種類の認証方法 (Windows 認証、カスタム認証、および自動 cookie) と、インターネット インフォメーション サービス (IIS) が提供する 4 種類の認証方法 (匿名、基本、統合、および証明書) です。

Commerce Server では、IIS のどの認証方法が実行されるかについて認識しません。これらの認証方法のうち、匿名以外のいずれかを使うと、Commerce Server は Active Server Pages (ASP) 環境にアクセスし、プログラムによって、ユーザー (現在ログオンしているユーザー) の名前を要求できます。

IIS は、Windows と完全に統合されたセキュリティ機能を提供します。Commerce Server は、Web サイトへアクセスしようとしているユーザーの識別情報を確認できるように、IIS の 4 種類の認証方法をサポートしています。これらの IIS 認証方法は、次のとおりです。

  • 匿名認証では、だれでもユーザー名とパスワードを要求されずにアクセスできます。

  • 基本認証では、ユーザーにユーザー名とパスワードの入力を要求し、それらは暗号化されずにネットワークで送信されます。

  • 統合 Windows 認証では、ハッシュ技術を使用し、ネットワークで実際にパスワードを送信することなくユーザーを識別します。

  • 証明書は、Secure Sockets Layer (SSL) 接続を確立するために使用できるデジタル資格情報です。これも認証に使用できます。

これらの方法を使うと、サイトの公開領域へのアクセスを許可する一方で、非公開のファイルやディレクトリへの不正アクセスを防止できます。これらの認証方法の詳細については、「IIS の認証方法」を参照してください。

アクセス制御の概要

Web サーバーのセキュリティの基礎となる NTFS アクセス権限では、Windows のユーザーとグループに与えられるファイルとディレクトリへのアクセス権限のレベルを定義できます。たとえば、管理している Web サーバーで、ある企業がカタログを公開することになった場合、その企業の Windows ユーザー アカウントを作成し、特定の Web サイト、ディレクトリ、またはファイルに対するアクセス権限を構成する必要があります。このアクセス権限によって、Web サイトのコンテンツを更新できるのはサーバー管理者と企業の所有者だけになります。一般ユーザーは、Web サイトの表示はできますが、コンテンツの変更はできません。NTFS アクセス権限の設定の詳細については、IIS 5.0 のマニュアルの「ディレクトリおよびファイルに対する NTFS のアクセス権を設定する」を参照してください。

WebDAV は、HTTP 1.1 プロトコルを拡張したもので、HTTP 接続によるファイルとディレクトリの操作を支援します。WebDAV の "Verb" またはコマンドによって、ファイルやディレクトリのプロパティを追加したり読み取ることができます。ファイルとディレクトリは、リモートでも作成、削除、移動、またはコピーを行うことができます。さらに、Web サーバーのアクセス権限と NTFS の両方でアクセス制御を構成できます。詳細については、IIS 5.0 のマニュアルの「アクセス制御について」または「WebDAV の発行」を参照してください。

証明書の概要

証明書は、サーバーとクライアントの両方が相互に認証できるデジタル識別文書です。暗号化情報を送信できる SSL 接続を確立するには、サーバーと、クライアントに属するブラウザの両方に証明書が必要です。IIS の証明書ベースの SSL 機能は、サーバー証明書、クライアント証明書、および各種のデジタル キーで構成されます。これらの証明書は、Microsoft 証明書サービスで作成するか、または証明機関 (CA) と呼ばれる相互に信頼された第三者機関から取得できます。証明書とキーの設定の詳細については、IIS 5.0 のマニュアルの「サーバーに SSL をセットアップする」を参照してください。

サーバー証明書

サーバー証明書は、ユーザーが Web サイトの識別情報を確認する手段となります。サーバー証明書には、サーバーのコンテンツにかかわる組織名、証明書を発行した組織名、および暗号化接続の確立に使用される公開キーなどの詳細な識別情報が含まれます。これらの情報によって、Web サーバーのコンテンツの信頼性と、セキュリティが設定された HTTP 接続の完全性をユーザーに保証できます。

クライアント証明書

SSL では、Web サーバーも、ユーザーのクライアント証明書の内容を確認することによって、ユーザーを認証することができます。一般的なクライアント証明書には、ユーザー、および証明書と公開キーを発行した組織に関する詳細な識別情報が含まれています。クライアント証明書による認証を SSL 暗号化と併用することで、ユーザーの識別情報を確認するための安全性の高い手段を実装できます。

暗号化の概要

暗号化を使うと、ユーザーが、クレジット カード番号や電話番号などの個人情報を、安全な方法でやりとりできるようになります。暗号化とは、情報を送信する前に "スクランブル" することで、復号化とは、暗号化された情報を受信した後に "スクランブルを解除" することです。IIS でこのような暗号化の基礎になっているのは SSL 3.0 プロトコルで、ユーザーとの間に暗号化通信リンクを確立する安全な手段を提供します。SSL は、Web サイトの信頼性を確認し、オプションとして、制限付き Web サイトにアクセスするユーザーの識別情報も確認できます。

証明書には、SSL のセキュリティ設定された接続の確立に使用されるキーが含まれています。キーは、SSL 接続の確立にあたってサーバーとクライアントを認証するために使用される一意の値です。公開キーと秘密キーで、SSL キーの組を構成します。Web サーバーでは、このキーの組を使って Web ブラウザとセキュリティ設定された接続をネゴシエートし、通信をセキュリティを設定するために必要な暗号化のレベルを決定します。

この種類の接続の場合、Web サーバーと Web ブラウザの両方で、互換性のある暗号化および復号化の機能を備えている必要があります。やりとりの間に暗号化 (セッション) キーが作成されます。サーバーと Web ブラウザのいずれも、このセッション キーを使って、送信される情報の暗号化と復号化を行います。セッション キーの暗号化の度合い、つまり強度は、ビットで表されます。セッション キーを構成するビット数が大きいほど、暗号化とセキュリティのレベルは高くなります。暗号化キーの強度が高まれば、セキュリティも強化されますが、実装に必要なサーバー リソースも増えます。Web サーバーのセッション キーの長さは、通常は 40 ビットですが、必要なセキュリティのレベルに応じて、最長 128 ビットに対応します。

Commerce Server を使って、新しい暗号化キーを生成できます。詳細については、「新しい暗号化キーを生成する」を参照してください。

監査の概要

セキュリティ監査技術によって、ユーザーと Web サーバーのセキュリティの状態を広範囲にわたって監視できます。定期的にサーバーの構成を監査し、リソースが不正なアクセスや変更を受けやすい領域を検出することをお勧めします。統合 Windows ユーティリティや IIS 5.0 の組み込みログ機能を使うか、または ASP アプリケーションを使って独自の監査ログを作成できます。詳細については、IIS 5.0 のマニュアルの「監査」を参照してください。


Commerce Server の認証方法

Commerce Server 2000 では、インターネット インフォメーション サービス (IIS) 5.0 でサポートされている認証方法が、次の 2 つの方法で拡張されています。1 つは、Internet Server API (ISAPI) フィルタである認証フィルタによって、動的コンテンツに対するきめ細かなアクセス制御を追加していることです。もう 1 つは、広範なブラウザに対処しなければならないインターネット環境で Windows 認証やカスタム認証を使うための手段を提供していることです。Commerce Server は、Windows 認証とカスタム認証について、このサポートを提供します。

認証フィルタを使う場合は、次の認証モードを選択できます。

  • フィルタなしモード 認証フィルタは無効です。

  • Windows 認証 認証フィルタは、Windows 認証を使ってサイトへのアクセスを制御します。Active Directory (またはローカルな Security Access Manager アカウント) に照合して、ユーザーのログインとパスワードを確認します。Windows 認証を使う場合は、指定した一部の Active Server Pages (ASP) ページとディレクトリのみに、ログイン アクセスを要求できます。Windows 認証の使い方については、「Windows 認証を有効にする」を参照してください。

  • カスタム認証 認証フィルタは、SQL Server データベースやほかの種類のデータベースに照合して、ユーザーのログインとパスワード (MSCSAuth チケット) を確認します。Commerce Server サイトのすべての ASP ページとディレクトリに対して、ログイン アクセスが必要です。認証フィルタは、Commerce Server サイトの仮想ディレクトリを照合し、Commerce Server 管理データベースを確認して、そのサイトのカスタム認証が有効かどうかを判断します。MSCSAuth チケットが有効ではない場合、認証フィルタはユーザーにログイン情報の入力を要求します。

    カスタム認証を使う場合は、Commerce Server サイトのすべての ASP ページとディレクトリに対して、ログイン アクセスが必要です。カスタム認証の使い方については、「カスタム認証を有効にする」を参照してください。

  • 自動 cookie モード ゲスト ユーザーに対し、チケットを格納する cookie を自動的に生成できます (匿名ユーザーが MSCSProfile チケットを取得した場合、そのユーザーはゲスト ユーザーになります)。MSCSProfile チケットを使うと、ゲスト ユーザーによるサイト内の移動と利用状況に関するプロファイル データを収集できます。

    自動 cookie モードとフィルタなしモードを選択した場合、登録済みユーザーは存在しません。

    自動 cookie モードと共に Windows 認証モードまたはカスタム認証モードを使用している場合 (混合モード)、ゲスト ユーザーが登録すると、そのユーザーの固定 cookie を更新でき、ユーザーがゲストだったときに収集したプロファイル データは失われません。自動 cookie モードの使い方については、「自動 cookie の生成を有効にする」を参照してください。

混合モードを有効にした場合、認証フィルタは次のチケットを生成します。

  • ユーザーが最初にサイトにログインしたときに、MSCSProfile チケットを生成します。

  • ユーザーが認証されると、ユーザー ID が入った MSCSAuth チケットを生成します。MSCSAuth チケットを使うことによって、アクセス制御が可能になります。

  • ユーザーが認証されなかった場合 (MSCSAuth チケットがない場合)、この cookie はそのユーザーが匿名であることを通知します。

チケットの詳細については「認証チケット」を参照してください。

関連項目

セキュリティの計画

サイト セキュリティとフィルタを使用する

サイト セキュリティ オブジェクト

CS 認証リソースの管理

Commerce Server セキュリティ チェックリスト

サイトにセキュリティを設定する


認証チケット

チケットとは、userID とその値など、プロパティ/値の組です。たとえば、userID/joeuser はチケットです。Commerce Server は、チケットを使って、サイトを訪問するユーザーに関する情報を保存します。チケットは、cookie と URL クエリ文字列のいずれにも格納できます。

Commerce Server がサポートするチケットには、次の 2 種類があります。

  • MSCSProfile チケットは、サイトを訪問する匿名またはゲスト ユーザーの識別と追跡に使われます。MSCSProfile チケットは、固定 cookie を許可しているユーザーの固定 cookie に格納されます。CS 認証リソースを構成するときに、固定 cookie の有効期間を決定します。通常、有効期間は数年間です。

    匿名ユーザーにはチケットはありませんが、Windows 認証の構成によっては、匿名ユーザーはチケットを取得し、ゲスト ユーザーになる必要があります。たとえば、自動 cookie モードを使う場合、匿名ユーザーはゲスト ユーザーになります。

  • MSCSAuth チケットは、登録済み (認証済み) ユーザーの識別と追跡に使われます。MSCSAuth チケットは、cookie を許可しているユーザーの非固定 cookie に格納されます。ユーザーが cookie を許可していない場合、チケット データは URL クエリ文字列に格納されます。セッションが終了すると、cookie は削除されます。

発行されるチケットの種類によって、ユーザーが Web サイトのどのリソースにアクセスできるかが決まります。

固定 cookie と非固定 cookie は、どちらも暗号化できます。これらの cookie には、次のデータが含まれます。

  • ユーザー ID (チケット) 固定 cookie と非固定 cookie に使われます。サイト開発者は、ユーザー ID に使用する値を決定できます。たとえば、ユーザーのログイン名や電子メール アドレスを使用できます。匿名ユーザーの場合は、ユーザー ID が、たとえばいずれかの ASP ページが生成するグローバル一意識別子 (GUID) などになります (Commerce Server には、GUID の生成に使用できる GenID オブジェクトが含まれています)。

  • 前回のログイン時刻 非固定 cookie に使われます。"前回のログイン時刻" は、いつユーザーを再認証する必要があるかを決定します。たとえば、ユーザーが Web サイトに登録し、ログオフせずにコンピュータを離れ (または、しばらく非アクティブになり)、時間ウィンドウが閉じる前にコンピュータに戻った場合、ユーザーは再認証を受ける必要がありません。ただし、時間ウィンドウが閉じた後で戻った場合は、再度ログインする必要があります。

  • 時間ウィンドウ 非固定 cookie の有効期間を分単位で決定するために使われます。

ユーザーがサイトからログオフすると、認証の有効期間は終了します。サイト開発者は、どちらの種類の cookie にもカスタム プロパティを追加できます。

関連項目

cookie と認証

セキュリティの計画

サイト セキュリティとフィルタを使用する

CS 認証リソースの管理

Commerce Server セキュリティ チェックリスト

サイトにセキュリティを設定する


IIS の認証方法

Commerce Server は、インターネット インフォメーション サービス (IIS) 5.0 が提供する次の認証方法をサポートしています。

匿名の認証

基本認証

統合 Windows 認証

証明書による認証

匿名の認証

匿名の認証は、ユーザーにユーザー名やパスワードの入力を要求せずに、Web サイトの公開領域へのアクセス権限を与えます。ユーザーが公開 Web サイトに接続しようとすると、Web サーバーは、"URSR_<コンピュータ名>" という Windows ユーザー アカウントにそのユーザーを割り当てます。<コンピュータ名> は、IIS を実行しているサーバーの名前です。

特に指定しない限り、IUSR_<コンピュータ名> アカウントは、Windows の Guest ユーザー グループに含まれます。このグループは、一般ユーザーのアクセス権限のレベルと利用可能なコンテンツの種類を指定する NTFS アクセス権限により、セキュリティ上の制限を受けます。

サーバーに複数のサイトがある場合、またはサイトの中に異なるアクセス権限を必要とする領域がある場合は、Web サイト、FTP サイト、ディレクトリ、またはファイルごとに、複数の匿名アカウントを作成できます。これらのアカウントに異なるアクセス権限を与えるか、またはこれらのアカウントを異なる Windows ユーザー グループに割り当てることによって、公開 Web コンテンツおよび FTP のコンテンツの領域ごとに、ユーザーの匿名アクセスを許可できます。

IIS では、IUSR_<コンピュータ名> アカウントを次のように使います。

  1. IUSR_<コンピュータ名> アカウントは、コンピュータの Guest グループに追加されます。

  2. IIS は、要求を受け取ると、IUSR_<コンピュータ名> アカウントを借用してからコードを実行するか、またはファイルにアクセスします。IIS が IUSR_<コンピュータ名> アカウントを借用できるのは、このアカウントのユーザー名とパスワードを知っているためです。

  3. IIS は、クライアントにページを返す前に、NTFS のファイルおよびディレクトリのアクセス権限を確認し、IUSR_<コンピュータ名> アカウントにファイルへのアクセスが許可されているかどうかを調べます。

  4. アクセスが許可されている場合、認証は完了して、ユーザーはリソースを利用できます。

  5. アクセスが許可されていない場合、IIS は別の認証方法を使おうとします。いずれの方法も選択されなかった場合、IIS はブラウザに "HTTP 403 アクセスが拒否されました" というエラー メッセージを返します。

注

  • 匿名認証が有効になっている場合、ほかの方法が有効になっていても、IIS は必ず最初にこの方法で認証しようとします。

  • ブラウザがユーザーにユーザー名とパスワードの入力を要求する場合もあります。

Web サーバーのサービス レベルで、または仮想ディレクトリとファイルごとに、IIS スナップインで匿名認証に使用されるアカウントを変更できます。匿名アカウントには、ローカルにログオンするユーザー権限が必要です。アカウントに "ローカル ログオン" 権限がない場合、IIS は、匿名の要求に対してサービスを提供できません。IIS では、IUSR_<コンピュータ名> アカウントに限り、"ローカル ログオン" 権限を与えます。特に指定しない限り、ゲスト アカウントにドメイン コントローラの IUSR_<コンピュータ名> アカウントは与えられません。匿名ログオンを許可するには、"ローカル ログオン" に変更する必要があります。

注

  • Active Directory Service Interfaces (ADSI) を使うと、"ローカル ログオン" 権限の要件を変更できます。詳細については、IIS 5.0 のマニュアルの「Active Server Pages ガイド」で、"ログオン方法" のリファレンスを参照してください。

また、Microsoft 管理コンソール (MMC) のグループ ポリシー スナップインを使うと、Windows の IUSR_<コンピュータ名> アカウントのセキュリティ権限を変更することもできます。ただし、匿名ユーザー アカウントが指定のファイルまたはリソースへのアクセス権限を持っていない場合、Web サーバーは、そのリソースへの匿名による接続の確立を拒否します。詳細については、IIS 5.0 のマニュアルの「Web サーバーのアクセス権を設定する」を参照してください。

重要

  • IUSR_<コンピュータ名> アカウントを変更すると、Web サーバーによってサービスが提供される "すべて" の匿名 HTTP 要求に影響を与えます。このアカウントを変更する場合は、注意してください。

基本認証

基本認証方式は、ユーザー名とパスワードの情報を収集するために広く使われている業界標準の方法です。基本認証は、次のように進行します。

  1. クライアント コンピュータの Web ブラウザが、ユーザーに以前割り当てられた Windows 2000 アカウントのユーザー名とパスワードを入力するダイアログボックスを表示します。

  2. 次に、Web ブラウザは、この情報を使って接続を確立しようとします (パスワードは、ネットワークで送信される前に、Base64 でエンコードされます)。

  3. サーバーがこの情報を拒否した場合、Web ブラウザは、ユーザーが有効なユーザー名とパスワードを入力するか、またはダイアログボックスを閉じるまで、繰り返しダイアログボックスを表示します。

  4. Web サーバーがユーザー名とパスワードが有効な Windows ユーザー アカウントに対応していることを確認すると、接続が確立されます。

基本認証の設定については、IIS 5.0 のオンライン マニュアルの「認証を有効にし、構成する」を参照してください。

基本認証の長所は、HTTP の仕様の一部であり、ほとんどのブラウザでサポートされていることです。短所は、基本認証を使う Web ブラウザは、パスワードを暗号化せずに送信することです。ネットワークの通信を監視することで、公開されているツールを使ってこれらのパスワードを簡単に読み取り、解読できます。そのため、ユーザーと Web サーバーの間の接続が、ケーブル接続や専用回線を使ってセキュリティが設定されていることを保証できない限り、基本認証はお勧めしません。

注

  • 統合 Windows 認証は、基本認証より優先されます。ブラウザは、ユーザーにユーザー名とパスワードの入力を求める前に、統合 Windows 認証を選択し、現在の Windows ログオン情報を使おうとします。現在、統合 Windows 認証をサポートしているのは、Internet Explorer Version 2.0 以降だけです。

統合 Windows 認証

統合 Windows 認証 (旧称 NTLM 認証または Microsoft 暗号化認証) は、ユーザー名とパスワードがネットワークに送信されないため、セキュリティが設定された認証形式です。統合 Windows 認証を有効にすると、ユーザーのブラウザは、ハッシュを使った暗号を Web サーバーと交換することにより、パスワードを知っていることを証明します。認証資格情報は、"ハッシュ" とも呼ばれる一方向のプロセスを経由します。このプロセスの結果、ハッシュという解読不可能なメッセージ ダイジェストが生成されます。つまり、ハッシュから元のテキストを解読することはできません。

統合 Windows 認証では、Kerberos v5 認証プロトコルと独自の暗号化認証プロトコルのどちらも使用できます。サーバーにディレクトリ サービスがインストールされていて、ブラウザが Kerberos v5 認証プロトコルと互換性がある場合は、Kerberos v5 プロトコルと暗号化認証プロトコルの両方が使われます。ディレクトリ サービスがインストールされていない場合は、チャレンジ/レスポンス プロトコルだけが使われます。

Kerberos v5 認証プロトコルは、Windows 2000 分散サービス アーキテクチャの機能です。Kerberos v5 認証が成功するためには、クライアントとサーバーの両方が、キー配布センター (KDC) との信頼関係のある接続を持ち、ディレクトリ サービスとの互換性があることが必要です。このプロトコルの詳細については、Windows 2000 のマニュアルを参照してください。

統合 Windows 認証は、次のように進行します。

  1. 基本認証と異なり、最初にユーザー名とパスワードの入力を要求しません。統合 Windows 認証には、クライアント コンピュータの現在の Windows ユーザー情報が使われます。

    注

    • Internet Explorer Version 4.0 以降では、必要に応じて、最初にユーザー情報の入力を要求するように構成できます。詳細については、Internet Explorer のマニュアルを参照してください。
  2. ただし、認証の交換によって最初にユーザーを識別できなかった場合、ブラウザはユーザーに Windows ユーザー アカウントのユーザー名とパスワードの入力を要求し、統合 Windows 認証を使ってこれを処理します。

  3. Internet Explorer は、ユーザーが有効なユーザー名とパスワードを入力するか、または入力を要求するダイアログボックスを閉じるまで、ユーザーに入力を要求し続けます。

統合 Windows 認証はセキュリティが設定されていますが、次の 3 つの制約があります。

  1. この認証方法をサポートしているのは、Microsoft Internet Explorer Version 2.0 以降だけです。

  2. 統合 Windows 認証は、HTTP プロキシ接続では機能しません。

  3. ファイアウォールに開く必要のある TCP ポートが 1 つ増えます。

このため、統合 Windows 認証は、ユーザーと Web サーバーの両方のコンピュータが同じドメインにあり、すべてのユーザーが Microsoft Internet Explorer Version 2.0 以降を使っていることを管理者が確認できるイントラネット環境に最適です。

証明書の認証

Web サーバーの Secure Sockets Layer (SSL) セキュリティ機能を使った、2 種類の認証方法を使用することもできます。サーバー証明書を使うと、クレジット カード番号などの個人情報を送信する前に、ユーザーが Web サイトを認証できます。また、クライアント証明書を使うと、Web サイトの情報を要求するユーザーを認証できます。SSL は、ログオン プロセス中に Web ブラウザが送信する、ユーザーの暗号化されたデジタル識別情報の内容を確認して認証します (ユーザーは、相互に信頼された第三者機関からクライアント証明書を取得します)。サーバー証明書には、通常、サーバーを運用する企業と、証明書を発行した組織に関する情報が含まれています。クライアント証明書には、通常、ユーザーと、証明書を発行した組織に関する識別情報が含まれています。

クライアント証明書のマッピング

クライアント証明書を、Web サーバーの Windows ユーザー アカウントに関連付けることができます。これをマッピングといいます。証明書のマップを作成し、有効にすると、ユーザーがクライアント証明書を使ってログオンするたびに、Web サーバーが自動的にユーザーを適切な Windows ユーザー アカウントに関連付けます。このように、基本認証、メッセージ ダイジェスト、または統合 Windows 認証を使わなくても、クライアント証明書を使ってログオンするユーザーを自動的に認証できます。1 つのクライアント証明書を 1 つの Windows ユーザー アカウントにマッピングすることも、複数のクライアント証明書を 1 つのアカウントにマッピングすることもできます。たとえば、サーバーに数種類の部門または企業が混在し、それぞれが独自の Web サイトを持っている場合は、多対一のマッピングを使って、各部門または企業のクライアント証明書すべてをそれぞれの Web サイトにマッピングできます。これによって、各サイトはそれぞれのクライアントのみにアクセスを提供します。詳細については、IIS 5.0 のオンライン マニュアルの「ユーザー アカウントにクライアント証明書をマップする」を参照してください。


セキュリティに関する追加情報

Commerce Server 2000 のヘルプには、セキュリティに関する次のトピックがあります。

  • cookie と認証 Commerce Server の cookie と、Commerce Server が Web ファーム シナリオで cookie を使用する方法について説明します。

  • セキュリティの計画 セキュリティの実装に関する検討事項について、推奨される対応を説明します。

  • サイト セキュリティとフィルタを使用する 認証フィルタを使用したサイトの開発に関する詳細な情報を提供します。

  • サイト セキュリティ オブジェクト AuthManager オブジェクトと BizDeskSecurity オブジェクトの使い方について説明します。サイト セキュリティ オブジェクトのサンプル コードを示します。

  • CS 認証リソースの管理 Commerce Server サイトの認証方法を、CS 認証リソースを使って設定または変更する方法について説明します。Retail と Supplier のソリューション サイトで認証フィルタを有効にする Login.asp コードのサンプルを示します。

  • Commerce Server セキュリティ チェックリスト Commerce Server ビジネス デスクのセッションのセキュリティ設定など、Commerce Server 固有のセキュリティ問題の一覧を示し、それらを実装する方法を説明します。

  • サイトにセキュリティを設定する サイト、ビジネス デスク モジュール、および管理データベースへのアクセスを制限する方法など、Commerce Server サイトのセキュリティを設定する方法について説明します。

セキュリティに関する追加情報については、次の資料を参照してください。

  • インターネット インフォメーション サービス (IIS) のオンライン マニュアル

  • 『Microsoft Windows 2000 Server Resource Kit』

  • Microsoft のセキュリティ サイト (http://www.microsoft.com/japan/security/)

  • Microsoft の Windows セキュリティ サイト (http://www.microsoft.com/ntserver/security/default.asp)


Commerce Server のインストール計画

Microsoft Commerce Server 2000 の開発と配置を行う前に、決定することが必要な事項がいくつかあります。Commerce Server を正しく開発および配置するには、これらの事項を慎重に検討し、Commerce Server 2000 のヘルプのほかの部分を参照して、これらの事柄がどのような意味を持つかを調べることが重要です。

Commerce Server の実装計画は、計画、開発、配置、管理のサイクルの中で最初の、そして最も重要と考えられるフェーズです。将来の拡大も考慮に入れて慎重にサイトを計画しておけば、後でコストと時間を費やして変更する必要がありません。

Commerce Server は、密接に統合された 5 つのサブシステムで構成されます。これらのサブシステムの計画以外に、システム全体の運用と管理についても計画する必要があります。以下の各トピックでは、各サブシステムの計画について説明します。

ここでは、次のトピックについて説明します。

  • 管理運用ツールの計画 サイトの管理と運用に関する検討事項について、推奨される対応を説明します。

  • ビジネス分析システムの計画 データのアクセスと更新に関する検討事項について、推奨される対応を説明します。

  • ビジネス プロセス パイプラインの計画 パイプライン機能に関する検討事項について、推奨される対応を説明します。

  • 商品カタログ システムの計画 商品カタログ システムに関する検討事項について、推奨される対応を説明します。

  • プロファイル システムの計画 プロファイル システムに関する検討事項について、推奨される対応を説明します。

  • 対象化システムの計画 対象化システムに関する検討事項について、推奨される対応を説明します。

  • サイト アーキテクチャとセキュリティの計画 サイト アーキテクチャとセキュリティに関する検討事項について、推奨される対応を説明します。

  • 配置の計画 サイトの配置計画に関する検討事項について、推奨される対応を説明します。


管理運用ツールの計画

Commerce Server 2000 には、システムを運用および管理するための 3 つのツール、Commerce Server ビジネス デスク、取引先サービス、および Commerce Server マネージャが含まれています。

ビジネス デスクを使って、さまざまなサイト オプションを構成したり、日常のマーケティングやサイト利用状況の分析を管理することができます。ビジネス デスクを最適な方法で利用するには、サイトに関していくつかの事柄を決定する必要があります。

次の表は、管理運用ツールの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
サイトは主として消費者向けか? 取引先向けか? | サイトが消費者向けである場合は、ユーザーが各自のプロファイル情報にアクセスできる顧客サービスが含まれた、Retail ソリューション サイトを基に開発を開始します。 サイトが取引先向けである場合は、取引先が各自のアカウントにアクセスできる取引先サービスが含まれた、Supplier ソリューション サイトを基に開発を開始します。 ソリューション サイトをダウンロードするには、http://www.microsoft.com/japan/commerceserver/productinfo/solsites.htm を参照してください。
取引先との対話機能を計画している場合、取引先とビジネス文書を交換する必要はあるか? | 取引先とビジネス文書を交換する場合は、Microsoft BizTalk Server 2000 を統合することを計画します。
サイトではどのような支払いオプションをサポートするか? | クレジット カードによる支払いをサポートする計画がある場合は、金融機関との手続きが必要です。
サイトではどの通貨をサポートするか? | サイトでの情報を複数の通貨で表示する場合は、商品カタログ システムを拡張する必要があります。
ビジネス マネージャが大量のデータ セットにアクセスする必要はあるか? | サイト管理には、ビジネス デスクで大量のデータ セットにアクセスすることには適していない面もあります。たとえば、商品カタログに 10 万以上の品目がある場合、ビジネス デスクのカタログ モジュールを使うのではなく、スクリプトによって更新を発行することが必要となる場合があります。ビジネス デスクのキャパシティ要件を計画してください。

関連項目

通貨をローカライズする

BizTalk Server と Commerce Server の使用

キャパシティとパフォーマンスの計画

アプリケーション既定の構成リソースを設定する


ビジネス分析システムの計画

ユーザー プロファイル データ、トランザクション データ、クリック履歴データなど、サイトを訪問するユーザーに関する日々の操作データを収集するには、Commerce Server 2000 のデータ ウェアハウスを使います。データを分析するには分析モジュールを使います。たとえば、ユーザーの傾向を確認したりキャンペーンの有効性を分析して、特定のユーザー グループに合わせた対象化や特定商品の販売などのためにサイトを更新することができます。

次の表は、ビジネス分析システムの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
サイトに関して必要となる重要なビジネス上の決定に、データ分析がどの程度影響するか? それらの決定を下すために、どのようなレポートが必要か? | ビジネス分析システムから得られるレポートを調べるには、「Commerce Server のレポート」を参照してください。レポートが要件を満たさない場合は、「カスタム レポートを作成する」で既存のレポートの変更または新しいレポートの作成の説明を参照してください。多くのサードパーティ ソフトウェア 製造元が、ビジネス分析システムと連携するレポート ソリューションを提供しています。
組織の中でデータにアクセスする必要がある人はだれか? それらの人は、どの程度の頻度でレポートを実行する必要があり、更新の際にどの程度の詳細情報が必要か? | レポートの実行スケジュールを確立します。静的レポートは定期的に実行する必要があります。定期的に実行しないと、データが古くなります。レポートの実行と、データ変換サービス (DTS) のタスク実行のタイミングを合わせる必要があります。
どの程度の頻度で Web サーバーのログを処理するか? | ログに保存されるデータのサイズと性質によって、この頻度が決まります。ログを処理する頻度が高いほど、ログが小さくなります。ログ ファイルが大きくなると、データ セットは充実しますが、処理に時間がかかります。テスト環境で適切な処理頻度を判断してから、それを運用環境に適用してください。

関連項目

Commerce Server のレポート

カスタム レポート

データ ウェアハウス

データ ウェアハウスを操作する


ビジネス プロセス パイプラインの計画

パイプラインを使うと、1 ステージ以上のビジネス プロセスを定義してリンクし、それらを連続実行して特定のタスクを完了できます。パイプラインの各ステージには、1 つ以上のパイプライン コンポーネント、つまりサイト独自の要件に合わせて構成できる Component Object Model (COM) オブジェクトがあります。

サイト開発者は、このインフラストラクチャを使って、注文処理パイプライン (OPP) とコンテンツ選択パイプライン (CSP) の 2 つのパイプライン モデルを実装します。

次の表は、ビジネス プロセス パイプラインの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
Commerce Server に含まれているパイプライン コンポーネントは要件を満たすか? 要件を満たさない場合は、独自のコンポーネントを構築するか? サードパーティのパイプライン コンポーネントを購入するか? | Commerce Server 2000 に含まれているパイプラインが提供する機能を検討します。処理ステージが要件を満たすかどうかを判断します。要件を満たさない場合は、自分でパイプラインを拡張するか、またはサードパーティのパイプライン コンポーネントの開発者からパイプライン コンポーネントを購入します。たとえば、複雑な税計算や送料計算、およびクレジット カード処理を実行する、サードパーティ製パイプライン コンポーネントを追加できます。

関連項目

パイプラインを利用する

パイプライン コンポーネントを構築する

コンテンツ選択フレームワークを拡張する


商品カタログ システムの計画

商品カタログ システムを使うと、商品のカタログを作成したり、商品データを追加および更新することができます。このシステムにはインポート機能とエクスポート機能があり、カタログのスキーマを定義および変更できます。

次の表は、商品カタログ システムの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
商品カタログ システムの情報をオフライン カタログと同期する予定か? | 商品カタログ システムの情報をオフライン カタログと同期する場合は、カスタム ソフトウェアを開発する必要があります。この機能が必要な場合は、システム管理者に問い合わせてください。
カタログに最適な組織スキーマはどのようなものか? | 商品カタログ システムには柔軟性があり、多様なスキーマに対応できます。新しいカタログをデザインする場合は、スキーマを拡張する余地を十分にとるようにします。
複雑な価格設定モデル、またはその他の商品カタログ システムの機能を超える要件が必要か? | 必要な場合は、サードパーティ製のカタログ管理ソリューションの使用を検討します。多くのカタログ ソリューション 製造元が、Commerce Server をサポートする商品を提供し、追加機能を提供しています。複雑な価格設定要件に応じて独自のパイプライン コンポーネントを構築し、商品カタログ システムを拡張することもできます。
複数のユーザー グループにカスタム カタログを提供するか? | ユーザー プロパティに基づいて変更できる基本カタログを作成します。このようなカスタム カタログの計画は、プロファイル システムの計画と併せて行う必要があります。
どのようなカタログ データをデータ ウェアハウスにエクスポートするか? | ビジネス分析システムの使用計画を立てたときに決定したレポートを作成するには、必要な情報をエクスポートする必要があります。
取引先とカタログを交換するか? | 交換する場合は、配置計画に Microsoft BizTalk Server 2000 を組み込みます。BizTalk Server は、カタログの交換に必要な機能を提供します。

関連項目

カタログについて

ビジネス デスク カタログ

BizTalk Server と Commerce Server の使用

サード パーティの商品カタログを統合する


プロファイル システムの計画

Commerce Server 2000 では、プロファイルを使って、Web サイトを訪問するユーザーに関する情報を収集および格納します。プロファイルを形成するデータは、Web のログ ファイル、Commerce Server のデータベースなど、複数のデータ ソースから取得されます。プロファイル データをデータ ウェアハウスにインポートして分析すると、分析結果に基づいて、コンテンツの対象を特定のユーザー グループに設定できます。

次の表は、プロファイル システムの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
プロファイル システムで収集した情報に基づいて、どのようなビジネス上の決定を下すか? | プロファイル システムの計画は、この事項を検討することから始まります。プロファイル システムの計画に必要なその他の決定は、この検討結果によって決まります。
現在、どのような種類のビジネス エンティティ (顧客、企業、商品、注文、アカウントなど) を保存しているか? これらの中で、どのエンティティについての情報をプロファイル システムに保存する必要があるか? | プロファイル システムは柔軟性が高いため、多様なビジネス エンティティに関する情報を取得および格納できます。システムは、異なる種類のデータ ソースからこれらの情報を集計できます。システムを設定するには、エンティティとデータ ソースを定義します。この計画については、データベース管理者と調整して、定義したデータ エンティティが、データベース管理システムに存在するエンティティと矛盾しないようにする必要があります。
どのようなプロファイル情報をデータ ウェアハウスにエクスポートするか? | 「ビジネス分析システムの計画」に記述されている検討事項に対しての対応策で決定したレポートを作成するには、必要な情報をエクスポートする必要があります。
ユーザーに関するどのような情報を収集するか? | ユーザーから直接データを収集するか、または予測リソースを使って必要な情報を入力することができます (黙示対象化)。
プロファイルの格納にはどのデータ ストアを使用するか? | Microsoft Windows 2000 のセキュリティ コンテキストによってユーザーを認証する必要がある場合は、プロファイル情報の一部を Microsoft Active Directory に格納する必要があります。その必要がない場合は、Microsoft SQL Server 2000 を使ってプロファイル データを格納します。
プロファイル システムに移行する必要のある既存のユーザー アカウントはあるか? 現在のシステムからすべての属性を移行する必要はあるか? | Microsoft Site Server 3.0 Membership Directory から移行する場合は、[Directory Migration] ツールボックスを使ってこれらの情報を移行します。移行した後で Membership Directory を残すことは計画しないでください。

関連項目

プロファイル リソースについて

プロファイル リソースの実行

予測リソースの実行

Membership Directory を移行する


対象化システムの計画

対象化システムを使うと、1 人または複数のユーザーにコンテンツを配信できます。対象化システムには、4 種類のサブシステムがあります。対象化システムの計画にあたっては、これらの 4 つの分野を考慮する必要があります。

ここでは、次のトピックについて説明します。

  • コンテンツ選択フレームワークの計画

  • ダイレクト メーラーの計画

  • 式エバリュエータの計画

  • 予測リソースの計画


コンテンツ選択フレームワークの計画

コンテンツ選択フレームワーク (CSF) は、Commerce Server のパイプライン アーキテクチャに基づくフレームワークです。CSF は主にキャンペーン管理 (広告と宣伝の配信) に使いますが、柔軟性が高いため、あらゆる種類のコンテンツのランク付け、選択、およびスケジュール設定にも使用できます。

次の表は、オンライン キャンペーンの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
特定のユーザー グループを対象にしたキャンペーンを行うか? 行う場合は、どのユーザー属性を対象とするか? | ビジネス分析システムを使って、サイトの一般的な購買パターンを決定し、この情報を対象化システムに組み込みます。この計画は継続的なプロセスになります。
ほかの組織に広告を販売するか? 販売する場合は、どのような広告の価格スケジュールになるか? | 価格スケジュールがまだない場合は、設定します。Commerce Server ビジネス デスクでキャンペーンを設定するには、この情報が必要です。
在庫の割引についてはだれが決定するか?これらの決定に関して、どのような方針があるか? | 割引と広告キャンペーンを併用することで、効果を最大限に高めます。
価格決定のために、ビジネス分析システムからどのような情報を得る必要があるか? | 必要な CSF の情報を決定し、必要に応じて、この決定をビジネス分析システムが提供するレポートの評価および変更に使います。
キャンペーンで予測リソースを使用するか? 使う場合は、どのような主要ユーザー セグメントを対象化する必要があるか? | Commerce Server データ ウェアハウスで利用パターンに関する情報を収集し、予測リソースを使ってユーザー セグメントを特定し、この情報を再びキャンペーンに組み込みます。

関連項目

コンテンツ選択フレームワークを拡張する

予測リソースの実行


ダイレクト メーラーの計画

ダイレクト メーラーを使うと、ユーザー メーリング リストを管理して、リストのメンバーへのダイレクト電子メール送信を調整できます。作成した電子メールは、Active Server Pages (ASP) を使ってパーソナライズすることも、静的ファイルにすることもできます。リスト マネージャ モジュールを使うと、フラット ファイルや Microsoft SQL Server データベースからメーリング データベースに、電子メール アドレスをインポートできます。

次の表は、ダイレクト メール キャンペーンの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
作成したダイレクト メールを受け取るのはどのような人か? ダイレクト メール リストの定義にはどのようなルールを適用するか? | ビジネス分析システムを使って対象とするユーザー セグメントを設定し、それに対応したリストを作成します。
ダイレクト メール リストからの削除を希望するユーザーは、どのような方法でそれを伝えるか? | ダイレクト メールには、必ず脱退の選択肢を加えます。
ダイレクト メールはどれぐらいの頻度で送信するか? | スケジュールを設定し、送信を自動化するスクリプトを作成します。
ダイレクト メールをパーソナライズするか? パーソナライズする場合は、どのようなユーザー プロファイル情報を使用するか? | パーソナライズしたメールは、より効果的です。ダイレクト メールの対象として使う属性を組み込むように、ユーザー プロファイルをデザインします。

関連項目

ダイレクト メーラーについて

ダイレクト メーラー パイプライン

ダイレクト メーラーの実行

ダイレクト メールのコンテンツを作成する


式エバリュエータの計画

式エバリュエータを使うと、パーソナライズした広告、割引、およびコンテンツの配信に関するビジネス ルールを作成できます。これらのルールは条件式です。

次の表は、式エバリュエータの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
ユーザーにどのような体験を提供したいか? それを実現するには、どのようなビジネス ルールを作成する必要があるか? | 提供するユーザー体験を作成するために、式エバリュエータが評価する式を作成する必要があります。対象化システム用に設定したパーソナライズ要件に基づいて、式を作成します。たとえば、参照元 Uniform Resource Locator (URL) に基づいてコンテンツを表示する場合は、"Referrer が右の項目と等しい URL" という式を作成できます。
必要なビジネス ルールを作成するには、どのようなサイト用語が必要か? | 特定した式をサポートするためのサイト用語を作成します。上記の例では、"Referrer" というサイト用語を作成する必要があります。

関連項目

式ビルダ

式に基づく対象化

広告または割引の対象を指定する

サイト用語を追加する


予測リソースの計画

予測リソースは、主として、トランザクション データや Web ログ データなど、いくつかの形式のデータの分析の拡充に使います。予測リソースは、オンラインでユーザーに商品を推奨するとき、および空のユーザー プロファイル プロパティを埋めるときにも使われます。

予測リソースを使う前に、分析レポートが必要な情報を提供していることを確認する必要があります。予測リソースでモデルを構築する前に、少なくとも数千人のユーザーのデータを収集してください。

次の表は、予測リソースの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
ユーザーに商品を推奨したり、対象化を強化する計画があるか? | Commerce Server データ ウェアハウスで十分な初期データを収集した後に、ユーザー操作のモデルを構築して、サイトに予測リソースを実装します。
有意義な推奨を行うには、どのような主要ユーザー セグメントを特定する必要があるか? | 予測リソースを使って有意義なセグメントを特定し、セグメント ビューアでそれらを表示します。
推論を使ってユーザー プロファイル データを補強するか? ユーザーが明示的に提供したデータのみに基づいて推奨を行うか? | 予測リソースを使うと、完全な情報のないユーザー (ゲスト ユーザーなど) に関するデータを推論できます。ユーザー プロパティを推論する計画がある場合は、ビジネス デスクのセグメント ビューアを Commerce Server マネージャの依存関係ネットワーク ビューと併用して、予測に使用する主要ユーザー属性を絞り込みます。これらの属性を利用して、類似した特性を持つユーザーをコンテンツの対象に設定することができます。

関連項目

予測リソースについて

予測リソースの実行

予測スキーマ

予測オブジェクト


サイト アーキテクチャとセキュリティの計画

電子商取引プレゼンス全体のアーキテクチャの計画には、拡大の計画、パフォーマンス予想の設定、およびセキュリティ要件の設定が含まれます。ここでは、これらの計画にあたって検討すべき事項をいくつか説明します。

注

  • Commerce Server 2000 のサイト アーキテクチャには、Microsoft SQL Server 2000 または SQL Server 7.0 が含まれる場合があります。

  • 商品カタログ システムのフルテキスト インデックス機能で使用する SQL Server 7.0 のフルテキスト検索機能は、Microsoft Windows NT のクラスタリング環境では使用できません。

ここでは、次のトピックについて説明します。

  • キャパシティとパフォーマンスの計画

  • 拡大の計画

  • 既存システムとの統合の計画

  • 可用性向上の計画

  • セキュリティの計画

  • Active Directory 統合の計画


キャパシティとパフォーマンスの計画

サイト デザイン、コーディング慣行、ユーザーの利用状況、およびサイト アーキテクチャの組み合わせがサイトのパフォーマンスに与える影響を予測することは困難です。このため、運用環境で実際の運用を開始する前に、サイトのキャパシティとパフォーマンスについて計画し、テストすることが重要です。

既存のサイトを移行する場合は、既存のデータを分析して、新しいサイトの計画の基盤にすることができます。

パフォーマンス プランとキャパシティ プランは互いに関連していますが、それぞれ異なる側面に対応します。パフォーマンス プランはサイトの技術的な側面に対応し、Active Server Pages (ASP) ページ スループットや ASP 待機時間などのパフォーマンス指標に焦点を当てますキャパシティ プランはビジネス面に対応し、サイトが扱うことのできるユーザー数を最大化することに焦点を当てます。

この 2 つのプランのうちでは、パフォーマンス プランの方がより単純です。1 秒あたりの支払いトランザクションの回数を計測し、ほかの商業サイトと比較することは、比較的簡単です。パフォーマンス測定ツールについては、「パフォーマンス モニタを使う」を参照してください。

ユーザー キャパシティの分析は、これよりやや複雑です。ユーザー キャパシティの上限を予測する前に、ユーザー操作をプロファイル化し、ユーザー プロファイル情報をパフォーマンス指標と併用してキャパシティを計算する必要があります。ユーザー操作は、ショッピング体験の充実度 (ページ デザイン、サイト デザイン、応答時間)、および販売商品の種類や品揃えに応じて、サイトにより異なります。ユーザー操作の違いのため、1,000 人のユーザーをサポートできるサイトもあれば、同じプラットフォームにインストールしても 200 人のユーザーしかサポートできないサイトもあります。

パフォーマンス分析とキャパシティ プランの詳細については、http://www.microsoft.com/WINDOWS2000/library/planning/management/dcsize.asp から入手できるホワイト ペーパー、『Sizing Guidelines for Windows 2000 Domain Controller and Global Catalog Server』を参照してください。

次の表は、パフォーマンスの計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
サイトのパフォーマンスを判断するために、主にどのような項目を測定するか? | ユーザー体験の目標にできるだけ合致する要素を選択します。たとえば、ユーザーがすばやくカタログを参照できるようにすることが目標である場合は、カタログ参照要求が返される速度を測定します。
サイトのパフォーマンスを測定するために、主にどのような利用状況プロファイルを使用するか? | 予想されるユーザーのサイトへの接続手段と予想負荷を決定します。この利用状況プロファイルをテスト環境で使用して、Commerce Server データ ウェアハウスで利用状況情報を収集したときに、プロファイルが正しいかどうかを確認します。
サイト利用が拡大する速度について、どのように予想しているか? | サイト開発の初期段階で、キャパシティに余裕を持たせます。定期的に、実際の拡大ペースと予測を比較してください。
インストールしたサイトのサーバー間で、どのように負荷を分散するか? | ネットワーク負荷分散 (NLB) については、『Windows 2000 Resource Kit』を参照してください。

関連項目

Commerce Server の最適化

パフォーマンス モニタを使う

Commerce Server サイトの監視


拡大の計画

最初のサイト デザインで、将来の拡張を考慮しておく必要があります。十分に計画されたサイトは、優れた費用対効果で拡大または拡張し、パフォーマンスを維持しながらサイト トラフィックの増加に対応できます。

サイトの将来の拡大について計画するには、サイト アーキテクチャを大きく 2 層に分ける必要があります。1 つはフロントエンドの Web サーバーで、もう 1 つはデータを格納したりビジネス プロセス システムを置くためのバックエンド システムです。これらの各層は、予想されるサイトの拡大パターンに合わせて、複数の層に再分割できます。Commerce Server 2000 は柔軟性が高いため、必要に合わせて最も適切なアーキテクチャを選択できます。

バック エンドについては、通常、まず垂直方向拡張を行います。つまり、サーバーのアップグレードと大容量記憶装置の追加によって拡張します。さらに、2 台以上のサーバーの間で、機能ごとにデータ層を再分割できます。たとえば、1 台のサーバーに Commerce Server データ ウェアハウスを置き、ほかのサーバーにプロファイル情報格納用のデータベースを置きます。Commerce Server では、セットアップ中に複数のサーバーに機能を分割するか、または後で Commerce Server マネージャを使って機能を分割できます。きわめて大規模なサイトの場合は、個々のデータベースを複数のサーバーに分割して置くこともできます。

次の表は、拡大の計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
利用要求が増加した場合、どのようにサイト キャパシティを拡大するか? | サーバーの種類、ネットワーク接続、および Commerce Server の機能ごとに、拡張パスを計画します。拡張パスには、指定されたしきい値 (同時にアクセスするユーザーの数、メモリの利用状況、ディスクの利用状況など) に達したときのサイトの拡張計画が含まれます。

関連項目

サイトの配置


既存システムとの統合の計画

計画プロセスでは、既存のシステムとデータを評価して、それらを Commerce Server 2000 コンポーネントと統合するか、または Commerce Server データベースにインポート可能な形式に変換するための最も有効な手段を決定する必要があります。さらに、電子商取引ビジネスのサブシステムの統合を計画する必要もあります。

次の表は、統合の計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
既存のデータベースと、カタログ、ユーザー プロファイル、顧客などのデータを格納したデータベース サーバーを統合するか? | オフライン ビジネスとオンライン ビジネスのデータ ソースを分離して管理する場合は、データの同期をとるシステムを確立する必要があります。システム全体のデザインに Microsoft Host Integration Server 2000 と Microsoft Application Center 2000 を統合することを検討してください。
既存の注文処理システム、支払いトランザクション システム、在庫管理システム、および注文遂行システムを Commerce Server と統合するか? | これらのシステムの統合を計画している場合は、これらのシステムを Commerce Server と接続する Component Object Model (COM) コンポーネントを開発します。システム全体のデザインに Microsoft BizTalk Server 2000 を組み込むことを検討してください。
Enterprise Resource Planning (ERP) システムをサプライアや取引先と統合する必要があるか? | ERP システムの統合を計画している場合は、システム全体のデザインに BizTalk Server を組み込む必要があります。
データの変換については、どのような要件があるか? | データを既存の形式から Commerce Server で使用できる形式に変換するシステムを確立します。たとえば、既存のタブ区切り形式のカタログ データは、拡張マークアップ言語 (XML) に変換してから商品カタログ システムにインポートする必要があります。
カスタム開発については、どのような要件があるか? | Commerce Server は充実した機能を備えた製品ですが、ビジネス要件に合わせてさまざまな機能をカスタマイズできるように設計されています。カスタム開発を計画する前に、「Commerce Server の機能の概要」に記載された機能の一覧を確認してください。

関連項目

BizTalk Server と統合する

サード パーティの商品カタログを統合する

非 Commerce のアプリケーションと Web サーバーを追加する


可用性向上の計画

可用性とは、コンピュータ、クラスタ、またはシステム、およびそのプログラムのフォールト トレランスの尺度です。この尺度では、平均故障間隔 (MTBF) と平均修理時間 (MTTR) が考慮され、予定のイベントと予定外のイベントによる故障時間が含まれます。電子商取引サイトの多くは重要な役割を持つため、可用性を高めるように設計して、少なくとも 99.9% の時間は、許容可能なサービス レベルで稼動し続けるようにする必要があります。

可用性向上の計画には、ハードウェアやソフトウェアの構成の計画、および操作手順の定義とテストが含まれます。

次の表は、可用性の計画にあたって検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
どの程度の可用性が必要か? | 可用性のコストを、故障時間によって生じるビジネス コストと比較して、適切な可用性レベルを確立します。
どのような方法でサーバー間でデータを複製するか? | データベースの複製には Microsoft SQL Server を使います。
どのような方法で可用性を監視するか? | 可用性の目標を達成しているかどうかを判断するプロセスを作成します。
災害にはどのように対応するか? | システムの全体または一部に重大な障害が起きた場合のデータ復旧計画を立てます。災害のシミュレーションによって、この計画をテストします。

関連項目

可用性向上チェックリスト


セキュリティの計画

Commerce Server 2000 のセキュリティの計画では、サイトに配置するすべての機能に対するサイト セキュリティの脅威に対抗する方法を計画し、必要なセキュリティ レベルを達成するためのポリシーとツールを選択します。

最良のセキュリティ慣行に則ったサイトを構築するには、特定のページ (クレジット カード情報を要求するページなど) を Secure Sockets Layer (SSL) を通じて提供するように、SSL を構成する必要があります。このように設定するには、サーバー証明書を取得して、SSL を使用するように Microsoft インターネット インフォメーション サービス (IIS) 5.0 を構成する必要があります。詳細については、http://localhost/iisHelp にある IIS の製品マニュアルを参照してください。

さらに、Microsoft 管理コンソール (MMC) で、各 Commerce Server アプリケーションに保護付きのホスト名を指定することができます。認証マネージャ オブジェクトは、保護付きのホスト名を使って、保護されたページへのリンクを作成します。このリンクは、ほかの Commerce Server アプリケーション、または同じアプリケーションの保護されたセクションに関連付けることができます。

セキュリティ侵害の可能性を最小限に抑えるには、次を実行できることが必要です。

  • サイトのロック ダウン。NTFS ファイル システム (NTFS) を使うファイルに対するアクセス制御リスト (ACL) によって、ファイル、ページ、およびアプリケーションへのアクセスを制御することです。

  • サイト上での IIS のセキュリティのために定義された各フォルダの読み取り、スクリプト実行、および書き込みアクセスの制御。

  • サイト訪問者の認証。

次の表は、ロック ダウンの対象、アクセス制御の方法、および認証の方法を決定するために検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
サイト訪問者を Windows 2000 のセキュリティ コンテキストによって認証する必要があるか? | ユーザーを Microsoft Windows 2000 のセキュリティ コンテキストによって認証する計画がある場合は、サイトの構成に Microsoft Active Directory を含めます。
どのような種類のコンテンツをロック ダウンする必要があるか? | 認証マネージャ オブジェクトは動的に生成されたコンテンツのみを対象とするため、静的コンテンツにセキュリティを設定する場合は、認証フィルタという Internet Server Application Programming Interface (ISAPI) フィルタを使う必要があります。
ユーザーに Cookie の受け入れを要求するか? | 認証フィルタは、サイトの新しい訪問者に対して自動的に cookie を生成できます。
フォームによる認証方式を計画しているか? | カスタム認証方式によってユーザーを認証する場合、認証フィルタをカスタム モードで実行する必要があります。
セキュリティ要件に最も合ったサイト アーキテクチャはどのようなものか? | 「ファイアウォールの構成」でファイアウォール ソリューションの概要を参照して、どのソリューションがもっとも適しているかを決定します。

関連項目

Commerce Server のセキュリティ

ファイアウォールの構成

Commerce Server セキュリティ チェックリスト

CS 認証リソースの管理


Active Directory 統合の計画

Active Directory は、Windows 2000 に組み込まれたディレクトリ サービスです。Active Directory を使うと、組織のビジネス エンティティを追加、変更、削除、および整理できます。たとえば、Windows 2000 のユーザー アカウント、コンピュータ アカウント、セキュリティと配布グループ、および公開リソースは、すべて Active Directory からアクセスできます。

Active Directory は、プロファイル データのデータ ソースとして使用できます。プロファイル システムが Active Directory のデータとその他のデータ ソースのデータを 1 つのビジネス エンティティに集約し、それを Commerce Server 2000 システムで使用できます。たとえば、ユーザーのアカウント番号とパスワードを Active Directory に格納し、その他のアカウント情報 (連絡先情報、クレジット制限、各種設定など) は Microsoft SQL Server に格納したとします。プロファイル システムがこれらの 2 つのデータ ソースのデータを 1 つのプロファイルに結合し、それを対象化や分析に使用できます。

Active Directory は、きわめて堅牢で拡張性の高い技術です。ただし、それを適切に使うようにサイト アーキテクチャをデザインすることが重要です。

ユーザーを Active Directory 内のグループに分割することを計画している場合は、Active Directory サーバーのパフォーマンスが常に適切となるように特別な注意が必要です。グループにユーザーを追加することは、Active Directory では比較的コストがかかる操作になります。また、各グループのユーザー数の上限は 5000 です。この上限数を回避するため、Commerce Server Software Development Kit (SDK) には Subgroup Manager というオブジェクトが用意されています。このオブジェクトは、5000 を超えるユーザーを "仮想" のグループに格納し、ユーザーが格納される実際のグループは非表示にします。詳細については、「Subgroup Manager」を参照してください。このオブジェクトを使うと、コストがかかる操作にさらにコストをかけることになります。Web サイトのこのコンポーネントに適したハードウェアを決定するときには、この点を十分に考慮する必要があります。

次の表は、サイト デザインに Active Directory を活用するために検討する必要がある事項を示します。

計画上の検討事項 | 推奨される対応
Active Directory にはどのようなデータを格納するか? | Active Directory には不揮発性のデータのみを格納します。
Active Directory にはどれぐらいの量のデータを格納するか? 1 つの Active Directory ドメインには、最大で 100 万件のユーザー アカウントを含めることができます。この見積もりは、次の仮定に基づいています。
  • 同時に活発にサイトを利用するユーザーは全体の 1% (10,000 人)。

  • Active Directory から読み取られる項目数に対する Active Directory に書き込まれる項目数の比率は 14% 以下。

Active Directory ストアで 100 万人以上のユーザーに対応する必要がある場合は、それぞれ 100 万人ずつのユーザーを含む複数のドメインを組み合わせることができます。

より大規模なシステムに Active Directory を使う場合は、Microsoft Consulting Services (MCS) と契約して、計画の支援を受けてください。

関連項目

Active Directory を使った小規模サイトの構成

Active Directory Servers をセットアップする

Membership Directory を移行する

例:2 つのデータ ソースを持つプロファイル定義を作成する


配置の計画

Commerce Server 2000 および Web サイトの配置には、慎重な計画が必要です。ビジネス要件に適時に、かつ組織的に対応できるように、時間をかけて包括的な配置計画を立ててください。開発アプリケーションを実際に Web サイトに移動する前に、このトピックの情報を確認してください。

さらに重要となるのは、組織が独自の計画を作成していること、その計画にビジネス マネージャ、システム管理者、およびサイト開発者の意見が含まれていることです。

配置に際しては、開発、テスト、および運用の 3 種類のハードウェア環境の間で Web サイトを移動します。次の図は、これらの環境を単純化して示します。

企業内 LAN
インターネット
ファイアウォール
ファイアウォール
運用
テスト
開発
ISP/ASP LAN

これらの環境の実際の外観は、サイトの規模やビジネス目標によって異なります。Commerce Server 2000 のヘルプには、4 ～ 6 台のコンピュータで構成される小規模なサイトの配置に関する基本的な情報が記載されています。

ここでは、次のトピックについて説明します。

  • 小規模サイトの構成 4 ～ 6 台のコンピュータで構成される Web サイトのハードウェア構成について説明します。

  • 大規模サイトの構成 10 ～ 100 台のコンピュータで構成されるサイトの運用環境について説明します。

  • グローバル サイトの構成 グローバル サイトの運用環境の概念を説明します。

  • ファイアウォールの構成 さまざまなファイアウォール構成オプションの長所と短所を説明します。

関連項目

サイトの配置

Site Server 3.0 からの移行

Membership Directory を移行する


小規模サイトの構成

すべての Commerce Server 2000 コンポーネントを 1 台のサーバーにインストールすることも可能ですが、ビジネス論理層とデータベース層を分離し、障害の保護を提供するには、4 台のコンピュータによる構成が必要です。この 4 台のコンピュータによる構成では、各層にそれぞれ 2 台のサーバー (2 台の同じ Web サーバーと 2 台の同じデータベース サーバー) があります。次の図は、4 台のコンピュータによる運用環境を示します。

Commerce Server 2000 の小規模な配置
クライアント
企業内 LAN
データベース層:
管理
カタログ
データ ウェアハウス
マーケティング
プロファイル
トランザクション
ビジネス処理ロジック:
ビジネス分析
カタログ
リスト マネージャ
パイプライン コンポーネント
予測クライアント
プロファイル サービス
対象化システム
NLB クラスタ
ファイアウォール
Web
サーバー
SQL Server
SQL Server
ISP/ASP
LAN
Web
サーバー
サーバー クラスタ
ファイアウォール
[データベース]
クライアント
インターネット アクセス

この構成では、ネットワーク負荷分散 (NLB) によって Web サーバーを複製しています。可用性を高めるため、Web サーバーのフロントには 1 つのインターネット プロトコル (IP) アドレスを配置します。いずれの Web サーバーにも、Commerce Server の管理ツール、サービス、Commerce Server ビジネス デスク、およびアプリケーションが含まれます。データベース サーバーは、共有 Microsoft SQL Server データベースを持つ Windows サーバー クラスタとして構成されます。これらには、管理データベース、Commerce Server データ ウェアハウス、およびその他の Commerce Server データベースが含まれます。

この構成では、2 つのファイアウォールが使われます。1 つはインターネットからの入力にセキュリティを設定し、もう 1 つは企業ネットワークに対する入出力にセキュリティを設定します。

次の表は、小規模な構成のためのハードウェア仕様の一覧です。

サーバーの種類 | ハードウェア仕様
Web サーバー | 400MHz、RAM 1GB の 2 プロセッサ サーバーが 2 台。
データベース サーバー | 500MHz、RAM 2GB の 4 プロセッサ サーバーが 2台。

この構成では、ユーザー認証に SQL Server を使います。ユーザー認証に Microsoft Active Directory を使うこともできます。この場合、セキュリティは高まりますが、運用環境にドメイン コントローラを組み込む必要があります。

Active Directory を使った小規模サイトの構成

小規模サイトの開発環境

Active Directory を使った小規模サイトの構成

Active Directory を使って、Commerce Server サイトにセキュリティ コンテキストを提供することもできます。Active Directory は、次のような場合に役立ちます。

  • ユーザーのセキュリティ情報に基づいてサイト リソースへのアクセスを制御する場合。

  • ほかのアプリケーションにセキュリティを提供する場合。

サイトに Active Directory を実装する場合は、構成に 2 台のサーバーを追加する必要があります。次の図は、Active Directory サーバーを含む小規模な Commerce Server の構成を示します。

Active Directory を使った Commerce Server 2000 の小規模な配置
クライアント
企業内 LAN
データベース層:
管理
カタログ
データ ウェアハウス
マーケティング
プロファイル
トランザクション
ビジネス処理ロジック:
ビジネス分析
カタログ
リスト マネージャ
パイプライン コンポーネント
予測クライアント
プロファイル サービス
対象化システム
NLB クラスタ
ファイアウォール
Web
サーバー
SQL Server
SQL Server
ISP/ASP
LAN
Web
サーバー
サーバー クラスタ
ファイアウォール
データベース
レプリケーション
Active Directory
クライアント
インターネット アクセス

可用性を高めるには、複製された 2 台の Active Directory ドメイン コントローラを使うことをお勧めします。Active Directory は、自らの複製を使って、ドメイン コントローラ間にデータの矛盾が起きないようにします。この構成の Web サーバーとデータベース サーバーは、4 台のコンピュータによる構成のサーバーと同じものです。Active Directory の処理負荷は比較的軽いため、Active Directory サーバーを SQL Server コンピュータと同じクラスタに置くことができます。

小規模サイトの開発環境

次の図は、小規模サイトの開発環境の例を示します。

Commerce Server 2000 の小規模な配置環境
ソース リポジトリ
レガシー システム
管理者
開発者
ビジネス マネージャ
SQL Server
Web サーバー
インターネット

この開発環境は、準備/テスト環境や運用環境とは物理的に分離されています。この環境は、社内ネットワークの中にあります。


大規模サイトの構成

キャパシティ需要が拡大した場合は、次のいずれかの方法によって、サイトのパフォーマンスを高めることができます。

  • 運用環境にサーバーを追加する。

  • 既存のサーバーをアップグレードする。

  • サイト アーキテクチャを向上させる。

次の図は、サーバーが 10 ～ 100 台ある大規模サイトの運用環境の例を示します。

データ ウェアハウス管理タスク
データ ウェアハウス記憶装置
データ ウェアハウス
プロファイル サーバー クラスタ
カタログ レプリケーション システム

クライアント

NLB クラスタ

カタログ サーバー

企業内 LAN

NLB クラスタ

ダイレクト メーラー
サーバー

マーケティング サーバー
クラスタ

ビジネス デスク
サーバー

ドメイン
コントローラ 2

ドメイン
コントローラ 1

ビジネス処理ロジック :
ビジネス分析
カタログ
リスト マネージャ
パイプライン コンポーネント
予測クライアント
プロファイル サービス
対象化システム

トランザクション
サーバー クラスタ

管理サーバー クラスタ

Web サーバー クラスタ

Active Directory

インターネット
アクセス

この構成では、各コンポーネント データベースをそれぞれの Microsoft SQL Server クラスタに分離します。さらに、カタログ データベースを複数の負荷分散クラスタにインストールします。Commerce Server のサービスとアプリケーションへの負荷を分散するため、Web サーバーが追加されます。


グローバル サイトの構成

グローバル サイトは、通常、世界各地の複数の大規模サイトを、専用の広域ネットワーク (WAN) 、または WAN が提供する 1 つまたは複数の ISP または ASP で接続したものです。

次の図は、グローバル サイトの構成例を示します。

アルバカーキ
サンパウロ
WAN インターネット
運用
運用
運用
テスト
テスト
テスト
開発
開発
開発
ブリスベン


ファイアウォールの構成

Commerce Server 2000 構成の規模にかかわらず、ファイアウォールの配置方法を決定する必要があります。ファイアウォールが多いほどコストは増大しますが、顧客、従業員、および機密データを隔離できます。ただし、問題はコストだけではありません。各ファイアウォール ソリューションには、それぞれ長所と短所があります。

ここでは、次のトピックについて説明します。

  • ファイアウォールが 1 つの構成を使用する

  • ファイアウォールが 2 つの構成を使用する

  • ファイアウォールが 3 つの構成を使用する


ファイアウォールが 1 つの構成を使用する

小規模サイトの構成で最もコストがかからない方法は、1 つのファイアウォールでインターネット ブラウザ、サイト、および内部ネットワークを分離する方法です。ファイアウォールに 3 個のネットワーク アダプタが内蔵され、それぞれが 3 つの環境に接続している場合は、この構成が可能です。

ファイアウォールを 1 つで済ませることのできる場所の 1 つは、開発環境です。ファイアウォールが 1 つの構成図については、「小規模サイトの開発環境」を参照してください。

1 つのファイアウォールのソリューションには、次のような長所があります。

  • ISP ネットワーク (Web サーバーとデータベース サーバーを含む) が、物理的にほかのネットワークから分離されるため、サイトへの侵入を制限できます。一般にアクセスできるサーバーをだれかが利用しても、内部ネットワークに直接アクセスすることはできません。

  • 購入および管理するファイアウォールが 1 つで済みます。

  • 内部ネットワークが機能する際に Web サイト環境に依存しません。サイトにネットワーク障害が起きた場合、内部ネットワークが接続不可能になるとは限りません。

  • 内部ネットワークとインターネットを分離するために既にファイアウォールが機能している場合、このデザインは既存のアーキテクチャに簡単に実装できます。既存のファイアウォールに 3 つ目のネットワーク アダプタを追加するだけで済みます。

1 つのファイアウォールのソリューションには、次のような短所があります。

  • データベース サーバーが Web サーバーから分離されません。インターネットから Web サーバーに許可されるプロトコルは、ハイパーテキスト転送プロトコル (HTTP) と保護付きハイパーテキスト転送プロトコル (HTTPS) だけです。

  • ISP ネットワークのサーバーにアクセスした侵入者が、サイトのほかのサーバーにもアクセスする可能性があります。これらのサーバーにセキュリティを設定するには、さらに強力なセキュリティが必要です。

  • Web サーバーとデータベース サーバーの間の通信が、ISP ネットワーク内を保護されずに通ります。

  • Commerce Server ビジネス デスク コンピュータは、Web サーバーとネットワーク トラフィックを共有するため、データのセキュリティを確保するには、ビジネス デスクのコンピュータで HTTPS を実行する必要があります。

  • 3 つのインターフェイスをサポートしていないファイアウォール 製造元もあります。


ファイアウォールが 2 つの構成を使用する

この構成では、1 つのファイアウォールが Web サーバーからインターネットを分離し、もう 1 つのファイアウォールが、データベース サーバーと Commerce Server ビジネス デスク コンピュータを含む内部ネットワークから Web サーバーを分離します。ファイアウォールが 2 つの構成図については、「小規模サイトの構成」を参照してください。

2 つのファイアウォールのソリューションには、次のような長所があります。

  • システム管理者が、内部ネットワークを Web サーバーやインターネット ブラウザから分離できます。ISP ネットワークではなく、内部ネットワークでサイト管理が行われます。侵入者にとって、内部ネットワークにアクセスすることがはるかに難しくなります。

  • Web サーバーとデータベース サーバーの関係に依存しない弱点からデータベース サーバーにセキュリティを設定するために、保護層が実装されます。このような弱点は、サービス拒否攻撃につながる可能性があります。

  • インターネット ブラウザにアクセスできるコンピュータの数を最小限にすることができます。2 つのファイアウォールを使うことにより、データベース サーバーやビジネス デスク サーバーを破壊または悪用することが難しくなります。

  • ビジネス デスクのクライアントおよびサーバー コンピュータは同じネットワーク上にあるため、ビジネス デスクを保護付きハイパーテキスト転送 (HTTPS) プロトコルで実行する必要はありません。

  • 通信が公共のネットワークを経由しないため、ビジネス デスクとデータベース サーバーの通信を暗号化する必要がありません。

  • インターネット ブラウザが正当なユーザーになりすますことを防ぎやすくなります。たとえば、特定の IP アドレスからのデータベース サーバー要求のみを受け付けるように Web サーバーを設定できます。ファイアウォールが両方の接続を制御するため、特定のアドレスを不正に使うことはできません。

  • Web サーバーがほかのネットワークから物理的に分離されるため、サイトへの侵入を制限できます。一般にアクセスできるサーバーをだれかが利用しても、内部ネットワークに直接アクセスすることはできません。

2 つのファイアウォールのソリューションには、次のような短所があります。

  • 構成の異なる 2 つのファイアウォールを管理することは難しく、またコストがかかります。

  • Web サーバーとデータベース サーバーの間の通信が、ISP ネットワーク内で保護されません。このような通信にセキュリティを設定するには、さらに強力なセキュリティが必要です。

  • 社内ネットワークが機能する際に Web サイト に依存します。Web サイトにネットワーク障害が起きた場合、内部ネットワークが接続不可能になる可能性があります。内部ネットワークのコンピュータを ISP ネットワークを経由せずにインターネットに接続するために、ほかのネットワーク回線を設置する必要があります。このような接続は、内部ネットワークから ISP ネットワークを分離しているファイアウォールをバイパスします。

  • 内部ネットワークとインターネットの間で許可されるトラフィックは、ISP ネットワークとインターネットの間、およびデータベース サーバー ネットワークとインターネットの間でも許可されます。セキュリティの効果は、ユーザーの既定のセキュリティ ポリシーでどのプロトコルを許可するかによって決まります。


ファイアウォールが 3 つの構成を使用する

この構成は、ファイアウォール が 2 つの構成に似ていますが、データベース サーバーと Commerce Server ビジネス デスク コンピュータから内部ネットワークを分離するファイアウォールが追加されます。ファイアウォールが 3 つの構成図については、「大規模サイトの構成」を参照してください。

3 つのファイアウォールのソリューションには、次のような長所があります。

  • Web サイト (Web サーバー、データベース サーバー、およびビジネス デスク サーバー) がほかのネットワークから物理的に分離されるため、侵入を最大限に防ぐことができます。

  • インターネット ブラウザが正当なユーザーになりすますことを防ぎやすくなります。たとえば、特定の IP アドレスからのデータベース サーバー要求のみを実行するように Web サーバーを設定できます。ファイアウォールが両方の接続を制御するため、特定のアドレスを不正に使うことはできません。

  • Web サーバーとデータベース サーバーの関係に依存しない弱点からデータベース サーバーにセキュリティを設定するために、保護層が実装されます。このような弱点は、サービス拒否攻撃につながる可能性があります。

  • 3 つのファイアウォールを設置することで、インターネット経由で直接アクセスできるコンピュータの数を最小限にすることができます。データベース サーバーやビジネス デスク サーバーを破壊または悪用することが難しくなります。

  • データベース サーバーとビジネス デスク サーバーが、内部ネットワークにいる侵入者から保護されます。

3 つのファイアウォールのソリューションには、次のような短所があります。

  • 構成の異なる 3 つのファイアウォールを管理することは難しく、またコストがかかります。

  • Web サーバーとデータベース サーバーの間の通信が、ISP ネットワーク内で保護されません。このような通信にセキュリティを設定するには、さらに強力なセキュリティが必要です。

  • 内部ネットワークとインターネットの間で許可されるトラフィックは、ISP ネットワークとインターネットの間、およびデータベース サーバーとインターネットの間でも許可されます。セキュリティの効果は、ユーザーの既定のセキュリティ ポリシーでどのプロトコルを許可するかによって決まります。

  • 構成の設定と管理が難しくなります。

関連項目

サイトの配置

Site Server 3.0 からの移行

Membership Directory を移行する


Site Server 3.0 からの移行

Commerce Server 2000 には、Site Server 3.0 のサイトや Site Server 3.0 Commerce Edition のサイトを Commerce Server に移行するためのツールが用意されています。これらのツールは、サイト開発者向けに設計されています。サイト開発者は、サイトのニーズに合わせてこれらのツールをカスタマイズできます。

ここでは、次のトピックについて説明します。

  • 移行する Site Server 3.0 の機能

  • Site Server から Commerce Server への移行計画

  • 移行ツールの概要

  • 移行に関するマニュアルの概要


移行する Site Server 3.0 の機能

Commerce Server には、Commerce Server に組み込む Site Server 3.0 と Site Server 3.0, Commerce Edition (SSCE) の機能の移行手段が用意されています。

Site Server 3.0 の機能の大部分は、Commerce Server に組み込まれています。ただし、一部の機能はほかの Microsoft 製品に組み込まれています。次の表は、Site Server 3.0 および SSCE の移行した機能の一覧と、移行先の製品および機能を示します。

Commerce Server に組み込まれた Site Server 3.0 と Site Server 3.0, Commerce Edition (SSCE) の機能

Site Server 3.0 の機能 | Commerce Server 2000 の機能
Ad Server / Ad Manager | コンテンツ選択フレームワーク / キャンペーン マネージャ
Analysis:Report Writer、Custom Import、Usage Import | 分析 : レポート、カスタム インポート、データ ウェアハウス、ビジネス分析
ダイレクト メール | ダイレクト メール
パイプライン | パイプライン
オンライン ストア | カタログ システム
Personalization & Membership | ユーザー プロファイル
Site Vocabulary | サイト用語
ルール ビルダ | 式ビルダ
Predictor | 予測リソース
Starter Site | ソリューション サイト
トランザクション | トランザクション
Content Deployment および Content Replication System | Commerce Server サイト パッケージャ (コンテンツの配置と複製の一部を処理)

その他の Microsoft 製品に組み込まれた Site Server 3.0 および Site Server 3.0, Commerce Edition (SSCE) の機能

Site Server 3.0 の機能 | Microsoft 製品
Content Deployment および Content Replication System | Microsoft Application Center 2000 (コンテンツの配置と複製の一部を処理)
Commerce インターチェンジ パイプライン | Microsoft BizTalk Server 2000
Internet Locator Service (ILS) / Dynamic Directory | Microsoft Windows 2000 – Site Server ILS サービス
Search: インデックス、クロール、スクリプト | Microsoft プレリリース製品 (コード名 "Tahoe") Beta 2 に組み込み
Knowledge Manager | Tahoe に組み込み
Posting Acceptor | Microsoft WebDAV

Site Server 3.0 の機能のうち、Publishing ウィザード、Push (Active Channel Multicaster、Active Channel Server)、Content Analyzer、および Tag Tool は、Commerce Server にも、ほかの Microsoft 製品にも組み込まれていません。また、サポートもされません。

注

  • インターネット インフォメーション サービス (IIS) は、Version 5.0 で応答バッファリングの既定の設定が変更されました。応答バッファリングは、Version 4.0 では既定でオフでしたが、5.0 で既定でオンになりました。ASP ページを Site Server 3.0 Commerce Edition サイトから Commerce Server 2000 サイトに移行するには、この点を考慮する必要があります。


Site Server から Commerce Server への移行計画

Site Server 3.0 Commerce Edition から Commerce Server 2000 へのサイトの移行を計画する場合は、次の点を考慮する必要があります。

  • Commerce Server の各コンポーネントに 1 つずつ移行することはできません。

  • 新しいサイトを作成し、その動作、コンテンツ、およびデータの移行が無事に完了してから、そのサイトの運用を開始する必要があります。

  • SSCE サイトを正常に Commerce Server に移行するには、サイト コードの移行が必要です。

移行を成功させるには、いくつかの戦略がありますが、特に検討するとよい 2 つの重要な戦略として、パラレル Web ファームとデュアル ブートの 2 つを紹介します。

パラレル Web ファーム

パラレル Web ファーム戦略は、移行プロセス中に、Commerce Server と Site Server をそれぞれ別の場所で同時に実行します。パラレル Web ファームを構築すると、既存の SSCE サイトの機能が Commerce Server 技術によって複製されます。パレレル Web ファームによる移行は多くのリソースを必要としますが、サイトの安定性リスクを積極的に管理しているサイトの場合は、最適なリスク管理が可能な移行方法です。

パラレル Web ファームの長所

  • Commerce Server サイトが完全に機能し、顧客をサポートするようになるまで、運用中の SSCE サイトに影響が及ぶことがありません。

  • 新しい Commerce Server サイトに対して、Microsoft Web Application Stress などのツールでユーザーの負荷をシミュレートして生成し、そのストレスの下で機能とパフォーマンスを完全にテストできます。

  • サイトをユーザーに公開する前に、サイト コードとデータの移行を完全にテストできます。

  • 新しい Commerce Server サイトの運用を開始する前に、すべての操作手順を確立して文書化できます。

パラレル Web ファームの短所

  • ハードウェア、スペース、およびネットワーク インフラストラクチャなどのリソースを多く必要とします。

デュアル ブート

デュアル ブート戦略を使う場合は、SSCE サーバー上の別のディスク システムに、Microsoft Windows 2000 の新しいインスタンスをインストールします。新しいオペレーティング システムをインストールしたら、新しいパーティションに Commerce Server をインストールできます。Commerce Server と SSCE では SQL 構成が異なるため、Commerce Server データベースはほかのサーバーにインストールする必要があります。

デュアル ブート戦略の例

SSCE を実行しているサーバーが、次のディスク構成になっているとします。

  • C ドライブ : オペレーティング システム ドライブ

  • D ドライブ : IIS、SSCE、およびサイト コードのドライブ

  • E ドライブ : IIS およびシステムのログ ドライブ

ディスク ドライブを追加し、デュアル ブート戦略を実装したサーバーのディスク構成は、次のようになります。

  • C ドライブ : オペレーティング システム ドライブ

  • D ドライブ : IIS、SSCE、およびサイト コードのドライブ

  • E ドライブ : IIS およびシステムのログ ドライブ

  • F ドライブ : オペレーティング システム ドライブ (Commerce Server 用の Windows 2000 をインストール)

  • G ドライブ : IIS、Commerce Server、およびサイト コードのドライブ (Commerce Server 用の Windows 2000 をインストール)

  • H ドライブ : IIS およびシステムのログ ドライブ (Commerce Server 用の Windows 2000 をインストール)

この例では、サーバーが起動したとき、どちらのサイトを稼働させるかによって、C ドライブまたは F ドライブのいずれかから起動する構成になっています。

デュアル ブート戦略の長所

  • 必要なハードウェアが少なくて済みます。

  • 既存のネットワーク インフラストラクチャを使用できます。

  • ビジネス ニーズに合った実績のあるハードウェアを使用できます。

デュアル ブート戦略の短所

  • 一度に 1 つのサイトしか稼働できません。SSCE サイトまたは Commerce Server サイトを稼働できますが、両方は稼動できません。

  • SSCE サイト全体をオフラインにし、サーバーを再起動して Commerce Server インスタンスを選択しなければ、新しい Commerce Server サイトのプラットフォーム全体としての機能とパフォーマンスは完全にテストできません。

  • 移行の前に、データベースを別のサーバーに移行する必要があります。


移行ツールの概要

Commerce Server の移行ツールは、必要に応じてカスタマイズできます。Commerce Server 2000 には、ソース コードと、移行ツールのカスタマイズおよび拡張を行う方法を説明する Software Development Kit (SDK) が用意されています。ここでは、移行ツールとその使い方の概要について説明します。

[Directory Migration] ツールボックス

Ad Server 移行ツール

[Directory Migration] ツールボックス

[Directory Migration] ツールボックスには、C++ で記述された一連のツールおよび Component Object Model (COM) オブジェクトがあります。これには、MigrationMainObj、MigrationReadObj、MigrationWriteObj、MigrationModifyObj、およびMigrationLogObj の各オブジェクトが含まれます。Site Server の Membership Directory から Commerce Server プロファイル データベースにユーザー データを移行するには、これらのオブジェクトを使います。[Directory Migration] ツールボックスには、Membership ディレクトリの実装に合わせて変更できるように、ソース コードが含まれています。

次の図は、移行オブジェクトの機能の概要を示します。

[Directory Migration] ツールの機能の概要を示す図
オブジェクトの書き込み
オブジェクトの読み取り
Membership Directory
AUO/LDAP
移行オブジェクト
Site Server
Commerce Edition
Commerce Server
移行の要求
SQL
Active Directory
ユーザー プロファイル オブジェクト

オブジェクト
の変更

[Directory Migration] ツールボックスの主要なコンポーネントは、実際の移行を実行する [Directory Migration] ツールです。[Directory Migration] ツールは、リアルタイム モード実装の複数のインスタンスと、バッチ モード実装の 1 つのインスタンスの間で、状態を維持するように設計されています。これは、[Directory Migration] ツールの各インスタンスの間で、同じアカウントを移行しようとして競争状態が生じるのを防ぐためです。[Directory Migration] ツールは、次の 2 つのモードで使用できます。

  • リアルタイム モード ユーザーが Login.asp ファイルで認証を受けようとしたときに、ユーザーを移行するためのモードです。通常の Login.asp コードが拡張され、ユーザー プロファイルがデータベースにないために認証に失敗した場合に、移行ツールを呼び出して、ユーザー プロファイルを "リアルタイム" で Commerce Server の新しいプロファイル システムに移行できるようになります。移行が無事に完了すると、Login.asp ファイルはユーザーの認証を完了し、通常の処理が再開されます。

  • バッチ モード Membership ディレクトリのユーザーを、Commerce Server プロファイル サービスが使用するプロファイル ストアに移行するためのモードです。スタンドアロン サーバーで、ユーザー リスト全体を処理します。リストの処理が終わると、記録された移行失敗の解決を除いて、移行プロセスがすべて完了します。失敗の原因となった問題を解決したら、失敗したアカウントに対する移行プロセスを再実行して、それらを移行します。

Ad Server 移行ツール

Ad Server 移行ツールは、広告データを SSCE から Commerce Server に移行するために使います。このツールは adservermigration.exe という名前で、Commerce Server をインストールしたディレクトリの "SDK\Tools\Migration\Ad Server" ディレクトリにあります。

Ad Server 移行ツールは、対象評価のための式を作成し、Web サイト間で広告を移動します。また、このツールは、現在の式を使って広告選択のプロセスを実行します。

関連項目

Membership Directory を移行する


移行に関するマニュアルの概要

Membership Directory の移行については、「Membership Directory を移行する」を参照してください。

パイプライン

Commerce Server パイプライン は、アプリケーション プログラミング インターフェイス (API) に関して Site Server 3.0 Commerce Edition (SSCE) パイプラインと互換性があります。SSCE で使用していたサードパーティ製パイプライン コンポーネントは、次の点を除き、Commerce Server 2000 でも動作します。

  • 通貨は 64 ビット値に変更されています (SSCE の通貨は 32 ビット整数)。

  • 住所/送料情報は、複数の "送付先" 住所を処理するように変更されています。

サードパーティ製コンポーネントが、Dictionary オブジェクト レベルでパイプライン データと対話する場合、これらの変更はサイトに影響を与えない可能性もあります。ただし、サードパーティ製コンポーネントが、データが実際に格納されているデータベース レベルでパイプライン データと対話する場合、Commerce Server ではデータベース層に変更があるため、コンポーネントが影響を受けます。

カタログ

Commerce Server と SSCE のカタログには、大きな違いがあります。SSCE ウィザードでは、オンライン ストアという基本的なカタログだけを生成しました。一方、Commerce Server で作成されるカタログは、より複雑で高い柔軟性を備えています。SSCE を配置している顧客のほとんどはカスタム カタログ ソリューションを使っていることが、Commerce Server 商品カタログシステムに移行するための汎用ツール開発の障害になっています。

オンライン ストアまたはカスタム カタログ ソリューションを Commerce Server カタログに移行する前に、Commerce Server のカタログを作成する必要があります。Commerce Server のカタログを作成するには、カタログ スキーマを作成する必要があります。カタログ スキーマを作成したら、カタログを作成し、その中に商品を生成します。

オンライン ストアまたはカスタム カタログを Commerce Server カタログに移行するには、次の戦略を利用できます。

  • カタログ データの入った XML ファイルを作成し、Commerce Server 商品カタログ システムにインポートします。この XML ファイルは、商品カタログ システムがインポートできる形式にする必要があります。XML カタログ ファイルには、スキーマ定義とカタログ データが含まれている必要があります。

    カタログ データをインポートするための正確な XML 形式を決定するもう 1 つの方法は、目的のカタログ スキーマを構築し、そこにいくつかのサンプル商品を生成します。次に、このカタログを XML としてエクスポートし、生成された XML ファイルを調べます。オンライン ストアまたはカスタム カタログ ソリューションのデータは、この形式に従っている必要があります。

    商品カタログ システムで必要な XML 形式の詳細については、「カタログの XML 構造」を参照してください。

    構築済み XML ファイルのインポートの詳細については、「XML カタログ ファイルをインポートする」を参照してください。

  • カタログ データの入ったカンマ区切り値 (CSV) ファイルを作成し、Commerce Server 商品カタログ システムにインポートします。この CSV ファイルは、商品カタログ システムがインポート可能で、Commerce Server カタログ用に定義したスキーマと互換性のある形式にする必要があります。

    商品カタログ システムで必要な CSV 形式の詳細については、「カタログの XML 構造」を参照してください。

    商品カタログ システムで必要な CSV 形式と構築済み CSV ファイルのインポートの詳細については、「CSV カタログ ファイルをインポートする」を参照してください。

  • オンライン ストアまたはカスタム カタログ ソリューションからカタログ構造とデータを読み取るユーティリティ スクリプトを作成し、Commerce Server カタログ オブジェクトを使って目的のスキーマによる Commerce Server カタログを作成して、このカタログに商品データを生成します。

    Commerce Server カタログ オブジェクトの詳細については、「商品カタログ オブジェクト」を参照してください。

関連項目

カタログ スキーマを作成する

カタログを作成する

カタログに商品を追加する


サイトを開発する

Microsoft Commerce Server 2000 では、世界規模の商業 Web サイトをより迅速かつ簡単に開発するためのツールとサービスを提供します。ここでは、Commerce Server の開発について紹介し、Commerce Server を使っての Web サイト開発のさまざまな側面に関する概念について説明します。

ここでは、次のトピックについて説明します。

  • Commerce Server を使ったプログラミングの紹介 : Commerce Server の Web 開発について説明します。

  • Commerce Server オブジェクトを使ってプログラミングする : Commerce Server で提供される Component Object Model (COM) オブジェクトをカテゴリに分類し、それらのカテゴリに関連する概念とサンプル コードを示します。

  • サイト セキュリティとフィルタを使用する : Web サイトのセキュリティ保護のための Commerce Server のメカニズムについて説明します。

  • パイプラインを利用する : Commerce Server のパイプラインについて説明します。Commerce Server のどこで使われるか、および最も効果的な使い方についても説明します。

  • BizTalk Server と統合する : Commerce Server を Microsoft BizTalk Server と統合し、包括的な供給チェーン ソリューションを提供する方法について説明します。

  • スタイル シートをカスタマイズする : カスタマイズ可能なスタイル シートを使って、Commerce Server ビジネス デスクの外観を簡単に変更する方法について説明します。

  • 世界各国の顧客用にサイトを変更する : 世界各国対応の Web サイトの作成について説明します。

  • Membership Directory を移行する : Microsoft Site Server 3.0 Commerce Edition の Web サイトの既存のユーザーを Commerce Server 2000 の Web サイトに移行する方法について説明します。


Commerce Server を使ったプログラミングの紹介

Microsoft Commerce Server 2000 では、その機能を最適化するための技能がサイト開発者に要求されます。ここでは、開発者に Commerce Server 2000 を紹介し、それが提供するプログラミングの機会について説明します。

ここでは、次のトピックについて説明します。

  • 開発ワークステーションを設定する : Commerce Server を効果的に使用するためのハードウェアおよびソフトウェアの前提条件の概要を示します。

  • デバッグ : Commerce Server 開発のコンテキストで効果的なデバッグを行うための技法の概要を示します。

  • プログラミングの機会 : プログラミングの機会を提供する Commerce Server のさまざまな側面について説明します。

  • SDK ロード マップ : Commerce Server 2000 Software Development Kit (SDK) に用意されているサンプルの簡単な概要を示します。

  • プログラマーズ リファレンス ロード マップ : Commerce Server のマニュアルの「プログラマーズ リファレンス」に記載されたリファレンスのガイドを示します。


開発ワークステーションを設定する

Commerce Server 2000 の開発ワークステーションを設定するためのハードウェア要件は、運用サーバーと同じです。ただし、開発ワークステーションでは通常 128 MB の RAM で十分です。詳細については、「ハードウェアの必要条件」を参照してください。

通常のインストール処理によって、開発ワークステーションに Commerce Server をインストールします。インストールする Commerce Server の機能を限定する場合は、カスタム インストールを実行できます。

また、実際の開発および関連するデバッグ作業を行うには、Microsoft Visual Studio 6.0、特に Microsoft Visual InterDev (VID) などの統合開発環境を使うことをお勧めします。VID を使う場合は、VID Service Pack 4 (SP4) を適用する必要があることに注意してください。そのほかのデバッグ ツールも役立ちます。詳細については、「デバッグ」を参照してください。


デバッグ

Commerce Server Web サイトの開発中、および Commerce Server プラットフォームの拡張作業中に発生するバグの種類には、次のものがあります。

ASP エラー | 一般的なロジックの問題 | メモリ リーク
ハングアップ | ディスク満杯 | ネットワーク停止
クラッシュ | データベース アクセスの問題 | セキュリティの問題

Web アプリケーションをデバッグする方法を説明することは、このドキュメントの範疇を超えています。ただし、次のトピックでは、Commerce Server 2000 の使用時に発生する可能性がある問題について、そのデバッグ方法に関する追加情報を参照できます。

ここでは、次のトピックについて説明します。

  • デバッグの詳細 : Web アプリケーションのデバッグに関する追加情報の参照先について説明します。

  • デバッグ ツール : Commerce Server アプリケーションのデバッグに使用できるいくつかのツールについて説明します。


デバッグの詳細

Web アプリケーションをデバッグする方法を説明することは、このドキュメントの範疇を超えています。ただし、Microsoft Developer Network (MSDN) http://www.microsoft.com/japan/developer/ には、デバッグに関連する多数の情報が含まれています。次の記事が役に立ちます (これらの記事をタイトルで検索します。このとき、検索条件として "フレーズ (語句) 検索" を指定し、検索範囲に "Developer リソース" を選択します)。

  • Microsoft Visual InterDev 6.0 のデバッギング (Microsoft Developer Network Online Japan 内)

  • ASP テクノロジでのコンポーネントのトラブルシューティング

  • ASP アプリケーションのデバッグ

  • ASP ページでスクリプト オブジェクトをデバッグする (VID 6.0 SP3 新規トピック)

以下の情報に関しては英語のみでの提供となります。

Microsoft Developer Network (MSDN) 英語版 http://msdn.microsoft.com/ で、以下の記事をタイトルで検索します。このとき、Search Criteria として "Extract Phrase" を指定し、Search Scope に "MSDN Library" と "Web Workshop" の両方を選択します。

  • Debugging Distributed Web Applications

  • Debugging Applications and Components

デバッグに関する追加情報は、Visual InterDev Web サイト (英語版) http://msdn.microsoft.com/vinterdev の Technical Articles にあります。


デバッグ ツール

Microsoft Commerce Server 2000 の開発に使われる主要なツールの 1 つは、Microsoft Visual Studio であり、Microsoft Visual InterDev、Microsoft Visual C++、および Microsoft Visual Basic が含まれます。Commerce Server の使用には、この統合開発環境をお勧めします。

次のツールも、Commerce Server のデバッグに役立つことがわかっています。

  • Microsoft Script Debugger : MSDN (日本語版) で、タイトル「Microsoft Scripting Technologies: Script Debugger」を検索してください (検索条件には "フレーズ (語句) 検索" を指定します)。

  • IIS Exception Monitor : MSDN (日本語版) で、タイトル「Exception Monitor によるトラブルシューティング」を検索してください (検索条件には "フレーズ (語句) 検索" を指定します)。

  • User Mode Process Dump : このツールは、相手先ブランド供給 (OEM) サポート ツールに含まれています。MSDN (英語版) で、タイトル「OEM Support Tools」を検索してください (Search Criteria には "Exact Phrase" を指定します)。このページは英語で提供されています。

  • WinDbg : WinDbg ファイルは、プラットフォーム Software Development Kit (SDK) に含まれている開発ツールをインストールしたときにインストールされます。WinDbg の使い方については、WinDbg に含まれるヘルプ ファイル windbg.hlp を参照してください。

  • システム モニタ、パフォーマンス ログと警告、イベント ビューア : これらの 3 つの Microsoft 管理コンソール (MMC) スナップインは、Commerce Server マネージャ MMC コンソールに既定で含まれています。これらスナップインは、各 Web サイトのデバッグとパフォーマンス チューニングに役立ちます。

パイプラインをデバッグする場合は、障害がどこで発生するかを確認できるようにするために、パイプライン実行のログ記録を有効にすることを検討します。

Commerce Server 2000 SDK の Order サイトレットには、Scriptor パイプライン コンポーネントでの使用を目的として設計されたスクリプト ファイル DumpOrder.vbs が (source\pipeline サブフォルダ内に) 含まれています。このスクリプト ファイルを使って、注文処理パイプライン (OPP) の実行中の任意の時点で、OrderForm オブジェクトのコンテンツをダンプすることができます。詳細については、DumpOrder.vbs ファイルの最初の指示を参照してください。

関連項目

デバッガで regtrace.exe を使う


プログラミングの機会

Commerce Server 全体を通じて、プログラミングが可能な機会が 2 回あります。Commerce Server の既存の機能を使って Web サイトを構築することと、Commerce Server プラットフォームを拡張することです。

Commerce Server プラットフォームの拡張には、汎用的なコンポーネントとリソースを新規に作成することも含まれます。これらのコンポーネントとリソースは、Commerce Server を使って Web サイトを作成している企業向けに販売することができます。

ここでは、次のトピックについて説明します。

  • Web サイトを構築する : 高度な電子商取引 Web サイトの構築に関連する事項について説明します。

  • Commerce Server をカスタマイズして拡張する : 新しいコンポーネントを作成することによって、Commerce Server をカスタマイズして拡張するさまざまな方法について説明します。


Web サイトを構築する

開発者は、顧客が利用する Web サイトを構築します。その Web サイトを介して、顧客は最終的に商品を購入することになります。Web サイトを開発するには、まず開発をどこから始めるかを決定し、企業のニーズを満たすサイトを開発するという目標を達成するために Commerce Server がどのように役立つかを判断する必要があります。

次の記事は、Microsoft Developer Network (MSDN) http://www.microsoft.com/japan/developer/ で参照することができます。これらの記事には、Web サイトの開発に役立つ情報が含まれています (これらの記事をタイトルで検索します。このとき、検索条件として "フレーズ (語句) 検索" を指定し、検索範囲に "Developer リソース" を選択します)。

  • ASP アプリケーションのパフォーマンス向上

  • ASP コンポーネント ガイドライン

  • ASP アプリケーションのロード テスト

  • ASP ガイドライン

インターネット インフォメーション サービス (IIS) のもとで実行される Web サイトでは、アプリケーション起動時およびセッション開始時に発生する処理と、ユーザーによるページ移動時に発生する処理との間には基本的な区別があります。前者の処理は Global.asa ファイルに実装されるのに対し、後者の処理はサイトを構成するさまざまな Active Server Pages (ASP) に実装されます。

ここでは、開発をどこから始めるかを選択する際のガイダンスを提供すると共に、Global.asa ファイルで必ず発生する処理に関するいくつかの重要な点について説明します。

ここでは、次のトピックについて説明します。

  • 開発をどこから始めるかを選択する : Commerce Server に基づいて Web サイトの開発を始めるための各種のオプションについて説明します。

  • Global.asa ファイルの役割 : IIS アプリケーションでの Global.asa ファイルの役割について説明します。


開発をどこから始めるかを選択する

Web サイトの開発者には、開発をどこから始めるかについて 2 つの選択肢があります。これら 2 つの選択肢を次に示します。

  • Blank サイトから開発を始めることができます。この場合、アンパックすると、実質的に空の Web サイトが作成されます。Blank サイトには Default.asp および Global.asa ファイルが用意されていますが、これらのファイルにはコンテンツがまだあまり含まれていません。Blank サイトは、Commerce Server 2000 に含まれています。

    また、Blank サイトには、Commerce Server ビジネス デスクと、Web サイトが最終的に依存することになる空のデータベースのセットも用意されています。

    既存の Web サイトがある場合は、それを変換して Commerce Server 2000 の機能を利用できます。この場合でも、変換した Web サイトでビジネス デスクを利用できるように、Blank サイトをアンパックすることから開発プロセスを始める必要があります。次に、既存の Web サイト ファイルを Blank サイトにマージし、それらを必要に応じて変換して、Commerce Server 2000 の機能を利用できるようにします。

  • http://www.microsoft.com/japan/commerceserver/productinfo/solsites.htm からダウンロードできるソリューション サイトの 1 つから開発を始めることができます。最初は、2 つのソリューション サイトを利用できます。B to C 市場向けの Web サイトの作成に使用できる Retail と、B to B 市場向けの Web サイトの作成に使用できる Supplier です。

    どちらの Web サイトも同じコード ベースに基づいており、Blank サイトを使って最初から始めるよりも短期間で市場投入できます。ただし、これらは汎用的なものであるため、すべての Web サイトの必要条件を満たす設計にはなっていません。特に、厳密で非常に要求の高いパフォーマンス要件、または特殊なアーキテクチャ要件を持つ Web サイトの場合は、最初から開発した方が良い場合があります。

    ソリューション サイト自体のマニュアルとソリューション サイトに関する詳細は、ソリューション サイトの Web サイトで入手できます。


Global.asa ファイルの役割

パフォーマンスを最適化する方法の 1 つは、不要なオブジェクトを作成しないことです。インターネット インフォメーション サービス (IIS) アプリケーションは、これをサポートするために、Global.asa ファイルのメカニズムと固有の Application オブジェクトを使います。IIS アプリケーションは起動時に Global.asa ファイルを実行して、初期化コードを実行できるようにします。具体的には、Application_OnStart ルーチンが呼び出されて、その中でアプリケーション用の初期化コードをすべて呼び出すことができます。アプリケーションの起動時にオブジェクトとサービスを作成して初期化してから、これらのオブジェクトとサービスへの参照を Application オブジェクト内に保存する方法が一般的です。この処理が実行されると、アプリケーション内のすべての Active Server Page (ASP) が、Application オブジェクトを介してこれらのオブジェクトとサービスにアクセスできます。このようなアクセスは通常、各 ASP ページ内で必要なオブジェクトを作成して初期化してから破棄する方法よりも速くなります。しかし、特定のクラスのオブジェクトについては、このことが当てはまらないため、お勧めできません

Global.asa ファイルで通常発生する処理には、次のものがあります。

  • サイト上のすべての ASP ページからアクセスできる専用 Commerce Server オブジェクトの作成と初期化。このタイプのオブジェクトの代表的な例としては、MessageManager オブジェクトがあります。このオブジェクトは、言語に依存しない ASP ページで使用する言語固有の文字列にアクセスするためのメカニズムを提供します。このオブジェクトの詳細については、「MessageManager オブジェクト」を参照してください。

  • CacheManager オブジェクトと LRUCache オブジェクトを含むキャッシュ オブジェクトの確立。キャッシュ オブジェクトの概念については、「汎用プログラミングの概念」を参照してください。キャッシュ オブジェクトのプロパティとメソッドの詳細については、「CacheManager オブジェクト」と「LRUCache オブジェクト」をそれぞれ参照してください。

  • 各 Web サイトまたは開発したカスタム リソースに固有のグローバル情報の確立。通常、この処理を行うには、必要なデータを Dictionary オブジェクトに格納してから、IIS Application オブジェクトを介して ASP ページがそれらのデータにアクセスできるようにします。

Blank サイトを使って開発を始めた場合、Global.asa ファイルにはアプリケーション初期化コードはほとんど含まれません。すべての ASP ページで共有し、Global.asa ファイルに作成して初期化するオブジェクトを適切に決定するのは、Web サイト開発者の役割です。

http://www.microsoft.com/commerceserver/solutionsites からダウンロードできるソリューション サイトの 1 つを使って開発を始めた場合、Global.asa ファイルが非常に大きく複雑であることがわかります。このファイルには、多数の Commerce Server オブジェクトを作成および初期化するためのコードが含まれ、これらのオブジェクトへの参照は IIS Application オブジェクトに格納されます。詳細については、ソリューション サイトのマニュアル、およびそれらのソリューション サイトに含まれる Global.asa ファイル内のコードとコメントを参照してください。


Commerce Server をカスタマイズして拡張する

Microsoft Commerce Server 2000 は、拡張を考慮して設計されています。その固有の機能を強化および拡張できる領域は多数あります。

たとえば、Commerce Server にギフト券という拡張機能を作成し、次のものを含めるとします。

  • 未使用のギフト券を管理するための新しい Commerce Server ビジネス デスク モジュール

  • ギフト券データが保存されるデータベース テーブルを管理するためのカスタム リソース

  • ギフト券を購入に適用できるようにする 1 つまたは複数の新しいパイプライン コンポーネント

  • ギフト券の機能をユーザーに提供するために Web サイトに統合される新しい Active Server Pages (ASP)

ここでは、次のトピックについて説明します。

  • 新しいパイプライン コンポーネントを作成する : Commerce Server 内の各種パイプラインの処理を変更および強化するための新しいパイプライン コンポーネントを作成するケースについて説明します。

  • ビジネス デスクを拡張する : ビジネス デスクに新しいモジュールを追加するケースについて説明します。

  • カスタム リソースを追加する : Commerce Server にカスタム リソースを統合して、Commerce Server マネージャ内で構成および管理できるようにするケースについて説明します。

  • データ ウェアハウスをカスタマイズする : データ ウェアハウスをカスタマイズして、元の設計目的以外のデータの収集、保存、および分析を行えるようにするケースについて説明します。

  • コンテンツ選択フレームワークをカスタマイズする : コンテンツ選択フレームワークをカスタマイズしてアルゴリズムを追加し、異なる複数のユーザーに配信するコンテンツを選択できるようにするケースについて説明します。

  • 時間節約ツールを作成する : Commerce Server に用意されている COM オブジェクトを使って、繰り返しタスクを自動化するように設計したツールを作成するケースについて説明します。


新しいパイプライン コンポーネントを作成する

パイプライン コンポーネントは、パイプラインの実行中に一貫した方式で起動できるインターフェイスの標準セットをサポートする Component Object Model (COM) オブジェクトであり、パイプライン全体で実行される処理の特定部分を実行します。パイプライン アーキテクチャを使うと、新しいパイプライン コンポーネントを作成して既存のパイプラインに "プラグイン" できます。このとき、通常は、既存のパイプライン コンポーネントが置き換えられ、そのパイプラインによって実行されている元の処理が変更されます。

このようなパイプライン コンポーネントの置き換えの一般的な例としては、ユーザーがチェックアウトしようとし、トランザクションを終了させるためにショッピング カートを処理するときに実行されるパイプラインがあります。Commerce Server には、売上税を計算するように設計されたパイプライン コンポーネントがいくつかあります。ただし、これらのコンポーネントでは、購入パイプラインの税ステージを示すことだけを目的としているので、該当する税法に従って税計算を実行することは保証されていません。この種のソフトウェアを専門とするサード パーティによる税金コンポーネント ソフトウェアを使用することをお勧めします。

ビジネス ニーズに合わせて、追加パイプラインを開発しなければならない場合もあります。追加の処理が発生しても、Commerce Server パイプラインのアーキテクチャを使うと、追加パイプライン コンポーネントを既存のパイプラインに簡単に挿入できます。

パイプラインは、Commerce Server 全体を通じてさまざまな機能で使われます。トランザクションの処理、表示用にパーソナライズされたコンテンツの選択、およびダイレクト メール ジョブの処理に使われます。

パイプラインは、CacheManager オブジェクトおよびそれに対応するキャッシュ ローダー オブジェクトの使用を組み込むことによって最適化できます。コンテンツ選択フレームワークが、この種類の最適化の代表的な例です。CacheManager オブジェクトの使い方の詳細については、次のトピックを参照してください。

  • コンテンツ選択フレームワークのオブジェクトとコンポーネント

  • ContentSelection オブジェクトをサポートするコード

  • カスタム キャッシュ コンポーネントを実装するためのコード

パイプラインと既存のパイプライン コンポーネントの詳細、および新しいパイプライン コンポーネントの構築の詳細については、次のトピックを参照してください。

  • パイプラインを利用する

  • パイプライン コンポーネント リファレンス

  • パイプライン コンポーネントを構築する

  • パイプライン コンポーネントのインターフェイス


ビジネス デスクを拡張する

Commerce Server ビジネス デスクには、ビジネス マネージャが Web の技術的な専門家に頼らなくても、Web サイトに変更を加えることができるように 1 つのアプリケーションが用意されています。Commerce Server に新しい機能を追加して、ビジネス マネージャが自分でデータを変更できるようにするには、それを実現するユーザー インターフェイスとして、新しいビジネス デスク モジュールを追加することを検討する必要があります。このモジュールを追加すると、ビジネス マネージャは、1 つの一貫したツールで処理を継続し、より効果的に作業を行うことができます。

ビジネス デスクは簡単に拡張できます。新しいモジュールとそれらのモジュールを含む新しいカテゴリを追加できます。既存のビジネス デスク モジュールで使われる HTML コンポーネント (HTC) は汎用的に作成されています。そのため、このコンポーネントを使うと、同じメカニズムによってデータの表示と操作が可能な新しいモジュールを作成できます。ビジネス デスクには、新しいビジネス デスク モジュールを開発するのに役立つユーティリティ ルーチン、共有グローバル変数、および定数の拡張コレクションも含まれています。

開発可能な新しいモジュールの例としては、サイト上で電子ギフト券を提供するモジュールがあります。ビジネス マネージャは、ギフト券の機能に関連するさまざまなデータを検査するための機能を必要とします。これらのデータには、いくらのギフト券が販売され未回収か、それらのギフト券が誰に対して発行されたか、どれだけの期間未使用であるかなどの情報が含まれます。

新しいビジネス デスク モジュールの開発、およびビジネス デスク フレームワークがこの開発をサポートするさまざまな方法の詳細については、次のトピックを参照してください。

  • ビジネス デスク モジュールを構築する

  • ビジネス デスク リファレンス

  • ビジネス デスクの XML 構造


カスタム リソースを追加する

Microsoft Commerce Server 2000 内で、リソースは、独自の独立した構成データを持ち、Web サイトで利用できるサービスまたは機能として定義されています。Commerce Server マネージャ は、Microsoft 管理コンソール (MMC) のスナップインであり、システム管理者がこれらのリソースの構成値を管理できるように設計されたユーザー インターフェイスです。Commerce Server マネージャ は、増大するリソースを 1 つの一貫した形式で管理できるように設計されています。

関連する構成データの複雑さと、カスタム ユーザー インターフェイスの必要性に応じて、Commerce Server マネージャは、さまざまなレベルでカスタム コードと統合することができます。そのもっとも単純なレベルでは、少数の管理データベース テーブルに新しい行を追加することによって、新しいリソースを Commerce Server マネージャ に表示し、リソース ダイアログ ボックスでその構成値を編集することができます。もっとも複雑なレベルでは、新しいリソースは、MMC スナップイン拡張として実装した独自のカスタム ユーザー インターフェイスを持ち、すべてのデータ ソースのサイト パッケージ間でのデータ移動について全責任を負うことができます。

既存の Commerce Server マネージャのユーザー インターフェイスおよび Commerce Server サイト パッケージャのインフラストラクチャにカスタム リソースを統合する方法の詳細については、次のトピックを参照してください。

  • カスタム リソースを統合する

  • サイト パッケージャ インターフェイス


データ ウェアハウスをカスタマイズする

Microsoft Commerce Server 2000 には、広範囲のデータのキャプチャ、保存、および分析用に設計されたスキーマによってあらかじめ構成されたデータ ウェアハウスが含まれています。このスキーマは多くの Web サイトのニーズを満たしますが、一部の Web サイトは、このスキーマでは対応できない特殊なデータ ウェアハウスに対するニーズが高まる傾向にあります。Commerce Server データ ウェアハウスの設計は、新しいタイプのデータに対応するために、そのスキーマを拡張できるようになっています。

データ ウェアハウスとそのスキーマの拡張方法の詳細については、次のトピックを参照してください。

  • データ ウェアハウスを操作する

  • OLE DB Provider for Commerce Server

  • 分析とレポート作成のためのスキーマ

  • データ ウェアハウスのスキーマ


コンテンツ選択フレームワークをカスタマイズする

コンテンツ選択フレームワーク (CSF) は、複数の異なる動的条件に基づいて Web ページおよびダイレクト メールのカスタム コンテンツを効率的に選択できるようにするサブシステムです。これらの動的条件としては、ユーザー ID、時刻、広告キャンペーンのビジネス ニーズなどがあります。

CSF は、Commerce Server パイプラインとして実装されるため、CSF をカスタマイズする主要な方法の 1 つは、カスタム パイプライン コンポーネントを開発して利用することです。

Commerce Server 2000 SDK の Samples\Marketing\debug フォルダには、CSF パイプラインのスコアリングとキャッシュ読み込みをデバッグするときに役立つ 2 つの ASP ページが含まれています。詳細については、「Marketing フォルダ」を参照してください。

コンテンツ選択フレームワークの拡張方法の詳細については、次のトピックを参照してください。

  • コンテンツ選択フレームワークを拡張する

  • コンテンツ選択パイプライン

  • パイプライン コンポーネントを構築する


時間節約ツールを作成する

Microsoft Commerce Server 2000 には、Component Object Model (COM) オブジェクトのセットが含まれています。このオブジェクトを使うと、開発および配置される Web サイトに関連付けられたほとんどのデータに対してプログラムで簡単にアクセスできます。

たとえば、複数のオブジェクトが商品カタログ システムに関連付けられていて、これらのオブジェクトを同時に使うと、Web サイトに関連付けられた商品カタログ データに対する高度なアクセスが可能になります。これらのオブジェクトは、対応する Commerce Server マネージャ リソースとビジネス デスク モジュールが、カタログ データを表示および変更するために使用するものです。

Commerce Server の開発者としては、これらのオブジェクトがカスタム ツールの開発に対してどのような可能性があるのかを理解することが重要です。場合によっては、これらのツールは、Web サイト開発初期の限られた期間にのみ使用されます。たとえば、カタログ データを Commerce Server に初めて取り込む際、その最も簡単な方法は、既存のいくつかのデータベースからデータを読み取り、Commerce Server カタログ オブジェクトを使ってそのデータを Commerce Server カタログ データベースに書き込む Microsoft Visual Basic プログラムを作成するという方法です。Commerce Server ビジネス デスクによって手作業でカタログ情報を入力する場合、同じ作業を実行する Visual Basic の小規模なプログラムを作成することによって、時間と手間を大幅に節約し、かつ作業を正確に行うことができます。

Commerce Server に用意されている COM オブジェクトを使用するプログラムによって、サイトの開発と保守をより効果的かつ効率的に行うための独自のカスタム ツールを構築できます。

汎用的なサード パーティ ツールは、開発とマーケティングを進めるうえで、各種の Commerce Server Web サイトに十分役立つことにも注意することが重要です。

Commerce Server に用意されている COM オブジェクトの詳細については、次のトピックを参照してください。

  • Commerce Server オブジェクトを使ってプログラミングする

  • オブジェクト リファレンス


SDK ロード マップ

Microsoft Commerce Server 2000 Software Development Kit (SDK) には、開発者が Commerce Server によるプログラミングを始めるときに役立つ、幅広いサンプルとツールが含まれています。Commerce Server 2000 SDK を構成するすべてのファイルは、"Microsoft Commerce Server" フォルダの下にある "SDK" というフォルダにインストールされます。このトピックでは、この SDK フォルダの構造と内容について説明します。

注

  • Commerce Server 2000 SDK にサンプルを作成するには、プラットフォーム SDK の次のコンポーネントを含める必要があります (プラットフォーム SDK インストール プログラムの [カスタム インストール] 画面で、少なくとも次のオプションを選択します)。

    環境設定オプション (すべて)

    構築環境

    ベース サービス (すべて)

    コンポーネント サービス

    COM

    データ アクセス サービス

    OLE DB

    SQL Server

    管理サービス

    Microsoft 管理コンソール

    最低限必要な構築ツール

    ネットワークおよびディレクトリ サービス

    Active Directory Services Interface

    Web サービス

    Microsoft Internet Explorer

    Microsoft Internet Information Server

    Win32 API

    同時に次のデバッグ ツールもインストールする必要があります。

    デバッグ ツール

    WinDbg

    OEM サポート ツール

    UserDump

    詳細については、「デバッグ ツール」を参照してください。

  • プラットフォーム SDK のインストールに加えて、システム インクルード パスを更新して Commerce Server 2000 SDK インクルード フォルダを含め、また、Microsoft Visual C++ ディレクトリ オプションを更新して Commerce Server 2000 SDK インクルード フォルダを含める必要もあります。

    プラットフォーム SDK のインストールによって、次のように必要なパス設定がユーザー INCLUDE および LIB 環境変数に追加されたことに注意してください。

    • INCLUDE : <プラットフォーム SDK フォルダ>\Include

    • INCLUDE : <プラットフォーム SDK フォルダ>\Include\ATL30

    • LIB : <プラットフォーム SDK フォルダ>\Lib

    ユーザー INCLUDE 環境変数を更新するには

    1. [マイ コンピュータ] を右クリックして、[プロパティ] を選択します。

    2. [システムのプロパティ] ダイアログ ボックスの [詳細] タブをクリックします。

    3. [詳細] プロパティ ページの [環境変数] をクリックします。

    4. [環境変数] ダイアログ ボックスの [ユーザー環境変数 <ユーザー名>] ボックスから変数 [INCLUDE] を選択して、[編集] をクリックします。

    5. [ユーザー環境変数の編集] ダイアログ ボックスで、Commerce Server 2000 SDK インクルード ディレクトリへのパスを [変数の値] ボックスの値に追加します。次に例を示します。

      C:\Program Files\Microsoft Commerce Server\SDK\Include\

    6. [OK] を 3 回クリックして、3 つのダイアログ ボックスすべてを終了します。

    Microsoft Visual C++ を更新するには

    1. [Microsoft Visual C++] を開きます。

    2. [ツール] メニューの [オプション] をクリックします。

    3. [オプション] ダイアログ ボックスで [ディレクトリ] タブを選択します。

    4. [表示するディレクトリ] ボックスの [インクルード ファイル] オプションが選択されていることを確認します。

    5. [新規] をクリックして、Commerce Server 2000 SDK インクルード ディレクトリへのパスを入力します。次に例を示します。

      C:\Program Files\Microsoft Commerce Server\SDK\Include

    6. [OK] をクリックします。

SDK フォルダには、次のように 3 つの最上位フォルダがあります。

  • Include フォルダ

  • Samples フォルダ

  • Tools フォルダ

Include フォルダ

Include フォルダには、多数の C++ ヘッダ ファイル (.h 拡張子) とインターフェイス定義言語ファイル (.idl 拡張子) があります。通常、これらのファイルはそれぞれ、C++ から Commerce Server COM オブジェクトを使用するときと、インターフェイス定義の詳細を調べるときに使います。

ヘッダ ファイルの多くは、対応するオブジェクトの参照トピックの C++ バージョンで参照されます。

Samples フォルダ

Samples フォルダには、多数のさまざまなサンプルが、次のサブフォルダに分かれて含まれています。

  • Business Analytics フォルダ

  • Management フォルダ

  • Marketing フォルダ

  • Order Processing フォルダ

  • Privacy フォルダ

  • Sitelets フォルダ

  • SolutionSites フォルダ

Business Analytics フォルダ

Business Analytics フォルダには、次のサンプルが含まれています。

CreateSchemaObject.vbs

このサンプルは、OLE DB Provider for Commerce Server を使って、新しいクラスとクラス メンバを追加し、それを既存のクラスに関連付けることによって、ビジネス分析システムの論理スキーマを変更する方法を示します。

このスクリプトは Scripts サブフォルダにあります。

サンプルを実行するには、スクリプトの 135 行目の接続文字列を各環境に合わせて変更し、次の行のコメントを外します。

    140 'TestBindToCls cn, "visit"  'visit is valid in DW
    142 'TestBindToMem cn , "visitNum"
    145 'TestCreateClsMem strSQLConn, strURL

DumpFacts.vbs

このサンプルは、OLE DB Provider for Commerce Server を使って、ビジネス分析システムのファクト テーブルを読み取る方法を示します。

このスクリプトは Scripts サブフォルダにあります。

Analysis - New dynamic OLAP report script.sql

Analysis - New dynamic SQL report script.sql

Analysis - New static OLAP report script.sql

Analysis - New static SQL report script.sql

これらのサンプル SQL スクリプトは、ビジネス分析システムのさまざまなタイプの新しいレポートを作成する方法を示しています。

これらの SQL スクリプトは Scripts サブフォルダにあります。

Schema Tool

このサンプルのファイルは、Commerce Server データ ウェアハウスのクラス、クラス プロパティ、データ メンバ、およびクラスの関連付けを、論理スキーマで定義されているとおりに表示するためのスキーマ ブラウザを提供する Microsoft Visual Basic プロジェクトを構成しています。このサンプルは、OLE DB Provider for Commerce Server を使って、データ ウェアハウスの論理スキーマにアクセスする方法を示しています。

Management フォルダ

Management フォルダには、次のサンプルが含まれています。

BizDesk

このサンプルのファイルは、新しい Commerce Server ビジネス デスク モジュールを開発するための実用コード ベースを提供します。このコード ベースは、XML データ アイランドの使い方を示し、技術者以外の人が Commerce Server Web サイトを管理できるように、充実した Web ベースのユーザー インターフェイスを作成するためのビジネス デスク HTML コンポーネント (HTC) を組み込んでいます。このサンプルには、編集ページ HTC の使い方を示す Edit ページ、一覧ページ HTC の使い方を示す List ページ、およびビジネス デスク ユーザー インターフェイスからの要求を処理するための応答ページがあります。

ビジネス デスク モジュールの構築方法の詳細については、「ビジネス デスク モジュールを構築する」を参照してください。

BizDesk Installer

このサンプルのファイルは、新しいビジネス デスク モジュールの設定情報を既存のビジネス デスク インストール環境に追加する処理を自動化するためのメカニズム提供する Component Object Model (COM) の C++ ソース コードを構成しています。このオブジェクトが実装するインターフェイスの詳細については、「モジュール インストールの自動化」を参照してください。

PuP Resource

このサンプルのファイルは、IPuP インターフェイスを実装する COM オブジェクトの Microsoft Visual Basic ソース コードを構成しています。この実装は、GenericPuP オブジェクトによって実装されるものと基本的に同じであり、1 つの SQL Server データベースの指定されたテーブル セットをパッケージ化するために使うことができます。IPuP インターフェイスと GenericPuP オブジェクトの詳細については、「サイト パッケージャ インターフェイス」と「GenericPuP オブジェクトを使う」をそれぞれ参照してください。

ResourceConfig

このサンプルのファイルは、1 つの設定プロパティを持つカスタム リソースについての設定情報を管理データベースのテーブルに追加する方法を示す Microsoft Visual Basic ソース コードを構成しています。カスタム リソースの統合の詳細については、「カスタム リソースを統合する」を参照してください。

Site Status

このサンプルのファイルは、Commerce Server マネージャ インターフェイスを拡張し、それがインストールされている Commerce Server アプリケーションを開いたり閉じたりする機能を提供する Microsoft 管理コンソール (MMC) の拡張スナップインの C++ ソース コードを構成しています。

サイト リソースとしてインストールされた拡張スナップインは、インストール先のサイトの名前を取得してから、そのサイトにインストールされているすべてのアプリケーションの名前を取得します。サイトを閉じる場合は、そのサイトのホストである各 Web サーバー上のインターネット インフォメーション サービス (IIS) が照会されて、RedirectUrl キーがメタベースに設定され、サイトが閉じたことを報告するページにすべての受信要求がリダイレクトされます。

このサンプルを既存のサイトにインストールするには、InstallSiteStatus.vbs スクリプトをコマンド ラインから実行します。このとき、サイトの名前を指定します。次に例を示します。

    C:\>cscript InstallSiteStatus.vbs Retail

Widgets

このサンプルのファイルは、ビジネス デスク フレームワークに用意されている各種 HTML コンポーネント (HTC) の表示ページを構成しています。

IIS 仮想ディレクトリを Widgets フォルダに設定すると、ビジネス デスクで使われるすべての HTML コンポーネント (HTC) のサンプル ページを表示できます。

Marketing フォルダ

Marketing フォルダには、次のサンプルが含まれています。

dbscripts

このサンプルのファイルは、次のように、さまざまなカテゴリのテーブルとそれらに関連するオブジェクトを削除するための SQL スクリプトを提供します。

campaigns-drop.sql : キャンペーン リソースのすべてのテーブルとそれらに関連するオブジェクトを削除します。

expression-store-drop.sql : 式ストアのすべてのテーブルとそれらに関連するオブジェクトを削除します。通常、式ストアはプロファイル ストアと同じデータベースにあります。

listmanager-drop.sql : リスト マネージャ データベース内のすべてのテーブルとそれらに関連するオブジェクトを削除します。通常、リスト マネージャ データベースはキャンペーン リソースで使われるのと同じデータベースにあります。

debug

このサンプルのファイルは、CSF キャッシュの内容をダンプし、特定のコンテンツ要求に適用されるスコアリング論理を追跡するために Active Server Pages (ASP) ファイルに組み込める ASP のセットを提供します。CSF スコア ヘッドラインのサンプルでは、これらのデバッグ ユーティリティの使い方を示します。

このディレクトリには、DumpContentList.asp と TraceScores.asp という 2 つの ASP ファイルがあります。

Headlines

このサンプルのファイルは、コンテンツ選択フレームワーク (CSF) のキャッシュ読み込みとスコアリング用カスタム コンポーネントを使って、対象化システムを拡張する方法を示します。このサンプルは、ヘッドラインの期間および最もよく表示されるヘッドラインに基づいて、各サイトのユーザーにヘッドラインを対象化する方法を示します。また、このサンプルは、Microsoft Visual C++ と Microsoft Visual Basic の両方を使った対象化システムとの統合を示します。

詳しい使用方法については、Readme.txt ファイルを参照してください。

Order Processing フォルダ

Order Processing フォルダには、次のサンプルが含まれています。

MinMaxShip

このサンプルのファイルは、3 つのサブフォルダに分かれます。ATL、BizDesk、および VB です。ATL および VB フォルダには、MinMaxShip コンポーネントと呼ばれる、同じパイプライン コンポーネントの並列実装を構成するファイルが含まれています。ATL フォルダには C++ ATL (Active Template Library) 実装用のソース コードが含まれ、VB フォルダには Microsoft Visual Basic 実装用のソース コードが含まれています。

MinMaxShip パイプライン コンポーネントは、Commerce Server の新しい発送アーキテクチャを示すと共に、注文処理パイプラインに新しいパイプライン コンポーネントを追加する方法を示します。

BizDesk フォルダには、カスタム Commerce Server ビジネス デスク モジュールが用意されています。このモジュールを使うと、MinMaxShip サンプルを簡単に既存の Commerce Server Web サイトに追加して、注文処理パイプラインの送料ステージで使用できます。

MinMaxShip サンプルのどちらかを実行するには、まず http://www.microsoft.com/japan/commerceserver/productinfo/solsites.htm からダウンロードできるソリューション サイトの 1 つをインストールする必要があります。これらのサイトの 1 つをインストールした後、ビジネス デスク ファイルが格納されているディレクトリに移動し、以下の手順を実施します。

MinMaxShip\BizDesk フォルダから MinMax_edit.asp ファイルを、対応する Shipping フォルダにコピーします。たとえば、C:\InetPub\wwwroot\RetailBizDesk\Shipping にコピーします。

MinMaxShip\BizDesk フォルダから shipping_methods.xml ファイルを Config フォルダにコピーします。たとえば、C:\InetPub\wwwroot\RetailBizDesk\Config にコピーします。

ビジネス デスクの送付方法モジュールを更新した後、それを使って "MinMaxShip" という新しい送付方法を構成できます。

MinMaxShip サンプルの詳細については、「MinMaxShip サンプル パイプライン コンポーネント」を参照してください。

Privacy フォルダ

Privacy フォルダには、次のサンプルが含まれています。

DeleteDetailedData.vbs

このサンプルは、OLE DB Provider for Commerce Server を使って、特定のユーザーに関する詳細データをデータ ウェアハウスから削除する方法を示しています。

DisconnectDetailedData.vbs

このサンプルは、OLE DB Provider for Commerce Server を使って、特定のユーザーに関する詳細データ自体を削除することなく、その関連付けを解除する方法を示しています。

Sitelets フォルダ

Sitelets は、Commerce Server の他の機能から分離した特定の Commerce Server 機能の使い方を示す小規模な Web サイトです。これを使うと、その機能を実装するために必要なコードに、より簡単に焦点を合わせることができます。

Sitelets フォルダには、次のサイトレットが含まれています。

広告

プロファイル システムを対象化システムと併用し、対象化された広告を表示する方法を示します。

オークション

Auction オブジェクトを使って Winning Bid オークションを実装する方法を示します。オークション管理用のカスタム ビジネス デスク モジュールが含まれます。

カタログ

商品カタログ システムを使い、電子商取引サイトにカタログの参照および検索機能を提供する方法を示します。

割引

Web サイトでの注文処理中に対象化された割引を提供する方法を示します。

注文

Commerce Server で Web サイト上の受注プロセスを実装する方法を示します。

パスポート

Passport シングル サイン イン (SSI) 機能をプロファイル システムに統合する方法を示します。この機能を使うと、サイト運営者と顧客が Passport SSI 認証サービスを利用できると同時に、ユーザーの対象化、ユーザー データの管理などにもプロファイル システムを使うことができます。

プロファイル

プロファイル システムを使い、電子商取引サイトのユーザーの登録と認証を行う方法を示します。

各サイトレット フォルダには、アンパックして必要なサイトレットをインストールできる、Commerce Server サイト パッケージャ ファイル (.pup 拡張子) が含まれています。各フォルダには、対応する Commerce Server サイト パッケージャ ファイルにある Web サイト ファイルを含む "source" サブフォルダもあります。

SolutionSites フォルダ

SolutionSites フォルダには、次のファイルが含まれています。

AppConsts.idl

ソリューション サイトで使われる定数を提供します。

Tools フォルダ

Tools フォルダには、多数のさまざまなツールが、次のサブフォルダに分かれて含まれています。

  • ATL Pipe Wizard フォルダ

  • MembershipMigration フォルダ

  • Migration フォルダ

  • Registration Tool フォルダ

  • VB Pipe Wizard フォルダ

ATL Pipe Wizard フォルダ

このフォルダ内のファイルは、Microsoft Visual C++ 6.0 のインストール環境に新しいウィザードをインストールするためのツールのソース ファイルを構成しています。このウィザードを使用すると、完全に機能するパイプライン コンポーネントを実装するために必要な関数のプロトタイプを含む、オブジェクト定義および実装ファイルを作成することによって、Commerce Server パイプライン コンポーネントの作成を自動化できます。

さらに、このウィザードは、パイプライン コンポーネントのプロパティ ページを作成します。ユーザーがコンポーネントのプロパティを設定できるように、このプロパティ ページにコントロールを追加できます。

ATL パイプライン コンポーネント ウィザードを作成してからインストールする必要があります。

ATL パイプライン コンポーネント ウィザードの使い方の詳細については、「Atcive Template Library (ATL) を使ってパイプライン コンポーネントを作成する」を参照してください。

MembershipMigration フォルダ

このフォルダ内のファイルは、Site Server 3.0 の Membership Directory から Commerce Server 2000 ユーザー プロファイル ストアにユーザー プロファイルを移行するためのツールのソース ファイルを構成しています。

Microsoft Site Server 3.0 Commerce Edition Web サイトから Commerce Server 2000 Web サイトにユーザー プロファイルを移行する方法の詳細については、「Membership Directory を移行する」を参照してください。

Migration フォルダ

Ad Server サブフォルダ内の実行可能ファイルは、Site Server 3.0 Ad Server から Commerce Server 2000 コンテンツ選択フレームワークにキャンペーンを移行するためのツールです。

このツールをコマンド ラインで実行します。このとき、次のパラメータを指定します。

1: /cs30:"Connection string to the Site Server 3.0 Commerce Edition AdServer database"
2: /cs2000:"Connection string to the Commerce Server 2000 Campaign database"
3: /exprstore:"Connection string to the Commerce Server 2000 Expression store database"
4: [/silent]   (Note that this parameter is optional)

次に例を示します。

adservermigration.exe \
/cs30:"Provider=SQLOLEDB;Data Source=Commerce30servername;Initial Catalog=Commerce30DatabaseName;User ID=SA;Password=SQLpassword" \
/cs2000:"Provider=SQLOLEDB;Data Source=Commerce2000servername;Initial Catalog=MarketingSystemDatabaseName;User ID=SA;Password=SQLpassword" \
/exprstore:"Provider=SQLOLEDB;Data Source=Commerce2000servername;Initial Catalog=ExpressionStoreDatabaseName;User ID=SA;Password=SQLPassword"

Registration Tool フォルダ

このフォルダ内のファイルは、パイプライン コンポーネントをステージの関連性について登録するのに役立つツールのソース ファイルを構成しています。これにより、このツールを実行するコンピュータにパイプライン コンポーネントを登録することができ、また、データをレジストリ スクリプト (.reg 拡張子) ファイルにエクスポートして、ほかのサーバーに配置することができます。

パイプライン コンポーネントの登録ツールの詳細については、「パイプライン コンポーネント登録ツールを使う」を参照してください。

VB Pipe Wizard フォルダ

このフォルダ内のファイルは、Microsoft Visual Basic 6.0 のインストール環境に新しいウィザードをインストールするためのツールのソース ファイルを構成しています。このウィザードを使用すると、完全に機能するパイプライン コンポーネントを実装するために必要な関数のプロトタイプを含む、オブジェクト定義および実装ファイルを作成することによって、Commerce Server パイプライン コンポーネントの作成を自動化できます。

さらに、このウィザードは、パイプライン コンポーネントのプロパティ ページを作成します。ユーザーがコンポーネントのプロパティを設定できるように、このプロパティ ページにコントロールを追加できます。

Visual Basic パイプライン コンポーネント ウィザードを作成してからインストールする必要があります。

作成した PipelineCompWizard.dll は登録する必要があります。この DLL を登録すると、新しいプロジェクト項目が Visual Basic インストール環境にインストールされます。DLL を登録したら、Visual Basic を起動して [新規作成] または [プロジェクト] を選択します。VB パイプライン コンポーネント ウィザードは、使用可能なプロジェクトのリストに表示されます。

Visual Basic パイプライン コンポーネント ウィザードの詳細については、「Visual Basic を使ってパイプライン コンポーネントを作成する」を参照してください。


プログラマーズ リファレンス ロード マップ

Commerce Server 2000 ヘルプの「プログラマーズ リファレンス」というタイトルのトピックには、幅広いリファレンス資料が含まれています。このリファレンス マニュアルには、次のトピックが含まれています。

  • オブジェクト リファレンス : Commerce Server で提供されている Component Object Model (COM) オブジェクト、およびそのプロパティとメソッドに関するリファレンス ページです。

  • インターフェイス リファレンス : Commence Server のコンポーネントによってオブジェクトを呼び出せるようにするために実装する COM インターフェイスに関するリファレンス ページです。これらのページには、独自のパイプライン コンポーネントを作成するために実装するパイプライン インターフェイスと Commerce Server サイト パッケージャ インターフェイスが含まれています。

  • パイプライン コンポーネント リファレンス : Commerce Server で用意されているパイプライン コンポーネントに関するリファレンス ページです。

  • OLE DB Provider for Commerce Server : Commerce Server 内のプロファイル システムとデータ ウェアハウスへのアクセスを提供する、OLE DB Provider for Commerce Server に関するリファレンス マニュアルです。

  • ビジネス デスク リファレンス : Commerce Server ビジネス デスクのリファレンス ページです。特に、これらのリファレンス ページでは、HTML コンポーネント (HTC) のイベント、プロパティ、およびメソッドの詳細について説明します。また、ビジネス デスク フレームワークで提供される定数、グローバル変数、およびユーティリティ ルーチンについても詳細に説明します。

  • XML のリファレンス : Commerce Server 全体で使われる各種 Extensible Markup Language (XML) 文書の構造に関するリファレンス資料です。

  • スキーマ リファレンス : スキーマについての十分な知識が重要となる、Commerce Server の主要な領域で使われるデータベース スキーマに関するリファレンス資料です。

  • データベース テーブル リファレンス : Commerce Server データベースと、それらに含まれるテーブルに関する情報です。この情報は、SQL レプリケーションを確立する際に役立ちます。

  • スタイル シート リファレンス : ビジネス デスクで使われるカスタマイズ可能なスタイル シート (CSS) に関する情報です。


Commerce Server オブジェクトを使ってプログラミングする

Microsoft Commerce Server 2000 で提供されている Component Object Model (COM) オブジェクトは、その機能ごとに、次に示すカテゴリに分けることができます。各機能カテゴリごとに、概念の説明とサンプル コードを用意しています。また、各 COM オブジェクトについて、Microsoft Visual Basic からアクセスする場合、および C++ からアクセスする場合のリファレンス ページを提供しています。

次の表は、各カテゴリの概念の説明と、各 COM オブジェクトのリファレンス ページへのリンクを示しています。

機能カテゴリ | 説明
下位互換性オブジェクト | Site Server 3.0 Commerce Edition との互換性を維持するために使われるオブジェクトです。 オブジェクト (および参照ページへのリンク) : AdminSite (VB/C++)、StandardSManager (VB/C++)、Page (VB/C++)
ビジネス プロセス オブジェクト | 注文、配送、オークションなどの一般的なビジネス プロセスに使うオブジェクトです。 オブジェクト (および参照ページへのリンク) : Auction (VB/C++)、OrderForm (VB/C++)、OrderGroup (VB/C++)、OrderGroupManager (VB/C++)、Shipping (VB/C++)、ShippingMethodManager (VB/C++)、SimpleFindResultInfo (VB/C++)、SimpleFindSearchInfo (VB/C++)
構成オブジェクト | Commerce Server Web サイトの構成を管理するために使うオブジェクトです。 オブジェクト (および参照ページへのリンク) : AdminWebServer (VB/C++)、AppConfig (VB/C++)、GlobalConfig (VB/C++)、SiteConfig (VB/C++)、SiteConfigReadOnly (VB/C++)
コンテンツ選択オブジェクト | 表示する動的コンテンツを選択するために使うオブジェクトです。 オブジェクト (および参照ページへのリンク) : ContentList (VB/C++)、ContentListFactory (VB/C++)、ContentListSchema (VB/C++)、ContentSelector (VB/C++)、RowCollection (VB/C++)
表示オブジェクト | Web ページに表示するデータに対して、書式を設定するために使うオブジェクトです。 オブジェクト (および参照ページへのリンク) : AppFrameWork (VB/C++)、DataFunctions (VB/C++)、EuroDisplay (VB/C++)、MessageManager (VB/C++)
式に関するオブジェクト | 式の作成、格納、および評価に使用するオブジェクトです。 オブジェクト (および参照ページへのリンク) : ExpressionEval (VB/C++)、ExpressionStore (VB/C++)、ExprEvalContext (VB/C++)、ExprFltrQueryBldr (VB/C++)
汎用オブジェクト | Commerce Server Web サイトで広く使われる、汎用オブジェクトです。 オブジェクト (および参照ページへのリンク) : AdminEventLog (VB/C++)、AdminFiles (VB/C++)、CacheManager (VB/C++)、DBStorage (VB/C++)、Dictionary (VB/C++)、DictionaryXMLTransforms (VB/C++)、GenID (VB/C++)、LRUCache (VB/C++)、SimpleList (VB/C++)
リスト管理オブジェクト | リストの管理に関係する Commerce Server オブジェクトです。 オブジェクト (および参照ページへのリンク) : ListManager (VB/C++)
パイプライン オブジェクト | Commerce Server パイプラインのコンテキスト内で、1 つ以上のパイプライン コンポーネントを実行するために使うオブジェクトです。 オブジェクト (および参照ページへのリンク) : MicroPipe (VB/C++)、MtsPipeline (VB/C++)、MtsTxPipeline (VB/C++)、OrderPipeline (VB/C++)、PooledPipeline (VB/C++)、PooledTxPipeline (VB/C++)
予測オブジェクト | 予測に使用するオブジェクトです。 オブジェクト (および参照ページへのリンク) : PredictorClient (VB/C++)、PredictorServiceAdmin (VB/C++)、PredictorServiceSiteAdmin (VB/C++)、PredModelBuilder (VB/C++)
商品カタログ オブジェクト | 商品カタログの管理に使用するオブジェクトです。 オブジェクト (および参照ページへのリンク) : CatalogManager (VB/C++)、CatalogSets (VB/C++)、CatalogToVendorAssociation (VB/C++)、Category (VB/C++)、Product (VB/C++)、ProductCatalog (VB/C++)
プロファイル オブジェクト | プロファイルの管理に使用するオブジェクトです。 オブジェクト (および参照ページへのリンク) : ProfileObject (VB/C++)、ProfileService (VB/C++)
レポート オブジェクト (詳細については、リファレンス ページを直接参照してください) | レポートの作成に使用するオブジェクトです。 オブジェクト (および参照ページへのリンク) : AsyncRpt (VB/C++)、ReportRenderer (VB/C++)
サイト セキュリティ オブジェクト | Commerce Server Web サイトをセキュリティで保護するために使うオブジェクトです。 オブジェクト (および参照ページへのリンク) : BizDeskSecurity (VB/C++)、AuthManager (VB/C++)


下位互換性オブジェクト

下位互換性オブジェクトは、Site Server 3.0 Commerce Edition サイトにおいて、サイト構成値にアクセスする、買物客 ID を作成および取得する、フォーム処理を簡単に行えるようにするという目的で使われます。

重要

  • これらのオブジェクトは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されたものです。Commerce Server の将来のリリースではサポートされなくなります。

ここでは、次のトピックについて説明します。

  • 下位互換プログラミングの概念 : 下位互換性オブジェクトの使用に関連する主な事項について説明します。

関連項目

AdminSite オブジェクト

StandardSManager オブジェクト

Page オブジェクト


下位互換プログラミングの概念

ここでは、下位互換性オブジェクトとして用意されているオブジェクトについて説明します。

AdminSite オブジェクト

StandardSManager オブジェクト

Page オブジェクト

AdminSite オブジェクト

このオブジェクトは、Site Server 3.0 Commerce Edition サイト構成への集中アクセスを取得し、サイトの構成とメンテナンスを行うために使います。

構成プロパティへの読み取りアクセスと書き込みアクセスを提供するほか、Site Server 3.0 Commerce Edition サイトを管理するための機能を数多く備えています。

注

  • このオブジェクトは、Commerce Server 2000 サイトに対して使うことはできません。このオブジェクトは Site Server 3.0 Commerce Edition との下位互換性を維持する目的でのみ用意されています。

関連項目

構成オブジェクト

StandardSManager オブジェクト

このオブジェクトは、買物客 ID を実行時に作成し、取得する機能を利用するために使います。

注

  • このオブジェクトは、Site Server 3.0 Commerce Edition との下位互換のためだけに含まれています。AuthManager オブジェクトによって置き換えられます。

関連項目

AuthManager オブジェクト

Page オブジェクト

このオブジェクトは、Active Server Pages (ASP) のフォームでの処理を簡素化するために使います。

Page オブジェクトのメソッドは、次のカテゴリに分けられます。

  • 書式設定に関するメソッド : Encode、Option、Check などです。これらのメソッドを使うと、HTML ページの項目の書式を簡単に設定できるほか、可能な場合にはページ内のほかの変数を実行時に評価して、HTML 項目の値を決定することができます。

  • 検証に関するメソッド : Request の処理以降に開始されます。これらのメソッドは、URL クエリ文字列から値を取得し、その値のデータ型をロケール値に基づいて変換し、それらの値が指定された範囲内にあるかどうかを検証するために使います。

詳細については、このオブジェクトのメソッドの大部分に類似した機能を持つ AuthManager オブジェクトと AppFrameWork オブジェクトに関する説明を参照してください。


ビジネス プロセス オブジェクト

ビジネス プロセス オブジェクトにより、バスケット、テンプレート、および送信された注文の管理ができます。基本的な管理機能には、注文の作成、データベースへの注文の格納、およびデータベースでの注文の検索があります｡

ここでは、次のトピックについて説明します。

  • ビジネス プロセス プログラミングに関する概念 : ビジネス プロセスにかかわるいろいろなオブジェクトを用いてのプログラミングに関連する概念について説明します｡

  • ビジネス プロセス オブジェクトのサンプル コード : ビジネス プロセス オブジェクトのサンプル コードを示します｡


ビジネス プロセス プログラミングに関する概念

ここでは、Commerce Server 2000 のビジネス プロセス オブジェクトについて説明します｡

OrderGroup オブジェクト、OrderForm オブジェクト、OrderGroupManager オブジェクト

OrderGroup オブジェクトは、Commerce Server 2000 でサイトのバスケットおよび注文情報の格納、参照、および計算を行うために使います。OrderGroupManager オブジェクトは、OrderGroup オブジェクトと連携して機能するもので、注文に対する検索操作およびそのほかの管理操作を提供します。

OrderGroup の構造

OrderGroup オブジェクトとコンポーネント オブジェクト
OrderForm
オブジェクト
LineItem
ディクショナリ
一対一
一対多
Addresses
ディクショナリ
OrderGroup
オブジェクト

OrderGroup オブジェクトは注文情報を表すもので、注文フォームをグループ化し、集計操作を行って合計を算出します｡OrderGroup オブジェクトは、1 つ以上の OrderForm オブジェクトおよび 1 つ以上の Address ディクショナリとリンクします。OrderForm オブジェクトは注文のヘッダー情報を表します。ヘッダー情報とは、合計送料、合計税額など、注文を処理するために必要なデータです。OrderForm オブジェクトは 1 つ以上の Item ディクショナリを参照します｡このディクショナリは、購入対象の特定の商品について記述しているものです。Addresses ディクショナリは、注文書の請求先住所および送付先住所の情報を表します。通常、各 OrderForm オブジェクトが billing_address_id の値を指定し、各項目が shipping_address_id の値を指定します｡

多くの場合、OrderGroup オブジェクトに含まれている OrderForm オブジェクトは 1 つだけです｡ただし、ユーザーが異なるサプライアから商品を購入できるようにする場合は、OrderGroup オブジェクトの OrderForm オブジェクトが持つ複数の機能を利用すると、ユーザーの 1 回の買い物において異なるサプライアを区別することができます。

一般に、OrderGroup オブジェクトには次のオブジェクトが作成されます｡

  • Address ディクショナリ : これらのディクショナリは、注文書の請求先および送付先の情報を表します｡

  • OrderForm オブジェクト : これらのオブジェクトは、注文フォームのヘッダー情報を表します。OrderForm オブジェクトには Items という SimpleList オブジェクトが含まれています。この Items オブジェクトには、商品情報を保持する複数の Item ディクショナリがあります。

  • Items SimpleLists : このオブジェクトには、Item ディクショナリが含まれています｡

  • Item ディクショナリ : これらのディクショナリは、注文フォーム内の商品の内容を表します。注文フォームを処理するために使う情報を表す OrderForm オブジェクトでは、Items リストから 0 個以上の Item ディクショナリを参照します｡

OrderStatus コード

OrderGroup オブジェクトは購入を行う単位を表し、固有の状態を持っています。この状態は OrderGroup.value ("order_status_code") に格納され、OrderGroup オブジェクトがバスケット (1)、保存済みの注文またはテンプレート (2)、新規注文 (4)、その他、のうちのいずれであるかを示しています。カスタムの状態コードを新たに作成するには、Commerce Server ビジネス デスクを使います。新しいコードでは、承認やキャンセルなどの OrderGroup オブジェクトの状態の値を示すことができます。これらの値の状態コードは、8、16、32 など、2 の累乗の数に設定する必要があります。定義されている Order Status コードは、次のとおりです｡

  • バスケット状態 : バスケット状態は、OrderGroup オブジェクトが、注文を送信する前の集計、確認の段階にあることを示します｡この状態コードは 1 です。

  • テンプレート状態 (保存済みの注文状態) : テンプレート状態の目的は、食料雑貨店のサイトに毎週同じ商品を注文する場合などの、繰り返しの購入を簡単に行えるようにすることです。この状態は保存済みの注文状態と同等です｡状態コードは 2 です。

  • 新規注文状態 : 新規注文状態は、通常、[注文の送信] ボタンのクリックにより注文が送信されて、その後の処理が行われていることを示します｡この状態コードは 4 です。

データベースへの保存

OrderGroup オブジェクトの Order Status コードがバスケットまたはテンプレートの場合、構造全体が BasketGroup テーブルに保存されます｡構造を 1 つのテーブルで保存すると、パフォーマンスが向上します。OrderGroup オブジェクトの Order Status コードがバスケットまたはテンプレート以外の場合は、構造は OrderGroup、OrderFormHeader、OrderFormLineItems、および OrderGroupAddresses の各テーブルに保存されます｡これらのテーブルはそれぞれ、OrderGroup オブジェクト、OrderForm オブジェクト、LineItem ディクショナリ、および Address ディクショナリを格納するために使われます。このように構造を複数のテーブルで保存すると、OrderGroupManager オブジェクトの検索能力が向上します｡

OrderGroup オブジェクトは、marshaled_data データベース列を使って、データベースの列の名前と対応しないキーを持つキーと値の組み合わせを保存します。

SavePrefix プロパティの値で始まるキー名を持つディクショナリ エントリは、データベースに保存されません。

パイプライン キーの名前には、アンダースコア (_) で始まるものが多くあります｡既定では、これはパイプライン キーがデータベースに保存されないことを意味します｡時には、これらのキーのスナップショットをとる必要があります。この場合には、プレフィックス "saved_" が使われる規則になっています。プレフィックス "saved_" を使うと、パイプライン キーを後で参照したり、SQL ステートメントまたは OrderGroupManager オブジェクトを使って検索することができます｡コピーされたキーは、必ずしも最新であるとは限りません。また、コピーされたキーをパイプライン コンポーネントで直接使わないようにしてください。


ビジネス プロセス オブジェクトのサンプル コード

ここでは、ビジネス プロセス オブジェクトの使用例を示します。ここで示すサンプル コードは Active Server Pages (ASP) として書かれています。拡張エラー チェックや、その他実際のプログラムに必要な形式は備えていません。

ここでは、次のトピックについて説明します。

  • 注文を作成するコード : 必要なオブジェクトのインスタンスの作成と初期化によって、注文を作成する方法について説明します｡

  • 注文に住所、項目情報を追加するコード : 注文に項目を作成し、その注文の内容を確認する方法について説明します｡

  • 注文をデータベースに保存するコード : 注文をテンプレート状態としてデータベースに保存する方法について説明します｡

  • 注文を検索し、項目情報を表示するコード : SimpleFindSearchInfo オブジェクトと SimpleFindResultInfo オブジェクトを使って、データベース内の注文を検索する方法について説明します。


注文を作成するコード

次の Active Server Pages (ASP) コードは、OrderForm オブジェクト、OrderGroup オブジェクト、および OrderGroupManager オブジェクトを作成します。注文に対する処理を行うには、これらのオブジェクトすべてが必要です。

  1. OrderGroupManager、OrderGroup、および OrderForm の各オブジェクトを作成します。
    Dim oOrderForm, oOrderGroup, oOGMgr, sUserID
Set oOrderForm = Server.CreateObject("Commerce.OrderForm")
Set oOrderGroup = Server.CreateObject("Commerce.OrderGroup")
Set oOGMgr = Server.CreateObject("Commerce.OrderGroupManager")
  2. OrderGroup オブジェクトと OrderGroupManager オブジェクトを初期化します｡次のサンプルでは、見やすくするために接続文字列の体裁を整えてあります。
    sUserID = "AAAABB4C-C33E-11D0-B8A0-A0C04FB616C7"

oOrderGroup.Initialize "Provider=SQLOLEDB.1;User ID=sa;Password=;
                              InitialCatalog=""Retail_commerce"";
                                            DataSource=TESTMACH2;
                                       Network Library=dbmssocn",
                                                          sUserID

oOGMgr.Initialize "Provider=SQLOLEDB.1;User ID=sa;Password=;
                         InitialCatalog=""Retail_commerce"";
                                       DataSource=TESTMACH2;
                                   Network Library=dbmssocn"


注文に住所、項目情報を追加するコード

OrderGroup オブジェクトは、1 つ以上の OrderForm オブジェクトおよび 1 つ以上の Address ディクショナリとリンクします。OrderForm オブジェクトは、Items リストから 0 個以上の Item ディクショナリを参照します｡

  1. Addresses ディクショナリ オブジェクトを作成します。
    Set oOrderForm.Addresses = Server.CreateObject("Commerce.Dictionary")
  2. 2 つの住所を作成し、注文フォームに追加します。
    Set oOrderForm.Addresses.HomeSweetHome = _
    Server.CreateObject("Commerce.Dictionary")
oOrderForm.Addresses.HomeSweetHome.ship_to_state = "WA"
oOrderForm.Addresses.HomeSweetHome.ship_to_country = "USA"

Set oOrderForm.Addresses.HomeInTheRockies = _
    Server.CreateObject("Commerce.Dictionary")
oOrderForm.Addresses.HomeInTheRockies.ship_to_state = "WY"
oOrderForm.Addresses.HomeInTheRockies.ship_to_country = "USA"
  3. 注文フォームの Items SimpleList オブジェクトを作成します。SimpleList オブジェクトに 4 つの商品ディクショナリを追加し、いくつかのディクショナリ要素に商品情報を提供します｡
    Set oOrderForm.Items = Server.CreateObject("Commerce.SimpleList")

Call oOrderForm.Items.Add( Server.CreateObject("Commerce.Dictionary"))
oOrderForm.Items(0).shipping_address_id = "test_ship_add_id1"
oOrderForm.Items(0).tax_id = "test_tax_id_string"
oOrderForm.Items(0).Value("_cy_oadjust_adjustedprice") = 100
oOrderForm.Items(0).Value("quantity") = 1

Call oOrderForm.Items.Add( Server.CreateObject("Commerce.Dictionary"))
oOrderForm.Items(1).shipping_address_id = "test_ship_add_id2"
oOrderForm.Items(1).tax_id = "test_tax_id_string2"
oOrderForm.Items(1).Value("_cy_oadjust_adjustedprice") = 200
oOrderForm.Items(1).Value("quantity") = 1

Call oOrderForm.Items.Add( Server.CreateObject("Commerce.Dictionary"))
oOrderForm.Items(2).shipping_address_id = "test_ship_add_id3"
oOrderForm.Items(2).tax_id = "test_tax_id_string3"
oOrderForm.Items(2).Value("_cy_oadjust_adjustedprice") = 100
oOrderForm.Items(2).Value("quantity") = 1

Call oOrderForm.Items.Add( Server.CreateObject("Commerce.Dictionary"))
oOrderForm.Items(3).shipping_address_id = "ship_add_id4"
oOrderForm.Items(3).tax_id = "test_tax_id_string4"
oOrderForm.Items(3).Value("_cy_oadjust_adjustedprice") = 300
oOrderForm.Items(3).Value("quantity") = 1
  4. OrderGroup オブジェクトに OrderForm オブジェクトを追加します。
    oOrderGroup.AddOrderform oOrderForm
  5. 既に作成した項目のうち、1 つの項目の内容を表示します｡
    Dim Item, itemVal
Set Item = oOrderGroup.GetItemInfo(1)
itemVal = Item.Value("_cy_oadjust_adjustedprice")
If Item.Value("_cy_oadjust_adjustedprice") <> 100 Then
    Response.Write "error in _cy_oadjust_adjustedprice"
Else
    Response.Write "correct _cy_oadjust_adjustedprice:" _
                   & itemVal & "<br>"
End If


注文をデータベースに保存するコード

注文はバスケット、注文、テンプレート、またはカスタムのいずれかの状態で保存できます。この例では、注文をテンプレート (保存済みの注文) 状態としてデータベースに保存します。OrderGroup オブジェクトは、後でほかの例でその変数を再利用できるように Nothing に設定してあります｡

このサンプル コードでは、既に注文が作成され、その注文に項目が追加されていることを前提としています。注文の作成の詳細については、「注文を作成するコード」を参照してください。注文への項目の追加の詳細については、「注文に住所、項目情報を追加するコード」を参照してください。

Dim ReqID
ReqID = oOrderGroup.SaveAsTemplate()
' Set object to Nothing in order to re-use
Set oOrderGroup = Nothing


注文を検索し、項目情報を表示するコード

注文をデータベースに保存したら、さまざまな条件を指定して、データベース内でその注文を検索することができます。次の例では、OrderGroupID が検索の基準になります。

このサンプル コードでは、「注文をデータベースに保存するコード」で示した方法で、既に注文がテンプレートとしてデータベースに保存されていることを前提としています｡次のサンプルでは、見やすくするために接続文字列の体裁を整えてあります。

  1. OrderGroup オブジェクトを作成し、初期化します｡
    Dim oOrderGroup
Set oOrderGroup = Server.CreateObject("Commerce.OrderGroup")
oOrderGroup.Initialize "Provider=SQLOLEDB.1;User ID=sa;Password=;
                             Initial Catalog=""Retail_commerce"";
                                            DataSource=TESTMACH2;
                                       Network Library=dbmssocn",
                                                          sUserID
  2. SimpleFindSearchInfo オブジェクトを作成し、既知の OrderGroupID を検索するように設定します｡
    Dim oSFSearch, sReqID
Set oSFSearch = Server.CreateObject("Commerce.SimpleFindSearchInfo")
sReqID ="754C40C6-EAA9-454C-A8AB-02789FBE0FB9"
oSFSearch.ordergroup_id = sReqID
  3. SimpleFindResultInfo オブジェクトを作成し、OrderGroup、OrderFormHeader、および OrderFormLineItems の各テーブルからデータを返すように設定します。JoinLineItemInfo プロパティを True に設定すると、返される結果に OrderFormLineItems テーブルのデータが含まれるようになります。JoinOrderFormInfo プロパティを True に設定した場合は、返される結果に OrderFormHeader テーブルのデータが含まれます｡
    Dim oSFResult
Set osfResult =Server.CreateObject("Commerce.SimpleFindResultInfo")
oSFResult.JoinLineItemInfo = True
oSFResult.JoinOrderFormInfo = True
  4. 検索結果を保持するレコードセットを作成します。
    Dim oRSResults
Set oRSResults=Server.CreateObject("ADODB.Recordset")
  5. OrderGroupManager.SimpleFind メソッドを使って検索を行います。このメソッドのパラメータは、SimpleFindSearchInfo オブジェクトおよび SimpleFindResultInfo オブジェクトです。検索の結果を画面に表示します｡
    Set oRSResults= oOGMgr.SimpleFind(oSFSearch, oSFResult)
If err.number <> 0 Then
    Response.Write "Search error"
Else
    Response.Write "Successful Search" & "<br>"
End If
  6. レコードセットの処理を繰り返し行い、OrderGroupID、および各項目に対する注文の数量を、画面に表示します｡
    While Not oRSResults.EOF
    vtDisplay = "OrderGroup ID = " & oRSResults("ordergroup_id") _
                & "<br>"
    Response.Write vtDisplay
    vtDisplay = "Quantity = " & oRSResults("quantity") _
                & "<br>" & "<br>"
    Response.Write vtDisplay
    oRSResults.MoveNext
WEnd


構成オブジェクト

構成オブジェクトは、サイトの作成、リソースの作成、リソースのインポートとエクスポート、サイト リソースとグローバル リソースについての構成設定の操作、および Web サイトのプロパティの取得といった、さまざまな機能を実行します。

ここでは、次のトピックについて説明します。

  • 構成プログラミングに関する概念 : 構成オブジェクトの使用に関連する主な事項について説明します。

  • 構成オブジェクトのサンプル コード : 構成オブジェクトの使用方法について詳細な例を示します。

関連項目

AppConfig オブジェクト

GlobalConfig オブジェクト

SiteConfig オブジェクト

SiteConfigReadOnly オブジェクト

AdminWebServer オブジェクト


構成プログラミングに関する概念

次の各トピックでは、Commerce Server の構成オブジェクトとその使用方法について説明します。

AppConfig オブジェクト

GlobalConfig オブジェクト

SiteConfig オブジェクトと SiteConfigReadOnly オブジェクト

AdminWebServer オブジェクト

AppConfig オブジェクト

AppConfig オブジェクトの最も重要な機能は、サイト構成プロパティ (i_FormLoginTimeOut、i_SitePrivacyOptions、さまざまなデータベース接続文字列など) を取得することです。この機能は、AppConfig オブジェクトの GetOptionsDictionary メソッドによって実行されます。ただし、このメソッドを使う前に AppConfig オブジェクトを初期化する必要があります。

GetOptionsDictionary メソッドが取得するプロパティの多くは、Commerce Server マネージャを使って Microsoft 管理コンソール (MMC) で表示できます。Commerce Server マネージャでは、サイトのサイト リソース フォルダにあるアプリケーション既定の構成ノードに現在の設定値が表示されます。

次の表は、AppConfig オブジェクトの GetOptionsDictionary メソッドで返されるディクショナリ内のキー名の一覧です。これらのキー名が Commerce Server マネージャのアプリケーション既定の構成ノードにマップされます。

プログラム上の定義名 | Commerce Server マネージャ アプリケーション既定の構成 のマッピング
f_AltCurrencyConversionRate | [通貨 : 代替通貨の変換レート]
i_AddItemRedirectOptions | [品目の追加リダイレクト オプション]
i_AddressBookOptions | [アドレス帳オプション]
i_AltCurrencyLocale | [通貨 : 代替通貨のロケール]
i_AltCurrencyOptions | [通貨 : 代替通貨オプション]
i_BaseCurrencyLocale | [通貨 : 基本通貨のロケール]
i_BillingOptions | [支払いオプション]
i_BizTalkOptions | [BizTalk オプション]
i_CookiePathCorrectionOptions | [Cookie パス訂正オプション]
i_CurrencyDisplayOrderOptions | [通貨 : 通貨の表示順序オプション]
i_DelegatedAdminOptions | [代理管理者オプション]
i_FormLoginOptions | [フォーム ログイン オプション]
i_FormLoginTimeOut | [認証マネージャの認証チケットのタイムアウト]
i_HostNameCorrectionOptions | [ホスト名訂正オプション]
i_PaymentOptions | [支払いオプション]
i_SiteDefaultLocale | [サイト既定のロケール]
i_SitePrivacyOptions | [サイト プライバシ オプション]
i_SiteRegistrationOptions | [サイト登録オプション]
i_SiteTicketOptions | [サイト チケット オプション]
s_AltCurrencySymbol | [通貨 : 代替通貨記号]
s_BaseCurrencySymbol | [通貨 : 基本通貨記号]
S_BizTalkCatalogDocType | [BizTalk カタログの形式]
S_BizTalkOrderDocType | [BizTalk 注文書の形式]
S_BizTalkSourceQualifierID | [BizTalk 送信元組織の修飾子]
s_BizTalkSourceQualifierValue | [BizTalk 送信元組織の修飾子の値]
s_BizTalkSubmittypeQueue | [BizTalk 送信形式]
s_PageEncodingCharset | [ページ エンコーディング文字セット]
s_SMTPServerName | [SMTP サーバー名]
s_WeightMeasure | [重量測定単位]
s_BizTalkConnString | BizTalk Interchange Manager データベース

次の表は、AppConfig.GetOptionsDictionary メソッドで返されるディクショナリ内のキーの一覧です。これらのキーは、Commerce Server マネージャのアプリケーション既定の構成ノードにはマップされません。

プログラム上の定義名 | 値または説明
s_CommerceProviderConnectionString | ビジネス データ サービス : s_CommerceProviderConnectionString
s_ProfileServiceConnectionString | ビジネス データ サービス : s_ProfileServiceConnectionString
s_CatalogConnectionString | 商品カタログ : connstr_db_Catalog
s_TransactionConfigConnectionString | トランザクション構成 : connstr_db_TransactionConfig
s_TransactionsConnectionString | トランザクション : connstr_db_Transactions
s_BizDataStoreConnectionString | ビジネス データ サービス : s_BizDataStoreConnectionString
s_CampaignsConnectionString | キャンペーン : connstr_db_Campaigns
i_IsFullTextSearchInstalled | SQL Server でフルテキスト検索が有効になっているかどうかを示します。
s_SiteName | サイト名
s_NonSecureHostname | この値は、Global.asa ファイル内でアプリケーションの保護なしホスト名に設定されます。
s_SecureHostname | この値は、Global.asa ファイル内でアプリケーションの保護付きホスト名に設定されます。

GlobalConfig オブジェクト

GlobalConfig オブジェクトには、2 つのグループのメソッドがあります。第 1 のグループには、MakeArrayFromSimpleList メソッドなどのメソッドが含まれます。それぞれの機能はメソッドの名前のとおりであり、ここでは説明しません。これらのメソッドの詳細については、「GlobalConfig オブジェクト」を参照してください。第 2 グループのメソッドは、グローバル レベルでのサイトの作成と構成データの操作に使います。

SiteConfig オブジェクトと SiteConfigReadOnly オブジェクト

SiteConfig オブジェクトには、2 つのグループのメソッドがあります。第 1 のグループには、MakeArrayFromString メソッドなどのメソッドが含まれます。それぞれの機能はメソッドの名前のとおりであり、ここでは説明しません。これらのメソッドの詳細については、「SiteConfig オブジェクト」を参照してください。第 2 グループのメソッドは、サイト レベルのリソースの作成、サイト レベルでの構成データの操作、およびサイト レベルのリソースのインポートとエクスポートに使います。

SiteConfigReadOnly オブジェクトを使うと、SiteConfig オブジェクトを使う場合よりも多くの構成データにアクセスすることができます。SiteConfigReadOnly オブジェクトを使う場合、リソースへの参照にアクセスすると、グループ リソースの値が返されます。一方、SiteConfig オブジェクトはリソースの名前への参照だけを返します。

次の表は、リソースを作成する場合に SiteConfig オブジェクトの CreateComponentConfig メソッドで使われるスキーマ クラス名の一覧です。

管理データベース クラス名 | コード内のリソースの参照に使われるリソース名
MSCS_Catalog | 商品カタログ
MSCS_AppConfigDefault | アプリケーション既定の構成
MSCS_TransactionConfig | トランザクションの構成
MSCS_Transactions | トランザクション
MSCS_Campaigns | キャンペーン
MSCS_AuthManager | CS 認証のサイト
MSCS_DirectMailer | ダイレクト メーラー
MSCS_Predictor | 予測
MSCS_Datawarehouse_Group | グローバル データ ウェアハウス
MSCS_Datawarehouse_Site | サイト データ ウェアハウス
MSCS_BizDataStore | プロファイル リソース
MSCS_Address | IIS アプリケーション (Retail または RetailBizDesk など)
MSCS_UPMDtsTask | プロファイル システムの DTS タスク 情報

AdminWebServer オブジェクト

AdminWebServer オブジェクトは、サーバー上の Web サイトの列挙と、それらのサイトのプロパティの表示に使います。

インターネット インフォメーション サービス (IIS) のメタベースにアクセスする Active Server Page (ASP) スクリプトは、IIS を実行しているコンピュータ上の管理者特権を持っていなければなりません。これらのスクリプトをリモート コンピュータから実行する場合は、Microsoft 暗号化認証などの、セキュリティが設定された接続を介して行う必要があります。管理作業のために作成した .asp ファイル用にサーバーとディレクトリを作成し、そのサーバーとディレクトリのディレクトリ セキュリティ認証方法を "Microsoft 暗号化認証" に設定することをお勧めします。


構成オブジェクトのサンプル コード

ここでは、構成オブジェクトの詳しい使用例を示します。

ここでは、次のトピックについて説明します。

  • 構成値をダンプするコード : AppConfig オブジェクトを使ってサイトの構成値を取得する方法について説明します。

  • サイトを作成するコード : サイトを作成する方法について説明します。

  • グローバル リソースを作成および操作するコード : グローバル リソースを作成および操作する方法について説明します。

  • サイト レベルのリソースを作成および操作するコード : サイト レベルのリソースを作成および操作する方法について説明します。

  • リソースをエクスポートするコード : リソースをエクスポートする方法について説明します。

  • リソースをインポートするコード : リソースをインポートする方法について説明します。

  • Web サイトのプロパティを取得するコード : サーバー側にあるファイルの内容を読み取る方法とその内容をブラウザに表示させる方法について説明します。


構成値をダンプするコード

この例では、AppConfig オブジェクトのインスタンスを作成してから、そのインスタンスをインストール済みのサイトの名前 (この場合は "Retail") に初期化します。GetOptionsDictionary メソッドを呼び出して、ディクショナリ内のキーと値の組み合わせを Web ページに書き込みます。

次に ASP のサンプル コードを示します。

  1. AppConfig オブジェクトのインスタンスを作成し、そのインスタンスをインストール済みのサイトの名前に初期化します。この例では、"Retail" というサイトが既に存在しています。
    Dim MSCSAppConfig
Set MSCSAppConfig = Server.CreateObject("Commerce.AppConfig")
MSCSAppConfig.Initialize("Retail")
  2. GetOptionsDictionary メソッドの戻り値を保持するディクショナリ オブジェクトを作成し、そのディクショナリの内容を Web ページにダンプします。
    Dim dConfig
set dConfig = MSCSAppConfig.GetOptionsDictionary("")
For Each sKey in dictConfig
    Response.Write sKey & " = " & dConfig.Value(sKey) & "<br>"
Next


サイトを作成するコード

この例では、GlobalConfig オブジェクトのインスタンスを作成してから、そのインスタンスを初期化します。"NewSite" というアプリケーションを作成し、保存します。

次の Visual Basic コードを使って、サンプルを作成します。

  1. GlobalConfig を作成し、初期化します。
    Dim oGlobConfig
Set oGlobConfig = CreateObject("Commerce.GlobalConfig")
oGlobConfig.Initialize

  2. 新しいアプリケーションを作成します。CreateSiteConfig メソッドは "NewSite" というサイトを作成し、サイトの構成設定を格納した SiteConfig オブジェクトを返します。サイトを作成したら、構成設定を保存します。

    Dim oSiteConfig
Set oSiteConfig = oGlobConfig.CreateSiteConfig("NewSite")
oGlobConfig.SaveConfig

    3.


グローバル リソースを作成および操作するコード

この例では、「サイトを作成するコード」で作成したサイト用にグローバル リソースを作成します。リソースの設定が取得され、変更され、再度取得されて、画面に表示されます。次の Visual Basic コードを使って、サンプルを作成します。

  1. グローバル リソースを作成します。このサンプルでは予測リソースを作成するので、スキーマ クラス名は "MSCS_Predictor" です。リソースを作成したら、構成設定を保存します。
    Dim oPredictor
oGlobConfig.CreateServiceConfig "oPredictor", "MSCS_Predictor"
oGlobConfig.SaveConfig
  2. グローバル レベルで予測リソース内のプロパティを取得し、変更します。このプロパティは、作成時に既定で True に設定されます。プロパティが取得されて表示され、False に設定され、再度取得されて表示されます。
    Dim x, y
Set x = oGlobConfig.Fields("oPredictor").Value
y = x.Fields("f_UseExternalDB").Value
MsgBox y, , "f_UseExternalDB value before change"

' Assign a new property value
y = False
x.Fields("f_UseExternalDB").Value = y
' Save the settings
oGlobConfig.SaveConfig
Set x = oGlobConfig.Fields("oPredictor").Value
y = x.Fields("f_UseExternalDB").Value
MsgBox y, , "f_UseExternalDB value after change"


サイト レベルのリソースを作成および操作するコード

この例では、「サイトを作成するコード」で作成したサイト用にサイト レベルのリソースを作成します。リソースの設定が取得され、変更され、再度取得されて、画面に表示されます。次の Visual Basic コードを使って、サンプルを作成します。

  1. "NewSite" というサイトにサイト レベルのリソースを作成します。このサンプルでは予測リソースを作成するので、スキーマ クラス名は "MSCS_Predictor" です。リソースを作成したら、構成設定を保存します。
    Dim oPredictorAtSiteLevel
oSiteConfig.CreateComponentConfig "oPredictorAtSiteLevel", _
    "MSCS_Predictor"
  2. サイト レベルで予測リソース内のプロパティを取得し、変更します。このプロパティは、作成時に既定で True に設定されます。プロパティが取得されて表示され、False に設定され、再度取得されて表示されます。
    Dim x, y
Set x = oSiteConfig.Fields("oPredictorAtSiteLevel").Value
y = x.Fields("f_UseExternalDB").Value
MsgBox y, , "f_UseExternalDB value before change"
' Assign a new property value
y = False
x.Fields("f_UseExternalDB").Value = y
' Save the settings
'oSiteConfig.SaveConfig
Set x = oSiteConfig.Fields("oPredictorAtSiteLevel").Value
y = x.Fields("f_UseExternalDB").Value
MsgBox y, , "f_UseExternalDB value after change"


リソースをエクスポートするコード

この例では、「サイト レベルのリソースを作成および操作するコード」で作成したサイト レベルのリソースをファイル C:\temp\ExportedFile.txt にエクスポートします。次に、そのリソースを削除し、削除操作の結果を保存します。

  1. サイト レベルの予測リソースをファイル C:\ExportedFile.txt にエクスポートします。
    oSiteConfig.ExportResource "oPredictorAtSiteLevel", _
    "c:\ExportedFile.txt"
  2. サイト レベルの予測リソースを削除し、削除操作の結果を保存します。
    oSiteConfig.DeleteComponentConfig "oPredictorAtSiteLevel"
oSiteConfig.SaveConfig


リソースをインポートするコード

この例では、「リソースをエクスポートするコード」でエクスポートしたサイト レベルの予測リソースをインポートします。このコードでは、リソース プロパティを表示することで、リソースが存在することを調べます。

oSiteConfig.ImportResource "c:\ExportedFile.txt"
Set x = oSiteConfig.Fields("oPredictorAtSiteLevel").Value
y = x.Fields("f_UseExternalDB").Value
MsgBox y, , "f_UseExternalDB value after import"


Web サイトのプロパティを取得するコード

次の例では、サーバー上のすべての Web サイトを列挙してから、それらの Web サイトごとにサイトのプロパティを取得して VrPath プロパティを表示します。次の Visual Basic コードを使って、サンプルを作成します。

  1. 必要なオブジェクトを作成します。
    Dim oWebServer, WebSites, oDict
Set oWebServer = CreateObject("Commerce.AdminWebServer")
  2. AdminWebServer オブジェクトのインスタンスの GetWebSites メソッドを呼び出します。このメソッドは、すべてのサーバー インスタンスを表す整数の配列を返します。
    WebSites = oWebServer.GetWebSites
  3. WebInstance プロパティをディクショナリに返してから、ディクショナリの値を表示します。
    For WebInstance = (LBound(WebSites, 1) + 1) To (UBound(WebSites, 1) + 1)
    Set oDict = oWebServer.GetWebSiteProperties(WebInstance)
    Dim ArrStr(100), i
    i = 1
    For Each property In oDict
    ArrStr(i) = property & " = " & oDict.Value(property)
        str1 = str1 & ArrStr(i) & vbCrLf
        i = i + 1
    Next
    MsgBox str1
    str1 = ""
Next


コンテンツ選択オブジェクト

コンテンツ選択オブジェクトは、Web ページに表示するカスタム コンテンツの選択に使われ、コンテンツ選択フレームワーク (CSF) の一部を構成します。CSF は、さまざまなオブジェクト (ContentList、ContentListFactory、CacheManager など) を使ってコンテンツを選択しますが、ここでは、ContentSelector オブジェクトを取り上げます。ContentSelector オブジェクトは、対象のコンテンツの取得と表示に使われる主要なオブジェクトです。ContentSelector オブジェクトは、さまざまな CSF パイプラインを呼び出して、GetContent メソッドに渡されたディクショナリに基づいて、さまざまな種類のコンテンツを選択します。

ここでは、次のトピックについて説明します。

  • コンテンツ選択プログラミングに関する概念 : コンテンツ選択オブジェクトを使ったプログラミングに関連する概念について説明します。

  • ContentSelector オブジェクトのサンプル コード : ContentSelector オブジェクトのサンプル コードを示します。


コンテンツ選択プログラミングに関する概念

ContentSelector オブジェクトは、対象とした動的なコンテンツを Web ページに表示する、コンテンツ選択フレームワーク (CSF) パイプラインを呼び出すために使われます。ContentSelector オブジェクトは、Dictionary オブジェクトのプロパティとメソッドを継承して、GetContent メソッドを追加するプロパティ バッグです。GetContent メソッドに渡されるディクショナリ オブジェクト (CSF アプリケーションではグローバルな Context ディクショナリ) は、グローバル オブジェクトやその他の値をパイプラインに渡すために使われます。これらの値には、リダイレクタ スクリプト (Redir.asp) の場所、式エバリュエータ オブジェクト、およびコンテンツを選択するために実行する必要があるコンテンツ選択パイプラインなどがあります。これらの値は、要求単位では変更されません。

CSF パイプラインのある種のパイプライン コンポーネントでは、特定の値 (一部は省略可能) がディクショナリに設定されている必要があります。たとえば、CSF パイプラインでは、Size、PageGroups、NumRequested、UserProfile の各キーがディクショナリに設定されている必要があります。

ユーザーのリダイレクト

ユーザーがサイトから出ていく前の最後のクリック イベントを取得して記録するために、Commerce Server 2000 には、リダイレクタ スクリプト Redir.asp が含まれています。たとえば、サイトの広告主から広告が提供されていて、その広告がクリックされたときにブラウザで広告主のサイトへ移動するように広告主から要求されている場合、リダイレクタなどのメカニズムがないと、Commerce Server 2000 は、ユーザーがその広告をクリックしたことを認識できません。このような最後のクリック イベントを追跡できるようにすると、Web サイトの対象コンテンツの効果と成功の度合いを分析できるようになります。

Redir.asp スクリプトを実装するには、Global.asa ファイル内でイベント処理パイプラインを作成する必要があります。次のコードでは、イベント処理パイプラインを作成します。このコードは、「ContentSelection オブジェクトをサポートするコード」のコードに追加できます。

Dim dCSFAdsContext
Set oPipe = Server.CreateObject ("Commerce.OrderPipeline")
oPipe.LoadPipe (oPipelineMap.RecordEvent)
Set Application ("CampaignsCSFEventPipe") = oPipe

次のコードを Redir.asp スクリプトに含める必要があります。

注

  • ソリューション サイトと広告サイトレットには、再利用できる各バージョンの Redir.asp スクリプトが含まれています。
Sub Main()
    Dim oPipe, sUrl, sCacheName, oContentList
    Dim dictCache, dictOrder, dictContext
    Dim Errlvl, oFactory, ciid, sEvt

    ' Get Pipeline object.
    Set oPipe = Application("CampaignsCSFEventPipe")

    ' Get the Content cache that this event is associated with.
    sCacheName = Request.Querystring("CacheName")

    If sCacheName <> "" Then
    ' Get cache object
    Set dictCache = Application("MSCSCacheManager").GetCache(sCacheName)

        ' Get name of event to record (default is CLICK).
        sEvt = Request.Querystring("evt")
        If sEvt = "" Then sEvt = "CLICK"

        ' Set up Order and Context dictionaries and execute the pipeline.
        If ciid > 0 Then
            ' Create dictionaries
            Set dictOrder = Server.CreateObject("Commerce.Dictionary")
            Set dictContext = Server.CreateObject("Commerce.Dictionary")

            ' "_winners" is the item(s) to record the event for.
            ' (may be a simplelist or a scalar)
            dictOrder("_winners") = ciid

            ' "_event" is the name of the event to record. You cannot
            ' record more than one event name per pipeline invocation.
            dictOrder("_event") = sEvt

            ' Create a content list of items from the given cache.
            Set oFactory = dictCache("Factory")
            Set oContentList = oFactory.CreateNewContentList
            Set dictOrder("_content") = oContentList

            ' Get the in-memory dictionary of campaign item performance.
            Set dictOrder("_Performance") = dictCache("_Performance")
            dictContext("SiteName") = sCacheName

            ' Look up page group ID.
            If Request.QueryString("PageGroupId") <> "" Then
                dictContext("PageGroupId") =
                CLng(Request.QueryString("PageGroupId"))
            Else
                dictContext("PageGroupId") = 0
            End If

            ' Execute the pipeline to record the event.
            oPipe.orderExecute 1, dictOrder, dictContext, Errlvl

        End If
    End If

    ' Redirect to the supplied URL.
    sUrl = Request.Querystring("url")
    If sUrl <> "" Then
        Response.Redirect(sUrl)
    Else

        Response.Write(MSCSMessageManager.GetMessage
        ("L_NoRedirectionURLSpecified_ErrorMessage", sLanguage))
    End if
End Sub

広告サイトレット

広告サイトレットは Commerce Server 2000 Software Development Kit (SDK) に含まれています。広告サイトレットは、ContentSelector オブジェクトをどのように実装するとユーザーのプロファイルに基づいて対象コンテンツを表示できるかを示す一例です。

広告サイトレットのアンパックの詳細については、「サイトを追加する」を参照してください。アンパックするファイル (SDK-AD-SITELET.PUP) は、ローカル コンピュータの C:\Program Files\Microsoft Commerce Server\SDK\Samples\Sitelets\Ad ディレクトリにあります。


ContentSelector オブジェクトのサンプル コード

ここでは、ContentSelector オブジェクトの詳しい使用例を示します。

ここでは、次のトピックについて説明します。

  • ContentSelector オブジェクトをサポートするコード : ContentSelection オブジェクトをサポートするために Global.asa ファイルに含めるコードを示します。

  • ContentSelector オブジェクトを実行するコード : ContentSelection オブジェクトを作成するために Default.asa ファイルに含めるコード、GetContent メソッドで使うコード、および Web ページに広告を書き込むために使うコードを示します。


ContentSelector オブジェクトをサポートするコード

次のコードは、コンテンツ選択フレームワーク (CSF) の初期化方法、CacheManager オブジェクトと式エバリュエータの設定方法、広告パイプラインの作成方法、および CSF 広告のコンテキストの構成方法を示します。

次のコードを Global.asa file ファイルに含める必要があります。

<SCRIPT LANGUAGE=VBSCRIPT RUNAT=Server>

option explicit

' Initialize the Content Selection Framework.
Sub Application_OnStart

    ' Modify sConnStr to point to a valid Campaigns database.
    ' The Campaigns database can be created either by unpacking a site,
    ' such as blank.pup, or by running the campaign database creation
    ' scripts in the C:/Program Files/Microsoft Commerce Server/Site
    ' Create diretory.
    const sConnStr = "provider=SQLOLEDB;Data Source=(local);Initial
    Catalog=Retail_commerce;User ID=sa;Password=;"

    Dim oPipe, dCSFAdsContext
    Dim oExpressionEval, oCacheManager, dCacheConfig

    ' Set up CacheManager object.
    Set dCacheConfig = CreateObject("Commerce.Dictionary")
    dCacheConfig.ConnectionString = sConnStr
    Set oCacheManager = CreateObject("Commerce.CacheManager")
    oCacheManager.LoaderProgId("Ads") = "Commerce.CSFLoadAdvertisements"
    Set oCacheManager.LoaderConfig("Ads") = dCacheConfig
    oCacheManager.RefreshInterval("Ads") = 15 * 60 ' 15 minutes

    ' Create the Expression Evaluator and connect it to the database.
    Set oExpressionEval = CreateObject("Commerce.ExpressionEvaluator")
    Call oExpressionEval.Connect(sConnStr)

    ' Create CSF advertising context, a dictionary.
    Set dCSFAdsContext = CreateObject("Commerce.Dictionary")

    ' Create an advertising pipeline and add it to the context.
    Set oPipe = CreateObject("Commerce.OrderPipeline")
    ' Load the pipeline configuration
    oPipe.LoadPipe(Server.MapPath("Advertising.pcf"))
    ' Store a reference to the pipeline object in the Context
    ' dictionary.
    Set dCSFAdsContext("pipeline") = oPipe

    ' Other context configuration for CSF ads.
    dCSFAdsContext("RedirectUrl") = ".\redir.asp"
    ' Add a reference to an expression evaluator to the Context
    Set dCSFAdsContext("Evaluator") = oExpressionEval
    ' InitCacheManager, a routine that would appear elsewhere in the
    ' global.asa, returns a reference to a CacheManager object.
    Set dCSFAdsContext("CacheManager") = oCacheManager
    dCSFAdsContext("CacheName") = "Ads"

    ' Store a reference to the dCSFAdsContext dictionary in the
    ' Application collection.
    Set Application("CSFAdsContext") = dCSFAdsContext
End Sub

</SCRIPT>


ContentSelector オブジェクトを実行するコード

次のコードは、ContentSelector オブジェクトの一般的な作成方法、GetContent メソッドでコンテンツを選択するための ContentSelector オブジェクトの使用方法、およびそのコンテンツを Web ページに書き込む方法を示します。

次のコードを Default.asp ファイルに含める必要があります。

<%
    ' Create a ContentSelector object.
    Set CSO = Server.CreateObject("Commerce.ContentSelector")

    ' Use the GetContent method to get some content. Use the dictionary
    ' previously created in the Global.asa file and referenced through the
    ' Application collection.
    Set Ads = CSO.GetContent(Application("CSFAdsContext"))
    ' Ads is a SimpleList containing the selected content.
    ' Write the content to the page, if any.
    For Each Ad in Ads
        Response.Write(Ad)
    Next
%>

ほかに、ContentSelector オブジェクトに省略可能なプロパティを設定する場合もあります。これらのプロパティは、選択パイプライン内のコンポーネントと、それらのコンポーネントの構成によって異なります。最も一般的な省略可能なプロパティとして、UserProfile、NumRequested、PageGroup、Size があります。


表示オブジェクト

表示オブジェクトは、ユーロ通貨やその他の通貨の値の表示、データ型の変換、値範囲のチェック、ユーザーへのエラー メッセージの表示、ロケール固有の値の表示などのさまざまな機能を実行します。

ここでは、次のトピックについて説明します。

  • 表示オブジェクトに関する概念 : 表示オブジェクトの使用に関連する主な事項について説明します。

  • 表示オブジェクトのサンプル コード : 表示オブジェクトの詳しい使用例を示します。

関連項目

AppFrameWork オブジェクト

DataFunctions オブジェクト

EuroDisplay オブジェクト

MessageManager オブジェクト


表示オブジェクトに関する概念

Commerce Server 2000 では、次の表示オブジェクトが使われます。

AppFrameWork オブジェクト

DataFunctions オブジェクト

EuroDisplay オブジェクト

MessageManager オブジェクト

AppFrameWork オブジェクト

AppFrameWork オブジェクトは Commerce Server 2000 の新しいオブジェクトで、Page オブジェクトのほとんどの機能がこれに置き換わります。Page オブジェクトは将来のバージョンではサポートされなくなります。Page オブジェクトはすべてのページで作成する必要があります。これに対し、AppFrameWork オブジェクトは Global.asa ファイルで 1 度作成すると、すべてのページで使用できるので、パフォーマンスが向上します。

AppFrameWork オブジェクトのメソッドの多くは、Request で始まる名前が付いています。これらのメソッドは、ブラウザの要求で取得されたデータに対して、ロケールに基づいたデータ型変換とデータ範囲のチェックを行います。ブラウザからサーバーへデータを送信する方法は 2 つあります。データは、クエリ文字列として要求の URL に追加できます (たとえば、http://servername/mysite/default.asp?keyword=books)。または、フォームを通じて送信できます。ユーザーの入力に対してこれらの操作を実行すると、Active Server Pages (ASP) で取得した入力データを、エラーなしでサイトのデータベース記憶領域に挿入したり、パイプラインまたはページの構文エラーなしで OrderForm オブジェクト内の注文処理パイプライン (OPP) に渡したりできます。

オブジェクトの依存関係

AppFrameWork オブジェクトと Page オブジェクトの Request メソッドは、メソッドの実装を DataFunctions オブジェクトに依存するので、AppFrameWork オブジェクトまたは Page オブジェクトを作成する前に、DataFunctions オブジェクトを作成する必要があります。

次の表は、さまざまな条件の下で Request メソッドから返される値を示します。

条件 | メソッドが返す値
キー/値の組み合わせが要求に渡され、有効な場合。 | URL クエリ文字列またはフォーム送信変数から返されるキー値。
返された値が空か Null の場合 (たとえば、ユーザーが検索キーの値を入力しなかった場合)、または値の型が不正な場合。 | 既定値 (Null、または Default パラメータで指定されている値)。
返された値が指定した範囲にない場合。 | Null。
返された値がロケールのルールに対して無効な場合。 | Null。

DataFunctions オブジェクト

DataFunctions オブジェクトは、データベースに送信された値または OrderGroup オブジェクトで注文処理パイプライン (OPP) に渡された値に対して、ロケールに基づいたデータ型の処理と値範囲のチェックを実行します。

通常、DataFunctions オブジェクトは、Global.asa ファイル内で作成します。DataFunctions オブジェクトを作成するには、次のように、Active Server Pages (ASP) Server オブジェクトの CreateObject メソッドを使います。

Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Initialize the object after instantiation
MSCSDataFunctions.Locale = dictConfig.i_SiteDefaultLocale

Global.asa ファイルでは、次のように、Application オブジェクトにも新しく作成したオブジェクトを格納します。

Set Application("MSCSDataFunctions") = MSCSDataFunctions

AppFrameWork オブジェクトと Page オブジェクトは DataFunctions オブジェクトに直接依存します。AppFrameWork オブジェクトまたは Page オブジェクトを作成する前に、DataFunctions オブジェクトを作成する必要があります。

EuroDisplay オブジェクト

EuroDisplay オブジェクトは、通貨の変換と書式設定に使います。元はユーロ通貨の使用を処理するために設計されたものですが、任意の 2 つの通貨の変換に使うことができます。このオブジェクトにより、便利な通貨変換機能が提供されます。

MessageManager オブジェクト

MessageManager オブジェクトは、エラー メッセージを複数の言語で格納します。これらのエラー メッセージは、注文処理パイプライン (OPP) コンポーネントが OrderForm オブジェクトの処理中に発生したエラー状態を示すために使います。


表示オブジェクトのサンプル コード

ここでは、表示オブジェクトの詳しい使用例を示します。

ここでは、次のトピックについて説明します。

  • データ型変換と範囲のチェックを行うコード : ロケールに基づいたデータ型の変換と範囲の検証を行う方法について説明します。

  • ユーロの値を操作および表示するコード : EuroDisplay オブジェクトを使って通貨値を変換する方法について説明します。

  • 数値と文字列間の変換を行うコード : DataFunctions オブジェクトの変換機能の使い方について説明します。

  • ロケール固有の文字列を表示するコード : DataFunctions オブジェクトのロケールに基づいた変換機能の使い方について説明します。

  • ユーザーに表示する一般的なエラー メッセージを管理するコード : MessageManager オブジェクトに言語とメッセージを追加する方法と、Web ブラウザにメッセージを書き込む方法について説明します。


データ型変換と範囲のチェックを行うコード

ここでは、Active Server Pages (ASP) ページ (Form.asp) を作成する方法について説明します。ASP ページのフォームでは、コンテンツがチェックされ、Date Variant に変換されます。チェックと変換は Process.asp ファイルで実行されます。

下の例では、RequestDate メソッドに渡す第 1 パラメータに、データの送信元のフォーム フィールドの名前を指定しています。このテキスト フィールドが空の場合は、RequestDate メソッドに渡す第 2 パラメータ "1/1/2000" が、RequestDate メソッドの処理する日付になります。最初に、指定した Locale プロパティ (この例では、アメリカを表す Locale プロパティの 1033) に基づいて、日付の文字列式を日付値に変換します。次に、第 3 パラメータと第 4 パラメータで指定した日付の範囲に照らし合わせて、その日付値をチェックします。

Form.asp ファイルがブラウザに読み込まれると、Process.asp ファイル内で RequestDate メソッドによって処理された日付が表示されます。

  1. 次のコードを使って Form.asp ファイルを作成します。
    <FORM METHOD="POST" ACTION = "Process.asp">
<INPUT TYPE="Text" NAME= "Date">
<INPUT TYPE ="Submit" NAME = "Action" VALUE = "Send Info"
</FORM>
  2. 次のコードを使って Process.asp ファイルを作成します。
    Dim oAppFrameWork, vDate
Set oAppFrameWork = Server.CreateObject("Commerce.AppFrameWork")
vDate = oAppFrameWork.RequestDate("Date", _
                                     "1/1/2000", _
                                     "1/1/2000",  _
                                     "12/12/2000", _
                                     "1033")
If IsNull(vDate) Then
    Response.Write "Invalid Date"
Else
    Response.Write vDate
End If


ユーロの値を操作および表示するコード

このサンプル コードは、通貨情報をドルからフランス フランに変換するためのものです。この例では、Active Server Pages (ASP) ページを作成します。この ASP ページは、EuroDisplay オブジェクトを作成してそのオブジェクトを初期化し、基本通貨記号を "$" に、基本ロケールをアメリカのロケールに、代替通貨記号を "FF" に、代替ロケールをフランスに、変換レートを $ 1.00 = 2 FF に設定します。その後、基本通貨単位の 100 を代替通貨単位に変換します (100 ドルを 200 フランに変換します)。

  1. EuroDisplay オブジェクトのインスタンスを作成します。このコードは、通常 Global.asa ファイル内で見つけることができます。
    Dim EuroDisplay, Result
Set oEuroDisplay= Server.CreateObject("Commerce.EuroDisplay")
  2. EuroDisplay オブジェクトを初期化します。このコードは、通常 Global.asa ファイル内で見つけることができます。このコードでは、基本通貨記号を "$" に、基本ロケールをアメリカのロケールに、代替通貨記号を "FF" に、代替ロケールをフランスに、変換レートを $ 1.00 = 2 FF に設定して、EuroDisplay オブジェクトを初期化します。
    oEuroDisplay.Initialize("$", 1033, "FF", 1036, 2)
  3. $ 100 を FF 200 に変換します。
    cyAltCurrency = oEuroDisplay.ConvertMoney(100)
  4. 変換した値をページに書き込みます。
    Response.Write "Converted $100 from $ to FF ($1 = 2FF) : " _
               & cyAltCurrency


数値と文字列間の変換を行うコード

次の 2 つの例では、文字列値と数値間の変換を行う場合の DataFunctions オブジェクトの使い方を示します。

数値を文字列に変換する

金額値を数値に変換する

数値を文字列に変換する

この例では、浮動小数点数を各種の出力に変換する Active Server Pages (ASP) ページを作成します。すべての出力はアメリカのロケールに基づきます。この例では、さまざまな端数処理と末尾のゼロの変数設定を示します。

次のコードを使って、サンプルを作成します。

  1. DataFunctions オブジェクトのインスタンスを作成し、そのオブジェクトの Locale プロパティをアメリカに設定します。
    Dim oDataFunctions, iResult, iLocale, iInputFloat
Set oDataFunctions = Server.CreateObject("Commerce.DataFunctions")
iLocale = "1033"
oDataFunctions.Locale = iLocale
  2. Float メソッドを呼び出し、端数処理をせずに末尾のゼロを維持したまま、数値をアメリカ式に変換します。ページに結果を書き込みます。
    iInputFloat = 100.00010
iResult = oDataFunctions.Float(iInputFloat, iLocale, True , False)
Response.Write "USA, No Rounding, With Trailing: " & Result & "<P>"
  3. Float メソッドを呼び出し、端数処理をせずに末尾のゼロを削除して、数値をアメリカ式に変換します。ページに結果を書き込みます。
    Result = oDataFunctions.Float(iInputFloat, iLocale, True, True)
Response.Write "USA, No Rounding, Trim Trailing: " & Result & "<P>"
  4. Float メソッドを呼び出し、端数処理して末尾のゼロを維持したまま、数値をアメリカ式に変換します。ページに結果を書き込みます。
    Result = oDataFunctions.Float(iInputFloat, iLocale, False, False)
Response.Write "USA, Rounding, With Trailing: " & Result & "<P>"
  5. Float メソッドを呼び出し、端数処理して末尾のゼロを削除し、数値をアメリカ式に変換します。ページに結果を書き込みます。
    Result = oDataFunctions.Float(iInputFloat, iLocale, False, True)
Response.Write "USA, Rounding, Trim Trailing: " & Result & "<P>"

金額値を数値に変換する

この例では、金額値を整数に変換する ASP ページを作成します。ConvertMoneyStringToNumber メソッドは、指定した Locale プロパティの基本通貨単位で値を返します。

たとえば、値の単位が米ドルである場合、ConvertMoneyStringToNumber メソッドは米ドル値のセント単位で表現した数値を返します。また、ConvertMoneyStringToNumber メソッドは、値の端数処理を行いません。たとえば、"123.009" を渡すと、このメソッドは 12301 ではなく 12300 を返します。

次のコードを使って、サンプルを作成します。

  1. DataFunctions オブジェクトのインスタンスを作成します。
    Dim oDataFunctions, iResult, sAmount, iLocale
sAmount = "12000"
Set oDataFunctions = Server.CreateObject("Commerce.DataFunctions")
  2. ロケールをアメリカに設定します。
    iLocale = "1033"
oDataFunctions.Locale = iLocale
  3. 文字列を整数に変換します。
    Result = oDataFunctions.ConvertMoneyStringToNumber("34.095", iLocale)
  4. ページに結果を書き込みます。
    Response.Write "USA: " & Result & "<P>"


ロケール固有の文字列を表示するコード

ここでは、DataFunctions オブジェクトの文字列変換機能を使う Active Server Pages (ASP) ページの作成方法について説明します。

ロケールに基づいて日付を変換する

ロケールに基づいて数値を変換する

ロケールに基づいて金額を変換する

ロケールに基づいて日付を変換する

この例では、日付をロケール固有の 2 つの表示に変換する ASP ページを作成します。1 つ目の表示はフランス式の日付で、2 つ目の表示はアメリカ式です。

次の ASP コードを使って、このサンプルを作成します。

  1. DataFunctions オブジェクトのインスタンスを作成し、Locale プロパティをフランス (1036) に設定します。日付文字列を変換して、変換後の文字列をページに書き込みます。
    Dim Result, Amount
Amount = "12000"
Set oDataFunctions = Server.CreateObject("Commerce.DataFunctions")
iLocale = "1036"
oDataFunctions.Locale = iLocale
Result = oDataFunctions.ConvertDateString("12/1/2000", iLocale)
Response.Write "France: " & Result & "<BR>"
  2. Locale プロパティをアメリカ (1033) に設定します。日付文字列を変換して、変換後の文字列をページに書き込みます。
    iLocale = "1033"
oDataFunctions.Locale = iLocale
Result = oDataFunctions.ConvertDateString("12/1/2000", iLocale)
Response.Write "USA: " & Result & "<BR>"

ロケールに基づいて数値を変換する

この例では、浮動小数点数をロケール固有の 2 つの出力に変換する ASP ページを作成します。1 つ目の出力はフランス式の数値で、2 つ目の出力はアメリカ式です。

出力では、数値 10000000 (1 千万) が、フランス式とアメリカ式の異なる形式で表示されます。

  • フランス : 10 000 000,00

  • アメリカ : 10,000,000.00

次のコードを使って ASP ページを作成します。

  1. DataFunctions オブジェクトのインスタンスを作成します。
    Dim oDataFunctions, sResult, iLocale
Set oDataFunctions = Server.CreateObject("Commerce.DataFunctions")
  2. Locale プロパティをフランス (1036) に設定し、変換後の数値をページに書き込みます。
    iLocale = "1036"
oDataFunctions.Locale = iLocale
sResult = oDataFunctions.Number(10000000, iLocale)
Response.Write "France: " & sResult & "<BR>"
  3. Locale プロパティをアメリカ (1033) に変更し、変換後の数値をページに書き込みます。
    iLocale = "1033"
oDataFunctions.Locale = iLocale
sResult = oDataFunctions.Number(10000000, iLocale)
Response.Write " USA: " & sResult & "<BR>"

ロケールに基づいて金額を変換する

この例では、金額値が格納された浮動小数点数を、ロケール固有の 2 つの表示に変換する ASP ページを作成します。1 つ目の表示はフランス式の数値で、2 つ目の表示はアメリカ式です。

このメソッドは、既定のまたは指定の Locale プロパティに基づいて、金額値を含む long 値を同等の文字列表記に変換するために使います。出力には、ロケール固有の通貨記号が表示されます。

  • フランス : 120,00 F

  • アメリカ : $120.00

次の ASP コードを使って、このサンプルを作成します。

  1. DataFunctions オブジェクトのインスタンスを作成します。
    Dim oDataFunctions, sResult, lAmount
Amount = "12000"
Set oDataFunctions = Server.CreateObject("Commerce.DataFunctions")
  2. Locale プロパティをフランス (1036) に設定し、金額を変換して、結果をページに書き込みます。
    iLocale = "1036"
oDataFunctions.Locale = iLocale
sResult = oDataFunctions.Money(lAmount, iLocale)
Response.Write "France: " & sResult & "<BR>"
  3. Locale プロパティをアメリカ (1033) に設定し、金額を変換して、結果をページに書き込みます。
    iLocale = "1033"
oDataFunctions.Locale = iLocale
sResult = oDataFunctions.Money(lAmount, iLocale)
Response.Write "USA: " & sResult & "<BR>"


ユーザーに表示する一般的なエラー メッセージを管理するコード

MessageManager オブジェクトは、Global.asa ファイル内で作成します。ここでは、この例の目的に合わせて、(この方法は推奨できませんが) ASP ページ上で MessageManager オブジェクトを作成します。この例では、MessageManager オブジェクトを作成し、そのオブジェクトに 2 つの言語 (Informal と Formal) を追加します。次に、各言語にメッセージ ("greeting") を追加します。その後、このメッセージをそれぞれの言語でページに書き込みます。

  1. MessageManager オブジェクトのインスタンスを作成します。
    Dim oMessMgr, sMessage
Set oMessMgr= Server.CreateObject("Commerce.MessageManager")
  2. MessageManager オブジェクトに新しい 2 つの言語を追加し、アメリカのロケール (1033) を指定します。
    Call oMessMgr.AddLanguage ("Informal", 1033)
Call oMessMgr.AddLanguage("Formal", 1033)
  3. MessageManager オブジェクトに 2 つの新しいメッセージを追加します。
    oMessMgr.AddMessage "greeting", "Hi, World!", "Informal"
oMessMgr.AddMessage "greeting", "How do you do, World.", "Formal"
  4. インフォーマル メッセージを取得し、ページに書き込みます。
    sMessage = oMessMgr.GetMessage("greeting", "Informal")
Response.Write "Informal Message: "& sMessage & "<BR>"
  5. フォーマル メッセージを取得し、ページに書き込みます。
    sMessage = oMessMgr.GetMessage("greeting", "Formal")
Response.Write "Formal Message: " & sMessage & "<BR>"


式に関するオブジェクト

式は Boolean と関係演算子を使って構築されるステートメントであり、プロファイルの特定のセットにあるデータに対して評価されます。このようなセットを、式の評価コンテキストともいいます。プロファイルは、ProfileObject オブジェクト、Dictionary オブジェクト、または IDispatch インターフェイスを介したプロパティへのアクセスをサポートする、そのほかのオブジェクトのいずれかです。式は常に True か False のどちらかに評価されます。

式アーキテクチャは、式ストア、式ビルダ、および式エバリュエータ エンジン (EEE) という 3 つの主なコンポーネントで構成されます。式ストアは、式の ID や名前といった関連情報と一緒に式を格納する、一連のデータベース テーブルで構成されます。詳細については、「式レコードセット」を参照してください。

式ビルダは Web ベースのユーザー インターフェイスを提供し、これによってビジネス マネージャは式を作成、修正、および表示することができます。詳細については、「式ビルダ」を参照してください。

EEE は、開発者にとって最も重要なコンポーネントです。EEE は、式の評価に使われる Component Object Model (COM) オブジェクトです。EEE は ExpressionStore オブジェクトのサービスを使って、式を評価する前に読み込みます。同じプロファイルに対して最も効率的な方法で一連の式を評価するために使われる評価コンテキストも、EEE が作成します。EEE は、Commerce Server 2000 のマーケティング コンポーネントとキャンペーン コンポーネントによって使われます。

このトピックには、次の内容が含まれています。

  • 式プログラミングに関する概念 : EEE と、EEE で公開されるオブジェクトについて説明します。

  • 式オブジェクトのサンプル コード : EEE によって公開されたオブジェクトの使用方法に関して詳細な例を示します。

関連項目

式レコードセット

式の XML 構造

ExpressionEval オブジェクト

ExpressionStore オブジェクト

プロファイル オブジェクト


式プログラミングに関する概念

式エバリュエータ エンジン (EEE) は、次の図に示すように、評価コア ロジック、ExpressionStore オブジェクトと ExpressionEval オブジェクト、および読み込まれた式、オブジェクト プロパティ、式の結果のそれぞれのキャッシュで構成されます。

評価コンテキスト
式結果
キャッシュ
オブジェクト
プロパティ
キャッシュ
評価コア
式キャッシュ
式エバリュエータ エンジン
ExpressionEval
オブジェクト
式ストア
データベース
ExpressionStore
オブジェクト
EEE を使用する
外部プログラム

EEE は次の各部分で構成されます。

  • 評価コンテキスト

  • 評価コア

  • 式キャッシュ

  • 式結果キャッシュ

  • ExpressionEval オブジェクト

  • ExpressionStore オブジェクト

  • オブジェクト プロパティ キャッシュ

評価コンテキスト

評価コンテキストは、一連の式を同一のプロファイルに対して評価するために使われます。評価コンテキストを使うと、EEE がより優れたキャッシュを行えるようになるので、パフォーマンスが向上します。具体的には、プロファイルのプロパティと式の結果をキャッシュできるようになります。評価コンテキストは CSF の EvalTargetGroups コンポーネントによって使われます。この理由は、たとえば、このコンポーネントが同一のプロファイルに対して多数の式を評価し、それらの式の多くは、複数の対象グループの中で繰り返されることがよくあるからです。

評価コンテキストを明示的に作成しなかった場合は、式が評価されるたびに自動的に評価コンテキストが作成されます。このようなコンテキスト オブジェクトは、式の評価が終わると自動的に解放されます。

評価コア

評価コアは EEE のコア ロジックです。式の実際の評価を処理します。

式キャッシュ

式は、式ストアからこのキャッシュに読み込まれます。式が評価される場合、ExpressionEval オブジェクトは、最初にこのキャッシュ内で式を探します。見つからなかった場合は、式が読み込まれます。実行時のパフォーマンスを向上させるには、ExpressionEval オブジェクトの LoadExpr メソッドまたは LoadAll メソッドを使って、式キャッシュに式をあらかじめ読み込んでおきます。

式結果キャッシュ

評価された式の結果はキャッシュに格納されるので、特定の評価コンテキストを 2 度目に使うときには、式を再評価しなくても結果を返すことができます。

ExpressionEval オブジェクト

このオブジェクトは、式キャッシュの読み込みとフラッシュを行い、式の評価に使う評価コンテキストを作成して式の評価を実行します。詳細については、「ExpressionEval オブジェクト」を参照してください。

ExpressionStore オブジェクト

このオブジェクトは、式ストアと対話して、式の作成、削除、保存、取得、クエリ、インポート、エクスポートを行います。詳細については、「ExpressionStore オブジェクト」を参照してください。

オブジェクト プロパティ キャッシュ

このキャッシュには、式が初めて評価されるときに従属プロファイル オブジェクトへの参照が格納されます。評価時にオブジェクト プロパティがアクセスされると、それらのプロパティも再利用できるようにこのキャッシュに格納されます。


式オブジェクトのサンプル コード

ここでは、式エバリュエータ エンジンによって公開される式オブジェクトの詳しい使用例を示します。サンプル コードは、Microsoft Visual Basic、Microsoft Visual Basic Scripting Edition (VBScript)、または Active Server Pages (ASP) のいずれかで記述されています。サンプルでは、正しく機能するコードに必要な、エラー チェックや定型的な手続きは示されていません。

ここでは、次のトピックについて説明します。

  • 式ストアに接続するコード : 式ストアに接続する方法と式ストアから切断する方法について説明します。

  • 評価コンテキストを作成するコード : 式の評価に使うデータを含む評価コンテキストを作成する方法について説明します。

  • XML フラグメントとして格納された式を評価するコード : XML フラグメントとして格納された式を評価する方法について説明します。

  • 新しい式を作成するコード : 新しい式を作成する方法について説明します。

  • 式を操作するコード : 式ストアから式を取得または削除する方法、式の名前を変更する方法、式 ID と式名とを変換する方法について説明します。

  • 単一の式を評価するコード : 単一の式を評価する方法について説明します。

  • 式のグループを評価するコード : 保存するための評価コンテキストを作成し、その一般的なコンテキストに対して式のグループを評価する方法について説明します。

  • 式をインポートおよびエクスポートするコード : 式をインポートおよびエクスポートする方法について説明します。


式ストアに接続するコード

式ストアへの接続は、ExpressionStore オブジェクトの Connect メソッドを通じて直接行うか、ExpressionEval オブジェクトの Connect メソッドを通じて間接的に行うことができます。どちらにするかは、実行する必要のある処理に応じて決まります。式を作成または操作する場合は、ExpressionStore オブジェクトを使います。既存の式を評価する場合は、ExpressionEval オブジェクトを使います。ExpressionStore オブジェクトを使って接続している場合、式ストアへの接続を解放するには、Disconnect メソッドを使います。ExpressionEval オブジェクトでは、終了時に自動的に式ストアへの接続が解放されます。

ExpressionStore オブジェクトを使って接続する

ExpressionEval オブジェクトを使って接続する

ExpressionStore オブジェクトを使って接続する

  1. SiteConfigReadOnly オブジェクトを使って、式ストアへの接続文字列を取得します。"Retail" サイトの SiteConfigReadOnly オブジェクトを初期化します。この手順は Global.asa ファイル内で実行する必要があります。取得した接続文字列は、Application コレクションか、Active Server Pages (ASP) ページで使うグローバル ディクショナリにキャッシュされます。
    Dim sConn
Dim oSiteConfigReadOnly

Set oSiteConfigReadOnly = Server.CreateObject("Commerce.SiteConfigReadOnly")

oSiteConfigReadOnly.Initialize "Retail"

sConn = oSiteConfigReadOnly.Fields("Biz Data Service")_
.Value.Fields("s_BizDataStoreConnectionString").Value

Set oSiteConfigReadOnly = Nothing
  2. ExpressionStore オブジェクトを作成し、接続文字列を式ストアに格納します。
    Dim oExpressionStore
Set oExpressionStore = Server.CreateObject("Commerce.ExpressionStore")

oExpressionStore.Connect sConn

ExpressionEval オブジェクトを使って接続する

ExpressionEval オブジェクトを使っての接続は、既存の ExpressionStore オブジェクトへの参照を渡すか、明示的な接続文字列を渡すことによって実行できます。後者の場合は、新しい ExpressionStore オブジェクトが作成されます。

  1. ExpressionEval オブジェクトを作成します。ProgID (ExpressionEvaluator) がオブジェクト名と異なることに注意してください。
    Dim oExpressionEval
Set oExpressionEval = Server.CreateObject("Commerce.ExpressionEvaluator")
  2. 式ストアに接続します。
    • 以前の ExpressionStore オブジェクト (oExpressionStore) を使って接続します。
      oExpressionEval.Connect oExpressionStore

    • 以前に取得した接続文字列 (sConn) を使って接続します。

      oExpressionEval.Connect sConn

      •

    3.


評価コンテキストを作成するコード

ここでは、式の評価に使うデータを含む評価コンテキスト (Dictionary オブジェクト) を作成する方法について説明します。

  1. 「新しいプロファイルを作成するコード」で作成した 2 つのプロファイル oUser1 (UserObject オブジェクト) と oAddress1 (Address オブジェクト) を取得します。プロファイルを取得する方法の詳細については、「プロファイルを取得するコード」を参照してください。

  2. 次の各セクションで評価する、これらのプロファイルのプロパティは次のとおりです。
    oUser1.GeneralInfo.first_name = "Joe"
oAddress1.GeneralInfo.region_code = "WA"
  3. Dictionary オブジェクトを作成し、2 つのプロファイルを挿入します。
    Dim dictProfiles
Set dictProfiles = Server.CreateObject("Commerce.Dictionary")

Set dictProfiles.User = oUser1
Set dictProfiles.Address = oAddress1


XML フラグメントとして格納された式を評価するコード

ここでは、拡張マークアップ言語 (XML) フラグメントとして格納された式を解析および評価する方法について説明します。XML フラグメントは、式の Recordset オブジェクトの ExprBody フィールドに相当します。最初に、構文が正しいかどうかついて XML フラグメントを解析します。EvalXML メソッドも XML フラグメントを解析できますが、設計時だけしか実行することができません。式が正しく解析されたら、式を評価します。

  1. XML の式フラグメントを作成します。この式が UserObject オブジェクトと Address オブジェクトを含むコンテキストに対して評価されると、UserObject オブジェクトの first_name プロパティが "Joe" で、かつ Address オブジェクトの region_code プロパティが "WA" の場合、True を返します。この例では、読みやすくするために、式を表す文字列中の引用符と連結文字にスクリプトとして正しくない書式を使っています。
    Dim strXMLExpression

sXMLExpression =
 "<TERM TYPE="and">
    <CLAUSE OPER="equal">
       <PROPERTY ID="UserObject.GeneralInfo.first_name" TYPE="string" />
       <IMMED-VAL TYPE="string">Joe</IMMED-VAL>
    </CLAUSE>
    <CLAUSE OPER="equal">
       <PROPERTY ID="Address.GeneralInfo.region_code" TYPE="string" />
       <IMMED-VAL TYPE="string">WA</IMMED-VAL>
    </CLAUSE>
  </TERM>"

  2. ExpressionEval オブジェクトを作成し、文字列を解析して、有効な構文の XML 式がその文字列で表されているかどうかを判定します。
    Dim bResult
Dim oExpressionEval
Set oExpressionEval = CreateObject("Commerce.ExpressionEvaluator")

bResult = oExpressionEval.ParseXML(sXMLExpression)

このフラグメントの構文は有効なので、結果 (bResult) は True です。

  3. 「評価コンテキストを作成するコード」で作成した dictProfiles コンテキストに格納されているデータに対して、XML フラグメントを評価します。dictProfiles コンテキスト内で関係するプロパティは次のとおりです。
    User.GeneralInfo.first_name = "Joe"
Address.GeneralInfo.region_code = "WA"

Dim vResult
vResult = oExpressionEval.EvalXML(sXMLExpression, dictProfiles)

Set oExpressionEval = Nothing

式の評価結果 vResult は True です。


新しい式を作成するコード

ここでは、新しい式を作成する方法について説明します。

  1. 「式ストアに接続するコード」で作成した ExpressionStore オブジェクト (oExpressionStore) を使って、新しい式を格納する空のレコードセットを作成します。
    Dim rsExpr
Set rsExpr = oExpressionStore.NewExpression()
  2. 返されるレコードセットは、階層構造を持つ ADO Recordset オブジェクトです。このオブジェクトには、親である Recordset オブジェクトが 1 つと、子である Recordset オブジェクトが 2 つ (プロファイルの依存関係の子が 1 つと、式の依存関係の子が 1 つ) 格納されます。親のレコードセットのフィールドを設定します。ExprBody フィールドに使う文字列 (sXMLExpression) は、「XML フラグメントとして格納された式を評価するコード」で定義されています。Recordset オブジェクトが保存されるときに、この文字列の構文に対するエラー チェックは実行されません。レコードセットを保存する前に構文が正しいかどうかを確認するには、ParseXML メソッドを使います。Commerce Server ビジネス デスクのキャンペーン式モジュール内で、式を対象式として表示する場合は Category フィールドを "CAMPAIGNS" に設定し、式をカタログ式として表示する場合は Category フィールドを "CATALOG" に設定する必要があります。
    rsExpr.Fields("ExprName").Value = "Expr_WA_Joe"
rsExpr.Fields("ExprBody").Value = sXMLExpression
rsExpr.Fields("Category").Value = "WA Users"
rsExpr.Fields("ExprDesc").Value = "Is the user from WA and named Joe?"
  3. 新しい式が依存するプロファイルごとに、プロファイルの依存関係の子レコードセットに新しいレコードを追加して、そのレコードに値を設定します。式を評価するための対象として、最低 1 つはプロファイルの依存関係が必要です。
    Dim rsDeps
Set rsDeps = rsExpr.Fields("rsProfDeps").Value

rsDeps.AddNew
rsDeps.Fields("ProfDep").Value = "User"
rsDeps.AddNew
rsDeps.Fields("ProfDep").Value = "Address"
  4. 新しい式が依存する式ごとに、式の依存関係の子レコードセットに新しいレコードを追加して、そのレコードに値を設定します。式はほかの式に依存する必要はありません。したがって、この手順は省略可能です。
    Set rsDeps = rsExpr.Fields("rsExprDeps").Value

rsDeps.AddNew
rsDeps.Fields("ExprDep").Value = 123
  5. 式ストアに式を保存し、Recordset オブジェクトを解放します。
    oExpressionStore.SaveExpression(rsExpr)

Set rsDeps = Nothing
Set rsExpr = Nothing


式を操作するコード

式ストアに新しい式を保存すると一意の式 ID が作成され、この ID が、後で式にアクセスするために使われます。ここでは、式の名前を使って式 ID を取得する方法について説明します。式 ID を取得した後、式の名前を変更します。この操作が、API で唯一サポートされている、式に対する操作です。式をさらに操作するため、対応するレコードセットを取得し、式の説明を変更します。最後に、式ストアから式を削除します。

  1. 「式ストアに接続するコード」で作成した ExpressionStore オブジェクト (oExpressionStore) を使って、「新しい式を作成するコード」で作成した式の名前 ("Expr_WA_Joe") を式 ID に変換します。
    Dim lExpressionID
lExpressionID = oExpressionStore.GetExprID("Expr_WA_Joe")
  2. 式の名前を "Expr_2001.93" に変更します。
    oExpressionStore.RenameExpression lExpressionID, "Expr_2001.93"
  3. 式に対応するレコードセットを取得します。
    Dim rsExpression
Set rsExpression = oExpressionStore.GetExpression(lExpressionID)
  4. 式の説明を変更します。
    rsExpression.Fields("ExprDesc").Value = _
 "Is the user named Joe and from WA?"
  5. 式を使い終わったら削除します。式の参照カウントが 0 以外の場合 (ほかの 1 つ以上の式がこの式に依存している場合) は、メソッドは失敗し、式は削除されません。
    oExpressionStore.DeleteExpression lExpressionID, 0

Set rsExpression = Nothing


単一の式を評価するコード

単一の式は、一連のプロファイルを格納している Dictionary オブジェクトに対して直接的に評価するか、保存されている評価コンテキストに対して間接的に評価することができます。保存されているコンテキストに対する式の評価については、「式のグループを評価するコード」を参照してください。

  1. 「式ストアに接続するコード」で作成した ExpressionEval オブジェクト (oExpressionEval) を使って、「新しい式を作成するコード」で作成した式を式キャッシュに読み込みます。この式の式 ID (lExpressionID) は、「式を操作するコード」で取得しました。式の読み込みは省略可能です。式をあらかじめ読み込んでいなかった場合は、実行時に Eval メソッドが式を読み込みます。
    oExpressionEval.LoadExpr lExpressionID
  2. 「評価コンテキストを作成するコード」で作成した dictProfiles コンテキストに格納されているデータに対して式を評価します。
    Dim vResult
vResult = oExpressionEval.Eval(lExpressionID, dictProfiles)

式の評価結果 vResult は True です。


式のグループを評価するコード

式のグループを同一のコンテキストに対して評価する場合は、評価する式ごとに評価コンテキストを作成/破棄することとなる Eval メソッドの反復よりも、保存するための評価コンテキストを作成しておくほうが効率的です。

  1. 「式ストアに接続するコード」で作成した ExpressionEval オブジェクト (oExpressionEval) を使って、「評価コンテキストを作成するコード」で作成した dictProfiles コンテキストを使う、保存するための評価コンテキストを作成します。
    Dim oEvaluationContext
Set oEvaluationContext = _
 oExpressionEval.CreateEvalContext(dictProfiles)
  2. 「新しい式を作成するコード」で作成した式を含め、式ストア内のすべての式を式キャッシュに読み込みます。この手順は省略可能です。あらかじめ読み込んでいなかったすべての式は、これらの式が評価される時点で EvalInContext メソッドによって読み込まれます。一部の式を読み込まない場合は、LoadExpr メソッドを使って個々の式を読み込むことができます。
    oExpressionEval.LoadAll
  3. 「新しい式を作成するコード」で作成した式の式 ID (lExpressionID) は、「式を操作するコード」で取得しました。この式を、評価コンテキストに対して評価します。
    Dim vResult
vResult = oExpressionEval.EvalInContext(lExpressionID, _
 oEvaluationContext)

式の評価結果 vResult は True です。

  4. 保存されている同じコンテキストを使ってほかの式を評価してから、コンテキストを解放します。
    Set oEvaluationContext = Nothing


式をインポートおよびエクスポートするコード

ここでは、式のグループをインポートおよびエクスポートする方法について説明します。インポート ファイルには、XML の式レコードセット スキーマと、インポートするそれぞれの式レコードセットの XML 表現が含まれている必要があります。エクスポートされたファイルの形式もこれと同じです。XML での式の構造については、「式の XML 構造」を参照してください。

  1. 「式ストアに接続するコード」で作成した ExpressionStore オブジェクト (oExpressionStore) を使って、ファイル Expressions.xml から式ストアへ式をインポートします。式ストアが空でない場合、メソッドは失敗します。
    oExpressionStore.Import "Expressions.xml"
  2. 式ストアに格納されている式をファイル Exported_Expressions.xml にエクスポートします。
    oExpressionStore.Export "Exported_Expressions.xml"


汎用オブジェクト

汎用オブジェクトは各種の機能を実行します。これには、イベント ログへのエラー イベントと警告イベントの書き込み、Web サイトのプロパティの取得、名前/値の組み合わせの格納、グローバル一意識別子 (GUID) の生成、およびサーバー側ファイルの内容の取得などがあります。

このトピックには、次の内容が含まれています。

  • 汎用プログラミングの概念 : 汎用オブジェクトの使用に関連する主な事項について説明します。

  • 汎用オブジェクトのサンプル コード : 汎用オブジェクトの詳しい使用例を示します。

関連項目

AdminEventLog オブジェクト

AdminFiles オブジェクト

CacheManager オブジェクト

Dictionary オブジェクト

GenID オブジェクト

LRUCache オブジェクト

SimpleList オブジェクト


汎用プログラミングの概念

次のオブジェクトは汎用オブジェクトと考えられ、Commerce Server 内の数多くのコンテキストで使うことができます。

  • AdminEventLog オブジェクト

  • AdminFiles オブジェクト

  • CacheManager オブジェクト

  • Dictionary オブジェクト

  • GenID オブジェクト

  • LRUCache オブジェクト

  • SimpleList オブジェクト

AdminEventLog オブジェクト

AdminEventLog オブジェクトは、エラー、情報、警告の各メッセージをイベント ログに書き込むために使います。イベント ログは Commerce Server マネージャのイベント ビューア スナップインで表示できます。

詳細については、「AdminEventLog オブジェクト」を参照してください。

AdminFiles オブジェクト

AdminFiles オブジェクトは、サーバー上のファイルの内容を返すために使います。ファイルの内容は、テキスト、ビットマップ、数値データなどのどのようなタイプでもかまいません。

詳細については、「AdminFiles オブジェクト」を参照してください。

CacheManager オブジェクト

CacheManager オブジェクトは、通常、Active Server Pages (ASP) アプリケーションの Global.asa ファイル内の Application_OnStart イベント中で作成されます。CacheManager オブジェクトは、ローダー コンポーネントとライタ コンポーネントという、ほかの Component Object Model (COM) オブジェクトのサービスを使います。ローダー コンポーネントはキャッシュにデータを設定し、ライタ コンポーネントは、キャッシュに収集されたデータを書き込みます。各キャッシュにはローダー コンポーネントが構成されている必要がありますが、ライタ コンポーネントは省略可能です。CacheManager オブジェクトは、作成するキャッシュごとに、LoaderProgId、LoaderConfig、WriterProgId、および WriterConfig の各プロパティを設定することで構成されます。

アプリケーションで 1 つ以上のキャッシュが構成された後、アプリケーション内の ASP ページは、CacheManager オブジェクトの GetCache メソッドを使って、キャッシュ内のデータにアクセスできます。返されるキャッシュ オブジェクトの種類 (Dictionary オブジェクトか LRUCache オブジェクトのどちらか) は、キャッシュの LoaderProgId プロパティの構成によって異なります。

CacheManager オブジェクトは、RefreshInterval プロパティに基づいた定期的な間隔で自動的に各キャッシュを更新するように構成することができます。キャッシュの自動更新は、RefreshInterval プロパティを既定の 0 に設定することで無効にすることもできます。また、CacheManager オブジェクトは、RetryInterval プロパティで制御する構成可能な一時停止の後で、失敗した読み込み処理を再試行します。

CacheManager オブジェクトは、(RefreshCache メソッドの明示的な呼び出しによって、または更新間隔の時間が経過したかどうかに応じて) キャッシュを更新する場合に、いくつかの処理を実行します。まず、ライタ コンポーネントが各キャッシュに設定されている場合、CacheManager オブジェクトは、ライタ コンポーネントを作成、構成、および実行して、最近の更新処理以降に収集したパフォーマンス データを記録します。ライタ コンポーネントが失敗した場合は、更新処理全体が中止されます。次に、CacheManager オブジェクトは、指定されたローダー コンポーネントを作成、構成、および実行して、キャッシュのデータを再設定します。ローダー コンポーネントは、キャッシュの既存の内容が最新のものであるかどうかを判定するように設計することができます。判定できない場合には、CACHE_E_NOCACHE_UPDATED メッセージを返すだけで十分です。CacheManager オブジェクトがこのリターン コードを認識した場合、CacheManager オブジェクトは、新しく作成されてローダー コンポーネントに渡されたキャッシュで既存のキャッシュを置き換えず、新しいキャッシュ オブジェクトに対するすべての変更は破棄されます。

詳細については、「CacheManager オブジェクト」を参照してください。

Dictionary オブジェクト

Commerce Server の Dictionary オブジェクトは、メモリ内のキー/値の組み合わせの作成、格納、取得をサポートするコレクション オブジェクトです。Dictionary オブジェクト内の要素はすべて Variant です。これは、いろいろな種類の値 (ほかの Dictionary オブジェクトを含む) から成る Dictionary オブジェクトを作成でき、Variant 型のどんな組み合わせでも同じ Dictionary オブジェクトに格納できることを意味します。

Commerce Server アーキテクチャでは、SiteConfig オブジェクトも含めて、いくつもの特別な用途に Dictionary オブジェクトが使われます。Dictionary オブジェクトは汎用コレクションとなるように設計されているので、その内部構造でサポートされていれば、ほとんどのものに使えます。

詳細については、「Dictionary オブジェクト」を参照してください。

GenID オブジェクト

このオブジェクトは、グローバル一意識別子 (GUID) の生成に使います。

詳細については、「GenID オブジェクト」を参照してください。

LRUCache オブジェクト

このオブジェクトは、キャッシュのキー/値の組み合わせの作成、格納、取得をサポートするために使います。LRUCache オブジェクトは、限られた数の要素しか格納できないこと以外は、Dictionary オブジェクトと同じです。LRUCache オブジェクトは、要素が使われてからの経過時間の長さに応じて要素を順位付けします。LRUCache オブジェクトの容量がいっぱいになると、使われてからの時間が最も長い要素がキャッシュから削除されて、新しい要素が追加されます。LRUCache オブジェクトで使われる置き換えアルゴリズムは大まかなものであり、最大サイズ設定の 110 パーセントまでキャッシュ サイズを拡大できます。この上限に達すると、最後に使われてからの経過時間の長い順に、項目の 10 パーセントがキャッシュから削除されます。

詳細については、「LRUCache オブジェクト」を参照してください。

SimpleList オブジェクト

Commerce Server の SimpleList オブジェクトは、インデックスによる列挙とアクセスをサポートする Variant の配列で構成されます。SimpleList オブジェクトは Commerce Server 全体で広範囲にわたって使われます。格納されている内容をインデックスでアクセスすることが重要な場合は、Dictionary オブジェクトではなく SimpleList オブジェクトを使います。

詳細については、「SimpleList オブジェクト」を参照してください。


汎用オブジェクトのサンプル コード

ここでは、汎用オブジェクトの詳しいコードの使用例を示します。

ここでは、次のトピックについて説明します。

  • エラー イベントを Commerce Server のイベント ログに書き込むコード : エラー イベントを Commerce Server 2000 のイベント ログに書き込む方法について説明します。

  • サーバー側ファイルの内容を読み取って表示するコード : サーバー側にあるファイルの内容を読み取る方法とその内容をブラウザに表示させる方法について説明します。

  • ディクショナリ値をダンプするコード : Dictionary オブジェクトの内容をダンプする方法について説明します。

  • SimpleList を作成および操作するコード : SimpleList オブジェクトを作成および操作する方法について説明します。

  • カスタム キャッシュ コンポーネントを実装するためのコード : カスタム キャッシュ コンポーネントを実装する方法について説明します。

  • LRUCache オブジェクトを操作するコード : LRUCache オブジェクトを操作する方法について説明します。

  • GUID を生成するコード : グローバル一意識別子 (GUID) を生成する方法について説明します。


エラー イベントを Commerce Server のイベント ログに書き込むコード

ここでは、エラー イベントをイベント ログに書き込む方法について説明します。

この例では、WriteErrorEvent メソッドの第 1 パラメータに、Commerce Server 2000 がインストールされているサーバーの名前を指定します。第 2 パラメータには、イベントのメッセージ文字列を指定します。

次のコードを使って、サンプル ASP ページを作成します。

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim oAdminEventLog
Set oAdminEventLog = Server.CreateObject("Commerce.AdminEventLog")
oAdminEventLog.Initialize("myServerName")
oAdminEventLog.WriteErrorEvent "mySite", "Error Event Message String"
%>
</BODY>
</HTML>


サーバー側ファイルの内容を読み取って表示するコード

この例では、AdminFiles オブジェクトの ReadFromFile メソッドを使って、テキスト ファイルの内容を読み取ります。次に、インターネット インフォメーション サービス (IIS) 固有のメソッド Response.Write を使って、その内容をブラウザに書き込みます。テキスト ファイル以外のファイルを読み取って書き込む場合は、Response.WriteBinary メソッドと一緒に、AdminFiles オブジェクトの ReadFromBinaryFile メソッドを使います。

次のコードを使って、サンプル ASP ページを作成します。

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim oAdminFiles, strRet
Set oAdminFiles = Server.CreateObject("Commerce.AdminFiles")
strRet = oAdminFiles.ReadFromFile("c:\temp\Sample.txt")
Response.Write strRet
%>
</BODY>
</HTML>


ディクショナリ値をダンプするコード

Dictionary オブジェクトを明示的に作成する必要がある場合 (つまり、ほかの Commerce Server 2000 のオブジェクトでオブジェクトが作成されない場合) は、次のように インターネット インフォメーション サービス (IIS) 固有の Server オブジェクトの CreateObject メソッドを使います。

Dim oMyDictionary
Set oMyDictionary = Server.CreateObject("Commerce.Dictionary")

オブジェクトを作成した後、次のようにオブジェクトに要素を追加します。

oMyDictionary.first_name = "Steve"

この例では、first_name が Dictionary キーで、"Steve" はこのキーに割り当てられた値になります。

Dictionary オブジェクトから値を抽出する方法はいくつかあります。object.key 識別子を代入ステートメントの右辺に配置することができます。こうした代入によって、参照されたキーの値が返されます。

my_first_name = oMyDictionary.first_name

または、Value メソッドを使って、指定されたキーの値を取得することができます。

my_first_name = oMyDictionary.value("first_name")

Microsoft Visual Basic Scripting Edition (VBScript) の For Each ステートメントを使って、Dictionary オブジェクトのキーまたは値を次のように列挙することもできます (この例では、ディクショナリのすべての値にテキストが含まれているものと仮定しています)。

' Get the key names.
For Each element in oMyDictionary
    Response.Write element
next

' Get the values.
For Each element in oMyDictionary
    Response.Write oMyDictionary.Value(element)
Next

次の例では、新しい Dictionary オブジェクトを作成し、first_name と last_name という 2 つのキーに値を読み込んで、要素名と要素値をブラウザに書き込みます。

Set oMyDictionary = Server.CreateObject("Commerce.Dictionary")
oMyDictionary.first_name = "Sam"
oMyDictionary.last_name = "Stone"

' Get the key names.
For Each element in oMyDictionary
    Response.Write "Key = " & element
    Response.Write "    Value = " & oMyDictionary.Value(element)
    Response.Write "<br>"
Next


SimpleList を作成および操作するコード

次の例では、ColorList という新しく作成した SimpleList オブジェクトにいくつかの色の値を追加します。色を追加したら、3 番目の色の値 (2 のインデックス値を持つ青) を削除します。その後、コードは、SimpleList 内の項目数を判定するために Count プロパティを使ってリストを繰り返し処理し、残りのそれぞれの色を順にブラウザに書き込みます。

次に ASP のサンプル コードを示します。

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim ColorList, Count
Set ColorList = Server.CreateObject("Commerce.SimpleList")
Call ColorList.Add("Red")
Call ColorList.Add("Green")
Call ColorList.Add("Blue")
Call ColorList.Add("Fuschia")
Call ColorList.Delete(2)

' Count will be 3, not 4.
Count = ColorList.Count

' Output will be "Red  Green  Fuschia" on a line by itself.
For i = 0 To (Count - 1)
    Response.Write ColorList(i) & "  "
Next
Response.Write "<br>"
%>
</BODY>
</HTML>


カスタム キャッシュ コンポーネントを実装するためのコード

ローダー コンポーネントとライタ コンポーネントは、コンテンツ選択フレームワーク (CSF) 内でキャッシュを読み込んで、キャンペーン結果を書き出すために使います。

ローダー コンポーネントとライタ コンポーネントは、アパートメント スレッドでもかまいません。これらのコンポーネントは、作成されてから 1 回しか使われずに、同じスレッドによって破棄されるからです。これは、これらのコンポーネントを Microsoft Visual Basic で記述できることを意味します。

ローダー コンポーネントとライタ コンポーネントは、パイプライン コンポーネントとして実装されています。ただし、パイプラインのコンテキストで実行することを目的としたものではありません。ローダー コンポーネントとライタ コンポーネントを CacheManager オブジェクトが実行できるようにするには、これらのコンポーネントで IPipelineComponent インターフェイスの Execute メソッドを実装する必要があります。さらに、ローダー コンポーネントとライタ コンポーネントに構成が必要な場合は、IPipelineComponentAdmin インターフェイスの SetConfigData メソッドをこれらのコンポーネントで実装する必要があります。次の表は、この要件についての詳細を示します。

ローダー コンポーネント

実装するメソッド 詳細
IPipelineComponent::

Execute

 ローダー コンポーネントを実行するために必要です。

キャッシュ インスタンスが存在する場合は、pDispContext パラメータに既存のキャッシュ インスタンスを設定し、存在しない場合は、pDispContext パラメータに新しい空のキャッシュ オブジェクトを設定する必要があります。キャッシュの LoaderProgId 設定に指定されたキャッシュ オブジェクトが Dictionary オブジェクトの場合は、次の追加エントリが設定されます。

  • _CacheName : 更新されるキャッシュの名前が設定されます。

  • _CacheRefreshInterval : 更新間隔が設定されます。

  • _CacheFirstRefresh : 最初のキャッシュ更新時に 1 に設定され、2 度目以降に 0 に設定されます (条件付きのエラー ログ記録に使用できます)。

  • _AppUrl : AppURL プロパティがある場合にこのプロパティの値が設定されます。このエントリは省略可能であり、CacheManager オブジェクトが ASP アプリケーション内で実行されていない場合は設定できません。

pDispOrder パラメータには、LoaderProgId プロパティの設定に基づいて新しいキャッシュ オブジェクト (通常は Dictionary オブジェクトまたは LRUCache オブジェクト) が設定され、このキャッシュ オブジェクトが新しいキャッシュになります。

lFlags パラメータはゼロ (0) に設定されます。

plErrorLevel パラメータは戻り時に無視されます。
IPipelineComponentAdmin::

SetConfigInfo

 省略可。これが必要なのは、ローダー コンポーネントに構成が必要な場合だけです。LoaderConfig プロパティが設定されている場合に呼び出されます。

pDict パラメータには、LoaderConfig プロパティで指定された Dictionary オブジェクトの位置が設定されます。

ライタ コンポーネント

実装するメソッド | 詳細
IPipelineComponent:: Execute | ライタ コンポーネントを実行するために必要です。 pDispOrder パラメータには、既存のキャッシュ インスタンスが設定されます。通常、ライタ コンポーネントは、ディスクに書き込むデータをキャッシュから取得します。 pDispContext パラメータには Null が設定されます。 lFlags パラメータはゼロ (0) に設定されます。 plErrorLevel パラメータは戻り時に無視されます。
IPipelineComponentAdmin:: SetConfigInfo | 省略可。これが必要なのは、ライタ コンポーネントに構成が必要な場合だけです。WriterConfig プロパティが設定されている場合に呼び出されます。 pDict パラメータには、WriterConfig プロパティで指定された Dictionary オブジェクトの位置が設定されます。

' Create a Cache manager component and configure it
Set dictConfig = CreateObject("Commerce.Dictionary")
dictConfig("ConnectionString") = "DSN=adsamples;UID=sa;PWD="
Set CacheManager = Server.CreateObject("Commerce.CacheManager")
CacheManager.LoaderProgId("advertising") = "Commerce.LoadAdvertisements"
Set CacheManager.LoaderConfig("advertising") = dictConfig
CacheManager.WriterProgId("advertising") = "Commerce.WriteEvents"
Set CacheManager.WriterConfig("advertising") = dictConfig
CacheManager.RefreshInterval("advertising") = 10 * 60
CacheManager.RetryInterval("advertising") = 60
Set application("CacheManager") = CacheManager

これで、アプリケーション内の Web ページを使って、指定されたスケジュールにすばやくアクセスできます。

Set CacheManager = application("CacheManager")
Set dictSchedule = CacheManager.GetCache("advertising")


LRUCache オブジェクトを操作するコード

次のサンプル コードは、LRUCache オブジェクトの使用方法を示しています。

' Declare variables to be used.
Dim oLRUCache, oDict, oNewDict, NumVal

' Create an instance of an LRU cache.
Set oLRUCache = CreateObject("Commerce.LRUCache")

' Set the max cache size to 100 items.
oLRUCache.SetSize 100

' Create an object to store.
Set oDict = CreateObject("Commerce.Dictionary")
oDict("Test") = "This is a test."

' Store the Dictionary object.
oLRUCache.Insert "DictObject", oDict

' Store the number 10.
oLRUCache.Insert "Number", 10

' Lookup the stored Dictionary object using method LookupObject.
Dim oNewDict
Set oNewDict = oLRUCache.LookupObject "DictObject"

' Lookup the stored number using method Lookup.
Dim NumVal
NumVal = oLRUCache.Lookup "Number"

' Remove all items from the cache.
oLRUCache.FlushAll

' Display the results, which will be:
' This is a test.
' 10
Response.Write "Dictionary data from cache: " & oDict.Test & "<BR>"
Response.Write "Number stored in cache: " & NumVal & "<BR>"


GUID を生成するコード

次のサンプル コードは、グローバル一意識別子 (GUID) を生成する方法を示しています。

Dim oGenID, sGUID
Set oGenID = Server.CreateObject("Commerce.GenID")

sGUID = oGenID.GenGUIDString()
Set oGenID = Nothing


リスト管理オブジェクト

ListManager オブジェクトは、リストを作成および管理するメソッドを提供します。これらのリストは、User Profile Management システムのユーザーのリスト、ダイレクト メーラーの電子メール アドレスのリスト、予測リソースのセグメント メンバのリスト、分析レポートから生成されたリスト、ファイルおよび Structured Query Language (SQL) クエリから作成されたリストのいずれかになります。

ここでは、次のトピックについて説明します。

  • リスト管理プログラミングに関する概念 : リスト マネージャ サービスと、このサービスで公開されるオブジェクトについて説明します。

  • ListManager オブジェクトのサンプル コード : ListManager オブジェクトの詳しい使用例を示します。

関連項目

ダイレクト メール リストを作成および管理する

レポートをリスト マネージャにエクスポートする

セグメントのデータをリスト マネージャにエクスポートする

ユーザー レコード リストを管理する

ListManager オブジェクト


リスト管理プログラミングに関する概念

リストの種類

リスト マネージャには、2 種類のリスト (汎用リストとメーリング リスト) を操作する機能があります。それぞれのリストには、ユーザー属性とメールが利用可能な属性があります。リストは、データをいつインポートするかによって静的または動的と指定されます。

メーリング リストはダイレクト メーラーで使用します。これには、電子メールの広告を受け取ることが指定されている受信者のリスト、またはそのようなメールを受信すべきではない受信者のリストが含まれます。フラグの既定値は、メーリング リストを示します。LISTFLAG_GENERIC フラグは、リストを作成する時点、またはリストをインポートする時点 (作成するリストが汎用リストでない場合) で設定する必要があります。メーリング リストは、特定の列名と列型のセットがあるリストを意味します。メーリング リストは、メールが利用可能な汎用リストから自動的に抽出されることがありますが、ダイレクト メーラーが使用するのはメーリング リストだけです。

汎用リストには、列名と列型のセットを含めることができます。汎用リストは、必ず SQL Server データベース テーブルにマップされます。分析レポート機能または予測セグメント ビューアからリスト マネージャにリストをインポートする場合、リストは汎用リストとしてインポートされます。汎用リストが一定の条件を満たしている場合は、メーリング リストに変換することができます。汎用リストは SQL クエリからインポートできますが、フラット ファイルからはインポートできません。

メールが利用可能なリストは、rcp_email 列を含む任意のリストです。メールが利用可能なリストをインポートまたは作成する場合は、LISTFLAG_MAILABLE フラグを設定することで、そのリストがメールが利用可能なリストであることを指定します。汎用リストは必ずしもメールが利用可能とは限りませんが、メーリング リストは常にメールが利用可能です。汎用リストをインポートすると、メールが利用可能なリストを ListManager が自動的に検出しようとし、適切なフラグを設定します。メールが利用可能なリストのフラグは、ダイレクト メーラー機能との統合のために存在します。これによって、ダイレクト メーラーは電子メールの受信者リストと脱退リストに使用するリストを識別することができます。

ユーザー リストは、rcp_guid 列を含む任意のリストです。ユーザー リストをインポートまたは作成する場合は、LISTFLAG_USER フラグを設定することで、そのリストがユーザー リストであることを指定します。汎用リストは必ずしもユーザー リストとは限りませんが、メーリング リストは常にユーザー リストです。汎用リストをインポートすると、ユーザー リストをリスト マネージャが自動的に検出しようとし、適切なフラグを設定します。ユーザー リストのフラグは、User Profile Management 機能との統合のために存在します。たとえば、Commerce Server ビジネス デスクのセグメント ビューア モジュールからリストをインポートし、特定のセグメントに所属していることを示すプロパティを、そのリストに含まれる各ユーザーのユーザー プロファイルに設定できます。その後、この情報は、コンテンツ選択フレームワークで広告や割引の対象を設定するために利用できます。

リストは静的リストまたは動的リストとして作成されます。静的リストでは、リストの作成時にレコードがインポートされます。動的リストでは、別の操作によって参照されたときに、必要に応じてレコードがインポートされます。

フラグの値

次の表は、作成されるリストの種類を決定するフラグ パラメータの値を示します。論理 OR 演算子を使用して値を結合すると、複数のフラグを指定できます。

リストの種類 | 値 | 説明
既定 | 0x0 | メーリング リスト。
非表示 | 0x1 | リストはユーザー インターフェイスにエクスポートしないでください。
動的 | 0x2 | 動的リスト。
ユーザー | 0x4 | ユーザー リスト (rcp_guid 列が含まれている)。
汎用 | 0x8 | 汎用リスト。
メールが利用可能 | 0x10 | メールが利用可能なリスト (rcp_email 列が含まれている)。

インポート/エクスポート

リスト マネージャでは、次のソースからリストをインポートできます。

  • オープン データベース コネクティビティ (ODBC) データ ソースに対して実行する SQL クエリ

  • Commerce Server ビジネス デスクから実行する分析レポート

  • 予測リソースのセグメント

  • テキスト ファイル (カンマ区切り値 (CSV) 形式)

リスト マネージャでは、次の形式にリストをエクスポートできます。

  • 外部データベースにある SQL Server 2000 のテーブル

  • テキスト ファイル (CSV 形式)

テキスト ファイル

リストをインポートまたはエクスポートするときに絶対ファイル パスとファイル名が指定されていない場合、リスト マネージャは、リスト マネージャ サービスを実行しているローカル コンピュータ上の CommerceLists というルート フォルダに対して相対的なファイルを探します。フォルダが存在しない場合、エラーが返されます。

リスト マネージャでは、次の入力テキスト ファイル形式が認識されます。

<Mail-to Address>,<User ID>,<Format>,<Locale>,<Source URL><cr><lf>

必要なフィールドは Mail-to Address だけです。省略可能な Format フィールドには、1 - TEXT、2 - MIME、3 - MHTML のいずれかを指定します。フィールドを囲む二重引用符はすべて削除されます。末尾にカンマがあるとエラーの原因になります。

リスト マネージャは、上の説明と同じ形式でテキスト ファイルをエクスポートし、すべてのフィールドを二重引用符で囲みます。

非同期モード

リスト マネージャでは、非同期方式で時間のかかる操作を実行できます。非同期方式では、操作は処理の開始直後に戻ります。操作を非同期に開始するアプリケーションでは、ほかに次のメソッドが利用できるようになります。

  • WaitOnOperation メソッドは、操作が完了した時点、またはタイムアウトの時点で制御を戻します。

  • GetOperationInfo メソッドは、現在の状態を含め、操作のすべての詳細を返します。

  • CancelOperation メソッドは、操作の停止を通知します。2 分以内に停止しない場合、操作は終了します。

データベース テーブル

リスト マネージャでは、リストに関する情報は lm_master データベース テーブルに、操作に関する情報は lm_master_operations データベース テーブルに保存されます。これらのテーブルの書式については、「ListManager.GetLists」と「ListManager.GetOperations」を参照してください。


ListManager オブジェクトのサンプル コード

ここでは、ListManager オブジェクトの使用例を示します。サンプル コードは、Microsoft Visual Basic Scripting Edition (VBScript) で記述されています。一部のサンプル コードでは非同期操作が使用されているので、Active Server Pages (ASP) で実行する場合は修正が必要です。サンプル コードでは、正しく機能するコードに必要な、エラー チェックや特定の手続きは示されていません。

ここでは、次のトピックについて説明します。

  • ListManager オブジェクトを初期化するコード : ListManager オブジェクトを作成および初期化する方法について説明します。

  • リストを作成するコード : ファイルからリストを作成する方法について説明します。

  • リストを操作するコード : リストに対して実行する操作 (コピー、削除、結合、エクスポートなど)、およびユーザーをリストに追加または削除する手順について説明します。

  • 利用可能なリストを列挙するコード : 利用可能なリストの取得と列挙の方法、およびリストのプロパティ (リストの名前や説明など) を設定する方法について説明します。


ListManager オブジェクトを初期化するコード

  1. ListManager オブジェクトを作成します。
    Dim oListManager
Set oListManager = CreateObject("Commerce.ListManager")
  2. オブジェクトを初期化します。
    oListManager.Initialize "Provider=sqloledb;" & _
 "Data Source=TequillaServer;Initial Catalog=Margaritas;" & _
 "User ID=userid;Password=******"


リストを作成するコード

リストは、テキスト ファイル、SQL クエリ、分析レポート、または予測リソースのセグメントから作成できます。ここでは、Users.csv というファイルから 'Users1' というリストを作成する方法について説明します。リストを作成したら、リストにインポートされた一意のユーザーの数を取得します。

  1. Users.csv テキスト ファイルを作成します。ユーザーのグループの電子メール アドレスとユーザー ID を含む、ファイルの部分的な見本を次に示します。
    joeuser@roguecellars.com,Newuser_R121
barneyuser@fabrikam.com,Olduser_F3
bettyuser@arborshoes.com,Newuser_A872
jackuser@vigorairlines.com,Olduser_V83
jilluser@microsoft.com,Olduser_M2901
  2. 「ListManager オブジェクトを初期化するコード」で作成した、初期化済みの ListManager オブジェクト (oListManager) を使用して、メールが利用可能なユーザー リスト (userFlags = 20) をテキスト ファイルから作成します。
    Dim vListID1, vOperationID
vListID1 = oListManager.CreateFromFile("Users1", "Just users", _
 20, 0, "D:\Users.csv", 0, True, vOperationID)
  3. リストを作成するための最大許容時間を 10 分 (600 秒) に設定します。この時間内にリストが作成されなかった場合、メソッドはエラーを返します。
    oListManager.WaitOnOperation vOperationID, 600
  4. 作成の操作が完了したら、インポートされた一意の電子メール アドレスの数を取得します。
    Dim rsOperationInfo, vOperationStatus, vUniqueUsers
Set rsOperationInfo = oListManager.GetOperationInfo(vOperationID)
vOperationStatus = rsOperationInfo("op_status")
If vOperationStatus = 0 Then
   vUniqueUsers = oListManager.GetListProperty(vListID1, _
     "list_unique_emails")
   Wscript.Echo "Number of unique users is " & vUniqueUsers & vbCrLf
ElseIf vOperationStatus = 1 Then
   Wscript.Echo "List still being created" & vbCrLf
ElseIf vOperationStatus = -1 Then
   Wscript.Echo "List creation failed" & vbCrLf
Else
   Wscript.Echo "Bad status code" & vbCrLf
End If
  5. オブジェクトを解放します。
    Set oListManager = Nothing
Set rsOperationInfo = Nothing


リストを操作するコード

  1. 「ListManager オブジェクトを初期化するコード」で作成した、初期化済みの ListManager オブジェクト (oListManager) を使用して、'Users2' という名前の新しい空のリストを作成します。
    Dim vListID2
vListID2 = oListManager.CreateEmpty("Users2", "More users", 20, 0)
  2. 「リストを作成するコード」で作成したリスト 'Users1' を、新しいリストにコピーします。
    oListManager.Copy "Users1", vListID2, False
  3. 'Users2' リストから 3 名のユーザーを削除します。
    oListManager.RemoveUserFromMailingList "Users2", _
 "barneyuser@fabrikam.com"

oListManager.RemoveUserFromMailingList "Users2", _
 "jackuser@vigorairlines.com"

oListManager.RemoveUserFromMailingList "Users2", _
 "jilluser@microsoft.com"
  4. 'Users2' リストに 2 名の新しいユーザーを追加します。
    oListManager.AddUserToMailingList "Users2", _
 "janeuser@fabrikam.com", Newuser_F554

oListManager.AddUserToMailingList "Users2", _
 "freduser@vigorairlines.com", Newuser_V919
  5. 'Users1' リストと 'Users2' リストに対して結合と削除を実行します。結合と削除の操作の結果を保持するリストは、メソッドを実行する前に存在していなければなりません。次の表は、その結果を示しています。
    oListManager.CreateEmpty "Union", "Unique users", 20, 0
oListManager.CreateEmpty "Subtract", "Remaining users", 20, 0
oListManager.Union "Users1", "Users2", "Union", 0, False
oListManager.Subtract "Users1", "Users2", "Subtract", 0, False
    Users1 | Users2 | Union | Substact
    joeuser@roguecellars.com | joeuser@roguecellars.com | joeuser@roguecellars.com | barneyuser@fabrikam.com
    barneyuser@fabrikam.com | bettyuser@arborshoes.com | barneyuser@fabrikam.com | jackuser@vigorairlines.com
    bettyuser@arborshoes.com | janeuser@fabrikam.com | bettyuser@arborshoes.com | jilluser@microsoft.com
    jackuser@vigorairlines.com | freduser@vigorairlines.com | jackuser@vigorairlines.com
    jilluser@microsoft.com | jilluser@arborshoes.com
    janeuser@fabrikam.com
    freduser@vigorairlines.com

  6. Union リストを NewUsers という SQL Server データベース テーブルにエクスポートして、以前のデータを上書きします。操作が完了したら、このリストを削除します。
    sConnect = "Provider=sqloledb;Data Source=TequillaServer;" & _
 "Initial Catalog=Margaritas;User ID=userid;Password=******"

oListManager.ExportToSQL "Union", sConnect, "NewUsers", True, 0, False

oListManager.Delete "Union"


利用可能なリストを列挙するコード

ここでは、利用可能なリストを列挙して、1 つのリストのプロパティ (リストの名前や説明など) を変更する方法について説明します。

  1. 「ListManager オブジェクトを初期化するコード」で作成した、初期化済みの ListManager オブジェクト (oListManager) を使用して、リストが含まれる Recordset オブジェクトを取得します。
    Dim rsLists
Set rsLists = oListManager.GetLists()
  2. リストの説明を繰り返し処理し、Unique users (一意のユーザー) という説明のあるリストを検索します。見つかったら、名前を UserFamily に変更し、説明を変更して、いくつかのフラグを追加します。GetLists メソッドで返されるレコードセットは読み取り専用であることに注意してください。
    Dim vListID
While Not rsLists.EOF
   If rsLists("list_description") = "Unique users" Then
      vListID = rsLists("list_id")
      oListManager.SetListProperty vListID, "list_name", "UserFamily"
      oListManager.SetListProperty vListID, "list_description", _
       "Members of the User family"
      oListManager.SetListProperty vListID, "list_userflags", 255       Exit While
   rsLists.MoveNext
Wend


パイプライン オブジェクト

パイプライン オブジェクトは、パイプライン構成ファイルを使って、一連のパイプライン コンポーネントを実行します。ここでは、パイプライン オブジェクトとパイプライン コンポーネントの使い方を示すサンプル コードを紹介します。

ここでは、次のトピックについて説明します。

  • パイプライン プログラミングに関する概念 : パイプラインの概要、パイプラインのイベント シーケンス、およびパイプラインのカスタマイズ方法について説明します。

  • パイプライン オブジェクトのサンプル コード : コードを使って、パイプラインとパイプライン コンポーネントを呼び出す方法について説明します。


パイプライン プログラミングに関する概念

パイプラインは、1 ステージ以上のビジネス プロセスを定義して相互にリンクし、それらを順次実行して特定のタスクを完了する、拡張可能なソフトウェア フレームワークです。たとえば、注文処理パイプライン (OPP) は、サイトで行われた購入の処理に使われる一連の手順を提供します。OPP の最初のステージでは、カタログ データベースから商品情報を取得します。次のステージでは、注文にユーザーの住所を追加します。パイプラインの各ステージは、作業のカテゴリを表します。各ステージの順序によって、作業を完了する順序が決まります。

Commerce Server 2000 には、Commerce Server サイトで必要とされる標準的な処理の大部分を実行する、パイプラインのセットが用意されています。サイト開発者は、サイトのニーズに応じて、これらのパイプラインを調整できます。たとえば、パイプラインに新しいステージを追加したり、パイプライン コンポーネントを既存のシステムと統合したり、コンポーネントをサードパーティが供給するほかのコンポーネントに置き換えることができます。


パイプライン オブジェクトのサンプル コード

ここでは、パイプライン コンポーネントとパイプラインを呼び出す方法について、詳細な例を示します。

ここでは、次のトピックについて説明します。

  • 単一のパイプライン コンポーネントを呼び出すコード : Micropipe オブジェクトを使って、単一のコンポーネントを実行する方法について説明します。

  • パイプラインを呼び出すコード : パイプラインの実行に必要なオブジェクトとディクショナリを設定するためのサンプル コードを示します。


単一のパイプライン コンポーネントを呼び出すコード

MicroPipe オブジェクトは通常、ページ単位で作成され、使われます。MicroPipe オブジェクトを呼び出す手順は、ほかのパイプラインを実行する場合と基本的に同じです。

  1. 必要なディクショナリ、MicroPipe オブジェクト、およびパイプライン コンポーネントのインスタンスを作成します。

  2. Order ディクショナリと Context ディクショナリを設定します。必要に応じて Configuration ディクショナリも設定します。

  3. Configuration ディクショナリを使って、またはコンポーネント プロパティを設定して、コンポーネントを設定します。使用する方法は、コンポーネントによって異なります。

  4. MicroPipe オブジェクトを読み込んで実行します。

  5. ページで作成されたオブジェクトをクリーンアップします。

次の例は、ディクショナリとプロパティによって構成されたコンポーネントで使う MicroPipe オブジェクトを示しています。

ディクショナリによって構成されたコンポーネントの例

次のサンプル コードは、ディクショナリによって構成された SendSMTP パイプライン コンポーネントを持つ MicroPipe オブジェクトの使い方を示しています。

' Create Order, Context, and Configuration dictionaries.
Set dOrder = Server.CreateObject("Commerce.Dictionary")
Set dContext = Server.CreateObject("Commerce.Dictionary")
Set dConfig    = Server.CreateObject("Commerce.Dictionary")

' Set values in the Configuration dictionary.
' Not all required values are shown.
dConfig("SubjectField") = "subject_field"
dConfig("BodyField") = "We will no longer accept bruised papayas" _
                       & " or mushy melons."
dConfig("BodyType") = 1

' Set values in the Order dictionary.
' Not all required values are shown.
dOrder("subject_field") = "To All Suppliers"

' Create an instance of the SendSMTP pipeline component.
Set pSMTP = Server.CreateObject("Commerce.SendSMTP")

' Create an instance of the MicroPipe object.
Set oMicropipe = Server.CreateObject("Commerce.MicroPipe")

' Configure the SendSMTP component with the Configuration dictionary.
pSMTP.SetConfigData dConfig

' Tell the MicroPipe which component to run, and run it.
oMicropipe.SetComponent pSMTP
errVal = oMicropipe.Execute(dOrder,dContext,lFlags)

' Checking for pipeline errors would be done here.

' Clean everything up.
Set dOrder = Nothing
Set dContext = Nothing
Set dConfig = Nothing
Set pSMTP = Nothing
Set oMicropipe = Nothing

プロパティを設定して構成されたコンポーネントの例

次のサンプル コードは、プロパティを設定して構成されたパイプライン コンポーネント CopyValue3 を持つ MicroPipe オブジェクトの使い方を示しています。このコンポーネントは、Microsoft Visual Basic ActiveX コントロールとして記述されています。プロパティ KeytoCopy は、その値として Order ディクショナリのキーを持ちます。このコンポーネントは、古いキー名をコピーしてプレフィックス copy_ を付け、元のキーの値をそれに割り当てて、新しいキーを作成します。

' Create Order and Context dictionaries.
Set dOrder = Server.CreateObject("Commerce.Dictionary")
Set dContext = Server.CreateObject("Commerce.Dictionary")

' Create an instance of the CopyValue3 pipeline component.
Set pCopyValue = Server.CreateObject("My.CopyValue3")

' Set the dictionary key to copy - a property.
pCopyValue.KeytoCopy = "this_key"

' Set up the order dictionary - give the key to copy a value.
dOrder("this_key") = "...on the light fantastic toe"

' Create an instance of the MicroPipe object.
Set oMicropipe = Server.CreateObject("Commerce.MicroPipe")

' Tell the MicroPipe which component to run, and then run it.
oMicropipe.SetComponent pCopyValue
errVal = oMicropipe.Execute(dictOrder,dictContext,lFlags)

' Checking for pipeline errors would be done here.

' Clean everything up.
Set dOrder = Nothing
Set dContext = Nothing
Set pValue = Nothing
Set oMicropipe = Nothing


パイプラインを呼び出すコード

パイプラインでパイプライン構成を使うには、MicroPipe オブジェクトの単一のコンポーネントを使う場合よりも少し多くの設定が必要です。通常、既に説明した手順のほかに、MessageManager オブジェクトを作成して、それに対するメッセージを Global.asa ファイルに追加する必要があります。MessageManager オブジェクトを使用するかどうかについては、各コンポーネントのドキュメントで説明しています。次のコードは、Application_OnStart プロシージャで MessageManager オブジェクトを作成する方法、および、特に ValidateCCNumber パイプライン コンポーネントに対してメッセージを追加する方法について示しています。

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Application_OnStart
    ' Set up the MessageManager and messages.
    Set oMessageManager = _
                      Server.CreateObject("Commerce.MessageManager")
    Call oMessageManager.AddLanguage("usa",&h0409)
    oMessageManager.defaultLanguage = "usa"
    Call oMessageManager.AddMessage("pur_cc_expired", _
                                    "Credit card has expired.")
    Call oMessageManager.AddMessage("pur_badcc", _
                             "The credit-card number is not valid.")
    ' Set up the data functions.
    Set oDataFunctions = Server.CreateObject("Commerce.DataFunctions")
    oDataFunctions.Locale = &H0409
    Application.Lock
        Set Application("MSCSMessageManager") = oMessageManager
        Set Application("MSCSDataFunctions") = oDataFunctions
    Application.UnLock
End Sub
</SCRIPT>

Context ディクショナリの作成とパイプライン自体の実行は、Commerce Server サイトで頻繁に行われるため、Util.asp など、個々の Active Server Pages (ASP) ページに含まれるユーティリティ プロシージャにこのコードをカプセル化すると便利です。

<%
Function GetPipeContextUtil()
    Set dContext("QueryMap") = MSCSQueryMap
    Set dContext("ConnectionStringMap") = MSCSConnectionStringMap
    Set dContext("SiteName") = MSCSDisplayName
    Set dContext("DefaultConnectionString") = _
                                      MSCSDefaultConnectionString
    dContext("Language") = "usa"
    Set dContext = Server.CreateObject("Commerce.Dictionary")
    Set dContext("MessageManager") = Application("MSCSMessageManager")
    Set dContext("DataFunctions") = Application("MSCSDataFunctions")
    Set UtilGetPipeContext = dContext
End Function
%>
<%
Function ExecPipeUtil(sPcfFile, dOrderForm, dContext)
    Dim sPcfPath
    sPcfPath = Request.ServerVariables("APPL_PHYSICAL_PATH") + _
                                                  "\config\" + _
                                                  sPcfFile)
    Set pPooled = Server.CreateObject("Commerce.PooledPipeline")
    Call pPooled.LoadPipe(sPcfPath)
    iErrLevel = pPooled.Execute(1, dOrderForm, dContext, 0)
    UtilRunPipe = iErrLevel
End Function
%>

次のコードは、パイプラインを実行するコードだけを示しています。アプリケーション全体では、より多くの値が OrderForm オブジェクトに追加される可能性があります。

<%@ Language=VBScript %>
<!-- #include file="util.asp" -->
<%
    ' Create dictionary object orderform

    Set dOrderForm = Server.CreateObject("Commerce.OrderForm")

    dOrderForm.[cc_type] = sCardType
    dOrderForm.[_cc_number] = sCardNumber
    dOrderForm.[_cc_expmonth] = sExpMonth
    dOrderForm.[_cc_expyear] = sExpYear

    ' Create the pipe context

    Set dPipeContext = GetPipeContextUtil()

    ' Run the pipeline
    iErrLevel = ExecPipeUtil("plan.pcf", dOrderForm, dPipeContext)

%>


予測オブジェクト

予測リソースには、類似する属性と行動に基づいてユーザーをグループ (セグメント) に分類するとともに、ユーザーの行動と未知のユーザー属性を予測するために使われる分析モデルを構築する機能があります。データベース テーブルのセットに含まれるモデル構成は、モデルの構築に使われる情報を提供します。オブジェクトは、構築プロセスの制御、モデルとモデル構成へのアクセス、および予測を行うするために公開されます。

ここでは、次のトピックについて説明します。

  • 予測プログラミングに関する概念 : 予測リソースのコンポーネントについて説明します。

  • 予測オブジェクトのサンプル コード : 予測リソースによって公開されたオブジェクトの使い方に関して詳細なサンプル コードを示します。

関連項目

予測スキーマ

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


予測プログラミングに関する概念

ここでは、予測リソースのコンポーネントについて説明します。

分析モデル

利用できるモデルには 2 種類あります。予測モデルは、クロスセル パターンなどのユーザーの行動や、未知のユーザー属性を予測するために使います。セグメント モデルは、属性と行動に基づいてユーザーをグループ (セグメント) に分類し、特定のユーザーが所属するセグメントを予測するために使います。詳細については、「分析モデル」を参照してください。

分析モデル構成

モデル構成は、データベース テーブル セットに含まれます。これらの構成には、データ属性のデータ ソースやプロパティなど、分析モデルの構築に使われる情報が含まれます。詳細については、「予測スキーマ」を参照してください。

予測モデル ビューア

Microsoft 管理コンソール (MMC) の Commerce Server マネージャから利用できるこのブラウザでは、予測モデルをグラフィックで表します。詳細については、「分析モデルを表示する」を参照してください。

PredictorClient オブジェクト

このオブジェクトには、ユーザーの行動、未知のユーザーの属性、およびユーザーが所属するセグメントを予測するためのメソッドが用意されています。詳細については、「PredictorClient オブジェクト」を参照してください。

PredictorServiceAdmin オブジェクト

このオブジェクトには、利用可能なモデルとモデル構成のリストがあります。詳細については、「PredictorServiceAdmin オブジェクト」を参照してください。

PredictorServiceSiteAdmin オブジェクト

このオブジェクトには、モデルとモデル構成の名前の変更や削除を行うメソッド、およびセグメントのメンバのリストを生成するメソッドが用意されています。詳細については、「PredictorServiceSiteAdmin オブジェクト」を参照してください。

PredModelBuilder オブジェクト

このオブジェクトには、モデルの構築を制御するメソッドが用意されています。詳細については、「PredModelBuilder オブジェクト」を参照してください。

セグメント ビューア

Commerce Server ビジネス デスクから使うことのできるこのビューアは、セグメント モデルをグラフィックで表します。セグメント ビューアのデータは、PredictorServiceSiteAdmin オブジェクトの GenerateSegmentList メソッドを呼び出すリスト マネージャによって提供されます。詳細については、「ユーザーのセグメントを分析する」を参照してください。


予測オブジェクトのサンプル コード

ここでは、予測リソースによって公開されるオブジェクトの使い方の詳細なサンプル コードを示します。サンプル コードでは、正しく機能するコードに必要な、エラー チェックや特定の手続きは示されていません。

新しいモデル構成を作成するために利用できる予測アプリケーション プログラミング インターフェイス (API) はありません。データベース内のテーブルを直接変更する必要があります。詳細と例については、「予測スキーマ」を参照してください。

ここでは、次のトピックについて説明します。

  • データベース接続文字列を取得するためのコード : データベース接続文字列を取得する方法について説明します。

  • 新しいモデルを構築するためのコード : 新しいモデルを構築する方法について説明します。

  • モデルの構築を制御するためのコード : モデルの構築を制御する方法について説明します。

  • 利用できるモデルとモデル構成のリストを取得するためのコード : 利用可能なモデルとモデル構成を列挙する方法について説明します。

  • モデルとモデル構成の名前の変更および削除を行うためのコード : モデルとモデル構成の名前の変更と削除を行う方法について説明します。

  • モデルを読み込んで既定のプロパティを設定するためのコード : モデルを読み込んで、モデル予測の既定のプロパティを設定する方法について説明します。

  • 商品を予測するためのコード : 商品購入に関するユーザーの行動での "クロスセル" の機会を公開する方法について説明します。

  • ユーザーの属性を予測するためのコード : ユーザーに関する欠落しているプロファイル属性を決定する方法について説明します。

  • ユーザーを分類するためのコード : ユーザーを行動やプロファイルをベースにしたグループに分類する方法について説明します。


データベース接続文字列を取得するためのコード

  1. SiteConfigReadOnly オブジェクトを作成し、"Retail" サイト用に初期化します。
    Dim oSiteConfigReadOnly

Set oSiteConfigReadOnly = _
 Server.CreateObject("Commerce.SiteConfigReadOnly")

oSiteConfigReadOnly.Initialize "Retail"
  2. データ ウェアハウス接続文字列を取得します。
    Dim sDWConnect As String
sDWConnect = oSiteConfigReadOnly.Fields("Global Data Warehouse") _
 .Value.Fields("connstr_db_dw").Value

Set oSiteConfigReadOnly = Nothing


新しいモデルを構築するためのコード

次のサンプル コードは、新しい予測モデルを構築する方法を示しています。

  1. 構築パラメータを含むディクショナリを作成します。
    Dim dBuildParams As Commerce.Dictionary
Set dBuildParams = Server.CreateObject("Commerce.Dictionary")
  2. 構築パラメータをディクショナリに挿入します。これらのパラメータにはすべて既定値があるため、指定する必要がありません。既定では、モデルの種類は "予測" です。セグメント モデルを指定するには、ModelType を 1 に設定します。
    dBuildParams("ModelType") = 0
dBuildParams("ComplexityPenalty") = 75
dBuildParams("InputAttributeFraction") = 0.5
dBuildParams("MeasuredAccuracyMaxPredictions") = 10
dBuildParams("MeasuredAccuracySampleFraction") = 0.2
dBuildParams("MinimumCasesToSplit") = 10
dBuildParams("OutputAttributeFraction") = .5
dBuildParams("SampleSize") = 15,000
  3. ディクショナリを、構築パラメータを含む拡張マークアップ言語 (XML) 文字列に変換するためのオブジェクトを作成します。IPersistXML インターフェイスは、Microsoft Visual Basic Scripting Edition (VBScript) では利用できません。
    Dim oPersistXML As IPersistXML
Set oPersistXML = dBuildParams

Dim sXMLBuildParams As String
sXMLBuildParams = oPersistXML.SaveXML(0)

Set oPersistXML = Nothing
Set dBuildParams = Nothing
  4. PredModelBuilder オブジェクトを作成します。
    Dim oPredModelBuilder As Commerce.PredictorModelBuilder
Set oPredModelBuilder = _
 Server.CreateObject("Commerce.PredictorModelBuilder")
  5. 「データベース接続文字列を取得するためのコード」で取得された接続文字列 sDWConnect および「予測スキーマの例」で作成されたモデル構成の名前 PurchaseCfg1 を使って、新しいモデル Purchase1 の構築を開始します。Start メソッドによって返される値 lBuildID が、実行中または中断している構築スレッドにアクセスするために使われます。
    Dim lBuildID
lBuildID = oPredModelBuilder.Start(sDWConnect, "", _
 "PurchaseCfg1", "Purchase1", sXMLBuildParams, True)
  6. オブジェクトを解放します。
    Set oPersistXML = Nothing
Set dBuildParams = Nothing
Set oPredModelBuilder = Nothing


モデルの構築を制御するためのコード

ここでは、構築の状態を取得する方法、および構築を中断、再開、停止する方法について説明します。なお、構築の優先順位は、取得されると高くなります。

  1. PredModelBuilder オブジェクトの oPredModelBuilder を使って、「新しいモデルを構築するためのコード」で作成された構築スレッド lBuildID の状態を確認します。列挙された構築の状態については、「PredModelBuilder.Status」を参照してください。
    Response.Write "Build " & lBuildID & " is "
Select Case oPredModelBuilder.Status(lBuildID)
Case PredBldRunning
Response.Write "Running <P>"
Case PredBldPaused
Response.Write "Paused <P>"
Case PredBldShuttingDown
Response.Write "ShuttingDown <P>"
Case Else
Response.Write "No status <P>"
End Select
  2. 構築が実行中であると想定します。構築を中断します。
    If oPredModelBuilder.Status(lBuildID) = PredBldRunning Then
oPredModelBuilder.Pause(lBuildID)
End If
  3. 中断した構築を再開します。
    If oPredModelBuilder.Status(lBuildID) = PredBldPaused Then
oPredModelBuilder.Resume(lBuildID)
End If
  4. 構築の優先順位を確認します。列挙された構築の優先順位については、「PredModelBuilder.Priority」を参照してください。
    Dim ePriority
ePriority = oPredModelBuilder.Priority(lBuildID)

Response.Write "Build " & lBuildID & " has a priority of "
Select Case ePriority
Case PriLowest
Response.Write "PriLowest <P>"
Case PriBelowNormal
Response.Write "PriBelowNormal <P>"
Case PriNormal
Response.Write "PriNormal <P>"
Case PriAboveNormal
Response.Write "PriAboveNormal <P>"
Case PriHighest
Response.Write "PriHighest <P>"
Case Else
Response.Write "Bad Priority <P>"
End Select
  5. 構築の優先順位を高くします。
    If ePriority <> PriHighest Then
ePriority = ePriority + 1
End If
  6. 構築を停止します。
    If oPredModelBuilder.Status(lBuildID) = PredBldRunning Or _
      oPredModelBuilder.Status(lBuildID) = PredBldPaused Then
oPredModelBuilder.Stop(lBuildID)
End If
  7. すべての構築を停止します。
    oPredModelBuilder.StopAllBuilds


利用できるモデルとモデル構成のリストを取得するためのコード

  1. PredictorServiceAdmin オブジェクトを作成します。
    Dim oPredictorServiceAdmin
Set oPredictorServiceAdmin = _
 Server.CreateObject("Commerce.PredictorServiceAdmin")

Response.Write "The date the Predictor Service was last started = " _
 & oPredictorServiceAdmin.dateLastStarted & "<P>"
  2. 利用可能なモデル構成のリストを取得して列挙します。
    Response.Write "The number of model configurations = " & _
 oPredictorServiceAdmin.slModelConfigs.Count & "<BR>"

Dim oDict
For Each oDict In oPredictorServiceAdmin.slModelConfigs
Response.Write oDict("ModelCfgName") & "<BR>"
Next
  3. 利用可能なモデルのリストを取得して列挙します。
    Response.Write "The number of models = " & _
 oPredictorServiceAdmin.slModels.Count & "<BR>"

For Each oDict In oPredictorServiceAdmin.slModels
Response.Write oDict("ModelName") & "<BR>"
Next
  4. オブジェクトを解放します。
    Set oPredictorServiceSiteAdmin = Nothing


モデルとモデル構成の名前の変更および削除を行うためのコード

  1. PredictorServiceSiteAdmin オブジェクトを作成します。オブジェクトの名前とプログラム ID が異なることに注意してください。
    Dim oPredictorServiceSiteAdmin
Set oPredictorServiceSiteAdmin = _
 Server.CreateObject("Commerce.PredictorSiteAdmin")
  2. 「データベース接続文字列を取得するためのコード」で取得された接続文字列 sDWConnect を使って、オブジェクトを "Retail" サイトに初期化します。
    oPredictorServiceSiteAdmin.Init "", sDWConnect
  3. 「予測スキーマの例」で作成されたモデル構成 PurchaseCfg1 の名前を PurchaseConfig1 に変更します。
    oPredictorServiceSiteAdmin.RenameModelConfig "PurchaseCfg1", _
 "PurchaseConfig1"
  4. 「新しいモデルを構築するためのコード」で作成されたモデル Purchase1 の名前を OddPurchases に変更します。
    oPredictorServiceSiteAdmin.RenameModel "Purchase1", "OddPurchases"
  5. PurchaseConfig1 モデル構成を削除します。
    oPredictorServiceSiteAdmin.DeleteModelConfig "PurchaseConfig1"
  6. OddPurchases モデルを削除します。
    oPredictorServiceSiteAdmin.DeleteModel "OddPurchases"


モデルを読み込んで既定のプロパティを設定するためのコード

このコードは、Global.asa ファイルにあります。プロパティは、すべての Predict メソッド呼び出しの値を明示的に設定することを避けるために設定されます。

  1. PredictorClient オブジェクトを作成します。
    Dim oPredictorClient
Set oPredictorClient = Server.CreateObject("Commerce.PredictorClient")
  2. 「データベース接続文字列を取得するためのコード」で取得された接続文字列 sDWConnect を使って、「新しいモデルを構築するためのコード」で作成された Purchase1 モデルを読み込みます。
    oPredictorClient.LoadModelFromDB "Purchase1", sDWConnect
  3. プロパティを設定します。bFailOnUnknownInputAttributes プロパティは、アプリケーションのデバッグ中、True に設定されます。これにより、メソッドに渡された情報が、現在読み込まれているモデルによって認識されない場合、Predict メソッドは失敗します。
    oPredictorClient.bFailOnUnknownInputAttributes = True
oPredictorClient.fpDefaultConfidence = 95
oPredictorClient.fpPopularityPenalty = 0.2
  4. PredictorClient オブジェクトをサイトに関連付けて、パフォーマンス監視をサイト上で集約できるようにします。
    oPredictorClient.sSiteName = "Retail"
  5. オブジェクトを解放します。
    Set oPredictorClient = Nothing


商品を予測するためのコード

  1. Dictionary オブジェクトを作成し、その中に現在のユーザーに関する情報を生成します。
    Dim dCurrentCase
Set dCurrentCase = Server.CreateObject("Commerce.Dictionary")

dCurrentCase("UserID") = "someone@microsoft.com"
dCurrentCase("Age") = ""
dCurrentCase("Gender") = "F"
dCurrentCase("ZipCode") = "98052"
dCurrentCase("Education") = ""
  2. データ テーブルが、ユーザーの買い物バスケットの中の商品を表すものと想定します。このテーブルの PivotColumn は "SKU" という名前で、AggregateColumn は "QTY" という名前であり、ユーザーの買い物バスケットには、SKU が "wine_fine_us_zin_202" に等しい商品が 2 つ入っています。この情報をユーザーの現在のケースに設定します。次の名前付け規則は、低密度プロパティにのみ使われ、Type 1 テーブルに示されます。プロパティとテーブルの詳細については、「予測スキーマ」を参照してください。
    dCurrentCase("QTY(wine_fine_us_zin_202)") = 2
  3. 別のテーブルが、ユーザーがクリックした広告を表すものと想定します。このテーブルの PivotColumn の名前は "URL" であり、AggregateColumn の名前は "HitCount" であり、ユーザーは表示された URL を 1 回クリックしました。この情報をユーザーの現在のケースに設定します。
    dCurrentCase("HitCount(www.roguecellars.com/ad_md)") = 1
  4. SimpleList オブジェクトを作成し、その中に予測対象のプロパティを生成します。
    Dim slPropertiesToPredict
Set slPropertiesToPredict = Server.CreateObject("Commerce.SimpleList")

slPropertiesToPredict.Add("SKU")
  5. Variant の Safearray を作成し、予測対象のプロパティと値を格納します。
    Dim vsavPredictedProps
Dim vsavPredictedValues
  6. 「モデルを読み込んで既定のプロパティを設定するためのコード」で作成された PredictorClient オブジェクトの oPredictorClient と、同じセクションで読み込まれた Purchase1 モデルを使って、最大 5 つの予測を作成します。
    oPredictorClient.Predict dCurrentCase, slPropertiesToPredict _
 vsavPredictedProps, vsavPredictedValues, 5
  7. 返された予測を繰り返して処理します。
    Dim i
For i = LBound(vsavPredictedProps) To UBound(vsavPredictedProps)
Response.Write vsavPredictedProps(i) & " = " _
 & vsavPredictedValues(i) & "<BR>"
Next
  8. オブジェクトを解放します。
    Set dCurrentCase = Nothing
Set slPropertiesToPredict = Nothing


ユーザーの属性を予測するためのコード

  1. SimpleList オブジェクトを作成し、その中に予測対象のプロパティを生成します。
    Dim slPropertiesToPredict
Set slPropertiesToPredict = Server.CreateObject("Commerce.SimpleList")

slPropertiesToPredict.Add("Age")
slPropertiesToPredict.Add("Education")
  2. Variant の Safearray を作成し、予測対象のプロパティと値を格納します。
    Dim vsavPredictedProps
Dim vsavPredictedValues
  3. 「商品を予測するためのコード」で作成され、その中に現在のユーザーに関する情報が生成されたディクショナリ dCurrentCase、「モデルを読み込んで既定のプロパティを設定するためのコード」で作成された PredictorClient オブジェクトの oPredictorClient、および同じセクションで読み込まれた Purchase1 モデルを使って、予測を作成します。
    oPredictorClient.Predict dCurrentCase, slPropertiesToPredict _
 vsavPredictedProps, vsavPredictedValues
  4. 返された予測を繰り返して処理します。
    Dim i
For i = LBound(vsavPredictedProps) To UBound(vsavPredictedProps)
Response.Write vsavPredictedProps(i) & " = " _
 & vsavPredictedValues(i) & "<BR>"
Next
  5. オブジェクトを解放します。
    Set dCurrentCase = Nothing
Set slPropertiesToPredict = Nothing


ユーザーを分類するためのコード

このサンプル コードは、最初に現在のユーザーが所属する可能性が最も高いセグメントを決定してから、各セグメント内のユーザーのメンバシップに関連付けられた確率を繰り返して処理します。

  1. 「モデルを読み込んで既定のプロパティを設定するためのコード」で作成された PredictorClient オブジェクトの oPredictorClient および「データベース接続文字列を取得するためのコード」で取得された接続文字列 sDWConnect を使って、「予測スキーマの例」で作成された Demog1 モデルを読み込みます。
    oPredictorClient.LoadModelFromDB "Demog1", sDWConnect
  2. 「ユーザーの属性を予測するためのコード」で作成されたディクショナリ dCurrentCase を使って、最も可能性の高いセグメントを予測します。
    Dim sMostLikelySegment
Dim vProbability

sMostLikelySegment = oPredictorClient.PredictMostLikelySegment _
 dCurrentCase, vProbability

Response.Write "Most likely segment is " & sMostLikelySegment & "<BR>"
Response.Write "The probability of membership in this segment is " _
 & vProbability & "<P>"
  3. Variant の Safearray を作成して、セグメント名および関連するメンバシップの確率を格納します。
    Dim vsavSegmentNames
Dim vsavProbabilities
  4. 予測を作成します。
    oPredictorClient.PredictAllSegments dCurrentCase, vsavSegmentNames _
 vsavProbabilities
  5. 返された予測を繰り返して処理します。
    Dim i
For i = LBound(vsavSegmentNames) To UBound(vsavSegmentNames)
Response.Write vsavSegmentNames(i) & " - " _
 & vsavProbabilities(i) & "<BR>"
Next


商品カタログ オブジェクト

商品カタログ オブジェクトは、Commerce Server 2000 の商品カタログ システム内でカタログ、商品、およびカテゴリの作成や管理を行うためのメソッドを提供します。これらのオブジェクトは、SQL Server データベースに格納されているカタログ データ用のインターフェイスを提供しています。商品カタログ システムのパフォーマンスを向上させるには、データ キャッシュを使い、カタログ データをメモリに保持して、基になるデータベースの呼び出しを最小限にします。

ここでは、次のトピックについて説明します。

  • 商品カタログ プログラミングに関する概念 : 商品カタログ オブジェクトのプログラミングに関連する概念について説明します。

  • 商品カタログ オブジェクトのサンプル コード : 商品カタログ オブジェクトのサンプル コードを示します。

関連項目

CatalogManager オブジェクト

CacheManager オブジェクト


商品カタログ プログラミングに関する概念

Commerce Server の商品カタログ オブジェクトについて、次の各トピックで説明します。

カタログ システム オブジェクト モデル

CatalogManager オブジェクト

ProductCatalog オブジェクト

Product オブジェクト

Category オブジェクト

CatalogSets オブジェクト

CatalogToVendorAssociation オブジェクト

カタログ システム オブジェクト モデル

CatalogManager オブジェクトは、カタログ システム オブジェクト モデルの基盤です。システム内で ProductCatalog、Category、Product の各オブジェクトを作成したり、管理したりするために使います。CatalogSets オブジェクトと CatalogToVendorAssociation オブジェクトは、オブジェクト モデルの外部で管理されます。

CatalogManager オブジェクトは、ProductCatalog オブジェクトで表現される 1 つ以上のカタログを管理します。カタログは、商品のフラットなリストで構成される場合もあれば、商品を体系付けたカテゴリ階層を持つ場合もあります。各 Category オブジェクトは、この階層内のノードを表し、商品またはその他のカテゴリを保持します。

CatalogManager オブジェクトは、プロパティの集まりも管理します。これらのプロパティは、商品カタログ システム内のオブジェクトの属性を定義するために使います。適切なプロパティを作成してからでなければ、CatalogManager オブジェクトでほかのオブジェクトを作成することはできません。

CatalogManager オブジェクト

Commerce Server 2000 の商品カタログ システムを使うために最初に作成するオブジェクトが、CatalogManager オブジェクトです。通常は、1 つの CatalogManager オブジェクトを global.asa ファイルで作成して、そのオブジェクトをアプリケーション全体で使います。このオブジェクトは、商品カタログ システム内のすべてのカタログに適用するプロパティを設定し、取得します。カタログの作成と管理には、CatalogManager オブジェクトを使います。CatalogManager オブジェクトは、プロパティの作成とプロパティの属性の定義、およびそれらのプロパティを使っての商品とカテゴリの定義にも使います。単一または複数のカタログにまたがるクエリとフリー テキスト検索を実行するためのメソッドも、CatalogManager オブジェクトで提供されます。

CatalogManager.CreateCatalog メソッドと CatalogManager.GetCatalog メソッドは、特定のカタログを表す ProductCatalog オブジェクトを返します。CatalogManager.Catalogs プロパティは、商品カタログ システム内のすべてのカタログのレコードセットです。

ProductCatalog オブジェクト

ProductCatalog オブジェクトは、商品カタログ システム内の 1 つのカタログを表します。ProductCatalog オブジェクトのすべてのメソッドは、特定のカタログのコンテキストから実行されます。ProductCatalog オブジェクトは、カタログへの新しい商品やカテゴリの追加、カスタム カタログの作成、または条件指定検索の実行に使います。

ProductCatalog.RootCategories メソッドはカテゴリのレコードセットを返します。このレコードセットが、カテゴリ階層内を移動するときの出発点になります。同様に、ProductCatalog.RootProducts メソッドは、カテゴリ階層にない商品のレコードセットを返します。

Product オブジェクト

Product オブジェクトは、カタログ内の 1 つの商品または商品グループを表します。商品定義は、CatalogManager オブジェクトを使って作成され、商品カタログ システム全体で使えますが、商品は常に 1 つのカタログのコンテキスト内にあります。Product オブジェクトは、商品に対する操作 (プロパティの修正、商品バリエーションの作成、関連付けの管理など) を実行するために使います。

Category オブジェクト

Category オブジェクトは、カタログ内の 1 つのカテゴリを表します。カテゴリは、カタログ内の商品を体系付ける手段を提供します。Category オブジェクトは、カテゴリに対する各種の操作 (商品またはほかのカテゴリの追加、関連付けの管理など) を実行するために使います。

Category.ChildCategories プロパティは、階層内でこのカテゴリの下にあるカテゴリの名前を格納するレコードセットです。Category.Products プロパティは、そのカテゴリ直下に存在するすべての商品を格納するレコードセットです。

CatalogSets オブジェクト

CatalogSets オブジェクトはカタログ セットを格納および管理します。カタログ セットはカタログの任意の集まりです。カタログ セットによって、異なるユーザーや組織に対して、別々のカタログの集まりを提供することができます。

CatalogToVendorAssociation オブジェクト

CatalogToVendorAssociation オブジェクトは、カタログと販売元 (サプライア) との関連付けを格納および管理します。

関連項目

商品カタログ オブジェクト

商品カタログ オブジェクトのサンプル コード

CatalogManager オブジェクト

ProductCatalog オブジェクト

Category オブジェクト

Product オブジェクト

CatalogSets オブジェクト

CatalogToVendorAssociation オブジェクト

Copyright © 1996–2000 Microsoft Corporation.
All rights reserved.


商品カタログ オブジェクトのサンプル コード

このセクションでは、Commerce Server 2000 の商品カタログ システムで公開されるオブジェクトの使用法についての詳細な例を示します。サンプル コードでは、正しく機能するコードに必要な、エラー チェックや形式的な手続きは示されていません。

ここでは、次のトピックについて説明します。

  • 商品をアクティブまたは非アクティブにするコード

  • カタログを参照するコード

  • カテゴリの表示内容を変更するコード

  • 利用できるカタログを検索するコード

  • 検索可能なカテゴリを非表示にするコード

  • カタログのフリー テキスト検索を実行するコード

  • カタログの条件指定検索を実行するコード

  • 商品とカタログを時刻に応じて表示するコード

  • カタログでキャッシュを利用するためのコード


商品をアクティブまたは非アクティブにするコード

通常、カタログ データは、商品カタログ システム内に配置されるとすぐにユーザーに見られるようになります。カタログ内の商品をアクティブまたは非アクティブにするには、つまり、ユーザーに商品を見せたり、隠したりするには、その商品にプロパティを追加して、そのプロパティに対してフィルタ処理を行います。

このシナリオの実装手順を次に示します。

  1. Number 型の新しいプロパティを定義し、"IsActive" という名前を付けてから、AssignToAll 属性を True に設定し、DisplayOnSite 属性を False に設定します。既定値は 0 (使用不可) か 1 (使用可) のどちらかに設定します。

  2. 商品を作成または編集する場合に、このプロパティの値に 0 (使用不可) または 1 (使用可) を指定できます。

  3. レコードセットに対する ActiveX Data Object (ADO) フィルタを "IsActive=1" に設定して、商品のレコードセット (Category.Products、CatalogManager.Query、CatalogManager.FreeTextSearch、ProductCatalog.GuaranteedSpecificationSearch、ProductCatalog.PerformSpecificationSearch の各メソッドで返されるレコードセット) をフィルタ処理します。

たとえば、次のようなコードがあるとします。

rsProducts = oCatalog.GetCategory(strCategoryName).Products

この場合、続けて次のコードを記述する必要があります。

rsProducts.filter = "IsActive=1"

注

  • HTML のキャッシュが行われていると、そのキャッシュがフラッシュされるまで Web サイトに商品が表示されなくなることがあります。


カタログを参照するコード

ここでは、参照を実装するために必要ないくつかの機能のサンプル コードを示します。ここでは、カタログ内のカテゴリの検索、カテゴリ内の商品の検索、商品のプロパティの検索、および結果の表示を行います。パラメータの検証とエラー処理については、この例では考慮していません。より詳しい例は、Commerce Server 2000 Software Development Kit (SDK) に含まれているカタログ サイトレットの Browse.asp ファイルにあります。Browse.asp ファイルとそのインクルード ファイルでは、パラメータの検証、エラー処理、およびレコードセットからのリンクの生成について示されています。

  1. CatalogManager オブジェクトとカタログを取得します。

    CatalogManager オブジェクトは、Global.asa ファイルで作成および初期化されている必要があります。CatalogManager オブジェクトとカタログへのローカル参照を取得します。

    Dim oCatMgr
Dim oCatalog
Set oCatMgr = Application("MSCSCatalogManager")
Set oCatalog = oCatMgr.GetCatalog("ChildrensClothing")
  2. カテゴリを取得します。

    カタログ内のカテゴリは階層内にあります。ルート カテゴリは、子カテゴリを持つ場合と持たない場合がありますが、階層の基点に位置します。次の例は、ルート カテゴリのレコードセットを作成します。

    Dim rsCategories
Dim rsCategories
Set rsCategories = oCatalog.RootCategories

    次の例は、カテゴリ階層内を移動する方法を示します。階層のいずれかのレベルにあるカテゴリのレコードセットがあるとすると、CategoryName フィールドを使って、そのレコードセットのアクティブ行の子カテゴリのレコードセットを取得します。

    Dim strName
' Return the name of the category in the active row of
' the recordset (this would usually be inside a loop).
strName = rsCategories("CategoryName")
Set rsChildCategories = oCatalog.GetCategory(strName).ChildCategories

カタログ オブジェクトがあれば、子カテゴリの取得は簡単です。
'oCategory is an existing Category object.
Set rsChildCategories = oCategory.ChildCategories
  3. 商品を取得します。

    次の例では、すべての商品がカテゴリ内にあるものとします。どのカテゴリにも属さないルート商品が存在する場合があります。ただし、通常の設計では、すべての商品がカテゴリに属している必要があります。すべての商品をカテゴリに入れると、コードと商品の管理が簡単になります。次のコードでは、"shoe" カテゴリ内の商品を取得します。

    Dim rsProducts
Set rsProducts = oCatalog.GetCategory("Shoes").Products
  4. 商品の詳細を取得します。

    商品を表示する場合、通常は、その商品についての何らかの詳細を表示します。次の例では、指定した商品のプロパティのレコードセットを作成します。

    'vProductID is the unique identifier for a product. The Catalog sitelet uses the ISBN as the product ID.
Dim rsProductDetail
Set rsProductDetail = _
    oCatalog.GetProduct(0-7356-0513-0).GetProductProperties
  5. 結果を表示します。

    次のサンプル コードは、rsProducts というレコードセットに格納されている一連の商品を表示する方法を示しています。レコードセットからリンクを生成する例については、Commerce Server 2000 SDK のカタログ サイトレットにある Browse.asp ファイルを参照してください。

    <br>
<%
' Loop through the recordset of products and.
' write out the properties of the products.
' The constants are field names.
Do While Not rsProducts.EOF

    Response.Write "ISBN Number: " & _
                   rsProducts("isbn") & "<BR>"
    Response.Write "Title: " & _
                   rsProducts("name") & "<BR>"
    Response.Write "Author: " & _
                   rsProducts("author") & "<BR>"
    Response.Write "Published in: " & _
                   rsProducts("Publication Year") & "<BR>"

    rsProducts.MoveNext()
Loop
%>


カテゴリの表示内容を変更するコード

カテゴリは、商品カタログ システム全体で一意でなければなりません。これにより、複数のカタログで同じカテゴリ名が使われることを防ぎます。たとえば、男性用のカタログと女性用のカタログがある場合、Shoes というカテゴリを両方のカタログに持たせることはできません。この制限は、カテゴリ名の代わりに別のプロパティを表示することで回避できます。

カタログ内でのカテゴリの表示内容を変更する手順の概要を次に示します。

  1. Text 型のプロパティを定義し、"DisplayName" という名前を付けます。

  2. AssignToAll 属性を False に設定します。

  3. 使用するカテゴリ定義、たとえば Department カテゴリ定義に、このプロパティを追加します。

  4. カテゴリを作成する場合、そのカテゴリ名は一意でなければなりませんが、DisplayName フィールドに指定する名前は一意でなくてもかまいません。

  5. カテゴリの CategoryName フィールドではなく DisplayName フィールドをその名前として表示するように、買い物サイトのコードを修正します。

次の例は、必要な修正を示します。この例は、Commerce Server 2000 SDK のカタログ サイトレットにある Browse.asp ファイルから引用したものです。元のコードに対して、新しいフィールド名の定数の追加と、1 つのスクリプト変数の変更が必要です。必要な変更は簡単です。

' CATALOG_PROP_NAME is defined in an include file as "CategoryName".
' Create a new constant for display name field.
CATALOG_DISP_NAME = "DisplayName"
' Substitute CATALOG_DISP_NAME where appropriate.
' This loop writes out the list of available categories
' from a recordset as links to another page in the application:
<%
'...
Do While Not g_rsCategories.EOF
    ' The anchor tags produced below pass the category name to the
    ' file "browse.asp", but have been modified to show the display
    ' name as the hot text (change shown in bold text).
    %>
    <a href="browse.asp?category=
       <%= Server.URLEncode(g_rsCategories(CATALOG_PROP_NAME)) %>">
       <%= g_rsCategories(CATALOG_DISP_NAME) %>
    </a>
    <br>
    <%
    g_rsCategories.MoveNext()
Loop


利用できるカタログを検索するコード

商品カタログ システム内のカタログの名前と属性は、CatalogManager オブジェクトの Catalog プロパティで返されるレコードセットから取得できます。次の例では、利用できるカタログのレコードセットを作成し、カタログ名のリストを出力します。

Dim oCatMgr
Dim rsCatalogs
' Get a local reference to the CatalogManager
' object created in the global.asa file.
Set oCatMgr = Application("MSCSCatalogManager")
Set rsCatalogs = oCatMgr.Catalogs
'Write out the catalog names from the recordset.
If (rsCatalogs.RecordCount > 0) Then
    rsCatalogs.MoveFirst()
    Do While Not rsCatalogs.EOF
        Response.Write rsCatalogs.Fields("CatalogName").Value
        Response.Write "<BR>"
        rsCatalogs.MoveNext()
    Loop
End If


検索可能なカテゴリを非表示にするコード

サイトによっては、検索可能なカテゴリを定義できます。検索可能なカテゴリには、さまざまな部門で有効な商品タイプが反映されます。これらのカテゴリの目的は検索を容易にすることであり、ユーザーに表示することを目的としたカテゴリ階層とは異なります。検索可能なカテゴリをサイトで表示すると、ユーザーが混乱することがあります。

サイトでカテゴリを表示する場合は、カテゴリの IsSearchable 属性が True に設定されているかどうかをコードで最初に確認する必要があります。True の場合は、そのカテゴリを表示するべきではありません。次の例では、"Shoes" カテゴリをフィルタ処理して、検索可能なすべての子カテゴリを削除します。カテゴリを表示する場合は必ず、同様のフィルタがコードに必要になります。

' oCatalog is an existing ProductCatalog object.
Dim rsCategories
Set rsCategories = oCatalog.GetCategory("Shoes").ChildCategories

' Remove searchable categories from the recordset.
rsCategories.filter "IsSearchable = FALSE"

これで、rsCategories レコードセットには、表示に適した靴カテゴリだけが含まれるようになります。


カタログのフリー テキスト検索を実行するコード

次のサンプル コードは、フリー テキスト検索を実行するラッパー関数を示します。この関数は、プロパティを返すのと並べ替えるのに一般的な値を使っていて、CatalogManager.FreeTextSearch メソッドを呼び出すパラメータを作成することでフリー テキスト検索を簡単にしています。

sPropertiesToReturn 変数と sPropertiesToSortOn 変数の値を作成するために使う定数は、カタログ スキーマに従って定義する必要があります。

' Function: rsFreeTextSearch
'
' Description:
'    Performs a Free-Text Search using typical values.
'    Returns the results as a recordset.
'    iRecordCount gets set to the number of records retrieved.
'
' Parameters:
'    sPhrase             - the freetext string to find
'    iStartingRecord     - return results starting from this record#
'    iRecordsToRetrieve  - return max. this many records
'    iRecordCount        - return the actually retrieved number
'                          of records in this parameter
'
' Returns:
'   Recordset with search results
' -----------------------------------------------------------------------
Function rsFreeTextSearch(ByVal sPhrase, _
                          ByVal iStartingRecord, _
                          ByVal iRecordsToRetrieve, _
                          ByRef iRecordCount)

    ' Declare variables:
    Dim sPropertiesToReturn
    Dim sPropertiesToSortOn
    Dim rsResult
    Dim iClassType
    Dim sCatalogsToSearch

    ' Build the parameter strings to select
    ' properties to return and to control sorting:
    ' "name" and "description" are required product
    ' properties and cannot have null values.
    sPropertiesToReturn = PRODUCT_NAME_PROPERTY_NAME & "," & _
                          PRODUCT_DESCRIPTION_PROPERTY_NAME & "," & _
                          CATALOG_NAME_PROPERTY_NAME & "," & _
                          CATEGORY_NAME_PROPERTY_NAME & "," & _
                          CATALOG_PRODUCTID_PROPERTY_NAME & "," & _
                          CATALOG_VARIANTID_PROPERTY_NAME & "," & _
                          DEFINITION_TYPE_PROPERTY_NAME

    ' "name" is a required product property and cannot have a null value.
    sPropertiesToSortOn = CATEGORY_NAME_PROPERTY_NAME & "," & _
                         PRODUCT_NAME_PROPERTY_NAME

    ' Determine what catalogs to search.
    ' This example assumes that you will always search two catalogs:
    ' CatalogA and CatalogB. You could get this parameter by having
    ' the user select which catalogs to search, or from a function
    ' that selected catalogs based on a user profile.
    sCatalogsToSearch = "CatalogA, CatalogB"

    ' Determine the type of data wanted. This example will return
    ' categories, products, and product families.
    iClassType = cscProductFamilyForVariantsClass Or _
                 cscProductClass Or _
                 cscCategoryClass

    ' Call the FreeTextSearch method and return the recordset.
    Set rsFreeTextSearch = _
          MSCSCatalogManager.FreeTextSearch( _
             sPhrase, _
             sCatalogsToSearch, _
             iClassType, _
             sPropertiesToReturn, _
             sPropertiesToSortOn, _
             True, _
             iStartingRecord, _
             iRecordsToRetrieve, _
             iRecordCount _
             )

End Function


カタログの条件指定検索を実行するコード

条件指定検索の実行は反復的な処理です。ProductCatalog.PerformSpecificationSearch メソッドは、一致するデータのレコードセット以外にいろいろな情報を返すことができます。この追加情報は、プログラムの流れの制御に利用できます。

PerformSpecificationSearch メソッドは、一致するレコードの総数を示します。ヒットする結果が多すぎる場合、ユーザーは検索条件を再設定する必要がある場合があります。パフォーマンス上の理由から、返されるレコードセットのサイズは、1 ページに表示できるサイズに制限する必要があります。PerformSpecificationSearch メソッドでは、検索対象プロパティとそれらのプロパティの既存の値のレコードセットを、省略可能なパラメータで提供できます。検索条件を再設定できるように、これらのプロパティと値をユーザーに表示してください。

次の手順は、PerformSpecificationSearch メソッドの使い方を示します。

  1. 条件指定検索は、常に 1 つのカタログのコンテキスト内にあります。BeginSpecificationSearch メソッドを呼び出して検索ハンドルを作成します。
    ' oCatalog is catalog object to search.
' sCategoryName is a string containing the name of the
' category to search.
Dim bNoResults      ' Test flag
Dim sSearchHandle   ' String to hold the accumulated search clauses
Dim rsFields        ' Recordset to hold the searchable fields
                    ' in the category
Dim iMatchesFound   ' Holds the number of hits

' Call BeginSpecificationSearch to create the search handle.
sSearchHandle = oCatalog.BeginSpecificationSearch(sCategoryName, _
                                                  rsFields, _
                                                  iMatchesFound)
' Test if the category is specification searchable.
bNoResults = (rsFields Is Nothing)
If bNoResults Then
    ' Display a message to the user that the
    ' category is not specification searchable.
Else
    ' Process the rsFields recordset to find
    ' searchable Fields (see step 2).
    ' Perform the search (see step 3).
End If
  2. rsFields レコードセットには、カテゴリ内のプロパティごとに 1 つのフィールドが格納されます。レコードセット内の各フィールドには、そのプロパティで使用可能なすべての値の SafeArray が格納されます。この情報を、一連のドロップダウン リストとしてユーザーに表示します。ユーザーが選択を行ってフォームを送信した後で、選択された値ごとに条件指定文字列を追加します。
    Dim arr1, arr2
Dim bQuote
Dim sValue
Dim objField, iFieldType
Dim sSearchClause, sPropertyName
Dim iConstraintFieldsCount
Dim iNonConstraintFieldsCount

' Initialize variables.
iConstraintFieldsCount = 0
iNonConstraintFieldsCount = 0

' Separate Fields into searchable and non-searchable arrays.
' GetRequestString() is a wrapper function that strips
' illegal characters from a call to AppFrameWork.RequestString.
ReDim arr1(rsFields.Fields.Count)
ReDim arr2(rsFields.Fields.Count)
For Each objField In rsFields.Fields
    sValue = GetRequestString(objField.Name, _
                  mscsMessageManager.GetMessage( _
                       "L_STEPSEARCH_NO_PREFERENCE_TEXT", _
                       sLanguage) )

    ' sValue will contain the selected value where the user has
    ' made a selection. Where the user did not make a selection
    ' sValue will contain L_STEPSEARCH_NO_PREFERENCE_TEXT
    If sValue = mscsMessageManager.GetMessage( _
                  "L_STEPSEARCH_NO_PREFERENCE_TEXT", sLanguage) Then
        ' Field is not a search constraint.
        arr1(iNonConstraintFieldsCount) = objField.Name
        iNonConstraintFieldsCount = iNonConstraintFieldsCount + 1
    Else
        ' Field is a Search Constraint.
        sPropertyName = objField.Name
        arr2(iConstraintFieldsCount) = sPropertyName
        ' Some data types must be enclosed in quotes.
        ' Lookup the DataType attribute for the property
        ' from the property attributes cache.
        iFieldType = _
            MSCSCatalogAttribs.Value(sPropertyName).Value("DataType")

        If (iFieldType = cscString) Or _
           (iFieldType = cscDateTime) Or _
           (iFieldType = cscFilePath) Or _
           (iFieldType = cscEnumeration) Then
            ' If Text OR DateTime OR FilePath OR Multiple Choice.
            bQuote = True
        Else
            bQuote = False
        End If
        ' Build the search clause for one property.
        sSearchClause = ""
        For Each sValue In Request.QueryString(sPropertyName)
            If bQuote Then sValue = """" & sValue & """"
            sSearchClause = sSearchClause & ", " & sValue
        Next
        ' Add the Specification Search Clause that you just built.
        sSearchClause = "[" & sPropertyName & "]" & _
                        " IN (" & _
                        Right(sSearchClause, _
                              Len(sSearchClause) - 2) & _
                        ")"
        Call oCatalog.AddSpecificationSearchClause(sSearchClause, _
                                                   sSearchHandle)

        iConstraintFieldsCount = iConstraintFieldsCount + 1
    End If

' Process the next Field.
Next

ReDim Preserve arr1(iNonConstraintFieldsCount)
ReDim Preserve arr2(iConstraintFieldsCount)
  3. すべてのパラメータを作成したら、条件指定検索を実行します。
    Set rsResults = _
       oCatalog.PerformSpecificationSearch(sSearchHandle, _
                                           iSearchType, _
                                           , _
                                           iMatchesFound, _
                                           rsFields, _
                                           sColList)
  4. ユーザーが検索条件を再設定できるように、結果を表示します。


商品とカタログを時刻に応じて表示するコード

通常、カタログ データは、商品カタログ システム内に配置されるとすぐに見られるようになります。プロパティを追加して、そのプロパティに対してフィルタ処理を行うと、あらかじめ指定した時刻または日付で自動的にカタログ内の商品をアクティブにすることができます。同様の方法で商品を非アクティブにすることもできます。

次の手順は、商品とカタログを時刻に応じて表示する方法を示します。

  1. Date 型の新しいプロパティを定義し、"AvailableFrom" という名前を付けます。AssignToAll 属性を True に設定し、DisplayOnSite 属性を False に設定します。

  2. 商品を作成または編集する場合に、AvailableFrom プロパティの値を指定できます。このプロパティは、商品を Web サイトに表示する日付と時刻を表します。

  3. レコードセットに対する ActiveX Data Object (ADO) フィルタを "AvailableFrom<=NOW" に設定して、商品のレコードセット (Category.Products、CatalogManager.Query、CatalogManager.FreeTextSearch、ProductCatalog.GuaranteedSpecificationSearch、ProductCatalog.PerformSpecificationSearch の各メソッドで返されるレコードセット) をフィルタ処理します (NOW は、適切な書式での現在の日付と時刻に置き換える必要があります)。

たとえば、次のようなコードがあるとします。

rsProducts = oCatalog.GetCategory(strCategoryName).Products

この場合、続けて次のコードを記述する必要があります。

rsProducts.filter = "AvailableFrom <= " & format(Date, General Date)

これにより、商品は、指定の日時まで Web サイトに表示されなくなります。

注

  • HTML のキャッシュが行われていると、そのキャッシュがフラッシュされるまで Web サイトに商品が表示されなくなることがあります。


カタログでキャッシュを利用するためのコード

次のコードは、CacheManager オブジェクトのセットアップ コードとアクセス コードの両方を示します。セットアップ コードは、Global.asa ファイルの Application_OnStart イベント内で必要であり、アクセス コードは、CacheManager オブジェクトを使う Active Server Pages (ASP) 内で必要になります。キャッシュは、Dictionary オブジェクトか LRUCache オブジェクトのどちらかです。次の手順は、LRUCache オブジェクトの使用方法とレコードセットの格納方法を示します。同様のキャッシュを HTML の格納に使うことができます。

  1. global.asa ファイルで CacheManager オブジェクトを作成します。
    Dim oCacheManager

Set oCacheManager = Server.CreateObject("Commerce.Cachemanager")
oCacheManager.AppUrl = MY_APPLICATION_URL
Set Application("MSCSCacheManager") = oCacheManager

' Create a configuration dictionary for the cache.
dim dictProductCategoryCacheConfig
set dictProductCategoryCacheConfig = GetDictionary()
dictProductCategoryCacheConfig("ConnectionString") = _
                 TRANSACTION_CONFIG_CONNECTION_STRING
dictProductCategoryCacheConfig("CacheSize") = 10000
dictProductCategoryCacheConfig("TableName") = _
                 "CatalogCache_Virtual_Directory"
dictProductCategoryCacheConfig("Cachename") = PRODUCT_CATEGORY_CACHE
dictProductCategoryCacheConfig("AppURL") = MY_APPLICATION_URL

' Create and initialize the cache to use LRUCache objects.
oCacheManager.RefreshInterval(PRODUCT_CATEGORY_CACHE) = 0
oCacheManager.RetryInterval(PRODUCT_CATEGORY_CACHE) = 5 * 60
oCachemanager.CacheObjectProgId(PRODUCT_CATEGORY_CACHE) = _
                                "Commerce.LRUCache"
oCacheManager.LoaderProgID(PRODUCT_CATEGORY_CACHE) = _
                           "Commerce.LRUCacheFlush"
Set oCacheManager.LoaderConfig(PRODUCT_CATEGORY_CACHE) = _
                                      dictProductCategoryCacheConfig
' LRUCacheFlush is a cache loader component supplied
' to work specifically with LRUCaches.
  2. ASP ページでキャッシュを取得します。CacheManager オブジェクトはキャッシュを名前で返します。要求されたキャッシュが存在しない場合は、CacheManager オブジェクトが自動的に空のキャッシュを作成します。
    ' Get a local reference to the CacheManager object on the ASP page:
Dim oCache
Dim g_MSCSCacheManager
Set g_MSCSCacheManager = Application("MSCSCacheManager")
' Get the cache from the CacheManager object:
Set oCache = g_MSCSCacheManager.getCache(PRODUCT_CATEGORY_CACHE)
  3. 検索を実行します。この例は、親カテゴリの名前が指定されると子カテゴリを返す GetCategoriesRS 関数の一部です。parentCategory 変数に格納されている親カテゴリ名が、キャッシュ キーとして機能します。
    Dim rsChildCategories
' First, try to retrieve the child
' categories recordset from the cache.
Set rsChildCategories = oCache.Lookup(parentCategory)

' Test whether the cache returned the requested recordset.
If Not IsNull(rsChildCategories) Then
    ' It did, so return the recordset.
    Set GetCategoriesRS = rsChildCategories

Else
    ' It did not, so get it from the catalog.
    Set rsChildCategories = _
            oCatalog.GetCategory(parentCategory).ChildCategories

   ' Put the recordset in the cache for future use.
    Set oCache.Insert(parentCategory, rsChildCategories)

   ' Return the child categories recordset.
    Set GetCategoriesRS = rsChildCategories
End If


プロファイル オブジェクト

プロファイルは、顧客、企業、商品、注文、アカウントなどのビジネス エンティティを表します。プロファイルには、ビジネス エンティティのプロパティが含まれます。たとえば、"Joe User" は特定の顧客であり、"Joe User" に関するデータは顧客プロファイルのインスタンスとして格納されます。プロファイルの構造は、そのスキーマによって決まります。

ここでは、次のトピックについて説明します。

  • プロファイルのプログラミングに関する概念 : プロファイル リソースと、それが公開するオブジェクトについて説明します。

  • プロファイル オブジェクトのサンプル コード : プロファイル リソースによって公開されたプロファイル オブジェクトの使用方法に関して詳細な例を示します。

関連項目

ビジネス デスク ユーザー

プロファイル スキーマ

プロファイルの XML 構造

ProfileObject オブジェクト

プロファイル

ProfileService オブジェクト

プロファイル リソースの実行


プロファイルのプログラミングに関する概念

ここでは、プロファイル リソースのコンポーネントを説明します。

プロファイル ストア

プロファイル定義、サイト用語、および名前付きの式を格納する、Microsoft SQL Server データベース内のテーブルのグループです。

OLE DB Provider for Commerce Server

複数のデータ ストアから ProfileObject オブジェクト データを収集し、そのデータを 1 つの OLE DB Row オブジェクトとして公開するために使います。詳細については、MSDN の OLE DB 2.5 仕様と「OLE DB Provider for Commerce Server」を参照してください。

プロファイル デザイナ

プロファイル デザイナは、Commerce Server ビジネス デスクを通して利用でき、現在のプロファイル スキーマの拡張と削除を行うためのユーザー インターフェイスを提供します。詳細については、「プロファイル定義にプロパティを追加する」を参照してください。

ProfileObject オブジェクト

このオブジェクトは、単に "プロファイル" とも呼ばれるもので、ProfileObject オブジェクトのプロパティにアクセスして変更するために使います。詳細については、「ProfileObject オブジェクト」を参照してください。

プロファイル リソース

プロファイル リソースは、Microsoft 管理コンソール (MMC) の Commerce Server マネージャを通して利用でき、新しいプロファイル スキーマを作成するためのユーザー インターフェイスを提供します。詳細については、「プロファイル リソースの実行」を参照してください。

ProfileService オブジェクト

このオブジェクトは、ProfileObject オブジェクトを作成、取得、および削除するために使います。詳細については、「ProfileService オブジェクト」を参照してください。


プロファイル オブジェクトのサンプル コード

ここでは、プロファイル リソースによって公開されるプロファイル定義の使用方法に関して詳細な例を示します。サンプルは、Microsoft Visual Basic、Visual Basic Scripting Edition (VBScript) または Active Server Pages (ASP) で記述されており、コードが実際に機能するために必要なエラー チェックまたはその他の形式的なコード部分は示していません。

次のトピックについて説明します。

  • プロファイル ストアに接続するコード : プロファイル ストアに接続する方法を説明します。

  • エラーを列挙するコード : 前回のプロファイル リソース操作によって生成されたエラーを列挙する方法を説明します。

  • ディレクトリ ストアに対するバインド資格情報をセットアップするコード : プロファイルを特定のユーザーにバインドする方法を説明します。

  • 新しいプロファイルを作成するコード : 新しいプロファイルを作成する方法を説明します。

  • プロファイルを取得するコード : プロファイルを取得する方法を説明します。

  • プロファイルを変更するコード : プロファイルに格納されたデータを変更する方法を説明します。

  • プロファイルを削除するコード : プロファイルを削除する方法を説明します。

  • XML データおよびスキーマを取得するコード : 拡張マークアップ言語 (XML) で表現されたプロファイルのデータおよびスキーマを取得する方法を説明します。

  • ADO および SQL を使用した一括操作を実行するコード : プロファイル データに対する一括操作を行うために、ActiveX Data Object (ADO) および SQL を使用する方法を説明します。


プロファイル ストアに接続するコード

ここでは、プロファイル ストアに接続する方法を説明します。接続文字列にアクセスするには、SiteConfigReadOnly オブジェクトを使用します。接続文字列の詳細については、「ProfileService.Initialize」を参照してください。

  1. SiteConfigReadOnly オブジェクトを作成し、Retail サイト用に初期化します。
    Dim oSiteConfigReadOnly
Set oSiteConfigReadOnly = Server.CreateObject _
 ("Commerce.SiteConfigReadOnly")
oSiteConfigReadOnly.Initialize "Retail"
  2. プロファイル ストアへの接続文字列を取得し、SiteConfigReadOnly オブジェクトを解放します。
    Dim sBDSConnect
sBDSConnect = oSiteConfigReadOnly.Fields("Biz Data Service") _
 .Value.Fields("s_ProfileServiceConnectionString").Value

Set oSiteConfigReadOnly = Nothing
  3. ProfileService オブジェクトを作成し、プロファイル ストアに接続します。Profile Definitions パラメータは、プロファイル スキーマ定義に使用するカタログです。
    Dim oProfileService
Set oProfileService = Server.CreateObject("Commerce.ProfileService")
oProfileService.Initialize sBDSConnect, "Profile Definitions"


エラーを列挙するコード

ここでは、前回のプロファイル リソース操作によって生成されたエラーを列挙する方法を説明します。このエラーには、基盤技術によって生成されたものも含まれます。詳細については、「ProfileService.Errors」を参照してください。

  1. まだ接続していない場合、ProfileService オブジェクト、oProfileService を作成し、プロファイル ストアへの接続を確立します。プロファイル ストアへの接続の詳細については、「プロファイル ストアに接続するコード」を参照してください。

  2. Errors コレクションを取得します。
    Dim oError, oErrors
Set oErrors = oProfileService.Errors
  3. 存在するエラーを列挙します。
    If oErrors.Count <> 0 Then
   For Each oError In oErrors
      Response.Write "<BR> Error number = " & oError.Number & "</BR>"
      Response.Write "<P>" & oError.Description & "</P>"
   Next
EndIf

Set oErrors = Nothing


ディレクトリ ストアに対するバインド資格情報をセットアップするコード

ここでは、特定のユーザーにプロファイルをバインドする方法を説明します。

  1. まだ接続していない場合、ProfileService オブジェクト、oProfileService を作成し、プロファイル ストアへの接続を確立します。プロファイル ストアへの接続の詳細については、「プロファイル ストアに接続するコード」を参照してください。

  2. 完全なユーザー プリンシパル名 (UPN) を使ってユーザーにバインドします。バインドした後に作成されるプロファイルにアクセスできるのは、user name = "someone@microsoft.com" および password = "mypassword" という資格情報をもったユーザーだけになります。
    oProfileService.BindAs "someone@microsoft.com", "mypassword"
  3. SAM アカウント名を使ってユーザーにバインドします。
    oProfileService.BindAs "microsoft\someone", "mypassword"
  4. セキュリティ プリンシパルの完全修飾識別名を使ってユーザーにバインドします。
    oProfileService.BindAs "CN=someone,CN=Users,DC=microsoft,DC=com", _
 "mypassword"
  5. 特定のユーザーにバインドされていないプロファイルにアクセスするために、バインドをクリアします。
    oProfileService.Unbind


新しいプロファイルを作成するコード

ここでは、新しいプロファイルを作成する方法を説明します。新しく作成するプロファイルは、UserObject プロファイルの oUser1 と Address プロファイルの oAddress1 の 2 つです。

注

  • CreateProfile メソッドが、複数のデータ ソースから収集されたプロファイルの作成に失敗した場合、DeleteProfile メソッドを呼び出して、データ ストア内のエントリをすべてクリーンアップする必要があります。このとき、DeleteProfile メソッドでエラーが発生することがありますが、これは無視します。
  1. まだ接続していない場合、ProfileService オブジェクト、oProfileService を作成し、プロファイル ストアへの接続を確立します。プロファイル ストアへの接続の詳細については、「プロファイル ストアに接続するコード」を参照してください。

  2. 手順 1 で作成した ProfileService オブジェクトの oProfileService を使って、新しい空のプロファイル (ProfileObject オブジェクト) を 2 つ作成します。CreateProfile メソッドの 2 つ目のパラメータとして指定する、有効なプロファイル スキーマの種類とそのプロパティについては、「プロファイル スキーマ」を参照してください。Address プロファイルのプライマリ キーは、グローバル一意識別子 (GUID) であり、GenID オブジェクトを通して取得されます。
    Dim oUser1, oAddress1

Set oUser1 = oProfileService.CreateProfile("JoeUser@microsoft.com", _
 "UserObject")
If err.number <> 0 Then
   oProfileService.DeleteProfile "JoeUser@microsoft.com", "UserObject"
EndIf

Dim oGenID, sGUID
Set oGenID = Server.CreateObject("Commerce.GenID")
sGUID = oGenID.GenGUIDString

Set oAddress1 = oProfileService.CreateProfile(sGUID, "Address")
  3. プロファイルのプロパティを設定します。oUser1 プロファイルの logon_name プロパティは、CreateProfile メソッドの最初のパラメータとして既に指定されています。ProfileObject オブジェクトでは、拡張ピリオド表記とスマート ナビゲーションがサポートされていることに注意してください。詳細については、「ProfileObject オブジェクト」を参照してください。
    oUser1.GeneralInfo.first_name = "Joe"
oUser1.GeneralInfo.last_name = "User"

oAddress1.GeneralInfo.region_code = "WA"
oAddress1.GeneralInfo.country_code = "US"
  4. 基になるプロファイル ストアにプロファイルを保存します。
    oUser1.Update
oAddress1.Update
  5. オブジェクトを解放します。
    Set oUser1 = Nothing
Set oAddress1 = Nothing


プロファイルを取得するコード

ここでは、プロファイルを取得する方法を説明します。

  1. まだ接続していない場合、ProfileService オブジェクト、oProfileService を作成し、プロファイル ストアへの接続を確立します。プロファイル ストアへの接続の詳細については、「プロファイル ストアに接続するコード」を参照してください。

  2. プロファイル オブジェクトは、ProfileObject オブジェクトのスキーマ名と、プライマリ キーの値またはキー名と値の対のどちらかを指定することによって取得できます。UserObject スキーマ タイプには、logon_name というプライマリ キーと user_id という結合キーがあります。user_id はグローバル一意識別子 (GUID) です。有効なプロファイル スキーマ タイプについては、「プロファイル スキーマ」を参照してください。「新しいプロファイルを作成するコード」で作成した oUser1 プロファイルを取得します。
    • プライマリ キーの値とスキーマ名を指定して取得する場合。
      Dim oUser1
Set oUser1 = oProfileService.GetProfile("JoeUser@microsoft.com", _
 "UserObject")
    • キー名と値の対と、スキーマ名を指定して取得する場合。
      Set oUser1 = oProfileService.GetProfileByKey("user_id", _
 "{74A38551-FFFF-FFFF-FFFF-0A20C90DC8D1}", "UserObject")


プロファイルを変更するコード

ここでは、プロファイルに格納されたデータを変更する方法を説明します。プロファイルのスキーマ (データ構造) を変更するには、Commerce Server ビジネス デスクのプロファイル デザイナを使います。詳細については、「プロファイル定義にプロパティを追加する」を参照してください。

  1. まだ接続していない場合、ProfileService オブジェクト、oProfileService を作成し、プロファイル ストアへの接続を確立します。「プロファイル ストアに接続するコード」を参照してください。

  2. oUser1 プロファイルを取得します。詳細については、「プロファイルを取得するコード」を参照してください。

  3. oUser1 プロファイルの first_name と tel_number を変更します。このサンプルでは、プロファイルのプロパティにアクセスするために、Fields コレクションではなく、スマート ナビゲーションを使っています。Commerce Server に付属するプロファイルで利用できるプロパティについては、「プロファイル スキーマ」を参照してください。プロファイルにアクセスするための構文が 2 つあることに注意してください。どちらも機能的には同じです。
    oUser1.first_name = "Joseph"
oUser1.tel_number = "(123) 456-7890"

oUser1.GeneralInfo.first_name = "Joseph"
oUser1.GeneralInfo.tel_number = "(123) 456-7890"
  4. プロファイル ストアに変更を保存します。
    oUser1.Update


プロファイルを削除するコード

ここでは、プロファイルを削除する方法を説明します。プロファイルを削除する際は、削除されるプロファイルに対して依存関係のある式が存在することもあるため、十分に注意してください。

  1. まだ接続していない場合、ProfileService オブジェクト、oProfileService を作成し、プロファイル ストアへの接続を確立します。プロファイル ストアへの接続の詳細については、「プロファイル ストアに接続するコード」を参照してください。

  2. プロファイル オブジェクトは、ProfileObject オブジェクトのスキーマ名と、プライマリ キーの値またはキー名と値の対のどちらかを指定することによって削除できます。UserObject スキーマ タイプには、logon_name というプライマリ キーと user_id という結合キーがあります。user_id はグローバル一意識別子 (GUID) です。有効なプロファイル スキーマ タイプについては、「プロファイル スキーマ」を参照してください。「新しいプロファイルを作成するコード」で作成した oUser1 プロファイルを削除します。
    • プライマリ キーの値とスキーマ名を指定して削除する場合。
      oProfileService.DeleteProfile "JoeUser@microsoft.com", "UserObject"
    • キー名と値の対と、スキーマ名を指定して削除する場合。
      oProfileService.DeleteProfileByKey "user_id", _
 "{74A38551-FFFF-FFF6-FFFF-0A20C90DC8D1}", "UserObject"


XML データおよびスキーマを取得するコード

ここでは、すべての定義済みプロファイル スキーマ名のリストを取得する方法と、これらのスキーマ名の 1 つに対応するスキーマを取得する方法を説明します。その後、ProfileObject オブジェクトの拡張マークアップ言語 (XML) 形式のデータとスキーマを取得します。

  1. まだ接続していない場合、ProfileService オブジェクト、oProfileService を作成し、プロファイル ストアへの接続を確立します。プロファイル ストアへの接続の詳細については、「プロファイル ストアに接続するコード」を参照してください。

  2. 空の XML Document Object Model (DOM) ドキュメントを作成します。
    Dim xmlDoc
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
  3. すべての定義済みプロファイル スキーマ名のリストを含む XML 文字列を取得し、それを空の XML DOM ドキュメントに読み込みます。
    xmlDoc.loadXML( oProfileService.GetProfileDefXML("", True) )
  4. プロファイル スキーマの名前を含む "ElementType" ノードのコレクションを取得します。
    Dim xmlNodes
Set xmlNodes = xmlDoc.getElementsByTagName("ElementType")
  5. 最初のプロファイル スキーマ名を取得します。
    Dim sSchemaName
sSchemaName = _
 xmlNodes.item(0).attributes.getNamedItem("name").nodeValue
  6. 最初のプロファイル スキーマ名に対応するスキーマの XML 文字列を取得します。
    Dim sXMLSchema
sXMLSchema = oProfileService.GetProfileDefXML(sSchemaName, False)
  7. 「新しいプロファイルを作成するコード」で作成したプロファイル、oUser1 のスキーマとデータを取得します。
    Dim sXMLSchemaAndData
sXMLSchemaAndData = _
 oUser1.GetProfileXML(psRetrieveSchemaAndData, False)


ADO および SQL を使用した一括操作を実行するコード

ここでは、ActiveX Data Objects (ADO) および SQL を使って、プロファイル データに対する一括操作を行う方法を説明します。UserObject プロファイルに新しいプロファイルを追加し、プロパティの 1 つを更新して、最後にアクティブでないアカウントをすべて削除します。UserObject プロファイルの詳細については、「UserObject プロファイル スキーマ｣を参照してください。

  1. SiteConfigReadOnly オブジェクトを作成し、Retail サイト用に初期化します。
    Dim oSiteConfigReadOnly
Set oSiteConfigReadOnly = Server.CreateObject _
 ("Commerce.SiteConfigReadOnly")
oSiteConfigReadOnly.Initialize "Retail"
  2. プロファイル ストアへの接続文字列を取得し、SiteConfigReadOnly オブジェクトを解放します。
    Dim sCSConnect
sCSConnect = oSiteConfigReadOnly.Fields("Biz Data Service") _
 .Value.Fields("s_CommerceProviderConnectionString").Value

Set oSiteConfigReadOnly = Nothing
  3. ADO の Connection オブジェクトと Command オブジェクトを作成し、プロファイル ストアへの接続を開きます。
    Dim oConnection As New ADODB.Connection
Dim oCommand As New ADODB.Command
Set oCommand.ActiveConnection = oConnection
  4. UserObject プロファイルに新しいプロファイルを追加するためのクエリを作成して実行します。データは、次の形式の配列に格納されているとします (すべてのフィールドが表示されているわけではありません)。
    Dim sQuery
Dim arNewCustomers()
arNewCustomers(0, 0) = "logon_name"         ' Unicode string
arNewCustomers(0, 1) = "user_type"          ' Integer
arNewCustomers(0, 2) = "date_registered"    ' {d 'YYYY-MM-DD'}
arNewCustomers(0, 3) = "org_id"             ' GUID

For i = 1 To UBound(arNewCustomers)
   sQuery = "INSERT INTO Customers (u_logon_name, " & _
                                   "i_user_type, " & _
                                   "d_date_registered, " & _
                                   "g_org_id) " & _
                       "VALUES " & (arNewCustomers(i, 0) & ", " & _
                                    arNewCustomers(i, 1) & ", " & _
                                    arNewCustomers(i, 2) & ", " & _
                                    arNewCustomers(i, 3) & ")"
   oCommand.CommandText = sQuery
   oCommand.Execute()
Next
  5. 処理を確認します。収集されたストアに対して INSERT メソッドが部分的にしか成功していない場合は、ProfileService オブジェクトの DeleteProfile メソッドを呼び出し、部分的に挿入されたデータをクリーンアップします。
    Dim rsProfiles As ADODB.Recordset

sQuery = "SELECT (u_logon_name, i_user_type, d_date_registered, " & _
                  g_org_id) FROM Customers " & _
         "WHERE date_created = @today " & _
         "ORDER BY d_date_registered"

oCommand.CommandText = sQuery
Set rsProfiles = oCommand.Execute()
  6. 新しい顧客の組織 ID を変更します。
    sQuery = "UPDATE Customers " & _
         "SET g_org_id = '{2B544800-4169-4C49-8713-1B794078B4C9}'" & _
         "WHERE date_created = @today"

oCommand.CommandText = sQuery
oCommand.Execute()
  7. アクティブでないアカウントをすべて削除します。
    sQuery = "DELETE FROM Customers " &
         "WHERE i_account_status = 0"

oCommand.CommandText = sQuery
oCommand.Execute()
  8. 接続を閉じて、オブジェクトを解放します。
    oConnection.Close
Set rsProfiles = Nothing
Set oConnection = Nothing
Set oCommand = Nothing


サイト セキュリティ オブジェクト

Microsoft Commerce Server 2000 は、サイト セキュリティのために使われる 2 つの Component Object Model (COM) オブジェクトを提供します。AuthManager オブジェクトは、ユーザーの認証および識別のために使われます。BizDeskSecurity オブジェクトは、現在のユーザーに対して表示する Commerce Server ビジネス デスク モジュールを決定するために使われます。

ここでは、次のトピックについて説明します。

  • セキュリティ オブジェクトのプログラミングに関する概念 : Microsoft Commerce Server 2000 とともに提供されるセキュリティ オブジェクトに関連する概念を説明します。

  • サイト セキュリティ オブジェクトのサンプル コード : Web サイト セキュリティに関連するオブジェクトの使用法を示すサンプル コードを説明します。

関連項目

CS 認証リソースの管理

サイト セキュリティとフィルタを使用する

AuthManager オブジェクト

BizDeskSecurity オブジェクト


セキュリティ オブジェクトのプログラミングに関する概念

ここでは、Microsoft Commerce Server 2000 がサイト セキュリティ用に提供する BizDeskSecurity オブジェクトと AuthManager オブジェクトについて説明します。

BizDeskSecurity オブジェクト

Commerce Server ビジネス デスクのセキュリティ インフラストラクチャにより、ユーザーの資格情報に応じて個々のビジネス デスク モジュールを表示したり、非表示にしたりできます。現在のユーザーが、指定されたビジネス デスク モジュールに対する読み取りアクセス権を持っていれば、BizDeskSecurity オブジェクトの CanUserAccess メソッドは True を返します。このメソッドは、そのファイルに対するアクセス制御リスト (ACL) からそのユーザーに対するアクセス権を取得します。詳細については、「BizDeskSecurity オブジェクト」を参照してください。

ビジネス デスク モジュールに対応する Active Server Pages (ASP) ファイルは、そのモジュールに対する XML ファイルの module 要素の id 属性にあります。各モジュールに対する XML ファイルは、ビジネス デスク アプリケーションのフォルダの下の Config フォルダにあります。XML 形式の詳細については、「モジュール構成ファイル」を参照してください。

AuthManager オブジェクト

AuthManager オブジェクトは、ユーザーを識別してユーザー認証に使う情報を集めます。このオブジェクトのメソッドとプロパティは、cookie やエンコードされた URL 文字列の内容を制御し、かつその内容へアクセスします。詳細については、「AuthManager オブジェクト」を参照してください。

認証では、プロパティと値を組み合わせた文字列であるチケットを使って、ユーザーに関する情報を提供します。チケットは、MSCSAuth チケットと MSCSProfile チケットの 2 種類がサポートされています。次の表は、これらのチケットの相違点の要約を示しています。

特徴 | MSCSAuth | MSCSProfile
格納 | セッション cookie/エンコードされた URL 文字列です。 | 固定 cookie/エンコードされた URL 文字列です。
ユーザーの種類 | 登録済みユーザーです。 | 匿名ユーザーです。
構成内容 | 一意のユーザー ID、最終ログイン時刻、時間ウィンドウです。 | 一意のユーザー ID です。

この表で、登録済みユーザーとは、対応するサイトに対する登録処理を正常に終了したユーザーを意味します。

AuthManager オブジェクトは、クライアントで cookie が有効になっている場合は、チケットを cookie に挿入するメソッドを提供し、cookie が有効になっていない場合は、チケットをエンコードされた URL 文字列に挿入するメソッドを提供します。認証フィルタ (ISAPI フィルタ) とともに使用する場合には、cookie を使用可能にする必要があります。

AuthManager オブジェクトは、IsAuthenticated メソッドを使って MSCSAuth チケットについて有効性を確認できます。このメソッドは、ユーザーからの要求に MSCSAuth チケットが含まれているかどうかを確認します。チケットが含まれている場合、このメソッドは、チケットに設定された前回のログイン時刻と現在の時刻を比較し、現在の時刻がチケットに指定された時間ウィンドウ内にあるかどうかを確認します。時間ウインドウの範囲内に入っている場合、このメソッドは True を返して MSCSAuth チケットが有効であることを示します。現在の時刻が、最後にログインした時刻に時間ウィンドウを足した時刻の 5 分以内にある場合、チケット上の最後にログインした時刻が現在の時刻に変更されます。これにより、アクティブ ユーザーは参照を続けることができます。

ユーザーは両方の種類のチケットを持つことができます。この場合、MSCSAuth チケットが優先されます。

ユーザーが cookie を許可しない場合、チケットはエンコードされた URL 文字列に格納されます。URL 文字列は、ページ間や Web サイト間でユーザー情報を渡すために使われます。ただし、すべての URL およびクエリ文字列が AuthManager オブジェクトで生成されている場合に限られます。

AuthManager オブジェクトは、チケットが cookie に格納されていても URL クエリ文字列に格納されていても、チケットに対して透過的なインターフェイスを提供し、チケットの暗号化と複合化を処理してセキュリティを保証します。

AuthManager オブジェクトは ASP 固有のオブジェクトに依存しているので、ASP と共に使う必要があります。また、AuthManager オブジェクトは個々のユーザー セッションに依存しているため、アプリケーション スコープ内には作成しないでください。AuthManager オブジェクトは、それぞれの ASP ページで作成および破棄する必要があります。


サイト セキュリティ オブジェクトのサンプル コード

ここでは、Commerce Server 2000 がサイト セキュリティ用に提供するオブジェクトの使用法についての詳細な例を示します。サンプルは、Active Server Pages (ASP) 用の Microsoft Visual Basic Scripting Edition (VBScript) で作成されており、コードが実際に機能するために必要なエラー チェックまたは機能的なコードその他の形式的なコード部分は示していません。

ここでは、次のトピックについて説明します。

  • ビジネス デスク モジュールの表示を制御するコード : 指定したビジネス デスク モジュールを現在のユーザーに表示するかどうかを制御する方法について説明します。

  • 認証マネージャを作成し、初期化するコード : AuthManager オブジェクトのインスタンスを作成、初期化する方法について説明します。

  • サイト構成プロパティを操作するコード : CS 認証リソースのプロパティを変更する方法について説明します。

  • ログイン資格情報を取得するコード : Get メソッドまたは Post メソッドを使って HTML フォーム上で送信されるユーザー ID およびパスワードを取得する方法について説明します。

  • 新しい MSCSProfile チケットを設定するコード : MSCSProfile チケットを作成する方法を説明します。

  • プロファイルを検索し、MSCSAuth チケットを設定するコード : Commerce Server プロファイル リソースを使ってプロファイルを取得し、MSCSAuth チケットを設定する方法を説明します。

  • Post メソッドを使ってログインの資格情報を取得し、MSCSAuth チケットを設定するコード : HTML フォーム上で送信されるユーザー ID とパスワードを Post メソッドで取得し、ユーザー ID に対応するプロファイルを Commerce Server プロファイル リソースによって取得し、MSCSAuth チケットでのユーザー ID を設定し、最初に要求された URL へユーザーをリダイレクトする方法について説明します。

  • チケットにカスタム プロパティを設定するコード : グローバル一意識別子 (GUID) 文字列を作成し、その文字列を guid プロパティとして MSCSAuth チケット上に設定する方法について説明します。

  • エンコードされた URL 文字列を生成するコード : エンコードされた URL 文字列をファイル名から生成する方法を説明します。


ビジネス デスク モジュールの表示を制御するコード

この例では、Commerce Server ビジネス デスクのカタログ エディタ モジュールを現在のユーザーに表示するかどうかを制御する方法を示します。

  1. カタログ エディタ モジュールに対応する XML ファイルを開きます。Retail ソリューション サイトを既定のインストール ディレクトリにアンパックすると、Catalogs_editor.xml という名前のこのファイルは \Inetpub\wwwroot\retailbizdesk\config フォルダに格納されます。

  2. カタログ エディタ モジュールに関連付けられた ASP ファイルの名前は、このファイルの module 要素の id 属性にあります。XML 形式の詳細については、「モジュール構成ファイル」を参照してください。
    <module id="catalogs/editor/list_Catalogs.asp">
   <name>Catalog Editor</name>
   <tooltip>Manage Catalog Data</tooltip>
</module>
  3. BizDeskSecurity オブジェクトを作成します。
    Dim oBizDeskSecurity
Set oBizDeskSecurity = Server.CreateObject("Commerce.BizDeskSecurity")
  4. ASP ファイルを BizDeskSecurity オブジェクトに渡します。
    If oBizDeskSecurity.CanUserAccess("list_Catalogs.asp") Then
   ' Display the module
End If


認証マネージャを作成し、初期化するコード

AuthManager オブジェクトは、サイト構成リソースのプロパティを使います。AuthManager オブジェクトを最初に初期化すると、サイト キャッシュが作成され、そのキャッシュにサイト構成リソースのプロパティが生成されます。このオブジェクトを再度初期化すると、これらのプロパティがキャッシュに作成されているかどうかが確認され、作成されていなければ、これらのプロパティが再度読み込まれます。AuthManager オブジェクトのインスタンスは、(パフォーマンス上の利用で) サイトの Global.asa ファイル内と、AuthManager オブジェクトを使うすべてのページ上に作成され、初期化されます。

  1. AuthManager オブジェクトを作成します。オブジェクトのプログラム ID はオブジェクト名とは異なることに注意してください。
    Dim oAuthManager
Set oAuthManager = Server.CreateObject("Commerce.AuthManager")
  2. このオブジェクトを Retail サイトに初期化します。
    oAuthManager.Initialize "Retail"


サイト構成プロパティを操作するコード

AuthManager オブジェクトが使うサイト構成プロパティを変更するときには、これらのプロパティが格納されているキャッシュを更新する必要があります。SiteConfig オブジェクトの詳細については、「SiteConfig オブジェクト」を参照してください。

  1. SiteConfig オブジェクトを作成し、そのオブジェクトを Retail サイトに初期化します。
    Dim oSiteConfig
Set oSiteConfig = Server.CreateObject("Commerce.SiteConfig")
oSiteConfig.Initialize "Retail"
  2. 既定の時間ウィンドウを 90 秒に変更します。
    oSiteConfig.Fields("Site CS Authentication").Value _
 .Fields("u_cookie_time_window").Value = 90

oSiteConfig.SaveConfig
  3. AuthManager オブジェクトを作成し、初期化します。
    Dim oAuthManager
Set oAuthManager = Server.CreateObject("Commerce.AuthManager")
oAuthManager.Initialize "Retail"
  4. サイト キャッシュを更新します。
    oAuthManager.Refresh "Retail"
  5. オブジェクトを解放します。
    Set oSiteConfig = Nothing
Set oAuthManager = Nothing


ログイン資格情報を取得するコード

この例では、Get メソッドまたは Post メソッドを使って HTML フォーム上で送信されるユーザー ID およびパスワードを取得する方法について説明します。

  • Get メソッドを使って資格情報を取得します。
    Dim sUserID, sPassword
If Request.QueryString("realSubmit") = "fromButton" Then
    sUserID = Request.QueryString("txtUserName")
    sPassword = Request.QueryString("txtPassword")
End If
  • Post メソッドを使って資格情報を取得します。
    Dim sUserID, sPassword
If Request.Form("realSubmit") = "fromButton" Then
    sUserID = Request.Form("txtUserName")
    sPassword = Request.Form("txtPassword")
End If


新しい MSCSProfile チケットを設定するコード

この例では、ユーザーを識別するために使うグローバル一意識別子 (GUID) を作成する方法、およびそのユーザーに対する固定 cookie に GUID を配置する MSCSProfile チケットを作成する方法を示します。

  1. GenID オブジェクトを作成します。
    Dim oGenID
Set oGenID = Server.CreateObject("Commerce.GenID")
  2. GUID 文字列を作成します。
    Dim sGUID
sGUID = oGenID.GenGUIDString()
  3. AuthManager オブジェクト (「認証マネージャを作成し、初期化するコード」で作成し、初期化した oAuthManager) を使って MSCSProfile チケットを作成します。
    oAuthManager.SetProfileTicket sGUID, True
  4. オブジェクトを解放します。
    Set oGenID = Nothing
Set oAuthManager = Nothing


プロファイルを検索し、MSCSAuth チケットを設定するコード

この例では、Commerce Server のプロファイル リソースを使って既知のユーザー ID に対応するプロファイルを取得し、MSCSAuth チケットに userID を設定する方法を示します。プロファイル リソースの使用に関する詳細については、「プロファイル オブジェクトのサンプル コード」を参照してください。

  1. ProfileService オブジェクトを作成し、初期化します。sBDSConnect パラメータは、プロファイル定義が保存されているプロファイル ストアへの接続文字列です。
    Dim oProfileService
Set oProfileService = Server.CreateObject("Commerce.ProfileService")
oProfileService.Initialize sBDSConnect, "Profile Definitions"
  2. ユーザー ID に関連付けられているプロファイルを取得します。プロファイルが存在しない場合は、そのユーザーをログイン ページにリダイレクトします。
    Dim oProfileObject
Set oProfileObject = oProfileService.GetProfile(sUserID, "UserObject")
If (oProfileObject Is Nothing) Then
    Response.Redirect "Login.asp"
End If
  3. プロファイルに関連付けられたパスワードを取得します。
    Dim sProfilePassword
sProfilePassword = oProfileObject.user_security_password
  4. 送信したパスワードがプロファイル パスワードと一致した場合は、AuthManager オブジェクト (「認証マネージャを作成し、初期化するコード」で作成し、初期化した oAuthManager) を使って認証チケットを設定します。パスワードが一致しない場合は、ユーザーをログイン ページにリダイレクトします。
    If sPassword = sProfilePassword Then
    oAuthManager.SetAuthTicket sUserID, True, 45
Else
    Response.Redirect "Login.asp"
End If
  5. オブジェクトを解放します。
    Set oProfileService = Nothing
Set oProfileObject = Nothing
Set oAuthManager = Nothing


Post メソッドを使ってログインの資格情報を取得し、MSCSAuth チケットを設定するコード

この例では、HTML フォーム上で送信されるユーザー ID およびパスワードを Post メソッドで取得し、ユーザー ID に対応するプロファイルを Commerce Server プロファイル リソースによって取得し、MSCSAuth チケットでのユーザー ID を設定し、最初に要求された URL へそのユーザーをリダイレクトする方法について示します。ユーザーがユーザー ID とパスワードを入力し、HTML フォーム上の [送信] ボタンをクリックしたとします。プロファイル リソースの使用に関する詳細については、「プロファイル オブジェクトのサンプル コード」を参照してください。

  1. 要求がフォーム送信であることを確認してから、ユーザー ID とパスワードを取得します。
    Dim sUserID, sPassword
If Request.Form("realSubmit") = "fromButton" Then
    sUserID = Request.Form("txtUserName")
    sPassword = Request.Form("txtPassword")
End If
  2. ProfileService オブジェクトを作成し、初期化します。sBDSConnect パラメータは、プロファイル定義が保存されているプロファイル ストアへの接続文字列です。
    Dim oProfileService
Set oProfileService = Server.CreateObject("Commerce.ProfileService")
oProfileService.Initialize sBDSConnect, "Profile Definitions"
  3. 送信されたユーザー ID に関連付けられているプロファイルを取得します。プロファイルが存在しない場合は、そのユーザーをログイン ページにリダイレクトします。
    Dim oProfileObject
Set oProfileObject = oProfileService.GetProfile(sUserID, "UserObject")
If (oProfileObject Is Nothing) Then
    Response.Redirect "Login.asp"
End If
  4. プロファイルに関連付けられたパスワードを取得します。
    Dim sProfilePassword
sProfilePassword = oProfileObject.user_security_password
  5. 送信したパスワードがプロファイル パスワードと一致した場合は、AuthManager オブジェクト (「認証マネージャを作成し、初期化するコード」で作成し、初期化した oAuthManager) を使って認証チケットを設定します。パスワードが一致しない場合は、ユーザーをログイン ページにリダイレクトします。
    If sPassword = sProfilePassword Then
    oAuthManager.SetAuthTicket sUserID, True, 45
Else
    Response.Redirect "Login.asp"
End If
  6. カスタム プロパティとして、URL 文字列にユーザー ID とパスワードを追加します。この手順は、認証フィルタ (ISAPI フィルタ) を Windows 認証モードで使うサイトに対して実行します。通常、実行する必要はありません。このモードとこの手順の詳細については、「Post メソッド」を参照してください。
    Dim sReturn
sReturn = Request.Cookies("MSCSFirstRequestedURL")
sReturn = sReturn & "&proxyuser=" & sUserID & "&proxypwd=" & sPassword
  7. 最初に要求された URL にユーザーをリダイレクトします。
    Response.Redirect sReturn
  8. オブジェクトを解放します。
    Set oProfileService = Nothing
Set oProfileObject = Nothing
Set oAuthManager = Nothing


チケットにカスタム プロパティを設定するコード

この例では、guid という名前のカスタム プロパティを設定する方法を示します。このプロパティは、MSCSAuth チケット上に設定するグローバル一意識別子 (GUID) 文字列を保持します。この方法は、MSCSProfile チケットやその他のカスタム プロパティにも有効です。このプロパティの設定は、認証フィルタ (ISAPI フィルタ) を Windows 認証モードで使用するときに、分散型のサービス配布拒否 (DDOS) 攻撃を阻止するために使います。DDOS の詳細については、「分散型のサービス拒否攻撃」を参照してください。

  1. GenID オブジェクトを作成します。
    Dim oGenID
Set oGenID = Server.CreateObject("Commerce.GenID")
  2. GUID 文字列を作成します。
    Dim sGUID
sGUID = oGenID.GenGUIDString()
  3. AuthManager オブジェクト (「認証マネージャを作成し、初期化するコード」で作成し、初期化した oAuthManager) を使って、以前に設定した MSCSAuth チケット上に guid プロパティを設定します。MSCSProfile チケット上にプロパティを設定するには、enumMSCS_AuthTicketType パラメータを enumMSCS_ProfileTicketType パラメータと置き換えます。
    oAuthManager.SetProperty enumMSCS_AuthTicketType, "guid", sGUID
  4. URL 文字列にカスタム プロパティとして guid プロパティを追加し、最初に要求された URL にユーザーをリダイレクトします。この手順は通常、カスタム プロパティに対して必要ありませんが、この DDOS の例を完了するために実行する必要があります。
    Dim sReturn
sReturn = Request.Cookies("MSCSFirstRequestedURL") & "guid=" & sGUID
Response.Redirect sReturn
  5. オブジェクトを解放します。
    Set oGenID = Nothing
Set oAuthManager = Nothing


エンコードされた URL 文字列を生成するコード

この例では、カスタム プロパティを含む、エンコードされた URL 文字列を作成する方法を示します。

  1. カスタム プロパティと値の組み合わせを保持する 2 つの SafeArray を作成します。
    Dim savProperties, savValues
  2. SafeArray に値を設定します。
    savProperties(0) = "SKU"
savValues(0) = "F13B69881E"
savProperties(1) = "Quantity"
savValues(1) = 3
  3. AuthManager オブジェクト (「認証マネージャを作成し、初期化するコード」で作成し、初期化した oAuthManager) を使って Weeklysales.asp ファイルを参照する URL を作成します。2 番目のパラメータは cookie が無効になっていることを示し、それにより、AuthManager オブジェクトは MCSCAuth チケットから取り出したユーザー ID をこの文字列に追加します。3 番目のパラメータは、URL がセキュリティ保護されていることを示します。
    Dim sURL
sURL = oAuthManager.GetURL("Weeklysales.asp", False, True, _
                           savProperties, savValues)
  4. 次のような URL 文字列が作成されます。
    ' sURL = https://host_name/virtual_directory/weeklysales.asp?SKU=
'        F13B69881E&Quantity=3&MSCSAuth=Q0H4SE915ASH2KC000Q79QB1E


サイト セキュリティとフィルタを使用する

Microsoft Commerce Server 2000 では、Web サイトでのユーザーの認証と識別に認証フィルタという Internet Server Application Programming Interface (ISAPI) フィルタと、AuthManager という Component Object Model (COM) オブジェクトを使います。認証フィルタでは、3 つの個別モードと 2 つの混合モードをサポートしています。AuthManager オブジェクトは、認証フィルタと併せても、また併せなくても使用が可能で、暗号化されたユーザー ID を cookie またはエンコードされた URL 文字列に設定し、それと照合することでユーザーの有効性を確認します。認証フィルタでは cookie が必要ですが、AuthManager オブジェクトでは cookie がある場合とない場合の両方の買い物をサポートしています。

認証モードは、サイトをアンパックした後に Commerce Server マネージャで設定します。認証モード、またはその他の CS 認証リソースのサイト構成プロパティを変更した場合、インターネット インフォメーション サービス (IIS) を再起動して、認証フィルタがこの新しい値を使うようにする必要があります。詳細については、「CS 認証リソースの管理」を参照してください。

ここでは、次のトピックについて説明します。

  • 認証フィルタ : ユーザーの認証と識別をサポートするために Microsoft Commerce Server が提供する ISAPI フィルタについて説明します。

  • Windows 認証モード : 認証フィルタの Windows 認証モードについて説明します。

  • カスタム認証モード : 認証フィルタのカスタム認証モードについて説明します。

  • 自動 cookie モード : 認証フィルタの自動 cookie モードについて説明します。

  • 自動 cookie を使った Windows 認証モード : Windows 認証と自動 cookie を組み合わせた混合認証モードについて説明します。

  • 自動 cookie を使ったカスタム認証モード : カスタム認証と自動 cookie を組み合わせた混合認証モードについて説明します。

関連項目

CS 認証リソースの管理

AuthManager オブジェクト

サイト セキュリティ オブジェクト


認証フィルタ

ここでは、認証フィルタについて説明します。これは Commerce Server 2000 が提供する ISAPI フィルタです。ISAPI フィルタは、Web サービスが開始されるときに インターネット インフォメーション サービス (IIS) プロセスに読み込まれる DLL です。認証フィルタは IIS の既定の動作を変更し、HTTP の要求や応答の処理方法に影響を与えます。既定では、このフィルタは使われるとき、低い優先度で IIS サイト レベルにインストールされます。ここでは、認証フィルタの基本サービス、サポートしている操作モード、および登録する IIS イベントについて説明します。

次のトピックについて説明します。

  • 基本サービス

  • 操作モード

  • フィルタの初期化

  • IIS イベント通知

  • シングル サイン オンのサポート


基本サービス

要求を通知されると、認証フィルタは、操作モードにかかわらず、自動的に次のサービスを提供します。

  • URL の妥当性確認 : 要求された URL が正しいかどうかを検出し、インターネット インフォメーション サービス (IIS) の仮想ディレクトリのルートでの大文字小文字の区別に対応できるように自動的に修正を行います。

  • cookie のサポート確認 : cookie がサポートされているかどうかを確認し、利用できない場合は、cookie を使用しないページにユーザーをリダイレクトします。認証フィルタを使用する場合は、cookie がサポートされている必要があります。

  • チケット検証 : ユーザーが有効なチケットを持っているかどうかを確認します。チケットは、ユーザーの cookie に設定されたプロパティ/値の組のセットで、ユーザーの識別または認証に使われます。

フィルタの操作モードによって、これ以外のサービスも提供されます。


操作モード

認証フィルタでは、次の操作モードがサポートされています。

  • Windows 認証モード : 認証フィルタは、アクセス制御リスト (ACL) を介して Windows 認証を使用し、サイトへのアクセスを制御します。匿名ユーザーと登録済みユーザーがサイトにアクセスできるかどうかは、ACL によって決まります。登録済みユーザーは追跡されますが、匿名ユーザーは追跡されません。このモードの詳細については、「Windows 認証モード｣を参照してください。

  • カスタム認証モード : 認証フィルタの基本サービスを使用しながら、サイトの設計者がサイトへのアクセスを制御するためのカスタム認証プロセスを用意できます。このモードの詳細については、「カスタム認証モード｣を参照してください。

  • 自動 cookie モード : 認証フィルタはサイトに対して匿名ユーザーのアクセスを許し、固定 cookie を格納してユーザーの追跡ができるようにします。このモードの詳細については、「自動 cookie モード｣を参照してください。

  • 自動 cookie を使った Windows 認証モード : この混合モードを使用すると、登録済みユーザーと匿名ユーザーの両方がサイトにアクセスできるようになり、固定 cookie を通じて匿名ユーザーを追跡できます。このモードの詳細については、「自動 cookie を使った Windows 認証モード｣を参照してください。

  • 自動 cookie を使ったカスタム認証モード : この混合モードを使用すると、登録済みユーザーと匿名ユーザーの両方がサイトにアクセスできるようになり、固定 cookie を通じて匿名ユーザーを追跡できます。サイト開発者は、Windows の ACL によるアクセス制御ではなく、カスタム認証プロセスを提供できます。このモードの詳細については、「自動 cookie を使ったカスタム認証モード｣を参照してください。


フィルタの初期化

Web サイトに対して最初に要求が出されるとき、認証フィルタによって次の処理が行われます。

  1. 物理パスと csapp.ini ファイルを使って、サイト名とアプリケーション名が取得されます。

  2. サイト構成認証プロパティを格納するためのグローバル キャッシュが作成されます。サイトごとにエントリが 1 つあります。エントリには、そのサイトの各種認証プロパティのコレクションが入ります。

  3. サイト キャッシュに CS 認証リソースのプロパティが生成されます。これらのプロパティは SiteConfig オブジェクトを使って管理データベースから読み取られます。


IIS イベント通知

認証フィルタは、受信と発信両方のデータ ストリームを監視し、次のイベントの通知についてインターネット インフォメーション サービス (IIS) に登録します。

  • SF_NOTIFY_ORDER_LOW : 認証フィルタの読み込み優先度を低くして、認証が一連のフィルタの最後に行われるようにします。

  • SF_NOTIFY_SECURE_PORT | SF_NOTIFY_NONSECURE_PORT : 保護付き/保護なし要求をサポートします。

  • SF_NOTIFY_PREPROC_HEADERS : SF_PREPROC_HEADERS イベントは、ページ要求ごとに 1 つ発生し、サーバーがヘッダーの前処理を完了し、ヘッダー内情報の処理を開始するところであることを通知します。この時点で、認証フィルタは cookie の確認などを行います。

  • SF_NOTIFY_URL_MAP : URL を物理パスにマップし、必要に応じて、大文字小文字を区別する仮想ディレクトリのルートに対応するために URL を修正します。CS 認証リソースのプロパティを取得するために使われます。

  • SF_NOTIFY_AUTHENTICATION : この通知は、IIS がユーザーの認証を試みる直前に送られます。この時点で、認証フィルタはユーザー ID とパスワードを取得/設定します。

  • SF_NOTIFY_ACCESS_DENIED : アクセスが拒否されたことを示します。認証フィルタは、定められたとおりにログイン ページまたはエラー ページにリダイレクトします。

  • SF_NOTIFY_SEND_RESPONSE : リダイレクト (302) クエリ文字列からプロキシ アカウントを読み取ってキャッシュに格納するために使われます。最初に要求された URL を含むカスタムのリダイレクト ヘッダーおよび本文の書式を設定するためにも使われます。

  • SF_NOTIFY_SEND_RAW_DATA : カスタム リダイレクトを行うときに、元のリダイレクト要求をフィルタにかけるために使われます。

  • SF_NOTIFY_END_OF_REQUEST : 特定の要求の終了を示します。認証フィルタはカスタムのリダイレクト メッセージを作成してクライアントに返します。

  • SF_NOTIFY_END_OF_NET_SESSION : セッションの終了を示します。リソースをクリーンアップします。


シングル サイン オンのサポート

シングル サイン オン (SSO) を使うと、1 つのサイトまたはサーバーに正常にログオンできるユーザーは、再度ログオンしなくてもほかのサイトやサーバーにアクセスできます。Windows 認証モードの認証フィルタでは、cookie を使って次の SSO をサポートします。

  • ドメイン間の SSO : 詳細については、「cookie の共有」を参照してください。

  • Web ファーム シナリオでの SSO : 詳細については、「Web ファーム｣を参照してください。Web ファームでの SSO は、cookie の共有を使ったカスタム認証モードでもサポートされています。


Windows 認証モード

Windows 認証モードでは、ユーザーの確認は、MSCSAuth チケットを含むセッション cookie を設定して行われます。cookie の有効期限は指定されず、セッションが終了すると cookie は削除されます。MSCSAuth チケットには、ユーザー ID、前回ログインした時刻、および前回のログイン時刻からのチケットの有効期間を示す時間ウィンドウが含まれています。ユーザーが確認されても、要求した URL へのアクセス権まで自動的に取得できたことにはなりません。確認されたユーザーの資格情報は、アクセス制御リスト (ACL) によって管理される URL のアクセス権に対してチェックされます。

注

  • Windows 認証モードが有効になっている場合、サイトのセキュリティは自動的にインターネット インフォメーション サービス (IIS) の基本認証に設定されます。この設定を変更しないでください。これにより、認証フィルタが IIS からイベント通知を受けます。

  • Commerce Server 2000 で使用するためにソリューション サイトをアンパックした後、<サイト名>\AuthFiles フォルダに含まれるファイルで匿名アクセスが有効になります。これらのファイルを使わない場合は、削除してください。ソリューション サイトの詳細については、Commerce Server ソリューション サイトを参照してください。

ここでは、次のトピックについて説明します。

  • URL 要求の結果 : ユーザーが URL を要求したときに得られる可能性のある結果について説明します。ユーザーは要求した URL に送られるか、ログイン ページに送られるか、または cookie を使用可能にする必要があることを知らせるサポート ページにリダイレクトされます。これはすべて、サイト開発者に対して透過です。

  • ログイン ページ : サイト開発者が用意すべきログイン ページの内容を説明します。

  • その他のシナリオ : 「URL 要求の結果」で示した以外の、プロキシ アカウント、Web ファーム、cookie の共有、および分散型のサービス拒否 (DDOS) 攻撃などの各種シナリオについて説明します。


URL 要求の結果

ここでは、ユーザーが URL を要求したときに得られる可能性のある結果について説明します。ブラウザから送られた要求はインターネット インフォメーション サービス (IIS) によって検出され、認証フィルタに SF_NOTIFY_PREPROC_HEADERS イベントが通知されます。この時点で、認証フィルタは要求の処理を引き継ぎ、次の処理を行います。

  1. ローカル サイト構成キャッシュ内のサイト構成プロパティを確認します。プロパティが見つからない場合、SiteConfig オブジェクトを使って、管理データベースからサイト構成プロパティを読み取り、ローカル サイト構成キャッシュに格納します。

  2. URL が正しいかどうかを確認し、IIS の仮想ディレクトリ ルートでの大文字小文字の区別に対応できるように自動的に修正を行います。

  3. ブラウザでのセッション cookie サポートを確認します。

ここで、ユーザーに対して発生する可能性のある動作は、サポート ページにリダイレクトされる、ログイン ページにリダイレクトされる、要求した URL が送られる、の 3 つのうちのいずれかです。

ここでは、次のトピックについて説明します。

  • 1 ケース目 : サポート ページへのリダイレクト : セッション cookie サポートが無効になっている場合の認証フィルタの動作について説明します。

  • 2 ケース目 : 要求された URL の送信 : cookie が使用可能になっていて、要求された URL で匿名ユーザーのアクセスが許可されている場合、またはユーザーが要求された URL に対するアクセス権を持っていて、返された cookie に有効な MSCSAuth チケットが含まれている場合の、認証フィルタの動作について説明します。

  • 3 ケース目 : ログイン ページへのリダイレクト : ユーザーをログイン ページにリダイレクトする認証フィルタの動作について説明します。


1 ケース目 : サポート ページへのリダイレクト

この場合、cookie は無効化されています。認証フィルタは cookie が無効になっていることを認識すると、ユーザーをサポート ページにリダイレクトします。このサポート ページは、cookie が必要であり、cookie を使用可能にしてから要求を再送信すべきであることをユーザーに通知します。

これを実現するために、認証フィルタは、SF_NOTIFY_PREPROC_HEADERS イベントが発生したことを IIS から通知された後に、次の操作をバックグラウンドで実行します。

  1. ローカル サイト キャッシュ内のサイト構成プロパティを確認します。プロパティが見つからない場合、SiteConfig オブジェクトを使って、管理データベースからサイト構成プロパティを読み込みます。

  2. ブラウザでのセッション cookie サポートを確認します。セッション cookie がサポートされていない場合、ユーザーは、CS 認証リソースの s_NoCookie_Form (Commerce Server マネージャのユーザー インターフェイスの [cookie を使用しないフォーム]) プロパティで指定されている Active Server Pages (ASP) ページにリダイレクトされます。通常、このページは、アクセスするには cookie が必要であること、および cookie を有効にした後で要求を再送信する必要があることをユーザーに通知するものです。この目的で、nocookie.asp という ASP ページが既定で提供されています。このファイルは、Commerce Server をインストールしたディレクトリの AuthFiles フォルダにあります。

関連項目

URL 要求の結果

2 ケース目 : 要求された URL の送信

3 ケース目 : ログイン ページへのリダイレクト


2 ケース目 : 要求された URL の送信

この場合、cookie は有効化されています。次のシナリオのどちらかに該当する場合は、要求された URL がユーザーに返されます。

  • 返された cookie に有効な MSCSAuth チケットが含まれており、要求された URL に対してユーザーがアクセス権を持っている場合。

  • 返された cookie に MSCSAuth チケットは含まれていないが、要求された URL では匿名ユーザーのアクセスを許可している場合。

これを実現するために、認証フィルタは、SF_NOTIFY_PREPROC_HEADERS イベントが発生したことを IIS から通知された後に、次の操作をバックグラウンドで実行します。

  1. ローカル サイト キャッシュ内のサイト構成プロパティを確認します。プロパティが見つからない場合、SiteConfig オブジェクトを使って、管理データベースからサイト構成プロパティを読み込みます。

  2. 要求された URL を MSCSFirstRequestedURL プロパティに設定し、cookie を送信します。

  3. 戻ってきた cookie に MSCSAuth チケットが含まれていない場合、処理を IIS に返します。

  4. 要求された URL に匿名アクセス権が設定されている場合、URL が返されます。

  5. cookie に MSCSAuth チケットが含まれている場合、認証フィルタはローカル パスワード キャッシュを調べ、cookie に含まれているユーザー ID に一致するエントリを探します。

  6. 一致するエントリを見つけると、認証フィルタはチケットに設定された前回のログイン時刻と現在の時刻を比較し、現在の時刻がチケットに指定された時間ウィンドウ内にあるかどうかを確認します。現在の時刻が、最後にログインした時刻に時間ウィンドウを足した時刻から 5 分以内である場合、チケット上の最後にログインした時刻が現在の時刻に変更されます。これにより、アクティブ ユーザーは参照し続けることができます。

  7. 現在の時刻が時間ウィンドウ内にあるので、チケットは有効であると見なされ、要求された URL へのアクセスのために、ユーザー ID とパスワードが IIS に送信されます。

  8. 要求された URL に対してユーザーがアクセス権を持っているので、IIS はそのページを返します。

関連項目

URL 要求の結果

1 ケース目 : サポート ページへのリダイレクト

3 ケース目 : ログイン ページへのリダイレクト


3 ケース目 : ログイン ページへのリダイレクト

この場合、cookie は有効化されています。次のシナリオのいずれかに該当する場合は、認証フィルタはユーザーをログイン フォームにリダイレクトします。

  • 返された cookie に MSCSAuth チケットが含まれず、要求された URL で匿名ユーザーのアクセスが許可されていない場合。

  • 返された cookie に無効な MSCSAuth チケットが含まれている場合。

  • 返された cookie に有効な MSCSAuth チケットが含まれているが、要求された URL に対してユーザーがアクセス権を持っていない場合。ユーザーをリダイレクトする先の Active Server Pages (ASP) ページは、CS 認証リソースの s_Logon_Form (Commerce Server マネージャのユーザー インターフェイスの [ログイン フォーム]) プロパティで指定されています。

これを実現するために、認証フィルタは、SF_NOTIFY_PREPROC_HEADERS イベントが発生したことを IIS から通知された後に、次の操作をバックグラウンドで実行します。

  1. ローカル サイト キャッシュ内のサイト構成プロパティを確認します。プロパティが見つからない場合、SiteConfig オブジェクトを使って、管理データベースからサイト構成プロパティを読み込みます。

  2. 要求された URL を MSCSFirstRequestedURL プロパティに設定し、cookie を送信します。

  3. 戻ってきた cookie に MSCSAuth チケットが含まれていない場合、処理を IIS に返します。

  4. 要求された URL では匿名ユーザーのアクセスが許可されていないので、IIS は認証フィルタに SF_NOTIFY_ACCESS_DENIED イベントを通知し、ユーザーは定められたとおりにログイン ページまたはエラー ページにリダイレクトされます。

  5. cookie に MSCSAuth チケットが含まれている場合、認証フィルタはパスワード キャッシュを調べ、cookie に含まれているユーザー ID に一致するエントリを探します。

  6. 一致するエントリが見つからない場合、ユーザーはログイン ページにリダイレクトされます。

  7. 一致するエントリが見つかった場合、認証フィルタはログイン時刻と現在の時刻を比較し、現在の時刻がチケットに指定された時間ウィンドウ内にあるかどうかを確認します。

  8. 現在の時刻が、チケットに指定された時間ウィンドウを超えている場合、ユーザーはログイン ページにリダイレクトされます。

  9. 現在の時刻が時間ウィンドウ内にある場合は、チケットは有効であると見なされ、要求された URL へのアクセスのために、ユーザー ID とパスワードが IIS に送信されます。

  10. 要求された URL に対してユーザーがアクセス権を持っていないので、IIS は SF_NOTIFY_ACCESS_DENIED 通知を発行し、認証フィルタはユーザーをログイン ページにリダイレクトします。

ログイン ページでのイベントについては、「ログイン ページ」を参照してください。

関連項目

URL 要求の結果

1 ケース目 : サポート ページへのリダイレクト

2 ケース目 : 要求された URL の送信


ログイン ページ

「URL 要求の結果」で説明している操作はすべて、サイトの開発者に対して透過です。次の処理が、サイト開発者によって用意されるログイン ページで行われます。ログイン ページは、CS 認証リソースの s_Logon_Form (Commerce Server マネージャのユーザー インターフェイスの "ログイン フォーム") プロパティで指定されています。Commerce Server をインストールすると、このログイン フォームの機能をほぼ含む、Login.asp という既定のページが提供されます。これは \Microsoft Commerce Server\AuthFiles フォルダ内にあります。

ユーザーがログイン ページを要求して、その要求がフォーム送信でない場合は、ログイン ページはユーザーに送られます。この時点では、ユーザーはまだ認証されていないため、ログイン ページは、匿名ユーザーのアクセスが許可されていなければなりません。ログイン ページには、新規ユーザーのための登録ページへのリンクがあります。ユーザーは、ユーザー ID とパスワードを含むログイン フォームを送信します。これらの資格情報のいずれかがない場合、ユーザーはログイン ページに戻るようにリダイレクトされます。その後の認証フィルタによる処理は、送信が Get メソッドと Post メソッドのどちらで行われたかによって異なります。

注

  • パフォーマンス上の理由により、ログイン ページには固定 cookie を設定しないでください。

ここでは、次のトピックについて説明します。

  • Get メソッド

  • Post メソッド


Get メソッド

Get メソッドが使われる場合、送信されたユーザー ID とパスワードは HTTP ヘッダーに置かれ、認証フィルタが SF_NOTIFY_PREPROC_HEADERS イベントを受信したときに使えるようになります。これは、ログイン ページが要求を処理する前に行われます。

次のように処理が進行します。

  1. 認証フィルタは送信されたユーザー ID とパスワードを、QueryString コレクションの txtUserName プロパティと txtPassword プロパティから取得します。

  2. 認証フィルタは、ローカル パスワード キャッシュを調べ、ユーザー ID に一致するエントリを探します。

  3. エントリが見つかった場合、パスワードは送信されたパスワードで更新されます。

  4. エントリが見つからない場合は、送信されたユーザー ID とパスワードで新しいエントリが作成されます。

  5. 認証フィルタは処理をログイン ページに戻します。

  6. ログイン ページでは、送信されたユーザー ID とパスワードが、Request オブジェクトの QueryString コレクションの txtUserName プロパティと txtPassword プロパティから取得されます。

  7. 送信されたユーザー ID を使って、Commerce Server のプロファイル リソースまたは別のプロファイル システムからユーザーのプロファイルが取得されます。

  8. ユーザーにプロファイルがない場合、そのユーザーは登録ページにリダイレクトされます。

  9. ユーザーにプロファイルがあっても、プロファイルに関連付けられたパスワードが送信されたパスワードと一致しない場合は、ログイン ページがユーザーに再送信されます。

  10. パスワードが一致する場合は、AuthManager オブジェクトを使って、ユーザーのセッション cookie に MSCSAuth チケットが設定されます。

  11. ユーザーは、認証フィルタが別のセッション cookie の MSCSFirstRequestedURL プロパティに以前格納していた元の URL にリダイレクトされます。

  12. ブラウザが要求を再送信すると、認証フィルタ はチケットが有効かどうかを判断し、IIS に処理を戻します。

  13. ユーザーが URL に対してアクセス権を持っている場合は、URL が返されます。


Post メソッド

Post メソッドが使われる場合、送信されたユーザー ID とパスワードは HTTP 本文に置かれ、ログイン ページが要求を処理するまで認証フィルタで使うことができません。このため、Get メソッドを使った要求の処理より手順が 1 つ多くなります。その手順とは、ユーザー ID とパスワードを URL クエリ文字列に付加するものです。これらの手順を示すサンプル コードについては、「Post メソッドを使ってログインの資格情報を取得し、MSCSAuth チケットを設定するコード」を参照してください。

次のように処理が進行します。

  1. 初め、送信されたユーザー ID とパスワードは認証フィルタで使用できず、処理はすぐにログイン ページに戻されます。

  2. ログイン ページでは、送信されたユーザー ID とパスワードが、Request オブジェクトの Form コレクションの txtUserName プロパティと txtPassword プロパティから取得されます。

  3. 送信されたユーザー ID を使って、Commerce Server のプロファイル リソースまたは別のプロファイル システムからユーザーのプロファイルが取得されます。

  4. ユーザーにプロファイルがない場合、そのユーザーは登録ページにリダイレクトされます。

  5. ユーザーにプロファイルがあっても、プロファイルに関連付けられたパスワードが送信されたパスワードと一致しない場合は、ログイン ページがユーザーに再送信されます。

  6. パスワードが一致する場合は、AuthManager オブジェクトを使って、ユーザーのセッション cookie に MSCSAuth チケットが設定されます。

  7. ユーザー ID とパスワードは、proxyuser と proxypwd の 2 つのプロパティを使って元の URL クエリ文字列に付加されます。この URL クエリ文字列は、認証フィルタが別のセッション cookie の MSCSFirstRequestedURL プロパティに以前格納したものです。クエリ文字列は次のようになります。
       "<MSCSFirstRequestedURL>&proxyuser=UserID&proxypwd=Password"
  8. ユーザーは元の URL にリダイレクトされます。

  9. IIS は認証フィルタに SF_NOTIFY_SEND_RESPONSE イベントを通知することによって、リダイレクト応答を送ることを示します。

  10. 認証フィルタは、ユーザー ID とパスワードを URL クエリ文字列から削除します。資格情報はブラウザには送信されません。

  11. 認証フィルタはパスワード キャッシュにユーザー ID があるかどうかを調べ、見つけたらパスワードを更新します。

  12. ユーザー ID が見つからない場合は、ユーザー ID とパスワードで新しいエントリが作成されます。

  13. ブラウザが要求を再送信すると、認証フィルタ はチケットが有効かどうかを判断し、IIS に処理を戻します。

  14. ユーザーが要求された URL に対してアクセス権を持っている場合は、その URL が返されます。


その他のシナリオ

「URL 要求の結果」で説明している基本シナリオに関して、数多くのバリエーションがサポートされています。ここでは、これらのバリエーションについて説明します。

次のトピックについて説明します。

  • Active Directory におけるクリア テキスト パスワード

  • cookie の共有

  • 分散型のサービス拒否攻撃

  • プロキシ アカウント

  • Web ファーム


Active Directory におけるクリア テキスト パスワード

Active Directory では、ユーザーのパスワードは暗号化されて格納されます。クリア テキストでこのパスワードにアクセスするには、ログイン ページで最初にパスワードを取得するときに次の 2 つのいずれかの操作を行います。

  1. クリア テキスト パスワードを格納するための新しいプロパティを追加して、プロファイル スキーマを拡張します。スキーマの拡張は Commerce Server ビジネス デスクのプロファイル デザイナを使って行います。この処理の詳細については、「プロファイル定義にプロパティを追加する」を参照してください。

  2. クリア テキスト パスワードを格納するためのカスタム キャッシュを作成します。


cookie の共有

cookie を共有すると、複数のドメインとアプリケーションにまたがってユーザーを追跡することができます。cookie を共有するには、その cookie について domain と path という 2 つのプロパティを設定します。次に例を示します。

      ";domain=DomainName;path=Path"

domain プロパティは、cookie が有効であるドメインを指定するために使われます。path プロパティは、cookie が有効であるドメインの URL のサブセットを指定するために使われます。

要求の送信前に、クライアントのブラウザによって、要求された URL に指定されているホストの完全修飾ドメイン名の末尾に一致する domain プロパティを含む cookie があるかどうかが確認されます。そのような cookie がある場合、次は cookie の path プロパティが、要求された URL のパス名コンポーネントと比較されます。それらが一致したら、cookie が要求と一緒に送信されます。

サーバー側では、プロパティを設定するときに domain プロパティの値が指定されていなければ、cookie を生成したサーバーのホスト名が既定の値として設定されます。指定されたドメイン内のホストだけが cookie の domain プロパティを設定することができます。最も一般的な path プロパティは "/" です。path プロパティが指定されていない場合は、cookie を生成した IIS アプリケーションの仮想ルートのパスが既定の値として設定されます。cookie の共有の詳細については、http://www.cis.ohio-state.edu/htbin/rfc/RFC2109.html を参照してください。

Commerce Server 2000 では、既定ではそれぞれのサイトに独自の cookie を持っていますが、認証フィルタによって、それらの cookie を共有させることが可能です。

同じドメイン内のサイト間で cookie を共有するには、b_CookiePath_ApplicationScope プロパティを False に設定します (Commerce Server マネージャのユーザー インターフェイスの [アプリケーションに cookie のパスを設定] チェック ボックスをオフにします）。これにより、ホストでは path プロパティを "/" に設定します。b_CookiePath_ApplicationScope プロパティが True である場合、path プロパティは現在のアプリケーションのパスに設定されます。

ドメイン間で cookie を共有するには、u_CookieDomain_Scope プロパティ (Commerce Server マネージャのユーザー インターフェイスの [共有ドメイン レベルの数]) を適切な数に設定します。詳細については、RFC2109 を参照してください。


分散型のサービス拒否攻撃

分散型のサービス拒否 (DDOS) 攻撃とは、既知の有効なユーザー ID と不正なパスワードを使って繰り返しサーバーにログインし、サーバーをシャットダウンしようとする試みのことです。既定では、認証フィルタはパスワード キャッシュの各エントリを 1 つのクライアント セッションだけと関連付けることはしません。ユーザーが有効なユーザー ID でログオンすると、パスワード キャッシュはそのときに送信されたパスワードで更新されます。このメカニズムを悪用すると、サービスを混乱させることができます。悪質なユーザーは、そのサイトに入り込むことはできませんが、パスワードが変更されたときにアクティブだった登録済みユーザーに対して再度のログインを強制させることができます。

このような攻撃を回避するため、認証フィルタは、ユーザー ID とパスワードを置くキャッシュに別のプロパティを格納できます。このプロパティは通常グローバル一意識別子 (GUID) であり、同じユーザー ID で異なるパスワードを使用しているクライアント セッションを識別するために使われます。

ログイン ページで、AuthManager オブジェクトの SetProperty メソッドにより、GUID はユーザーのチケットにカスタム プロパティの guid として置かれます。また、このプロパティは、リダイレクトされる URL のクエリ文字列に付加されます。

いったん guid プロパティが設定されると、認証フィルタは、パスワード キャッシュへのアクセスにはユーザー ID ではなく、guid プロパティを使います。あるユーザーが、通常のユーザー ID に対して異なるパスワードを使ってログオンすると、認証フィルタではこれを別のユーザーとして認識し、元のパスワードを上書きするのではなく、パスワード キャッシュに新しいエントリを作成します。その後、認証フィルタは、新しいユーザーの場合と同じ処理を行います。このプロセスを示すサンプル コードについては、「チケットにカスタム プロパティを設定するコード」を参照してください。


プロキシ アカウント

プロキシ アカウントを使ってサイトにアクセスするとき、ログイン ページで必要な処理は「Post メソッド」の場合と同じです。ただし、ユーザー ID はプロキシ アカウント ID とパスワードを取得するために使われ、ユーザー ID とパスワードの代わりにこれらの資格情報が URL クエリ文字列に設定され、パスワード キャッシュに格納されます。以降のサイトへの訪問では、パスワード キャッシュへのアクセスには、ユーザー ID ではなくプロキシ アカウント ID が使われます。

プロキシ アカウントの資格情報は、既定のプロファイル スキーマの拡張プロパティやそのほかの手段で格納できます。プロファイル スキーマの拡張は Commerce Server ビジネス デスクのプロファイル デザイナを使って行います。この処理の詳細については、「プロファイル定義にプロパティを追加する」を参照してください。

プロキシ アカウントを使用するときに個々のユーザーを追跡するには、AuthManager オブジェクトを使ってチケットにカスタムの guid プロパティを追加します。いったん guid プロパティが設定されると、認証フィルタは、パスワード キャッシュへのアクセスにはプロキシ アカウント ID ではなく、guid プロパティを使います。この方法の詳細については、「分散型のサービス拒否攻撃｣を参照してください。


Web ファーム

Web ファームでは、認証フィルタを使うと、1 つのサーバーで認証されたユーザーは、ログイン情報を再送信しなくても別のサーバーのサイトにアクセスできます。ただし、要求が Post メソッドで非固定負荷分散を使って送信された場合は、ヘッダー本体に含まれている情報はすべて、必要なリダイレクトを行う際に失われます。Post メソッドは固定負荷分散の場合にだけ使ってください。非固定負荷分散を使う場合は、常に Get メソッド (およびセキュリティに関して問題がある場合には HTTPS) を使います。

認証フィルタを使うときには、次のように配置します。

  • すべてのサイトを同じディレクトリに置きます。たとえば、www.microsoft.com/bookstore と www.microsoft.com/msdn のように配置します。www.microsoft.com と www.microsoft.com/bookstore などのように、あるサイトを別のサイトのサブディレクトリに置くことはしません。

  • 同じディレクトリ内では、各サイトの名前には類似したものを使わないようにします。www.microsoft.com/retail と www.microsoft.com/retail2 のように、あるサイトの名前が別のサイトの名前の一部であることのないようにしてください。

このような要件があるのは、認証フィルタが cookie に依存しているためです。認証フィルタを使わない場合にチケットが URL クエリ文字列に置かれる場合は、サイトが別のサイトのサブディレクトリであってもかまいません。

認証済みのユーザーが新しいサーバーを初めて訪れたときは、次の処理が行われます。

  1. 認証フィルタは、正しい URL を確認します (大文字小文字を自動的に修正します)。

  2. 認証フィルタはセッション cookie がサポートされているかどうかを確認します。

  3. 認証フィルタは MSCSAuth チケットを確認します。

  4. 認証フィルタは MSCSAuth チケットが有効であることを確認します (現在の時刻を、チケットに指定された時間ウィンドウを加えた前回のログイン時刻と比較します)。

  5. パスワード キャッシュはホスト間で共有されず、また、ユーザーがこのサイトを訪問したのはこれが初めてであるため、チケット内のユーザー ID に対応するエントリはキャッシュ内にありません。認証フィルタはこれを検出し、cookie の MSCSFirstRequestedURL プロパティを現在の要求されている URL にリセットします。

  6. ログイン ページに処理が渡されます。

  7. ログイン ページで、これが Submit アクションではないこと、またユーザーに有効な MSCSAuth チケットがあることが確認されたら、チケットからユーザー ID が取得され、それを使ってユーザーのプロファイルが取得されます。

  8. ユーザーのパスワードがプロファイルから取得され、要求された URL クエリ文字列にユーザー ID と共に付加されます。パスワードはクリア テキストである必要があります。クリア テキスト パスワードの使用の詳細については、「Active Directory におけるクリア テキスト パスワード｣を参照してください。

  9. 要求された URL にユーザーがリダイレクトされ、IIS からこのイベントを通知されると、認証フィルタはクエリ文字列からユーザー ID とパスワードを削除して、これらをキャッシュに入れます。

  10. ブラウザから要求が再送信されると、認証フィルタはキャッシュを調べて対応するエントリを探し、現在の時刻が時間ウィンドウ内にあるかどうかを確認します。

  11. 現在の時刻が時間ウィンドウ内にある場合、認証フィルタは処理を IIS に渡します。

  12. ユーザーが要求された URL に対してアクセス権を持っている場合は、その URL が処理され、IIS から返されます。

プロキシ アカウントを使う Web ファーム

プロキシ アカウント ID の含まれた有効なチケットを持ち、Web ファームの新しいサイトを訪問するユーザーについて考えてみます。認証フィルタでは、プロキシ アカウント ID を使ってユーザーのプロファイルを取得します。プロキシ アカウント ID にはプロファイルが関連付けられていないため、チケットは無効であると見なされます。ユーザーはアクセスを拒否され、ログイン ページにリダイレクトされます。詳細については、「プロキシ アカウント｣を参照してください。

これを回避するには、AuthManager オブジェクトを使ってチケットにカスタムの guid プロパティを追加します。いったん guid プロパティが設定されると、認証フィルタは、パスワード キャッシュへのアクセスにはプロキシ アカウント ID ではなく、guid プロパティを使います。GUID がパスワード キャッシュ内に見つからない場合は、認証フィルタは、プロキシ アカウント ID ではなく MSCSAuth チケットのユーザー ID を使って、プロファイルを探します。この場合、プロファイルは存在し、ユーザーは要求した元の URL にリダイレクトされます。この方法の詳細については、「分散型のサービス拒否攻撃」を参照してください。


カスタム認証モード

ISAPI フィルタである認証フィルタ のこの操作モードでは、認証フィルタの基本サービスを利用しながら、サイト開発者がカスタム認証サービスを提供できます。

このモードでは、SF_NOTIFY_PREPROC_HEADERS イベントが発生したことを通知された後、認証フィルタは次の操作を実行します。

  1. ローカル サイト キャッシュ内のサイト構成プロパティを確認します。プロパティが見つからない場合、SiteConfig オブジェクトを使って、管理データベースからサイト構成プロパティを読み取り、サイト キャッシュに格納します。

  2. 要求された URL が正しいかどうかを確認し、URL の大文字小文字を自動的に修正します。

  3. セッション cookie がサポートされているかどうかを確認します。サポートされていない場合、ユーザーは CS 認証リソースの s_NoCookie_Form (Commerce Server マネージャのユーザー インターフェイスの [cookie を使用しないフォーム]) プロパティで指定されている Active Server Pages (ASP) ページにリダイレクトされます。通常、このページは、アクセスするには cookie が必要であること、および cookie を有効にした後で要求を再送信する必要があることをユーザーに通知するものです。

  4. cookie に MSCSAuth チケットが含まれているかどうかを調べ、含まれていない場合はユーザーをログイン ページにリダイレクトします。

  5. cookie に MSCSAuth チケットが含まれている場合、チケットの前回のログイン時刻と現在の時刻を比較し、現在の時刻がチケットに指定された時間ウィンドウ内にあるかどうかを確認します。

  6. 現在の時刻が、チケットに指定された時間ウィンドウを超えている場合、ユーザーは未確認ユーザーとしてログイン ページにリダイレクトされます。

  7. 現在の時刻が時間ウィンドウ内にある場合、チケットは有効であると見なされ、ユーザーは確認済みユーザーとしてログイン ページにリダイレクトされます。現在の時刻が、最後にログインした時刻に時間ウィンドウを足した時刻の 5 分以内にある場合、チケット上の最後にログインした時刻が現在の時刻に変更されます。これにより、アクティブ ユーザーは参照し続けることができます。


自動 cookie モード

自動 cookie モードを使うと、複数ページおよび複数セッションにまたがって匿名ユーザーを追跡できます。ユーザーを識別するために一意の ID が生成され、必要に応じて、そのユーザーに関する情報を格納するためのプロファイルが作成されます。これらの手順を示すサンプル コードについては、「新しい MSCSProfile チケットを設定するコード｣を参照してください。

ユーザーがサイトへのアクセス要求を送信すると、認証フィルタ (ISAPI フィルタ) は、インターネット インフォメーション サービス (IIS) から SF_NOTIFY_PREPROC_HEADERS イベントの発生を通知された後、次の処理を実行します。

  1. ローカル サイト キャッシュ内のサイト構成プロパティを確認します。プロパティが見つからない場合、SiteConfig オブジェクトを使って、管理データベースからサイト構成プロパティを読み取り、サイト キャッシュに格納します。

  2. URL が正しいかどうかを確認し、大文字小文字を自動的に修正します。

  3. ブラウザで cookie がサポートされているかどうかを確認します。

  4. cookie がサポートされていない場合、ユーザーは CS 認証リソースの s_NoCookie_Form (Commerce Server マネージャのユーザー インターフェイスの [cookie を使用しないフォーム]) プロパティで指定されている Active Server Pages (ASP) ページにリダイレクトされます。通常、このページは、アクセスするには cookie が必要であること、および cookie を有効にした後で要求を再送信する必要があることをユーザーに通知するものです。この目的で、nocookie.asp という ASP ページが既定で提供されています。このファイルは、Commerce Server をインストールしたディレクトリの AuthFiles フォルダにあります。

  5. cookie が返されたら、認証フィルタはそれに MSCSProfile チケットが含まれているかどうかを確認します。

  6. MSCSProfile チケットがある場合、認証フィルタは Windows の有効なユーザー アカウントを使って、IIS でそのユーザーの権限を借用します。

  7. 要求された URL に匿名アクセス権が設定されている場合、URL が返されます。

  8. チケットがない場合、ユーザーは CS 認証リソースの s_AutoCookie_Form (Commerce Server マネージャのユーザー インターフェイスの [自動 cookie フォーム]) プロパティで指定されている ASP ページにリダイレクトされます。

自動 Cookie ページ

これまでの手順はすべて、サイト開発者に対して透過です。次の処理が、サイト開発者によって用意される自動 cookie ページで行われます。

  1. 固定 cookie がサポートされているかどうかを確認し、利用できない場合は cookie を使用しないページにユーザーをリダイレクトします。

  2. 固定 cookie のサポートが有効になっている場合、ユーザーを識別するためにグローバル一意識別子 (GUID) または別の一意の ID が作成されます。

  3. 一意の ID がユーザーの MSCSProfile チケットに設定されます。

  4. この時点で、匿名ユーザーの情報を格納するためのプロファイルが作成できます。

  5. ユーザーは要求された URL にリダイレクトされます。

Commerce Server をインストールすると、このログイン フォームの機能をほぼ含む、autocookie.asp という既定のページが提供されます。これは \Microsoft Commerce Server\AuthFiles フォルダ内にあります。


自動 cookie を使った Windows 認証モード

ここでは、Windows 認証と自動 cookie を組み合わせた、混合認証モードについて説明します。このモードでは、匿名ユーザーと登録済みユーザーの両方を受け入れることができ、両方の追跡ができます。このモードは、コンテンツの一部だけがすべてのユーザーに対して公開されていて、残りは登録ユーザーを対象に公開されているサイトで便利です。

この混合モードと Windows 認証モードの主な違いは、次のとおりです。

  • 混合モードでは、匿名ユーザーの追跡ができます。

  • 混合モードでは、アクセス制御リスト (ACL) の設定とは関係なく、匿名ユーザーが URL にアクセスするには、有効な MSCSProfile チケットが必要です。Windows 認証モードでは、匿名ユーザーにはチケットは必要なく、匿名ユーザーのアクセス権で URL にアクセスすることができます。

Window 認証モードの詳細については、「Windows 認証モード」を参照してください。自動 cookie モードの詳細については、「自動 cookie モード｣を参照してください。

匿名ユーザーの登録

サイトを匿名で訪問するユーザーは、MSCSProfile チケットを受け取ります。登録時には、ユーザーは MSCSAuth チケットを受け取ります。こうして、このユーザーは、HTTP ヘッダーに別のチケットを含む cookie を 2 つ持つことになります。これらのチケットの順序は不明で、要求ごとに異なる可能性があります。認証フィルタではこのことは認識されており、MSCSProfile チケットを探す前に、すべての cookie を対象に MSCSAuth チケットを探します。

両方の cookie が、HTTP 要求ヘッダー内での出現順序で Web ログ ファイルに記録されます。Web サーバー ログ インポート DTS タスクでは、最初に見つけた cookie をインポートします。DTS タスクで、cookie の順序が異なるヒットがログ ファイルで発見されると、1 人のユーザーが 2 人のユーザーとして認識されることがあります。これによってユーザーを追跡する機能が影響を受け、訪問とユーザーのカウントに間違いが生じる可能性があります。

解決方法としては、MSCSAuth チケットと MSCSProfile チケット両方のユーザー ID を、同じユーザー ID にマップします。次に MSCSProfile チケットを空の文字列に設定します。こうすると、MSCSProfile チケットは削除されます。


自動 cookie を使ったカスタム認証モード

ここでは、カスタム認証と自動 cookie を組み合わせた、混合認証モードについて説明します。この混合モードを使用すると、登録済みユーザーと匿名ユーザーの両方がサイトにアクセスできるようになり、固定 cookie を通じて匿名ユーザーを追跡できます。サイト開発者は、Windows のアクセス制御リスト (ACL) によるアクセス制御ではなく、カスタム認証プロセスを提供できます。

匿名ユーザーによるアクセスを可能にするには、次の操作を行います。

  1. CS 認証リソース プロパティである b_CookiePath_ApplicationScope を False に設定します (Commerce Server マネージャのユーザー インターフェイスの [アプリケーションに cookie のパスを設定] チェック ボックスをオフにします)。

  2. ログイン ページで、現在の仮想ディレクトリ ルートの下にはない、別の仮想ディレクトリ ルートへのリンクを用意します。匿名アクセスの内容は、すべてこの別の仮想ディレクトリ ルートの下に保存します。


パイプラインを利用する

Commerce Server 2000 パイプラインは、1 つ以上のコンポーネントをリンクし、それらを順番に実行していくソフトウェア インフラストラクチャです。Commerce Server 2000 には、このインフラストラクチャを利用した 3 つのパイプライン モデルが実装されています。注文処理パイプライン (OPP)、ダイレクト メーラー パイプライン、およびコンテンツ選択パイプラインです。

ここでは、次のトピックについて説明します。

  • パイプラインの基礎 : Commerce Server 2000 パイプラインの基本機能について説明します。

  • パイプライン エディタ : パイプライン エディタを使って、テンプレートからパイプラインを作成する方法、プロパティを変更して既存のパイプラインの内容を変更する方法、およびカスタム パイプラインを作成する方法について説明します。

  • 注文処理パイプライン : さまざまなタイプの Commerce Server 2000 注文処理パイプラインについて、さらにこれらのパイプラインの機能を拡張する方法について説明するほか、注文処理パイプラインのステージとコンポーネントのリファレンスを提供します。

  • ダイレクト メーラー パイプライン : ダイレクト メーラー パイプラインで使われるステージとコンポーネントについて説明します。

  • コンテンツ選択パイプライン : コンテンツ選択パイプラインで使われるステージとコンポーネントについて説明します。このパイプラインは、広告の選択、割引の決定、およびページへのパーソナライズの追加を行うために使います。

  • プールされたパイプライン : プールされたパイプラインの使い方を説明します。

関連項目

パイプライン オブジェクト

パイプラインの種類


パイプラインの基礎

パイプラインは、ビジネス プロセスの各ステージを定義してそれぞれをリンクし、それらのステージを順番に実行して特定のタスクを完了する、ソフトウェア インフラストラクチャです。パイプラインは処理をステージに分割します｡ステージとは作業のカテゴリを表す抽象概念です。パイプラインはまた、その各作業カテゴリをどのような順序で実行するかということも決定します。

パイプラインの各ステージには、1 つ以上のパイプライン コンポーネント (COM オブジェクト) が含まれ、それらをサイト独自の要件に合わせて構成できます。たとえば、典型的な注文処理パイプラインは、買い物客情報ステージ、支払いステージ、および送料ステージを含みます｡

パイプライン構成ファイル (.pcf) がパイプラインを定義します｡このファイルで記述されたパイプラインが作成され、パイプライン オブジェクトによって実行されます｡Commerce Server 2000 にはパイプラインを実行する MtsPipeline、MtsTxPipeline、PooledPipeline、PooledTxPipeline、OrderGroup、および OrderPipeline の 6 つのオブジェクトが用意されています。MtsPipeline オブジェクトと PooledPipeline オブジェクトはトランザクションをサポートしません。MtsTxPipeline オブジェクトと PooledTxPipeline オブジェクトはトランザクションをサポートします｡

注

  • Commerce Server 2000 においては、パイプラインが OrderGroup オブジェクトの RunPipe メソッドを通して間接的に呼び出されることがよくあります。

パイプライン構成ファイル (.pcf ファイル) は通常次の 3 つのうちのいずれかにマークされます｡

  • [任意のパイプライン] : 任意のパイプラインに読み込むことができます。

  • [トランザクション パイプラインが必要] : MtsTxPipeline パイプラインまたは PooledTxPipeline パイプラインに読み込む必要があります。

  • [非トランザクション パイプラインが必要] : MtsPipeline、PooledPipeline、または OrderPipeline のいずれかのパイプラインに読み込む必要があります。

プールされたパイプラインは COM+ オブジェクト プールを利用して、パイプラインの読み込みと実行を高速で行います。詳細については、「プールされたパイプライン」を参照してください｡

注

  • Microsoft Application Center 2000 Component Load Balancing (CLB) を Commerce Server のプールされたパイプラインと共に使用することができます。セットアップ プログラムは、Commerce Server のパイプラインを COM+ パッケージとして登録します。CLB と共に使用するには、Microsoft 管理コンソール (MMC) のコンポーネント サービスで、パッケージの [アクティブ化の種類] を [ライブラリ アプリケーション] から [サーバー アプリケーション] に変更する必要があります。パイプライン オブジェクト自体は CLB によってプールされますが、パイプライン コンポーネントは負荷分散されません。これは、プールされたパイプライン内で実行するコンポーネントは COM+ アプリケーションとして登録できないことを意味します。

  • またセットアップ プログラムは、Commerce Predictor Build Watcher コンポーネントと Commerce Event Logging コンポーネントを COM+ パッケージに登録します。ただし、いずれのパッケージも CLB と共に使用してはなりません。これらのパッケージは、分散 COM (DCOM) で管理警告を監視するために作成されますが、CLB と共に使用してもあまり役に立ちません。

サイトにパイプラインを設計する

サイトにパイプラインを設計する際には、パイプラインが正しく機能するよう確実な処置を講じなければなりません。まず、ほかのパイプライン コンポーネントが行った作業に上書きをするコンポーネントがないように構成します｡

次に、どのような状況でパイプラインがプロセスを中止するかを定義します。パイプライン内の各コンポーネントは、実行すると、成功、警告、または失敗のいずれかの状態を返します。警告を許容するようにステージを構成すると、パイプラインはそのコンポーネントの出した警告にかかわらず処理を続けます。成功しか許容しないようにステージを構成すると、そのコンポーネントが警告を返した場合、パイプラインはプロセスを中止しエラーを返します｡


パイプライン エディタ

パイプライン エディタは Commerce Server パイプラインを編集するために使うアプリケーションです。これにより、ローカル コンピュータ、またはローカル エリア ネットワーク (LAN) に接続されたコンピュータ上でパイプラインを編集できます｡

パイプラインはパイプライン構成 (.pcf) ファイルに記述されます。パイプライン エディタを使って .pcf ファイルの作成と構成ができます｡

パイプライン エディタは、パイプラインをパイプとして、そのステージをパイプのセグメントとして表示します｡ステージで使用されるコンポーネントは、バルブとして表示されます。

図をクリックすると、拡大または縮小します。

特定のステージに対して関連性を持つコンポーネントがあります。つまり、あるコンポーネントはある決まったステージ内で機能することができます。Commerce Server はこのステージとコンポーネントの関連性を強制適用しません。どのコンポーネントをどのステージに入れてもかまいません。

注

  • パイプライン エディタを使って任意のステージに対して関連性を持つコンポーネントを表示すると、Money Converter コンポーネントと Scriptor コンポーネントが表示されます。この 2 つのコンポーネントはすべてのステージに対して関連性があります｡

ここでは、次のトピックについて説明します。

  • パイプライン エディタを起動する : パイプライン エディタの起動方法、および既存のパイプライン構成ファイルを読み込む方法について説明します｡

  • 新しいパイプラインを作成する : パイプライン構成テンプレート (.pct) を使って新しいパイプラインを作成する方法について説明します｡

  • パイプラインにコンポーネントを追加する : パイプライン構成の任意のステージにコンポーネントを加える方法について説明します｡

  • パイプライン ステージでのコンポーネントの順序を変更する : パイプラインのステージ内でコンポーネントを上下に移動する方法について説明します｡

  • 参照/更新データのリストを作成する : パイプラインが各種のディクショナリから読み取る値、およびそれらのディクショナリに書き込む値の一覧を作成する方法について説明します｡

  • パイプライン エディタのプロパティ ページを使用する : パイプラインの各種要素のプロパティを変更する方法について説明します｡プロパティとは、名前や通貨の設定などです｡

  • カスタム パイプラインを作成する : 標準テンプレートを使わずにパイプラインを作成する手順について説明します｡


パイプライン エディタを起動する

次の手順でパイプライン エディタを起動します｡

パイプライン エディタを起動するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [開く] をクリックします。

  3. 編集するパイプラインの .pcf ファイルを選択し、[開く] をクリックします｡

  4. 編集するために選択した .pcf ファイルが、パイプライン エディタで開かれます｡

関連項目

新しいパイプラインを作成する

カスタム パイプラインを作成する


新しいパイプラインを作成する

Commerce Server 2000 には、次の標準テンプレートがあり、それを基に新しいパイプラインを作成できます。新しいパイプラインを作成するためのテンプレート ファイルは、pct (パイプライン構成テンプレートの略) というファイル拡張子を持ちます。新しいテンプレートを保存すると、標準パイプライン構成ファイルの拡張子 (.pcf) を付けて保存されます｡

テンプレート名 | 説明
ContentSelection.pct | 7 つのステージから構成されるパイプラインで、広告、販売促進、およびパーソナライゼーション用のコンテンツを選択するために使います｡[コンテキスト読み込み]、[フィルタ]、[初期スコア]、[スコア調整]、[選択]、[記録] および [形式] の各ステージが含まれています。
Empty.pct | 空のパイプラインです。
EventProcessing.pct | 3 つのステージから構成されるイベント記録パイプラインで、スケジュール更新の目的で、広告、宣伝活動、および売り上げを追跡するために使います｡[コンテキスト読み込み]、[記録] および [形式] の各ステージが含まれています。
Plan.pct | 14 のステージから構成される注文処理パイプライン (OPP) で、小売りを行うシナリオでの注文量を計算するために使います。[商品情報]、[マーチャント情報]、[買い物客情報]、[注文の初期化]、[注文の確認]、[品目価格]、[品目価格調整]、[注文価格調整]、[注文代金]、[送料]、[手数料]、[税]、[注文合計] および [在庫] の各ステージが含まれています。
Product.pct | 5 つのステージから構成される OPP で、商品の価格設定に影響を及ぼすことになった要因を調べるために使います。[商品情報]、[買い物客情報]、[品目価格]、[品目価格調整] および [在庫] の各ステージが含まれています。
Purchase.pct | 3 つのステージから構成される OPPで、最終的な購入情報を受領します｡[購入確認]、[支払い] および [受注] の各ステージが含まれています。
Test.pct | 1 つのステージで構成されるパイプラインです。[テスト] ステージが含まれています｡

テンプレートには、構成済みのパイプラインが格納されています。ステージの名前を変更したり、ステージを追加または削除することができます。

任意のステージの任意のコンポーネントを追加または削除できます。

新しいパイプラインを作成するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [新規作成] をクリックします。

  3. [パイプライン テンプレートの選択] ダイアログ ボックスでテンプレートを選択し、[OK] をクリックします｡

  4. 必要に応じてパイプラインを変更します｡

  5. [ファイル] メニューの [名前を付けて保存] をクリックします。[ファイル名] ボックスにファイル名を入力し、[保存] をクリックします｡

関連項目

パイプラインにコンポーネントを追加する

パイプライン ステージでのコンポーネントの順序を変更する

参照/更新データのリストを作成する

パイプライン エディタのプロパティ ページを使用する

カスタム パイプラインを作成する


パイプラインにコンポーネントを追加する

パイプライン エディタを使って、コンポーネントをパイプラインの任意のステージに追加することができます。ただし、コンポーネントが正常に処理を終了するには、そのコンポーネントで必要な値が注文フォームに既に存在していなければなりません。ある値を必要とするコンポーネントを挿入するステージに先立って、それより前のステージ内のコンポーネントがその必要な値を注文フォームに確実に書き込むようにする必要があります｡

パイプライン エディタを使ってパイプラインにコンポーネントを追加するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [開く] をクリックし、変更するパイプラインを選択して [開く] をクリックします。

  3. 次のいずれかの操作を行います｡
    • コンポーネントを挿入するステージの名前を右クリックし、[コンポーネントの挿入] をクリックします｡[コンポーネントの選択] ダイアログ ボックスが表示されます。

      または

    • 目的のステージ内の既存コンポーネント名を右クリックし、[コンポーネントの挿入] をポイントします。次に、[前] または [後] のいずれかをクリックします｡[コンポーネントの選択] ダイアログ ボックスが表示されます。
  4. [コンポーネントの選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ステージ] | ステージのオプションを選択します。
    [コンポーネント] コンポーネントを選択します。

    注

    • 選択したステージ オプションにより、どのコンポーネントが [コンポーネント] 領域に表示されるかが決まります。既定値は、コンポーネントの挿入対象のステージの名前です｡このオプションを選択すると、そのステージで使われるコンポーネントだけが表示されます。[すべて] を選択すると、通常使われるステージにかかわらず、すべてのコンポーネントが表示されます｡

  5. [コンポーネント] ボックスの一覧で、挿入するコンポーネントの名前を選択し、[OK] をクリックします｡

  6. 新しいステージを構成するには、ステージを右クリックし、[プロパティ] をクリックします。

    [ステージのプロパティ] ダイアログ ボックスが表示されます。

  7. [ステージのプロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ラベル] | ステージの名前を入力します。
    [説明] | ステージの説明を入力します。
    [GUID] | ステージの GUID を入力します。
    [モード] Site Server 3.0 Commerce Edition との互換性を維持するため、ステージに対してモードを指定します。

    注

    • [モード] ボックスは、Site Server 3.0 Commerce Edition のパイプラインとの互換性を維持するためのものです。このボックスに指定される数字は、パイプラインのステージが Page オブジェクトの RunProduct、RunPlan および RunPurchase のうち、どのメソッドで実行するかを示します。RunProduct の場合は 1、RunPlan の場合は 2、RunPurchase の場合は 4 を指定します。値がゼロ (0) の場合は、ステージが実行できなくなります。
    [エラー レベル] ステージのエラー レベルを指定します。

    エラー レベル値の詳細については、「エラー レベル」を参照してください。

    注

    • ステージにあるコンポーネントが、[エラー レベル] ボックスに指定されたレベル以上でエラーを生成すると、ステージは停止し、エラーを生成します。

  8. [適用] をクリックし、[OK] をクリックします。

  9. [ファイル] メニューの [上書き保存] をクリックします。

関連項目

パイプライン ステージでのコンポーネントの順序を変更する

参照/更新データのリストを作成する

パイプライン エディタのプロパティ ページを使用する


パイプライン ステージでのコンポーネントの順序を変更する

パイプライン エディタの上向き矢印ボタンと下向き矢印ボタンを使って、コンポーネントをステージ内で上下に移動することができます｡

パイプライン エディタでコンポーネントを移動するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [開く] をクリックし、変更するパイプラインを選択して [開く] をクリックします。

  3. コンポーネントの名前を右クリックし、[下へ移動] または [上へ移動] をクリックします｡

  4. [ファイル] メニューの [上書き保存] をクリックします。

関連項目

パイプラインにコンポーネントを追加する


参照/更新データのリストを作成する

パイプラインの各コンポーネントは、注文フォームから値を読み取り、処理を実行し、そして注文フォームに値を書き込みます。パイプラインの後方で実行されるコンポーネントは、先行コンポーネントが注文フォームに書き込んだ値を読み取ります。パイプラインを変更したり、新規に作成するときには、各コンポーネントで読み取りや書き込みを行う値の一覧を参照してください。これにより必要な値が各時点で確実に存在するようにできます｡

パイプライン エディタを使って、任意のパイプラインの各コンポーネントを実行順に一覧表示したテキスト ファイルを作成できます。このテキスト ファイルには、必須コンポーネントを含む、そのパイプラインで実行されるすべてのコンポーネントが一覧表示されます。必須コンポーネントは常にステージの最後で実行されます。各コンポーネントについて、このファイルでは次の情報を表示します｡

  • 入力値 (読み取られる値)

  • 出力値 (書き込まれる値)

  • コンテキスト値 (PipeContext Dictionary オブジェクトから読み取られる値で、そのパイプライン オブジェクトの Execute メソッドにパラメータとして渡されます)。

すべての参照/更新データのリストを作成するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [開く] をクリックし、変更するパイプラインを選択して [開く] をクリックします。

  3. [ファイル] メニューの [参照/更新データの保存] をクリックします｡

  4. [名前を付けて保存] ダイアログ ボックスで、テキスト ファイルの保存場所とファイル名を指定して [保存] をクリックします｡

パイプライン エディタでファイルが保存され、そのファイルが Microsoft Notepad で開かれます｡

関連項目

パイプラインにコンポーネントを追加する

パイプライン エディタのプロパティ ページを使用する


パイプライン エディタのプロパティ ページを使用する

パイプライン エディタは、パイプライン、ステージ、およびコンポーネントのプロパティを簡単に表示したり変更したりするためのインターフェイスを提供します｡

次のダイアログ ボックスを使って、パイプライン、ステージ、およびコンポーネントのプロパティを編集します。

要素 | ダイアログ ボックス | 説明
パイプライン | [パイプラインのプロパティ] | パイプラインの名前、パイプラインの種類、使用できる .pcf ファイル、通貨と LCID 設定、およびコメントを示します。
ステージ | [ステージのプロパティ] | ステージの名前、説明、GUID、モードとエラー レベルの設定、およびコメントを示します｡
コンポーネント | [コンポーネントのプロパティ]、[参照/更新データ] : コンポーネントに特有のページです。 | コンポーネントの名前、クラス ID、プログラム ID、説明、注文フォームから読み取られる値、注文フォームに書き込まれる値、および Context ディクショナリ オブジェクトから読み取られる値を示します。 構成可能なプロパティを持つ一部のコンポーネントには、追加のプロパティ ページがあります｡そのページのオプションは、そのコンポーネントに特有のものです｡

パイプライン エディタでプロパティを表示するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. パイプライン エディタで、プロパティを表示するパイプライン、ステージ、またはコンポーネントの名前を右クリックし、[プロパティ] をクリックします｡

対象のパイプライン、ステージ、またはコンポーネントのプロパティがパイプライン エディタに表示されます｡

ここでは、次のトピックについて説明します。

  • パイプラインのプロパティ : [パイプラインのプロパティ] ダイアログ ボックスで、パイプラインのプロパティをまとめて変更する方法と、特定のプロパティだけを変更する方法について説明します｡

  • ステージのプロパティ : ステージのプロパティを変更する方法について説明します。

  • コンポーネントのプロパティ : 個々のコンポーネントのプロパティを変更する方法について説明します｡

  • 参照/更新データのプロパティ : 個々のコンポーネントで読み取られる値や書き込まれる値のプロパティを表示する方法について説明します｡

  • 作成エラーのプロパティ : パイプライン コンポーネントが読み込まれないときに表示されるエラー ダイアログ ボックスについて説明します。


パイプラインのプロパティ

[パイプラインのプロパティ] ダイアログ ボックスを使って、パイプラインの名前の変更、トランザクションの互換性や通貨モードの指定、パイプラインに関するコメントの保存を行います｡

[パイプラインのプロパティ] ダイアログ ボックスでは、次のプロパティが利用できます｡

  • [ラベル] : 対象のパイプラインについて、パイプライン エディタで表示するための名前を指定します｡新しい名前を入力して、名前を変更することができます。

  • [トランザクションの互換性] : この構成ファイルと共に使うパイプライン オブジェクトを指定します。選択できるオプションは次のとおりです。
    • [任意のパイプライン] : この構成ファイルが、OrderPipeline オブジェクト、非トランザクション パイプライン オブジェクト (PooledPipeline、MtsPipeline)、またはトランザクション パイプライン オブジェクト (PooledTxPipeline、MtsTxPipeline) と使用できることを示します｡

    • [トランザクション パイプラインが必要] : この構成ファイルが、トランザクション パイプライン オブジェクト (PooledTxPipeline、MtsTxPipeline) とのみ使用できることを示します。トランザクション パイプライン オブジェクトは、Microsoft Transaction Server (MTS) で "必須のトランザクション" として登録されていて、パイプライン内のすべてのコンポーネントにわたるトランザクションを保持します｡

    • [非トランザクション パイプラインが必要] : この構成ファイルが、非トランザクション パイプライン オブジェクト (PooledPipeline、MtsPipeline、および OrderPipeline) とのみ使用できることを示します。非トランザクション パイプライン オブジェクトは MTS で "サポートされていないトランザクション" として登録されます。
  • [通貨モード] : パイプラインで通貨値を処理する方法を決定します。選択できるオプションは次のとおりです。
    • [通貨と整数 (互換)] : 通貨値を使う Site Server 3.0 と Commerce Server 2000 のコンポーネントが、パイプライン内で混在できるようにします。各ステージの末尾の必須コンポーネントが 2 組の通貨値の管理と更新を行います。1 組は Site Server 3.0 Commerce Edition のコンポーネント用で、もう 1 組は Commerce Server 2000 用です｡Site Server 3.0 Commerce Edition のコンポーネントと Commerce Server 2000 のコンポーネントを同じステージに混在させる場合は、MoneyConverter パイプライン コンポーネントを使用する必要があります。

    • [通貨 (有効桁数)] : パイプラインのすべてのコンポーネントについて、"通貨の有効桁数" タイプを使います。金額値を使うすべてのコンポーネントで、"通貨の有効桁数" タイプを使えるようにする必要があります。通常、このようなコンポーネントの名前の末尾には、サフィックス "Cy" があります。
  • [通貨の LCID を指定します] : 通貨処理のためのロケール ID (LCID) を指定します｡既定値はゼロ (0) で、この場合はサーバーの既定のロケール ID が使われます。

  • [通貨を端数なしで表示するために使用する桁位置を指定します] : 通貨に持たせる有効桁数を決定します。たとえば、合衆国のセントに対しては 2 桁です。この値が既定の端数処理に使用され、古い通貨キーに使用する調整要素を決定します。[通貨モード] に [通貨（有効桁数）] が指定されている場合にのみ有効です｡

  • [説明] : このパイプラインについてコメントを入力できる領域です。


ステージのプロパティ

[ステージのプロパティ] ダイアログ ボックスを使って、パイプラインの次のプロパティを変更できます｡

  • [ラベル] : 対象のステージについて、パイプライン エディタで表示するための名前を指定します｡新しい名前を入力して、名前を変更することができます。

  • [説明] : 対象のステージについて説明を入力する領域です。

  • [GUID] : 対象のステージを識別するグローバル一意識別子です。

  • [モード] : [モード] ボックスは、Site Server 2.0 のパイプラインとの互換性を維持するためのものです。このボックスに指定される数字は、パイプラインのステージが Page オブジェクトの RunProduct、RunPlan、および RunPurchase のうち、どのメソッドによって実行されるかを示します。RunProduct の場合は 1、RunPlan の場合は 2、RunPurchase の場合は 4 を指定します。値がゼロ (0) の場合は、ステージが実行できなくなります。

  • [エラーレベル] : ステージにあるコンポーネントが、[エラー レベル] ボックスに指定されたレベル以上でエラーを生成すると、ステージは停止し、エラーを生成します。


コンポーネントのプロパティ

[コンポーネントのプロパティ] ダイアログ ボックスを使って、コンポーネントの名前の変更、コンポーネントのクラス ID またはプログラム ID の表示、およびコンポーネントに関するコメントを保存できます｡

[コンポーネントのプロパティ] ダイアログ ボックスでは、次のプロパティが利用できます｡

  • [ラベル] : 対象のコンポーネントについて、パイプライン エディタで表示するための名前を指定します｡新しい名前を入力して、名前を変更することができます。

  • [クラス ID] : すべてのコンピュータにおいて対象のコンポーネントを識別するグローバル一意識別子 (GUID) を指定します｡この ID は変更できません。

  • [プログラム ID] : コンポーネントを認識しやすい ID を指定します｡この ID は変更できません。

  • [説明] : このコンポーネントに関するコメントを入力する領域です。


参照/更新データのプロパティ

[参照/更新データ] ダイアログ ボックスを使って、このコンポーネントが注文フォームから読み取る値、注文フォームに書き込む値、および Context ディクショナリ オブジェクトから読み取る値を表示します｡

注

  • パイプライン エディタは、Site Server 3.0 Commerce Edition のコンポーネントなど、IPipelineComponentDescription インターフェイスをサポートしないコンポーネントについては、読み取る値や書き込む値を表示することができません。

[参照/更新データ] ダイアログ ボックスでは、次のプロパティが利用できます｡

  • [読み取られる値] : 処理の実行前に、このコンポーネントが注文フォームから読み込む値を指定します。

  • [更新データ] : 処理の終了後にこのコンポーネントが注文フォーム、またはほかのディクショナリに書き込む値を指定します｡

  • [読み取られるコンテキスト値] : このコンポーネントが Context ディクショナリ オブジェクトから読み取る値を指定します。Context ディクショナリ オブジェクトは、パイプラインの Execute メソッドにパラメータとして渡されます｡

関連項目

参照/更新データのリストを作成する


作成エラーのプロパティ

このダイアログ ボックスでは、パイプライン コンポーネントを読み込めない理由を特定するために役立つエラーが表示されます｡

問題を解決するには、次の操作を行ってください。

  • そのコンポーネントをパイプラインからいったん削除し、新たに挿入します。

  • そのコンポーネントに関連付けられている DLL が適切に登録されていることを確認します。

  • 以上の方法では問題が解決しない場合は、Commerce Server を再インストールしてください。


カスタム パイプラインを作成する

パイプライン エディタを使って、構成済みのパイプライン テンプレート ファイル (.pct) をまったく使わずに、カスタム パイプラインを作成することができます。

カスタム パイプラインを作成するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします｡

  2. パイプライン エディタの [ファイル] メニューで [新規作成] をクリックします。

  3. [パイプライン テンプレートの選択] ボックスで、 [Empty.pct] を選択し、[OK] をクリックします。

    空のパイプラインが表示されます｡

  4. [空のパイプライン テンプレート] を右クリックし、[プロパティ] をクリックします。

    [パイプランのプロパティ] ダイアログ ボックスが表示されます｡

  5. [パイプランのプロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ラベル] | パイプラインの名前を入力します｡
    [トランザクションの互換性] ドロップダウン リストからトランザクションの互換性のオプションを選択します。選択できるオプションは次のとおりです。
    • [任意のパイプライン] : 任意のパイプラインに読み込むことができます。

    • [トランザクション パイプラインが必要] : MtsTxPipeline パイプラインまたは PooledTxPipeline パイプラインに読み込む必要があります。

    • [非トランザクション パイプラインが必要] : MtsPipeline または PooledPipeline パイプラインに読み込む必要があります。
    [通貨の LCID を指定します] | 通貨処理のためのロケール ID (LCID) を指定します｡既定値はゼロ (0) で、この場合はサーバーの既定のロケール ID が使われます。
    [通貨を端数なしで表示するために使用する桁位置を指定します] 通貨に持たせる有効桁数を入力します。たとえば、合衆国のセントに対しては 2 桁です。この値が既定の端数処理に使用され、古い通貨キーに使用する調整要素を決定します。

    注

    • このオプションは、[通貨モード] に [通貨 (有効桁数)] が指定されている場合にのみ有効です｡
    [説明] | パイプラインに関するコメントを入力します｡

  6. [適用] をクリックし、[OK] をクリックします。

  7. パイプライン エディタで、新しいパイプラインの名前を右クリックし、[ステージの挿入] をクリックします。

    [新規ステージ] プレースホルダがパイプラインに表示されます｡

  8. [新規ステージ] を右クリックし、[プロパティ] をクリックします｡

    [ステージのプロパティ] ダイアログ ボックスが表示されます。

  9. [ステージのプロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ラベル] | ステージの名前を入力します。
    [説明] | ステージの説明を入力します。
    [GUID] | ステージの GUID を入力します。
    [モード] Site Server 2.0 との互換性についてステージのモードを指定します｡

    注

    • [モード] ボックスは、Site Server 2.0 のパイプラインとの互換性を維持するためのものです。このボックスに指定される数字は、パイプラインのステージが Page オブジェクトの RunProduct、RunPlan、および RunPurchase のうち、どのメソッドによって実行されるかを示します。RunProduct の場合は 1、RunPlan の場合は 2、RunPurchase の場合は 4 を指定します。値がゼロ (0) の場合は、ステージが実行できなくなります。
    [エラー レベル] ステージのエラー レベルを指定します。

    注

    • ステージにあるコンポーネントが、[エラー レベル] ボックスに指定されたレベル以上でエラーを生成すると、ステージは停止し、エラーを生成します。

  10. [適用] をクリックし、[OK] をクリックします。

  11. 新しいステージの名前を右クリックし、[コンポーネントの挿入] をクリックします｡

    [コンポーネントの選択] ダイアログ ボックスが表示されます。

  12. [コンポーネントの選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ステージ] | ステージのオプションを選択します。
    [コンポーネント] | 挿入するコンポーネントの名前を選択します｡

  13. [OK] をクリックします。

  14. 新しいコンポーネントを構成するには、コンポーネントを右クリックし、[プロパティ] をクリックします。必要に応じてコンポーネントのプロパティを変更して、[OK] をクリックします｡

  15. [ファイル] メニューの [名前を付けて保存] をクリックします。[ファイル名] ボックスにパイプライン構成ファイルの名前を入力します｡

ファイルは .pcf ファイル拡張子を付けて保存されます｡

関連項目

パイプライン エディタを起動する

新しいパイプラインを作成する

パイプラインにコンポーネントを追加する

パイプライン ステージでのコンポーネントの順序を変更する

パイプライン エディタのプロパティ ページを使用する


注文処理パイプライン

注文処理パイプライン (OPP) は、複数のコンポーネントをリンクし、それらを OrderForm オブジェクト上または Dictionary オブジェクト上で順番に実行していくためのソフトウェア インフラストラクチャです。Commerce Server 2000 には 3 種類の基本的な注文処理パイプラインが用意されており、これらを利用して B to C サイトや B to B サイトを構築します。

ここでは、次のトピックについて説明します。

  • 注文処理パイプラインについて : 注文処理パイプラインの仕組みについて説明します。

  • 既定のコンポーネントと必須コンポーネント : 注文処理パイプラインにおける既定コンポーネントおよび必須コンポーネントの役割について説明します。これらのコンポーネントは、処理中のデータ整合性を維持するのに役立ちます。

  • Currency の拡張 : 通貨の有効桁数、およびパイプライン コンポーネントにおける Currency データ型処理の仕組みについて説明します。

  • 割引オブジェクト : 割引を構成する基本要素について、および割引コンポーネントを利用して割引を適用する方法について説明します。

  • 在庫オブジェクト : 在庫コンポーネントを利用して、在庫確認と在庫の削減を行う方法について説明します。

  • 送付オブジェクト : 複数発送アーキテクチャについて、および Commerce Server 2000 パイプラインで Site Server 3.0 送付コンポーネントを使用する方法について説明します。

  • 税オブジェクト : Commerce Server 2000 の複数発送アーキテクチャで税コンポーネントを使う方法について説明します。

  • B to C パイプライン : B to C パイプライン (小売り商品、小売り計画、小売りの購入の各パイプライン) について説明します。これらのパイプラインは、一般消費者への小売販売を目的とした Commerce Server サイトで使います。

  • 注文処理パイプラインを使う : Commerce Server サイトでの注文処理パイプライン コンポーネントの使い方について説明します。

  • 注文処理コンポーネントのリファレンス : 注文処理パイプラインで使われるコンポーネントの一覧を示します。


注文処理パイプラインについて

ある企業に、毎日数多くの注文を処理しなければならない部署があるとします。それらの注文を処理するために、その部署は注文処理を一連のステップに分割して、ある社員は送料を計算し、ある社員は注文された品目が在庫にあるかどうかを確認し、さらに別の社員が価格を確認するという形で仕事を割り振っています。

このような流れ作業で処理を進めていく場合は、注文処理を担当する社員の間で、一定レベルの調整を行いつつ処理していくことが重要です。このような部署では、多くの処理をこなしていくために注文処理を複数の段階 (ステージ) に分割すると共に、さまざまな処理の間で調整を行うための規則も定めておく必要があります。

注文処理パイプライン (OPP) の仕組みは、ここで挙げた部署が採用している方法論とほとんど同じものです。注文処理パイプラインでは、注文処理を複数のステージに分割します。それぞれのステージは、処理のカテゴリを表しています。OPP でよく使われるのは、買い物客情報ステージ、支払いステージ、および送料ステージです。

パイプラインの各ステージは、0 個以上のコンポーネントで構成されます。コンポーネントは順番に実行されていきます。このコンポーネントは、OrderForm オブジェクトやほかの Dictionary オブジェクトに対して何らかの処理を実行するために設計された、Component Object Model (COM) オブジェクトです。ほとんどの場合、その処理は小規模なものです。たとえば、送料ステージで実行する DefaultShipping コンポーネントは、別のコンポーネントで送料がすでに計算されていないかどうかを確認します。送料がすでに設定済みであった場合、DefaultShipping コンポーネントはその値を 0 で上書きし、送料ステージの以降のコンポーネントが信頼し得る値で処理を開始できるようにします。

また、OPP は各コンポーネントによる処理の調整を行います。これは、すべてのコンポーネントが同じ注文書に書き込み、同じ注文書から読み込むようにすることにより行われます。この注文書は OrderForm オブジェクトです。

OrderForm オブジェクトは、Web サイトとパイプラインとのリンクです。ユーザー、送付、税、品目価格など、購入処理に必要な情報がすべて含まれています。また、OrderForm オブジェクトは新しい品目を自身に追加するためのメソッドをサポートしています。OPP 内の 1 つのコンポーネントが OrderForm オブジェクトに対する処理を終えると、OrderForm オブジェクトはパイプラインの次のコンポーネントに渡されます。

サイトに適用するパイプラインの設計者は、OPP が正しく機能するように策を講じる必要があります。まず、別のコンポーネントによって処理の結果が上書きされないようにパイプライン コンポーネントを構成する必要があります。ただし、DefaultShipping などのコンポーネントはこの原則の例外です。次に、OPP が OrderForm オブジェクトの処理を停止する条件を定義します。コンポーネントが実行されると、そのたびに、成功、警告、失敗のいずれかを示す状態値が返されます。警告を許容するようにステージを構成すると、警告が返された場合でも処理が続けられます。成功のみを許容するようにステージを構成した場合は、警告が返されると OrderForm オブジェクトの処理が停止され、エラーが返されます。


既定のコンポーネントと必須コンポーネント

注文処理パイプライン (OPP) のテンプレートには、いずれも既定のコンポーネントと必須コンポーネントとが含まれています。これらのコンポーネントは、パイプラインのステージに入出力されるデータの整合性を維持するために提供されています。

既定のコンポーネントは、通常はステージの先頭で使われており、サイトの開発者が別のコンポーネントに置き換えます。既定のコンポーネントには、すべて DefaultShipping や DefaultPayment などの名前が付けられています。既定のコンポーネントは、そのステージにとって重要な値が確実に存在するようにします。これは、特定のディクショナリ キー セットの値をほかのキー セットにコピーしたり、何らかの値を 0 に初期化したりすることで行われます。特殊な機能を必要としないパイプラインでは、既定のコンポーネントを置き換える必要はありません。既定のコンポーネントの機能を変更する場合は、Commerce Server 2000 に組み込まれている別のコンポーネントに置き換えるか、カスタム コンポーネントを作成する必要があります。カスタム コンポーネント作成の詳細については、「パイプライン コンポーネントを構築する」を参照してください。Commerce Server 2000 に用意されているコンポーネントの一覧については、「パイプライン コンポーネントのリファレンス」を参照してください。

必須コンポーネントは、パイプラインのステージから出力されるデータの整合性を維持します。ほとんどの場合、データの整合性は値を設定したり、エラーまたは警告を発生させたりすることで維持します。前のコンポーネントで設定された値をチェックする場合もあります。

RequiredItemPrice などの一部の必須コンポーネントでは、[通貨モード] を [通貨と整数 (互換)] に設定すると、パイプライン ステージの最後で Currency と Integer の変換が自動的に実行されます。このように設定しておくと、パイプライン ステージに Site Server 3.0 Commerce Edition オブジェクトしか含まれていない場合、または Commerce Server 2000 オブジェクトしか含まれていない場合には、通貨および整数の変換を考慮する必要がなくなります。Currency 処理の詳細については、「Currency の拡張」を参照してください。


Currency の拡張

Commerce Server 2000 では、通貨 (有効桁数) を指定することができます。ここでは、新しい通貨表記と、新旧パイプラインにおけるその表記の使用方法について説明するほか、Currency 型を処理するための新しいデータ関数を紹介します。

ここでは、次のトピックについて説明します。

  • 通貨の概要 : Site Server 3.0 Commerce Edition および Commerce Server 2000 における通貨値の表記方法について説明します。

  • 通貨モード : Commerce Server 2000 パイプラインで使われる 2 つのモードについて説明します。新旧のコンポーネントを混在させることができるモードと、新しい通貨値表記のみを使ってパイプラインのパフォーマンスを向上させることができるモードがあります。

  • 端数処理 : 異なる Currency 値で表記する場合の小数部の処理方法について説明します。

  • 新しいデータ関数 : Active Server Pages (ASP) ページで新しい Currency 値表記を使用するための新しいデータ関数を紹介します。


通貨の概要

Site Server 3.0 Commerce Edition では、long Integer (32 ビット) を使って、ロケールに定義されている基本通貨単位で金額値を表しています。基本通貨単位とは、通貨の最小単位のことです。アメリカならセントになります。この表記では、表すことのできる最大の値は比較的小さめです。

Commerce Server 2000 では、金額値に対して OLE オートメーション Currency データ型をサポートしています。この表記を利用することで、大きな値を使用することも、小数点以下 4 桁まで使用することもできるようになります。内部処理では、このデータ型は 10000 倍された 64 ビット Integer です。Site Server 3.0 Commerce Edition では Integer 表記を使用しており、1.99 ドルは 199 として格納する必要があります。Commerce 2000 では直接小数表記を使用しているため、1.99 ドルは 1.99 として格納されます。

Commerce Server 2000 では、Site Server 3.0 Commerce Edition の表記を利用することも、高精度表記を利用することもできます。ディクショナリのキーの 2 つの異なるタイプが、これら 2 つの表記を表します。キーに "通貨 (有効桁数)" が割り当てられると、そのキーの先頭に "cy_" が付きます。このプレフィックスの後には、そのキー名のその他のプレフィックスが続きます。たとえば、_oadjust_adjustedprice というキーに "通貨 (有効桁数)" が割り当てられると、_cy_oadjust_adjustedprice になります。

関連項目

通貨モード

端数処理

新しいデータ関数


通貨モード

Commerce Server 2000 の注文処理パイプラインは、互換モードと通貨 (有効桁数) モードという 2 種類のモードをサポートしています。既定のモードは互換モードです。このモードでは、ディクショナリ キーが異なっていても、金額値は両方の形式で保持されます。互換モードでは、Site Server 3.0 Commerce Edition パイプラインに変更を加えることなく実行できます。また、Site Server 3.0 Commerce Edition コンポーネントと Commerce Server 2000 コンポーネントを混在させることができます。

通貨 (有効桁数) モードで使うことができるのは、Currency 型のみです。パイプラインで保持されるキーは 1 セットのみとなるので、パフォーマンスが向上します。さらに、有効桁数の少ない Integer 形式との間で変換を実行する際の精度低下を避けることができます。

パイプラインのモードの変更は、パイプライン エディタで行います。詳細については、「パイプラインのプロパティ」を参照してください。通貨 (有効桁数) モードを使う場合は、パイプライン内のすべてのコンポーネントが Currency 型をサポートしている必要があります。

互換モードを使い、かつ、すべて Commerce Server 2000 コンポーネントのみ、またはすべて Site Server 3.0 Commerce Edition コンポーネントのみをステージ内で使う場合には、パイプラインに変更を加える必要はありません。金額型が使われる各ステージの最後には、必須コンポーネントが配置されています。これらの必須コンポーネントにより、互換モードで使用される両方のキー セットが自動的に更新されます。

ステージで Site Server 3.0 Commerce Edition コンポーネントと Commerce Server 2000 コンポーネントを混在させる場合は、Site Server 3.0 Commerce Edition コンポーネントを MoneyConverter コンポーネントで囲み、両タイプのコンポーネントのディクショナリ値が最新の状態に保たれるようにする必要があります。詳細については、「MoneyConverter」を参照してください。

関連項目

通貨の概要

端数処理

新しいデータ関数


端数処理

通貨 (有効桁数) タイプの値は、Site Server 3.0 Commerce Edition の Integer 値とは異なり、小数部を保持しています。このため Commerce Server 2000 では、通貨 (有効桁数) タイプの値は、端数が処理されてからディクショナリに書き込まれます。これにより、小数値が原因となって、表示された値の合計と合計値が食い違うという状況を回避できるようになっています。

パイプライン コンポーネント開発用の Commerce Server 2000 Software Development Kit (SDK) サンプル コードには、コンポーネント作成時に使用できる、金額値の端数を処理するための関数が含まれています。詳細については、SDK に含まれるファイル moneyinfo.h および moneyinfo.cpp を参照してください。

関連項目

通貨の概要

通貨モード

新しいデータ関数


新しいデータ関数

Commerce Server 2000 には、Currency 型を処理するために、 2 つの新しいデータ関数が用意されています。いずれも DataFunctions オブジェクトのメソッドです。

関数 | 説明
ConvertStringToCurrency | 指定されたロケールおよび通貨記号を使って、金額の文字列表記を Currency Variant に変換します。
LocalizeCurrency | 指定されたロケールおよび通貨記号を使って、Currency 値の文字列表記を作成します。

関連項目

通貨の概要

通貨モード

端数処理


割引オブジェクト

Microsoft Commerce Server 2000 では、割引を柔軟かつ簡単に適用し、管理する手段を提供します。コンテンツ選択フレームワークが、広告の選択および注文の処理で使われるものと同じパイプラインを使用して割引を処理します。

割引はキャンペーンの一環として設定されます。Commerce Server ビジネス デスクを使った割引設定の詳細については、「割引キャンペーン項目を追加する」を参照してください。コンテンツ選択パイプラインの詳細については、「コンテンツ選択パイプライン」を参照してください。

ここでは、次のトピックについて説明します。

  • 割引の概要 : 割引の基本的な要素である、資格、条件、特典、および割引率/額について説明します。さらに、注文のレベル割引と項目レベルの割引の相違点についても説明します。

  • 割引適用の仕組み : バスケット内の購入品に割引を適用する場合の、条件、特典、および割引率/額の評価方法について説明します。


割引の概要

Microsoft Commerce Server 2000 では、割引は 4 つの要素に分かれています。割引は注文全体に対して適用することも、注文の個々の品目に対して適用することもできます。割引の要素は次の 4 種類です。

  • 資格 : 資格とは、割引を適用するために満たしていなければならない一般的な条件を指します。資格と言う場合、通常は、ユーザー プロファイルおよびコンテキスト プロファイルに基づいて評価される対象式のことを指します。資格の例としては、ユーザーが優待客であるかどうかなどが挙げられます。

  • 条件 : 割引を受けるには、条件を満たす必要があります。条件は、注文フォームの品目ごとに評価されます。条件式の作成には、[商品の選択] または式ビルダを使います。条件には、特定の SKU、商品カテゴリ、特定のメーカーなどがあります。

  • 特典 : 割引を受けるには、特典の条件を満たす必要があります。特典の条件は、注文フォームの品目ごとに評価されます。特典の条件は、たいてい、割引を特定の品目に適用される式、または、すべての品目に適用される式です。

  • 割引率/額 : 資格、条件、および特典の条件を満たした場合に適用される割引率または割引額です。割引率/額は、世間一般で "割引" と言われているものと同じ意味です。商品の価格から差し引かれる割合または金額です。

割引は、注文全体に対して適用すること (注文レベルの割引) も、注文の特定の品目に対して適用する (項目レベルの割引) こともできます。Commerce Server に用意されている注文レベルの割引は、送料を無料にする割引だけです。これとは異なる注文レベルの割引を実施する場合は、別途プログラミングする必要があります。

関連項目

割引適用の仕組み


割引適用の仕組み

コンテンツ選択パイプラインでは、適用可能な割引のリストにあるスコアが ScoreDiscounts コンポーネントによって調整されます。これにより、最も重要な割引に最も高い優先順位が割り当てられます。また、注文パイプラインの OrderDiscount パイプライン コンポーネントによって、ユーザーのバスケットに割引のリストが適用されます。

OrderDiscount コンポーネントは、まず、利用可能な割引の資格を評価します。評価対象となる割引に応じた適切なユーザー プロファイル情報とコンテキスト プロファイル情報を使って、評価する対象式を形成します。また、クリックされた品目にのみ割引が適用されるようにしている場合、OrderDiscount コンポーネントは discounts_clicked リストを確認します。このリストは、クリックされたすべての品目のキャンペーン項目 ID の一覧です。

注文内にある品目ごとに、_n_unadjusted キーと _cy_oadjust_adjustedprice キーという 2 つのキーが item ディクショナリに書き込まれます。最初のキーは割引が適用されていない品目の数量を示します。2 番目のキーは品目の割引前の合計代金を示します。_n_unadjusted キーには品目の数量が設定され、_cy_oadjust_adjustedprice キーには品目の合計代金が設定されます。

次に、OrderDiscount コンポーネントは条件と特典をテストしながら各品目を処理します。割引で品目が使われるたびに、2 つのキー (_n_unadjusted と _cy_oadjust_adjustedprice) が適宜調整されます。割引は、優先順位が最も高いものから適用されます。2 つの割引の優先順位が等しい場合は、データベース内に先に現われた割引が適用されます。

バスケットに適用される割引の数には、制限を設定することができます。制限を設定するには、Commerce Server ビジネス デスクを使います。割引の制限の値をゼロ (0) に設定すると、割引は無制限になります。割引の制限は 1 つのバスケットの制限なので、ほかのバスケットでは適用されません。

OrderDiscount コンポーネントでは、リストを使用して処理の整合性を維持します。このコンポーネントは、適用された割引のリストと割引が最後に修正された時刻を格納します。以前に適用した割引を次の要求時に適用できなかった場合、_Basket_Errors リストに pur_dicountremoved エラーが追加されます。

割引を変更した場合は、その割引キャッシュを手動で更新する必要があります。更新するには、ビジネス デスクの Production Refresh モジュールを使います。

サイトに割引を実装する方法の 1 つとして、販売促進コードを利用する方法があります。まず、ビジネス デスクを使って割引のプロパティと表示情報を設定します。次に、式ビルダを使って割引定義を構成します。たとえば Context.PromoCode equals 1234 などの式です。サイトのソース コードを修正する必要があります。バスケット パイプラインを呼び出すときに ContextProfile ディクショナリ (Context ディクショナリのサブ ディクショナリ) を渡し、入力された販売促進コードを設定する必要があります。

関連項目

割引の概要


在庫オブジェクト

Commerce Server サイトでの在庫管理は、通常は注文処理パイプライン (OPP) の 2 つのステージにおいて実施します。

1 つ目のステージは在庫ステージです。このステージには、指定された商品について、注文に応じられるだけの在庫があるかどうかを判定するためのコンポーネントを配置します。

2 つ目のステージは受注ステージです。このステージは、指定された商品の新しい在庫数を反映するために、サイトの商品テーブルを修正するように構成します。在庫ステージまたは受注ステージのいずれかで SQLItemADO コンポーネントを使用して、品目が購入されると同時にローカルの在庫数が減らされるようにすることもできます。

ここでは、Commerce Server 2000 に組み込まれている在庫コンポーネントの使い方と、在庫管理で発生する問題に対処するために Commerce Server 2000 をどのように使うかについて説明します。

在庫とバックオーダー

在庫の数量を減らす

在庫とバックオーダー

サイトでの在庫の管理方法は、指定された品目が在庫切れの場合にどのように対応するかによって異なります。在庫切れの場合は、該当する品目をバックオーダーとするか、該当する品目が現在在庫切れであることを顧客に通知します。

FlagInventory コンポーネントと LocalInventory コンポーネントは在庫ステージとの関連性を持っており、商品情報ステージと連携することでどちらの対応もサポートしています。

フラグによる在庫確認

FlagInventory コンポーネントは、Items SimpleList オブジェクトの中にある在庫切れ品目を特定するために設計されたものです。このコンポーネントを実行すると、Items SimpleList オブジェクト内の品目ごとに、指定された品目の名前と値の組み合わせ _product_in_stock が 0 でないかどうかが確認されます。

名前と値の組み合わせ _product_in_stock が 0 と評価された場合の FlagInventory コンポーネントの対応には、2 つの種類があります。FlagInventory コンポーネントでは [バックオーダーの禁止] プロパティがサポートされています。このプロパティを設定するには、FlagInventory コンポーネントのプロパティ ページを使います。[バックオーダーの禁止] チェック ボックスをオンにすると、_product_in_stock が 0 と評価された場合、_Purchase_Errors SimpleList オブジェクトに _pur_out_of_stock メッセージが追加されます。[バックオーダーの禁止] チェック ボックスをオフにすると、_product_in_stock が 0 と評価された場合、該当する品目の名前と値の組み合わせ _inventory_backorder に 0 が設定されます。

注

  • FlagInventory コンポーネントでは、品目ごとに _product_in_stock を指定する必要があります。

数量に基づく在庫確認

LocalInventory コンポーネントは、名前と値の組み合わせ Quantity で示された数量と、名前と値の組み合わせ _product_local_inventory とを比較します。名前と値の組み合わせ _product_local_inventory は品目の実在庫数を表しています。名前と値の組み合わせ Quantity が _product_local_inventory を超過した場合、バックオーダーを許可するように LocalInventory コンポーネントが構成されているときは、これら 2 つの数値の差が名前と値の組み合わせ _inventory_backorder に書き込まれます。超過していない場合は、FlagInventory コンポーネントによる処理と同様に、_Purchase_Errors SimpleList オブジェクトに _pur_out_of_stock メッセージが書き込まれます。

バスケットに商品が追加された際に品目の在庫確認を行うには、バスケット パイプラインに LocalInventory コンポーネントを追加します。サイトのパイプラインに LocalInventory コンポーネントを配置する場合は、要求された品目が在庫切れであること、またはバックオーダーとなることをユーザーのバスケットに表示するためのスクリプトを記述する必要があります。

注

  • LocalInventory コンポーネントでは、品目ごとに product_local_inventory を指定する必要があります。

在庫の数量を減らす

FlagInventory コンポーネントと LocalInventory コンポーネントは、情報の提供のみを目的としたコンポーネントです。どちらも、指定された品目が在庫切れであることを通知するものですが、該当する品目の _product_local_inventory が別の処理によって管理されていることを前提としています。商品在庫を更新する SQL クエリを実行するには、SQLItemADO パイプライン コンポーネントを使います。

注

  • 次の操作を行うには、あらかじめサイトをアンパックしておく必要があります。

SQLItemADO パイプライン コンポーネントを利用して在庫を更新するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. パイプライン エディタで、total.pcf というファイルが置かれている場所 (<ドライブ名>:\Inetpub\wwwroot\<サイト名>\pipeline など) を参照し、このファイルをダブルクリックします。

    total.pcf パイプラインが表示されます。

  3. パイプラインの [在庫] ステージをクリックし、[編集] メニューの [コンポーネントの挿入] をポイントします。次に [後] をクリックします。

  4. [コンポーネントの選択] ダイアログ ボックスで次の操作を行います。
    項目 | 操作
    [ステージ] | [すべて] を選択します。
    [コンポーネント] | [SQLItemADO] を選択します。

  5. [OK] をクリックします。SQLItemADO コンポーネントがパイプラインのバルブとして表示されます。

  6. SQLItemADO コンポーネントをダブルクリックします。

  7. [コンポーネントのプロパティ] ダイアログ ボックスの [SQL アイテム (ADO)] タブで、次の操作を行います。
    項目 | 操作
    [接続文字列] | 在庫データが格納されているテーブルにアクセするための OLEDB 接続文字列を入力します。
    [クエリ] データベース内の在庫を更新するための SQL クエリを入力します。SQL クエリ内の値を置き換えるには、次の構文を使います。

    :<position>

    この構文を利用すると、SQL クエリ内の品目が [パラメータ リスト] ボックスに表示されている品目に置き換わります。たとえば、SQL クエリの 2 つの値を置き換える場合の書式は次のようになります。

    SELECT * FROM:1 WHERE Param2=':2'
    [パラメータ リスト] | 実行時に評価される SQL クエリで使う値のリストを入力します。[パラメータ リスト] ボックスでは、置き換えを行うための特殊な書式を使います。注文フォームからデータを取得するには、item.<orderformvalue> と指定します。たとえば、注文フォームから受注品目の数量を取得する場合は item.quantity と指定します。

    [OK] をクリックします。

  8. 変更を保存するには、[ファイル] メニューの [上書き保存] をクリックします。

在庫に関する検討事項

1 つしか在庫のない品目を、2 人の顧客が要求する場合があります。それぞれの顧客の OrderForm オブジェクトが小売り計画パイプラインを通過するとき、在庫コンポーネントは両方の顧客に、商品の在庫があると通知します。指定された SKU が表す品目の在庫量を示す数値は、この時点ではまだ受注ステージ コンポーネントによって 0 に変更されていないため、これは正しい動作です。

この後、最初の顧客が小売りの購入パイプラインを通過する時点で、SQLItemADO コンポーネントによって在庫値が 0 に設定されます。2 番目の顧客が小売りの購入パイプラインを通過すると、SQLItemADO コンポーネントによって在庫値は負の Integer に設定されます。この場合には、サイトの小売り計画パイプラインがバックオーダーを禁止するように構成されていても、バックオーダーが作成されます。

この問題に対処する方法はいくつかあります。

1 つ目は、受注ステージの先頭に SQLItemADO コンポーネントを配置して、指定された SKU が表す品目の在庫数が 0 より大きいことを確認する方法です。指定された SKU が表す品目の在庫がない場合、SQLItemADO コンポーネントは (名前/値のペア _inventory_backorder を初期化して) その品目をバックオーダーにしたり、_pur_out_of_stock エラーを発生させることができます。

このほかに、在庫ステージ (小売り計画パイプライン) と受注ステージ (小売りの購入パイプライン) の両方に、FlagInventory などの適切な在庫コンポーネントのインスタンスを配置するという方法があります。このコンポーネントの後ろに、SQLItemADO コンポーネントを配置します。このようにしておくと、該当する品目の在庫値を減らすためのクエリが実行されます。


送付オブジェクト

Microsoft Commerce Server 2000 では、1 回の注文につき複数の送付をサポートするコンポーネントを使用できます。

ここでは、次のトピックについて説明します。

  • 複数発送アーキテクチャ : 複数発送アーキテクチャと、同アーキテクチャで使われるコンポーネントおよびオブジェクトについて説明すると共に、これらの機能の使用方法を示したコードを紹介します。

  • Site Server 3.0 Commerce Edition 送付コンポーネントを使う : Site Server 3.0 Commerce Edition 送付コンポーネントを使う方法について説明します。


複数発送アーキテクチャ

Commerce Server 2000 の複数発送アーキテクチャは、3 つのパイプライン コンポーネントと 2 つのオブジェクトとで構成されています。これらが連携して処理を実行することにより、強力な機能を備えた送付処理を簡単に実行することができます。

ここでは、次のトピックについて説明します。

  • 送付の概要 : 複数発送アーキテクチャとそのコンポーネントについて説明します。

  • パイプラインとキャッシュを設定する : パイプラインで複数発送コンポーネントを使うために必要な Active Server Pages (ASP) コードについて説明します。

  • 複数の送付を作成するために Splitter コンポーネントを使う : 注文が複数の送付に分割されるように Splitter コンポーネントを設定する方法について説明します。

  • 送料をプレビューする : 送料のプレビューを表示する方法について説明します。

  • 送付方法とコンポーネントを追加する : 送付方法および個々の送付コンポーネントを複数発送アーキテクチャに追加する方法について説明します。

  • 送付とアドレスの構造 : 複数発送の処理で使われるディクショナリとシンプル リストについて説明します。

関連項目

Site Server 3.0 Commerce Edition 送付コンポーネントを使う

MinMaxShip サンプル パイプライン コンポーネント


送付の概要

Commerce Server 2000 の複数発送アーキテクチャには、プログラマでなくても送付方法の構成を簡単に変更できるようにする、1 回の注文で複数の送付を処理する、という 2 つの目的があります。

複数発送アーキテクチャの送料ステージでは通常、Splitter、ShippingMethodRouter、および ShippingDiscountAdjust という 3 つのコンポーネントを使います。この送付構成の Splitter コンポーネントは、注文を受け付けて、複数の送付に分割します。これらの送付は、ShippingMethodRouter コンポーネントによって処理されます。ShippingMethodRouter コンポーネントは、送付、および送付情報のデータベース テーブルを基にして、指定された送付の処理に使う送付コンポーネントを決定します。3 つ目のパイプライン コンポーネントである ShippingDiscountAdjust コンポーネント (省略可能) は、注文に送料割引を適用します。

ShippingMethodRouter、Splitter、および ShippingDiscountAdjust の各コンポーネントは、パイプラインに挿入されることのみを想定した送付コンポーネントです。ShippingMethodRouter コンポーネントは、ShippingMethodManager オブジェクトで構成された送付方法を実行します。

Splitter コンポーネント以外の送料計算コンポーネントは、いずれも ShippingMethodRouter コンポーネントに登録します。ShippingMethodRouter コンポーネントで実行される送料計算コンポーネントは、Commerce Server ビジネス デスクの送付方法モジュールで構成します。

次の図は、送付コンポーネント処理における各過程間の関係を示しています。

This diagram illustrates how the Splitter コンポーネントと ShippingMethodRouter コンポーネントがほかのオブジェクトと協調して送付を処理するプロセスを示す図
ShippingMethodRouter
ItemIndexes
(SimpleList)
ShippingMethodManager
ShippingConfig
データベース テーブル
パイプラインの実行
. . .
address1
last_name
アドレス ディクショナリ
first_name
Orderform.addresses
(SimpleList)
ビジネス デスク
ShippingManagerCache
送付パイプライン
コンポーネント
ItemIndexes
_cy_shipping_total
shipping_method_id
送付先ディクショナリ
shipping_address_id
Orderform.shipments
(SimpleList)
Context.shipments_to_process
(SimpleList)
Splitter

2 つのコンポーネントが ShippingConfig テーブルを使い、さらに ShippingMethodRouter コンポーネントもこのテーブルを使います。ビジネス デスクはこれらのコンポーネントのうち、まず ShippingMethodManager を使ってデータベースに変更を加えます。ビジネス マネージャは、ビジネス デスクの送付方法モジュールを使って送付方法を変更することができます。

2 つ目のコンポーネントは ShippingManagerCache です。CacheManager オブジェクトは、このコンポーネントを使って ShippingConfig テーブルのデータをキャッシュに読み込みます。次に、ShippingMethodRouter コンポーネントが ShippingManagerCache コンポーネントを使って、キャッシュされた送付情報を取得し、保持します。

次の表は、複数発送アーキテクチャのコンポーネントとオブジェクトの一覧です。各オブジェクトとコンポーネントについて、詳しい情報へのリンクも提供しています。

オブジェクト | 説明
ShippingMethodRouter | 送付方法を決定し、個々の送付コンポーネントを実行するほか、注文の送料合計を計算します。
StepwiseShipping | 個々の送付の送料を計算するパイプライン コンポーネントです。重量、数量、および価格を基に料金を算出します。このコンポーネントは、ShippingMethodRouter コンポーネントによって実行および構成されます。カスタム コンポーネントに置き換えたり、カスタム コンポーネントを使って補強したりできます。
ShippingMethodManager オブジェクト | ShippingConfig データベース テーブルを管理するオブジェクトです。このテーブルは、ShippingMethodManager オブジェクトを介してビジネス デスクが使います。ShippingConfig テーブルには、ShippingMethodRouter コンポーネントで使われる情報が含まれています。
ShippingManagerCache | ShippingConfig データベース テーブルのデータを処理するためのローダー コンポーネントです。CacheManager オブジェクトによって使われます。
Shipping オブジェクト | 送料のプレビューを生成する PreviewShipments というメソッドを提供するオブジェクトです。
ShippingDiscountAdjust | 注文に送料割引を適用するコンポーネントです。複数発送アーキテクチャを使います。
Splitter | 送付構成において、一連の識別機能に基づいて注文を複数の送付に分割するコンポーネントです。

税は送付ごとに異なる場合があるため、個別に計算されます。新しい税コンポーネントでは、複数発送構造を考慮に入れる必要があります。そのような税コンポーネントの例としては SampleRegionalTax コンポーネントがあります。複数発送構造の詳細については、「送付とアドレスの構造」を参照してください。

手数料については、送付ごとではなく注文ごとに計算されます。

関連項目

パイプラインとキャッシュを設定する

複数の送付を作成するために Splitter コンポーネントを使う

送料をプレビューする

送付方法とコンポーネントを追加する

送付とアドレスの構造


パイプラインとキャッシュを設定する

複数発送アーキテクチャでは、パイプラインの送料ステージに Splitter と ShippingMethodRouter という 2 つのコンポーネントを配置し、状況に応じて ShippingDiscountAdjust コンポーネントも加えます。注文は Splitter コンポーネントによって一連の送付に分割され、ShippingMethodRouter コンポーネントで処理されます。ShippingMethodRouter コンポーネントは送付方法を確認し、適切に構成された送付コンポーネントを実行します。

2 つのパイプライン コンポーネントをパイプラインに配置すると共に、CacheManager オブジェクトの設定を処理する Active Server Pages (ASP) コードと、Splitter コンポーネントおよび ShippingMethodRouter コンポーネントに必要な Context ディクショナリ値を提供する ASP コードをページに追加する必要があります。

Splitter コンポーネントと ShippingMethodRouter コンポーネントは、ShippingConfig データベース テーブルから情報を取得するために、どちらも CacheManager オブジェクトを使います。CacheManager オブジェクトは、ShippingManagerCache というローダー コンポーネントを使ってデータベースから情報を取得します。送付コンポーネントの CacheManager オブジェクトの設定方法は、CacheManager オブジェクトを使用するそのほかのコンポーネントを設定する場合とほぼ同じです。コードの大部分は Global.asa ファイルの Application_OnStart プロシージャに含まれています。次に例を示します。

' Code to set up the CacheManager object and loader for the
' multiple shipping components.

' Create a Dictionary object to hold the configuration information.
Set dShipConfig = Server.CreateObject("Commerce.Dictionary")

' Add the connection string to the configuration dictionary.
dShipConfig("ConnectionString") = "DSN=shipsamples;UID=sa;PWD="

' Create a CacheManager object.
Set oCM = Server.CreateObject("Commerce.CacheManager")

' Set the ProgID of the loader for the cache.
oCM.LoaderProgId("ShippingManagerCache") = _
                    "Commerce.ShippingManagerCache"

' Set the loader's configuration dictionary.
Set oCM.LoaderConfig("ShippingManagerCache") = dShipConfig

' Set the CacheManager object refresh interval to 10 minutes.
oCM.RefreshInterval("ShippingManagerCache") = 10 * 60

' Set the CacheManager object retry interval to 1 minute.
oCM.RetryInterval("ShippingManagerCache") = 60

' Store a reference to the CacheManager object in the Application object.
Set Application("MSCSCacheManager") = oCM

上のコードでは、ShippingManagerCache という識別子を使用して LoaderProgID や LoaderConfig などのプロパティを設定する必要があることに注意してください。パイプラインを実行するページで必要になる追加コードは、次の 1 行だけです。

' Add the items specific to the shipping components.
'
'Add a reference to the CacheManager object created in the Global.asa file
'to the Context dictionary.
Set dContext("CacheManager") = Application("MSCSCacheManager")

この後に、パイプラインを呼び出すためのコードが続きます。

関連項目

送付の概要

複数の送付を作成するために Splitter コンポーネントを使う

送料をプレビューする

送付方法とコンポーネントを追加する

送付とアドレスの構造


複数の送付を作成するために Splitter コンポーネントを使う

Splitter コンポーネントを使うと、品目の任意の属性に基づいて注文を分割することができます。注文の分割に使われる既定の識別区分は、shipping_method_id および shipping_address_id です。別のキーを条件として使う場合は [コンポーネントのプロパティ] タブの [入力識別機能] ボックスで指定します。

次の表の各行は、SimpleList オブジェクトの要素が参照するディクショナリを示しています。これらのディクショナリには、SimpleList オブジェクトへの参照である ItemIndexes というキーも含まれています。この SimpleList オブジェクトの各要素は、LineItems ディクショナリのインデックスです。品目が実際の順序で格納されています。

次の例では 4 つの品目があり、0 ～ 3 までの番号が付けられています。次の表では、それらの品目が持つ属性のうちのいくつかを示しています。

shipping_method_id | shipping_address_id | shipping_date | catalog | vendor
A | Home | ASAP | A | A
A | Home | ASAP | A | A
B | Work | ASAP | B | B
A | Work | 3/1 | C | B

上の情報が識別区分 shipping_method_id および shipping_address_id に基づいて _shipments という出力構造体に分割されている場合、次のエントリを持つ "shipments" という注文フォームに、ディクショナリの SimpleList オブジェクトが表示されます。

shipping_method_id | shipping_address_id | ItemIndexes
A | Home | 0,1
B | Work | 2
A | Work | 3

4 つの品目を製造元別に _Vendors という出力構造体に分割した場合、次のエントリを持つ "_Vendors" という注文フォームに、ディクショナリの Simplelist オブジェクトが表示されます。

vendor | ItemIndexes
A | 0,1
B | 2,3

送付を分割する場合、ユーザーの送料のプレビューはより複雑になります。ASP ページに表示するデータを取得するには、Shipping オブジェクトの PreviewShipments メソッドを使います。詳細については、「Shipping.PreviewShipments」を参照してください。

関連項目

送付の概要

パイプラインとキャッシュを設定する

送料をプレビューする

送付方法とコンポーネントを追加する

送付とアドレスの構造


送料をプレビューする

ページ上に送料のプレビューを表示するには、Shipping オブジェクトの PreviewShipments メソッドを使います。

PreviewShipments メソッドは、Splitter コンポーネントが送付構成において処理を実行するときと同様に、注文を個々の送付に分割して送料のプレビューを作成します。送付識別区分を使って送付を複数に分ける方法の詳細については、「複数の送付を作成するために Splitter コンポーネントを使う」および「Splitter」を参照してください。

PreviewShipments メソッドは、送付ごとにディクショナリの SimpleList オブジェクトを返します。返されるそれぞれの送付先ディクショナリは、ディクショナリの SimpleList オブジェクトを含み、それぞれのディクショナリは、特定の送付方法を使うときの送料を含んでいます。

すべての送付のすべての送料プレビューをループによって表示させるには、次のようなコードを使います。

Set oShip = Server.CreateObject("Commerce.Shipping")
ADistinguishers = Array("shipping_method_id", "shipping_address_id")
slShipments = oShip.PreviewShipments(dOrder, dContext, ADistinguishers)
For Each dShipment In slShipments
    For Each dPreview In dShipment.Previews

        ' Inside the loop, you can get the preview
        ' information:
        ' dPreview("shipment_error")  -  the shipment error, if any
        ' dPreview("shipping_method_id")  -  the shipping method ID
        ' dPreview("shipping_method_name")  -  the shipping method name
        ' dPreview("description")  -  the shipping method description
        ' dPreview("_cy_shipping_total")  -  the shipping cost

    Next
Next

関連項目

送付の概要

パイプラインとキャッシュを設定する

複数の送付を作成するために Splitter コンポーネントを使う

送付方法とコンポーネントを追加する

送付とアドレスの構造


送付方法とコンポーネントを追加する

送付方法の追加とコンポーネントのインストールは、ビジネス マネージャおよびほとんどのサイト開発者が簡単に実行できるようになっています。インストール済みコンポーネントを利用する送付方法を追加するには、Commerce Server ビジネス デスクを使います。ビジネス デスクを使って送付方法を追加する手順の詳細については、「送料をカスタマイズする」を参照してください。

サード パーティ製の送付パイプライン コンポーネントをインストールする場合も、インストール画面の説明に従って操作していくだけで完了します。

コンポーネント開発者の場合は、コンポーネントのテストやインストール プログラムの開発が必要になるため、カスタム送付方法を複数発送アーキテクチャに追加する方法を把握しておく必要があります。その手順については、「カスタム送付方法を追加する」を参照してください。

重要

  • 送付コンポーネントは IDispatch インターフェイス実装から IPipelineComponentAdmin::GetConfigData および IPipelineComponentAdmin::SetConfigData メソッドを公開する必要があります。これは、送付コンポーネントを管理する 1 つまたは複数の Commerce Server ビジネス デスク モジュールがこれらのメソッドをレイトバインド (Active Server Pages) 環境から呼び出せるようにする必要があるためです。

カスタム送付方法を追加する

カスタム送付方法ページを作成する

カスタム送付方法を追加する

ビジネス デスクの送付方法編集ページには、[送付方法プロパティ] と [カスタム プロパティ] という 2 つのセクションがあります。これらの編集ページは、コンポーネント開発者が作成するカスタム送付方法内に実装します。このフレームワークで、一部の編集ページ実装とすべての一覧ページ実装を処理します。

[送付方法プロパティ] セクションでは、ShippingConfig テーブルとのデータのやり取りを行います。これらのデータは、ShippingCommon_edit.asp ページが先頭セクションの編集フィールドを使って処理します。このセクションでは、ページのタスク バーの設定処理と、カスタム ページを完全に機能させるために必要なすべてのフレームワーク ファイル処理が行われます。ShippingCommon_edit.asp ページは、作成したカスタム送付方法ページの先頭に組み込んでください。

作成したカスタム送付方法ページでは、2 番目のセクションである [カスタム プロパティ] のデータを処理しなければなりません。このデータは TableShippingRates テーブルに格納されます。

カスタム送付方法ページを作成する

カスタム データ セクション用のページを作成するには、まず MinMax_edit.asp (または [送付方法] ページのほかのページ) などの既存のページをカスタマイズすることから始めます。

カスタム送付方法ページを作成するには

  1. ページの先頭に、ShippingCommon_edit.asp というファイルを組み込むための参照を配置します。

  2. XML メタデータ アイランドおよびデータ アイランドを、カスタム XML メタデータ アイランドおよびカスタム データ アイランドに置き換えます。

  3. DIV セクションをカスタマイズして、新しい XML メタデータ アイランドおよびデータ アイランドを表示するようにします。

  4. 必要に応じて、値を保持する、非表示のフォーム入力フィールドやイベント ハンドラ (クライアント側) を追加します。

  5. GetActionPageName および GetActionFriendlyName の文字列を、カスタム送付方法ページの名前に置き換えます。

  6. タスク ボタンのイベント (カスタム データの読み込みと保存) を処理するコードを ProcessCustomShippingData 関数に追加します。

送付ページに必要な変更をすべて行うと、ページをインストールし、ビジネス デスクの送付方法モジュールで使用することができる状態になります。

新しいページをインストールするには

  1. 新しい送付方法に関する情報を <ドライブ名>:\Inetpub\wwwroot\<ビジネス デスク サイト名>\Config ディレクトリの Shipping_methods.xml ファイルに追加します。この情報は、新しい送付方法が存在し、その送付方法がアクション (通知) 情報を設定することをフレームワークに通知します。新しい送付方法が一覧ページ上のタスク バーに選択肢として表示され、Post 処理が適切に行われます。例については、Shipping_methods.xml ファイルを参照してください。

  2. 新しいページを <ドライブ名>:\Inetpub\wwwroot\<ビジネス デスク サイト名>\Shipping に追加し、送付コンポーネントが含まれたカスタム DLL (Minmaxatl.dll など) をインストールして登録します。ビジネス デスクを再度読み込むと、送付方法モジュールの一覧ページにカスタム モジュールが表示されます。新しい送付方法を編集すると、編集ページの下の方のセクションにカスタム コンポーネントが表示されます。


送付とアドレスの構造

Splitter コンポーネントによって生成された送付のリストには、ネストされた複数の構造が含まれています。

送付構成内の Splitter コンポーネントは、送付のリストを Order.Shipments オブジェクトに割り当てます。このリストは、ShippingMethodRouter コンポーネントによって、実行された各コンポーネントの shipments_to_process のリストにさらに分割されます。送付のリストはディクショナリの SimpleList オブジェクトで、各送付につき 1 つのオブジェクトが存在します。次の表は、送付先ディクショナリのキーの例を示しています。

キー | 説明
shipping_address_id | アドレス情報が含まれたディクショナリの Address ディクショナリの ID
shipping_method_id | ShippingConfig データベース テーブルから取得した送付方法 ID
shipping_method_name | 送付方法の名前
_cy_shipment_total | この送付での品目送料の合計
ItemIndexes | 注文に含まれる品目に使用するインデックスの SimpleList オブジェクト

次のサンプル コードは、コンポーネントが送付リストのデータを取得する仕組みを示しています。

' Assume that dContext is the Context dictionary.
For Each dShipment In dContext.shipments_to_process

    ' Get the address information by getting the Address dictionary.
    Set dAddress = dOrder.Addresses(dShipment.address_id)
    ' Manipulate the address information here.

    ' Get the information about each line item in the shipment.
    ' Items is a SimpleList of dictionaries. ItemIndexes stores
    ' the indexes of the items in the current shipment.
    For Each nIndx In dShipment.ItemIndexes
        ' Retrieve the dictionary for the given item.
        dItem = dOrder.Items(nIndx)
        ' Manipulate the individual item dictionary here.
    Next

Next

各アドレス ディクショナリには次のキーが含まれています。

キー | 説明
address_name | 住所について説明するための名前
address_type | 住所の種類 0 送付先/請求先 1 送付先 2 請求先
first_name | 宛先の名前
last_name | 宛先の姓
address_line1 | 住所欄 1
address_line2 | 住所欄 2
city | 市区町村名
region_name | 都道府県名
region_code | 都道府県コード
postal_code | 郵便番号
country_name | 国/地域名
country_code | 国/地域コード
tel_number | 電話番号

送付先の住所は品目ごとに添付されますが、請求先の住所は注文に添付されます。Addresses ディクショナリのどの住所が請求先であるかは、billing_address_id キーによって識別できます。

' dOrder is an Order dictionary.
' dBillingAddress is a dictionary.
Set dBillingAddress = dOrder.Addresses(dOrder.billing_address_id)

関連項目

送付の概要

パイプラインとキャッシュを設定する

複数の送付を作成するために Splitter コンポーネントを使う

送料をプレビューする

送付方法とコンポーネントを追加する


Site Server 3.0 Commerce Edition 送付コンポーネントを使う

Site Server 3.0 Commerce Edition の単一発送コンポーネントを使用する場合は、まずパイプラインから Splitter、ShippingMethodRouter、および ShippingDiscountAdjust の各コンポーネントを削除する必要があります。Site Server 3.0 のコンポーネントは、Commerce Server 2000 で使われる複数発送アーキテクチャをサポートしていません。さらに、税コンポーネントは通常、住所情報および送付情報を参照するため、Site Server 3.0 の税コンポーネントに戻す必要も生じます。Commerce Server 2000 の Active Server Pages (ASP) コード ベースを利用したサイトを使っている場合は、コードの変更も必要です。

OrderForm オブジェクト上の名前と値の組み合わせ _cy_shipping_totoal には、注文の合計送料が格納されます。

DefaultShipping コンポーネントは、この名前と値の組み合わせを 0 に設定します。注文の送料を請求しない場合は、ステージから DefaultShipping 以外のコンポーネントを削除します。

Site Server 3.0 Commerce Edition の単一発送アーキテクチャでは、コンポーネント間で調整を行って shipping_total を計算します。詳細については、「コンポーネントの調整」を参照してください。

関連項目

複数発送アーキテクチャ

MinMaxShip サンプル パイプライン コンポーネント


テーブルの配送の使い方

"テーブルの配送" 機能では、データベースから取得した値を使って注文の合計送料を設定します。

TableShippingADO コンポーネントは、指定されたクエリに基づいてデータベースから 1 つの Currency 値を取得し、その Currency 値を order.[_shipping_total] キーに書き込む設計になっています。このコンポーネントを使うには、次の操作を行います。

  1. 計算の基準を決定します。たとえば、注文の全品目の合計重量を基準とし、さらに顧客が選択した送付方法も考慮に入れるやり方があります。

  2. サイトのデータベースに、基準を適用した送料を格納するためのテーブルを作成します。

  3. この値を取得するためのクエリを作成します。注文フォームに含まれる品目の合計重量など、商品の特性をこのクエリ内で使用する場合は、商品情報ステージを修正して、該当する商品情報が注文フォームに含まれるようにする必要もあります。

  4. TableShippingADO コンポーネントのプロパティ ページを利用して、このクエリを参照するように構成を変更します。

以降では、これらの手順を参照する方法について説明します。この例では、既存のいくつかのコードを修正して、テーブルを使用し、合計重量および送付方法に基づいて送料を決定するようにします。

商品テーブルに重量属性を追加する

送料テーブルを作成する

コンポーネントを構成する

テーブルの配送を使うときの検討事項

商品テーブルに重量属性を追加する

この例では、各商品の重量を基に送料を計算します。このため、Web サイトにあるすべての品目について重量を指定する必要があります。次の手順では、product テーブルに weight という列を追加する方法を説明します。

注

  • この手順は、SiteServer 3.0 Commerce Edition サンプル サイトと同様のサイトを使用し、商品情報ステージで QueryCatalogInfo コンポーネントを使用せず、かつ QueryProductInfoADO コンポーネントを使用していることを前提としています。

SQL Enterprise Manager を使ってデータベースに列を追加するには

  1. [スタート] をクリックし、[プログラム] をポイントします。次に [Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  2. [Microsoft SQL Servers] ノード、[SQL Server グループ] ノード、Web サイト データベースが保存されているサーバーのノード、[データベース] ノード、Commerce Server サイト データベースが含まれているデータベースの名前、[テーブル] ノードを順に展開します。サイトの商品テーブルをダブルクリックします。この例では、商品テーブルが healthy_product であるとします。

  3. [テーブルの管理] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [列名] | 最後の行に weight という新しい列を追加します。
    ［データ型] | [float] を選択します。

  4. [閉じる] をクリックしてダイアログ ボックスを閉じます。確認を求めるメッセージが表示された場合は、[はい] をクリックして変更を適用します。

次に、サイトの小売り計画パイプラインまたはバスケット パイプラインの QueryProdInfoADO コンポーネントで使われるクエリに、weight 列を追加する必要があります。この例では、クエリの名前 product_info を Global.asa ファイル内に定義します。

商品クエリに重量属性を追加するには

  1. メモ帳などのエディタを使って、サイトの Global.asa ファイルを開きます。

  2. product_info をクエリ マップに追加するスクリプトを探します。このスクリプトは次のコマンドで始まっています。
    Set MSCSQueryMap.product_info = AddQuery("SELECT
  3. SELECT 文の実行時に返される列のリストに、pf.weight を追加します。これにより、注文フォーム内の商品が含まれている品目リストに、商品重量が組み込まれるようになります。

送料テーブルを作成する

データベースには送料テーブルを追加する必要があります。この例の送料テーブルでは、品目リスト内の各品目の合計重量と送付方法を送料の基準として使っています。各品目の重量はポンド単位で表されます。送料は、該当する通貨の最小単位 (この例ではセント) で、Integer で表されます。次の SQL スクリプトを利用すると、そのようなテーブルが生成されます。

CREATE TABLE dbo.healthy_shipping_costs (

    shipping_method varchar (20) NOT NULL ,

    min_weight float NOT NULL ,

    max_weight float NOT NULL ,

    cost int NOT NULL

PRIMARY KEY (shipping_method,min_weight,max_weight)

)

GO

truncate table healthy_shipping_costs

go

insert into healthy_shipping_costs values ('shipping_method_1', 0.0, 2.0, 450)

go

insert into healthy_shipping_costs values ('shipping_method_1', 2.0, 3.0, 540)

go

insert into healthy_shipping_costs values ('shipping_method_1', 3.0, 4.0, 630)

go

insert into healthy_shipping_costs values ('shipping_method_1', 4.0, 5.0, 720)

go

insert into healthy_shipping_costs values ('shipping_method_1', 5.0, 6.0, 810)

go

insert into healthy_shipping_costs values ('shipping_method_1', 6.0, 7.0, 900)

go

insert into healthy_shipping_costs values ('shipping_method_1', 7.0, 8.0, 990)

go

insert into healthy_shipping_costs values ('shipping_method_1', 8.0, 9.0, 1080)

go

insert into healthy_shipping_costs values ('shipping_method_1', 9.0, 15.0, 1400)

go

insert into healthy_shipping_costs values ('shipping_method_1', 15.0, 100.0, 2000)

go

insert into healthy_shipping_costs values ('shipping_method_2', 0.0, 2.0, 300)

go

insert into healthy_shipping_costs values ('shipping_method_2', 2.0, 3.0, 390)

go

insert into healthy_shipping_costs values ('shipping_method_2', 3.0, 4.0, 480)

go

insert into healthy_shipping_costs values ('shipping_method_2', 4.0, 5.0, 570)

go

insert into healthy_shipping_costs values ('shipping_method_2', 5.0, 6.0, 660)

go

insert into healthy_shipping_costs values ('shipping_method_2', 6.0, 7.0, 750)

go

insert into healthy_shipping_costs values ('shipping_method_2', 7.0, 8.0, 840)

go

insert into healthy_shipping_costs values ('shipping_method_2', 8.0, 9.0, 930)

go

insert into healthy_shipping_costs values ('shipping_method_2', 9.0, 15.0, 1000)

go

insert into healthy_shipping_costs values ('shipping_method_2', 15.0, 100.0, 1200)

go

送料テーブルを作成したら、サイトの QueryMap ディクショナリにクエリを追加します。このクエリは、基準として使うすべての値をパラメータとして利用するように設計する必要があります。この例では、注文に含まれる全品目の重量、および送付方法がパラメータになります。追加するクエリは、次のコードに示すように、サイトの Global.asa ファイル内で初期化されたクエリに組み込む必要があります。

Set MSCSQueryMap.ship_cost = AddQuery("SELECT cost FROM healthy_shipping_costs WHERE min_weight <= ? AND max_weight > ? AND shipping_method = ?")

サイトの QueryMap ディクショナリは、注文処理パイプラインに渡されるパイプライン コンテキストに組み込まれていることがほとんどであるため、このクエリを参照するように TableShippingADO コンポーネントを構成することが可能です。

コンポーネントを構成する

QueryMap ディクショナリに追加したクエリを使うように TableShippingADO コンポーネントを構成するには、パイプライン エディタで TableShippingADO コンポーネントをパイプラインに挿入します。

TableShppingADO コンポーネントをパイプラインに挿入するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [開く] をクリックします。既存の .pcf ファイルを参照し、開きます。

    パイプラインのグラフィックスが表示されます。

  3. パイプライン グラフィックスの送付ステージに DefaultShipping コンポーネントがある場合は、削除します。

  4. [編集] メニューの [コンポーネントの挿入] をポイントし、[後] をクリックします。

  5. [コンポーネントの選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ステージ] | [Shipping] をクリックします。
    [コンポーネント] | [TableShippingADO] をクリックします。

  6. [OK] をクリックします。パイプライン グラフィックスに、TableShippingADO パイプライン コンポーネントがバルブとして表示されます。

  7. [TableShippingADO] コンポーネントをダブルクリックします。

  8. [コンポーネントのプロパティ] ダイアログ ボックスの [テーブルの配送 (ADO)] タブで、次の操作を行います。
    項目 | 操作
    [適用条件] | [何らかの値が指定されている] をクリックします。これを利用して、注文フォームに shipping_method 値が含まれている場合のみクエリが実行されるようにします。そのように設定しておくことで、顧客が送付方法を選択する前、および注文フォームに名前と値の組み合わせ _shipping_cost が追加される前に、Basket.asp ページで小売り計画パイプラインを実行することができます。[適用条件] を設定すると、クエリによって返された値が名前と値の組み合わせ _shipping_cost に書き込まれる条件を指定できます。このフィールドが [常に] に設定されているとクエリが正常に実行されないため、バスケット ページ上でこのコンポーネントの処理が失敗します。Payment.asp ページ上で小売り計画パイプラインがもう一度実行されると、名前と値の組み合わせ shipping_method が注文フォームに表示され、ship_cost クエリが実行されます。
    [方法] | 空のままにします。
    [接続文字列] | [クエリ] ボックスにあるクエリの実行対象となるデータベースへの接続文字列です。
    [クエリ] | 実行するクエリの名前を入力します。この例では、QueryMap ディクショナリに追加された Dictionary エントリの名前である「ship_cost」を入力します。
    [パラメータ リスト] クエリに渡す値を入力します。最初の 2 つの値は同じもの (注文の合計重量) にする必要があります。これは、クエリの先頭部分で重量がパラメータとして 2 つ使われるためです。3 番目のパラメータは送付方法です。この例では、次のようなパラメータ リストを入力します。
    sumq._product_weight sumq._product_weight order.shipping_method
    [列] | 送料を含む列の名前を入力します。この例では、送料テーブルに定義した列 cost と同じ設定にします。この列に値が入力されていない場合、コンポーネントは既定で cost の値に設定されます。ここに複数のデータ行を返すクエリを指定しても、2 行目以降はすべて無視されます。

  9. [OK] をクリックします。

  10. 変更を保存するには、[ファイル] メニューの [上書き保存] をクリックします。

テーブルの配送を使うときの検討事項

TableShippingADO コンポーネントを構成する場合は、次の点に注意してください。

  • クエリで品目の Dictionary にある品目を参照する場合、商品情報ステージで実行されるクエリは、その値を商品データベースから取得するように設計してください。たとえば、TableShippingADO コンポーネントがそのクエリのパラメータとして _product_weight を参照する場合は、商品テーブルに weight という列を組み込みます。QueryProdInfoADO コンポーネントでは、この列の内容を取得して品目の Dictionary に格納するクエリを実行します。


税オブジェクト

Microsoft Commerce Server 2000 には、Site Server 3.0 Commerce Edition の税コンポーネントが用意されていますが、このコンポーネントは新しい複数発送アーキテクチャでは動作しません。Site Server 3.0 Commerce Edition で複数発送アーキテクチャに対応しているのは、SampleRegionalTax パイプライン コンポーネントのみです。

注

  • Commerce Server 2000 に付属している税コンポーネントは、評価およびテストのみを目的としたものです。税コンポーネントで生成した適用税率およびデータを個人または業務で利用する場合、税理士などに内容確認を依頼されることをお勧めします。

ここでは、次のトピックについて説明します。

  • Site Server 3.0 Commerce Edition の税コンポーネント : Site Server 3.0 の税コンポーネントの使い方について説明します。

関連項目

SampleRegionalTax


Site Server 3.0 Commerce Edition の税コンポーネント

税ステージやそのほかの税コンポーネントでは、order._tax_total キーおよび order._tax_included キーが設定されているかどうかが確認されます。設定されていない場合はエラーが生成されます。

Site Server 3.0 Commerce Edition のコンポーネントを使う場合、Splitter、ShippingMethodRouter および StepwiseShipping の各パイプライン コンポーネントは使用できません。Site Server 3.0 Commerce Edition の送付方法の使い方については、「Site Server 3.0 Commerce Edition 送付コンポーネントを使う」を参照してください。

税ステージでは、致命的なエラーが返された場合を除いて、すべてのコンポーネントが実行されます。協調動作させるためには、税ステージ内のいずれか 1 つのコンポーネントが _tax_total キーを設定するようにします。設定しない場合は買い物客警告が発生します。各コンポーネントでは、生成された _tax_* 値を確認する必要があります。この値が設定済みであった場合には、コンポーネントは何の処理も行わずに制御を戻します。設定されていない場合、コンポーネントは税額を計算し、成功すると _tax_* 値を設定します。

また、Site Server 3.0 Commerce Edition の一部の税コンポーネントは、_ship_to_country キーの値が適切な国/地域に設定されないと実行されません。

税コンポーネントでは、SimpleCanadaTax など、国/地域名がコンポーネント名に含まれている場合でも、国名や地域名をパラメータとして指定することができます。これは、コンポーネント名は単に売上税の計算モデルを表したものであり、そのモデルを適用する国/地域を表したものではないためです。たとえば、カナダと同様の税モデルを実際に採用している国もあり得ます。国/地域名を指定することで、税モデル (およびそれに対応するコンポーネント) は複数の国に適用することが可能です。

関連項目

DefaultTaxCy/DefaultTax

SampleRegionalTax

SimpleCanadaTax

SimpleJapanTax

SimpleUSTax

SimpleVATTax

RequiredTaxCy/RequiredTax


B to C パイプライン

B to C 発注処理パイプライン (OPP) は、一般顧客向けの小売販売を想定した Commerce Server サイトで使います。これらのパイプラインは、購入プロセスのさまざまな時点で実行される機能を実装しています。

ここでは、次のトピックについて説明します。

  • 小売り商品パイプライン (Product.pct) : 個々の商品の価格情報および割引情報を計算する OPP コンポーネントを実行します。このパイプラインは通常、Product.asp ページに表示される情報を計算するために使われます。

  • 小売り計画パイプライン (Plan.pct) : すべての販促割引、税、送料、および手数料が含まれた注文金額合計をユーザーに表示するための OPP コンポーネントを実行します。

  • 小売りの購入パイプライン (Purchase.pct) : ユーザーの支払いの検証、実際の購入トランザクションの実行、データベースの記憶領域への注文の書き込み、OrderForm オブジェクトの内容をレシート データベースに書き込むことによるレシート作成 (省略可能) を行う OPP コンポーネントを実行します。


小売り商品パイプライン

小売り商品パイプラインは、個々の商品の価格情報と割引情報を計算するコンポーネントを実行します。このパイプラインは通常、Product.asp ページに表示される情報を計算するために使われます。

このパイプラインのテンプレートは Product.pct です。

小売り商品パイプラインは次のステージで構成されています。

  • 商品情報ステージ

  • 買い物客情報ステージ

  • 品目価格ステージ

  • 品目価格調整ステージ

  • 在庫ステージ

商品情報ステージ (小売り商品パイプライン)

商品情報ステージには、items リスト内の品目に関する商品情報をサイト データベースから取得するためのコンポーネントが含まれています。指定した品目に関する情報が取得できない場合、商品情報ステージは Dictionary オブジェクトに delete キーを作成して値を 1 に設定し、その品目を削除するものとしてマークします。

商品情報コンポーネントが実行されると、商品情報ステージの RequiredProdInfo コンポーネントが items リストを調べ、削除対象としてマークされている品目をすべて削除します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
QueryCatalogInfo | 注文フォームの各項目のカタログ情報を取得します。Commerce Server 2000 商品カタログ システムを使用します。見つからない品目を削除するものとしてマークし、必要に応じてバスケット エラーを追加します。
QueryProdInfoADO | OrderForm オブジェクトにある items リストの SKU に基づいて、データベース クエリを実行します。返されたデータを OrderForm オブジェクトの items コレクションに挿入します。見つからない品目を削除するものとしてマークし、必要に応じてバスケット エラーを追加します。
RequiredProdInfo | 削除するものとしてマークされた品目を削除し、適切なエラー メッセージを書き込みます。

買い物客情報ステージ (小売り商品パイプライン)

買い物客情報ステージでは、ユーザーに関する情報が OrderForm オブジェクトに追加されます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultShopperInfo | Context ディクショナリ内の Shopper ディクショナリから OrderForm オブジェクトに情報をコピーします。

品目価格ステージ (小売り商品パイプライン)

品目価格ステージでは、注文フォームの各品目に _iadjust_regularprice キーが設定されます。

品目価格ステージには、items リストの各品目に _iadjust_regularprice キーを設定するコンポーネントと、その値が設定されていることを確認するコンポーネントが含まれています。この値が設定できていないと、エラーが発生します。

この初期化処理により、指定された SKU の最新の価格情報が _iadjust_regularprice ディクショナリ キー エントリに記述されます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultItemPriceCy/DefaultItemPrice | items リストの項目ごとに、_iadjust_regularprice キーを _product_list_price キーに格納されている値に設定します。
RequiredItemPriceCy/RequiredItemPrice | items リストの各項目に _iadjust_regularprice キーが設定されていることを確認します。

品目価格調整ステージ (小売り商品パイプライン)

品目価格調整ステージには、_iadjust_currentprice キーの値を初期化するコンポーネントが含まれています。このステージを完了すると、販売用および販売促進用に調整された現在の品目価格が _iadjust_currentprice キーに記述されます。

このステージに販売コンポーネントまたは販売促進コンポーネントが含まれていない場合、このキーは _iadjust_regularprice キーに格納されている値に設定されます。

いったん品目に item._iadjust_currentprice キーが設定されると、その品目は調整できなくなります。たとえば、ItemPromo コンポーネントと SaleAdjust コンポーネントの両方が含まれているステージで、注文フォーム内に、販売促進と販売調整の両方に当てはまる品目がある場合、その品目の _iadjust_currentprice キーはそのステージで最初に実行されたコンポーネントによって設定されます。これは、パイプラインに含めた品目価格調整ステージ コンポーネントのどの組み合わせにも適用されます。

注

  • 新しいパイプラインでの割引を計算するためにこのステージを使用しないでください。小売り計画パイプラインの注文価格調整ステージにある OrderDiscount コンポーネントを使用してください。OrderDiscount コンポーネントは、Commerce Server 2000 対象化システムを使用して、品目や注文割引を適用します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
ItemPromo | 販売促進に基づいて、_iadjust_currentprice キーの値を調整します。
SaleAdjust | どの品目が販売中かを決定します。販売中の場合、SaleAdjust コンポーネントは、品目の _iadjust_currentprice キーを _product_sale_price キーに格納されている値に設定します。
RequiredItemAdjustPriceCy/RequiredItemAdjustPrice | _iadjust_currentprice キーが存在し、それに値が含まれていることを確認します。

在庫ステージ (小売り商品パイプライン)

在庫ステージには、注文された各品目について、在庫があるかどうかを確認するコンポーネントが含まれています。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
FlagInventory | items SimpleList オブジェクト内の在庫切れ品目にフラグを設定します。
LocalInventory | OrderForm を確認して、品目が在庫にある SKU 以上のものを要求しないようにします。

関連項目

小売り計画パイプライン

小売りの購入パイプライン


小売り計画パイプライン

小売り計画パイプラインには、14 のステージが含まれています。これらのステージは、OrderForm オブジェクトの整合性を検証するコンポーネントで構成されています。たとえば OrderForm オブジェクトの items リストに品目が含まれていない場合には、注文の確認ステージの RequiredOrderCheck コンポーネントがエラーを生成します。

このパイプラインのテンプレートは Plan.pct です。

小売り計画パイプラインのテンプレートは次のステージで構成されています。

  • 商品情報ステージ

  • マーチャント情報ステージ

  • 買い物客情報ステージ

  • 注文の初期化ステージ

  • 注文の確認ステージ

  • 品目価格ステージ

  • 品目価格調整ステージ

  • 注文価格調整ステージ

  • 注文代金ステージ

  • 送料ステージ

  • 手数料ステージ

  • 税ステージ

  • 注文合計ステージ

  • 在庫ステージ

商品情報ステージ (小売り計画パイプライン)

商品情報ステージには、items リスト内の品目に関する商品情報をサイト データベースから取得するためのコンポーネントが含まれています。品目に関する情報がない場合、商品情報ステージは Item ディクショナリに delete キーを作成して値を 1 に設定し、その品目を削除するものとしてマークします。

商品情報ステージ コンポーネントが実行されると、このステージの RequiredProdInfo コンポーネントが items リストを調べ、削除対象としてマークされている品目をすべて削除します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
QueryCatalogInfo | 注文フォームの各品目のカタログ情報を取得します。Commerce Server 2000 商品カタログ システムを使用します。見つからない品目を削除するものとしてマークし、必要に応じてバスケット エラーを追加します。
QueryProdInfoADO | Microsoft ActiveX Data Objects (ADO) を使って、データベース クエリを実行します。このコンポーネントと QueryProdInfo コンポーネントとの相違点は、実行するクエリで複数のパラメータを使用できる点と、QueryMap ディクショナリ内のクエリを参照できる点です。
RequiredProdInfo | 削除するものとしてマークされた品目をすべて削除し、適切なエラー メッセージを書き込みます。

マーチャント情報ステージ (小売り計画パイプライン)

マーチャント情報ステージでは、静的なマーチャント データを取得し、そのデータを OrderForm オブジェクトに書き込むことができます。Commerce Server 2000 では、このステージには、Scriptor コンポーネント以外のコンポーネントは含まれていません。ただし、マーチャント情報を処理する独自のカスタム コンポーネントを追加できます。詳細については、「パイプライン コンポーネントを構築する」を参照してください。

買い物客情報ステージ (小売り計画パイプライン)

買い物客情報ステージには、買物客の情報を OrderForm オブジェクトに追加する DefaultShopperInfo コンポーネントが含まれています。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultShopperInfo | Context ディクショナリ内の Shopper ディクショナリから OrderForm オブジェクトに情報をコピーします。

注文の初期化ステージ (小売り計画パイプライン)

注文の初期化ステージは、OrderForm オブジェクトに初期注文情報を設定し、OrderForm オブジェクトに注文 ID が含まれているかどうかを確認します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
RequiredOrderInitCy/RequiredOrderInit | 注文の処理に先立って、支払い認証コード、注文 ID、合計、および小計を初期化します。

注文の確認ステージ (小売り計画パイプライン)

注文の確認ステージは、注文が処理可能であるかどうかを確認します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
RequiredOrderCheck | OrderForm オブジェクトに少なくとも 1 つの品目が存在することを確認します。

品目価格ステージ (小売り計画パイプライン)

品目価格ステージには、items リストの各品目に _iadjust_regularprice キーを設定するコンポーネントと、その値が設定されていることを確認するコンポーネントが含まれています。この値が設定できていないと、エラーが発生します。

この初期化処理により、指定した品目の最新の価格情報が _iadjust_regularprice キーに記述されます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultItemPriceCy/DefaultItemPrice | items リストの項目ごとに、_iadjust_regularprice キーを _product_list_price キーに格納されている値に設定します。
RequiredItemPriceCy/RequiredItemPrice | items リストの各項目に _iadjust_regularprice キーが設定されていることを確認します。

品目価格調整ステージ (小売り計画パイプライン)

品目価格調整ステージには、_iadjust_currentprice キーの値を初期化するコンポーネントが含まれています。このステージを完了すると、販売用および販売促進用に調整された現在の品目価格が _iadjust_currentprice キーに記述されます。

このステージに販売コンポーネントまたは販売促進コンポーネントが含まれていない場合、このキーは _iadjust_regularprice キーに格納されている値に設定されます。

いったん品目に item._iadjust_currentprice キーが設定されると、その品目は調整できなくなります。たとえば、ItemPromo コンポーネントと SaleAdjust コンポーネントの両方が含まれているステージで、注文フォーム内に、販売促進と販売調整の両方に当てはまる品目がある場合、その品目の _iadjust_currentprice キーはそのステージで最初に実行されたコンポーネントによって設定されます。これは、パイプラインに含めた品目価格調整ステージ コンポーネントのどの組み合わせにも適用されます。

注

  • 新しいパイプラインでの割引を計算するためにこのステージを使用しないでください。小売り計画パイプラインの注文価格調整ステージにある OrderDiscount コンポーネントを使用してください。OrderDiscount コンポーネントは、Commerce Server 2000 対象化システムを使用して、品目や注文割引を適用します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
ItemPromo | 販売促進に基づいて、_iadjust_currentprice キーの値を調整します。
SaleAdjust | どの品目が販売中かを決定します。販売中の場合、SaleAdjust コンポーネントは、品目の _iadjust_currentprice キーを _product_sale_price キーに格納されている値に設定します。
RequiredItemAdjustPriceCy/RequiredItemAdjustPrice | _iadjust_currentprice キーが存在し、それに値が含まれていることを確認します。

注文価格調整ステージ (小売り計画パイプライン)

注文価格調整ステージには、品目ごとに調整価格を設定するコンポーネントが含まれています。

item_oadjust_adjustedprice キーには、指定された品目の合計コストが含まれます。たとえば、ユーザーが 1 つあたり 5.00 ドルの品目を 3 つ購入した場合、いずれの品目にも割引が適用されなければ合計は 15.00 ドルになります。これらの品目のうち 2 つを定価で販売し、3 つ目に割引を適用して半額で販売した場合の調整価格は、12.50 ドルになります。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DBOrderPromoADO | データベースに対してクエリを実行し、販売促進の割引額を決定します。
OrderDiscount | 買い物バスケットに、スケジュール設定済みの割引を適用します。
RequiredOrderAdjustPriceCy/RequiredOrderAdjustPrice | items コレクションにある各品目の _oadjust_adjustedprice キー メンバが設定されているかどうかを確認します。

注文代金ステージ (小売り計画パイプライン)

注文代金ステージは、注文の代金を計算し、その値を OrderForm オブジェクトの _oadjust_subtotal キーに格納します。_oadjust_subtotal キーは、すべての品目の _oadjust_adjustedprice キーの合計です。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultOrderSubtotalCy/DefaultOrderSubtotal | 注文の代金を計算し、その結果を order._oadjust_subtotal キーに格納します。
RequiredOrderSubtotalCy/RequiredOrderSubtotal | order._oadjust_subtotal キーが Null に設定されていないことを確認します。

送料ステージ (小売り計画パイプライン)

このステージは、注文の合計送料を計算し、それに応じて order._shipping_total キーを設定します。このステージの各コンポーネントが互いにデータをやり取りする仕組みについては、「送付オブジェクト」を参照してください。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultShippingCy/DefaultShipping | order._shipping_total キーを 0 に設定して OrderForm オブジェクトの整合性を維持します。
FixedShipping | order._shipping_total キーを固定の金額に設定します。
LinearShipping | OrderForm オブジェクト上の指定された値の合計を一定のレートで乗算して、order._shipping_total キーを設定します。
ShippingDiscountAdjust | 注文に送料割引を適用します。このコンポーネントは、複数発送アーキテクチャを使います。
ShippingMethodRouter | 送付を処理するコンポーネントを検索して実行し、注文全体の合計送料を計算します。このコンポーネントは、複数発送アーキテクチャを使います。
Splitter | 項目キーの一覧に基づいて、注文を複数のグループに分割します。このコンポーネントは、複数発送アーキテクチャを使います。
TableShippingADO | order._shipping_total キーを、指定されたクエリから返された値に設定します。クエリを実行するには、Microsoft ActiveX Data Objects (ADO) を使います。このコンポーネントはトランザクション パイプラインに組み込むことができます。
RequiredShippingCy/RequiredShipping | OrderForm オブジェクトに order._shipping_total キーが設定されているかどうかを確認します。

手数料ステージ (小売り計画パイプライン)

送料に手数料が含まれていない場合、このステージは注文の合計手数料を計算し、それに応じて order._handling_total キーを設定します。

複数のコンポーネントを指定すると、使用する手数料コンポーネントに応じた複数の手数料を設定することができます。送料コンポーネントを使って、送料と手数料を一括計算することができます。ただし、課税体系によっては、送料と手数料を別々に計算して税率を設定しなければならないことがあります。

このステージでは、order._handling_total キーが設定されているかどうかが確認されます。設定されていない場合にはエラーが生成されます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultHandlingCy/DefaultHandling | order._handling_total キーに 0 を割り当てます。
FixedHandling | order._handling_total キーに固定の金額を割り当てます。
LinearHandling | OrderForm オブジェクト上の指定品目の合計数量を一定のレートで乗算して手数料を計算し、その値を order._handling_total キーに割り当てます。
TableHandlingADO | データベース クエリの結果に基づいて手数料を計算し、その値を order._handling_total キーに割り当てます。クエリを実行するには、Microsoft ActiveX Data Objects (ADO) を使います。このコンポーネントはトランザクション パイプラインに組み込むことができます。
RequiredHandlingCy/RequiredHandling | OrderForm オブジェクトに合計手数料 (order._shipping_total キー) が設定されているかどうかを確認します。

税ステージ (小売り計画パイプライン)

税ステージでは、注文品目ごとの売上税と注文全体の合計税額が計算されます。このステージでは、item._tax_total キー、order._tax_total キー、および order._tax_included キーに適宜値が割り当てられます。複数のコンポーネントを指定すると、送付先の国または地域に対応したさまざまな税率を設定することができます。各コンポーネントが互いにデータをやり取りする仕組みについては、「税オブジェクト」を参照してください。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultTaxCy/DefaultTax | OrderForm オブジェクトの _tax_total キーと _tax_included キーを 0 に設定します。
SampleRegionalTax | Commerce Server 2000 の複数発送機能を利用して税を計算します。
SimpleCanadaTax | GST (物品サービス税) や PST (地方売上税) などのカナダの税を計算します。
SimpleJapanTax | 日本モデルの税を計算します。
SimpleUSTax | アメリカ国内の指定された州に送付する注文に対し、指定された税率を適用します。
SimpleVATTax | 品目の付加価値税 (VAT) を計算します。
RequiredTaxCy/RequiredTax | OrderForm オブジェクトの _tax_total キーと _tax_included キーに Null 値が含まれていないかどうかを確認します。

注文合計ステージ (小売り計画パイプライン)

注文合計ステージでは、代金 (割引適用後)、税、送料、および手数料を合計し、その値を order._total_total キーに割り当てます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultTotalCy/DefaultTotal | 注文の合計コストを _total_total キーに書き込みます。
RequiredTotalCy/RequiredTotal | OrderForm オブジェクトの _VERIFY_WITH チェックを実行します。

在庫ステージ (小売り計画パイプライン)

このステージでは、注文された各品目について、在庫があるかどうかが確認されます。在庫コンポーネントが互いにデータをやり取りする仕組みについては、「在庫オブジェクト」を参照してください。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
FlagInventory | items SimpleList オブジェクト内の在庫切れ品目にフラグを設定します。
LocalInventory | OrderForm を確認して、品目が在庫にある SKU 以上のものを要求しないようにします。

関連項目

小売り商品パイプライン

小売りの購入パイプライン


小売りの購入パイプライン

小売りの購入パイプラインは 3 つのステージで構成されています。これらのステージでは、コンポーネントを利用して注文フォームの最終的な購入を受け付け、データベースの記憶領域に注文を書き込みます。コンポーネントを利用してレシートを作成し、OrderForm オブジェクトの内容をレシート データベースに書き込むことも可能です。

小売りの購入パイプラインは、OrderForm オブジェクトが小売り計画パイプラインを正常に通過し、ユーザーが購入の完了を希望していることを確認した後に実行します。

小売りの購入パイプライン コンポーネントはデータベースへの書き込みを行います。このため、小売りの購入パイプラインは通常はトランザクション パイプラインです。

このパイプラインのテンプレートは Purchase.pct です。

小売りの購入パイプラインのテンプレートは次のステージで構成されています。

  • 購入確認ステージ

  • 支払いステージ

  • 受注ステージ

購入確認ステージ (小売りの購入パイプライン)

購入確認ステージは通常、ユーザーの住所情報とクレジット カード情報が一定の基準を満たしているかどうかを確認するために使います。

Purchase.pct テンプレートの購入確認ステージには、既定ではコンポーネントが配置されていません。

このパイプライン構成には、次の 2 つの Scriptor コンポーネントが含まれています。

  • Validate Bill_to : 注文フォームの各 bill_to_* フィールドにデータが含まれていることを確認します。データが含まれていない場合は、MessageManager オブジェクトから適切なメッセージが取得され、そのエラー テキストがエラー リストに追加されます。さらに、エラーが発生したことを示す戻り値 2 が返されます。

  • Validate CC Info : 注文フォーム内の各クレジット カード フィールドにデータが含まれているかどうか、およびクレジット カードのタイプが使用可能値のリストに含まれているものかどうかを確認します。これらの条件が満たされていない場合は、MessageManager オブジェクトから適切なメッセージが取得され、そのエラー テキストがエラー リストに追加されます。さらに、エラーが発生したことを示す戻り値 2 が返されます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
ValidateCCNumber | クレジット カード番号に対して標準的な checksum テストを実行すると共に、カードの有効期限を確認します。

支払いステージ (小売りの購入パイプライン)

支払いステージは、クレジット カードによる支払いを承認するために使います。クレジット カードが承認されると order._payment_auth_code キーが設定されます。このステージでは、_payment_auth_code キーが設定されているかどうかが必ず確認されます。設定されていない場合は pur_bad_payment エラーが生成されます。

クレジット カードが承認されない場合は、_payment_auth_code キーが DENIED に設定され、エラー レベル 2 が返されます。

支払いコンポーネントの細部は、使用するサードパーティ製の処理システムに応じて変わります。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
DefaultPayment | _payment_auth_code キーに初期値を割り当てます。
RequiredPayment | _payment_auth_code キーの値が Null でないことを確認します。

受注ステージ (小売りの購入パイプライン)

受注ステージでは、注文追跡の開始、注文書の生成、在庫処理など、完了した注文に関する処理が実行されます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
ExecuteProcess | 引数を指定して、サーバー上でアプリケーションを実行します。
MakePO | テンプレート ファイルを基に注文書を生成します。
POtoFile | 注文書 (通常は MakePO コンポーネントの処理結果) をファイルに送信します。
SaveReceipt | OrderForm オブジェクトの内容をレシートの記憶領域に書き込みます。
SendSMTP | 指定された住所にメール メッセージを送信します。
SQLItemADO | 注文内の各品目に対して、指定された SQL コマンドを実行します。引数として、注文および品目に含まれるフィールドが使われます。このコンポーネントは Microsoft ActiveX Data Objects (ADO) を利用します。また、このコンポーネントをトランザクション パイプラインに含めることができます。
SQLOrderADO | 指定された SQL コマンドを、1 つの注文につき 1 回実行します。引数として、注文に含まれるフィールドが使われます。このコンポーネントは Microsoft ActiveX Data Objects (ADO) を利用します。また、このコンポーネントをトランザクション パイプラインに含めることができます。

関連項目

小売り商品パイプライン

小売り計画パイプライン


注文処理パイプラインを使う

注文処理パイプライン (OPP) は、Web サイトに必要な機能を数多く提供しています。OPP のコンポーネントと処理について理解しておくと、パフォーマンスの高い Web サイトを構築する際に役立ちます。

ここでは、次のトピックについて説明します。

  • OrderForm : OrderForm ディクショナリの構造と、OPP によるこのディクショナリの利用形態について説明します。

  • トランザクションと注文処理パイプライン : トランザクション パイプライン オブジェクトを使用することの利点と、このオブジェクトと COM+ が連係して処理が進められる仕組みについて説明します。

  • エラー処理 : パイプライン オブジェクトで MessageManager オブジェクトを使う方法について説明します。

  • 注文ログを使う : ログ機能を活用してパイプラインの設計とデバッグを行う方法について説明します。

  • 注文フォームの内容を表示する : Scriptor パイプライン コンポーネントで、Microsoft Visual Basic Scripting Edition (VBScript) を使って OrderForm ディクショナリの内容を表示する方法について説明します。

  • 購入確認のメールを送信する : 新しい注文を受け取ったときに、購入確認のメールが自動的に送付されるようにする方法について説明します。

  • コンポーネントの調整。パイプライン ステージのコンポーネント間で、共有されている OrderForm オブジェクト キーの利用について調整が行われる仕組みについて説明します。

  • 基準フィールドを指定する 基準フィールドを指定する方法について説明します。

関連項目

送付オブジェクト

在庫オブジェクト

税オブジェクト


OrderForm

注文処理パイプライン (OPP) では、サイトから渡されるデータとサイトに渡すデータは、OrderForm オブジェクト内に存在しなければなりません。既定の OPP に含まれるコンポーネントと、OPP を拡張するためのコンポーネントはこの要件を満たしている必要があります。

OrderForm オブジェクトは、個々のエントリのほか、Dictionary オブジェクトおよび SimpleList オブジェクトであるエントリが含まれたディクショナリです。このような構造をとっているため、1 つ以上の買い物セッションの全部または一部について、ユーザーまたはパイプラインに詳細な要約を表示することができます。この要約には、名前、住所、クレジット カード情報などのユーザー データのほか、購入した商品の情報などが含まれています。

OrderForm オブジェクトの最上位の Dictionary オブジェクトにある最初の要素は、注文された品目のリストである SimpleList オブジェクトへの参照です。それぞれの品目は、それ自体が個別の Dictionary オブジェクトです。この SimpleList オブジェクトのことを items リストと呼んでいます。

注文の Dictionary オブジェクト、および items SimpleList オブジェクトの Dictionary オブジェクトは、どちらもキーと値とで構成されています。サイトの OPP に組み込むコンポーネントは、いずれもこれらのキーと値を 1 つ以上処理するように設計されています。主な用途としては、次のものが挙げられます。

  • キーと値の作成 : いくつかのコンポーネントでは、OrderForm オブジェクトにキーと値を作成します。たとえば、QueryCatalogInfo コンポーネントは商品に関する情報をデータベースから収集し、列名に _product_ を付加し、そのキーと列の値を OrderForm オブジェクトに追加します。

  • キーと値の初期化 : OPP の必須コンポーネントがこのカテゴリに当てはまります。これらのコンポーネントは、特定のキーが何らかの値に初期化されているかどうかを確認します。初期化されていない場合は、これらの必須コンポーネントによって初期化されます。たとえば、注文の初期化ステージに含まれている RequiredOrderInitCy コンポーネントでは、_cy_total_total、_cy_oadjust_subtotal、_cy_shipping_total、_cy_tax_total、_cy_handling_total の各キーを Null に設定します。

  • キーと値の確認 : OPP では、パイプラインが呼び出されたときに OrderForm オブジェクトの特定のキーと値が初期化されていない場合、処理が失敗します。たとえば、RequiredOrderInitCy コンポーネントは OrderForm オブジェクトの品目 SimpleList オブジェクトが空でないかどうかを確認します。この SimpleList オブジェクトが空の場合は、失敗を示すステータスが返されます。

  • キーと値の計算 : OPP のオプション コンポーネントは、ほかのコンポーネントで実行された処理の結果に基づいて、キーと値を初期化します。たとえば税ステージのコンポーネントは、OrderForm オブジェクトの品目 SimpleList オブジェクトの品目リストに基づいて注文に課される税額を計算し、その税額を _tax_total キーに書き込みます。

OrderForm オブジェクトのキーの先頭には、多くの場合アンダスコア (_) が付いています。これは、そのキーが保存されないことを意味します。

注

  • OrderForm オブジェクトの内容は、サイトのパイプラインがどのように構成されているかによって異なります。

OrderForm オブジェクトでよく使われる値

OrderForm オブジェクトの項目を参照する

OrderForm オブジェクトを修正する

OrderForm オブジェクトでよく使われる値

次の表は、OrderForm オブジェクトでよく使われるキーの一覧です。それぞれの項目について、簡単に説明しています。金額値が含まれる場合、ディクショナリ キーの Currency バージョンが表示されます。名前付け規則および Currency データの詳細については、「通貨の概要」を参照してください。

キー | 定義
item._cy_iadjust_currentprice | 品目の現在の価格が含まれます。_cy_iadjust_regularprice キーには品目の定価が格納されますが、このキーには定価から販売促進割引分を差し引いた額が反映されます。
item._cy_iadjust_regularprice | 品目の定価が含まれます。品目価格ステージの DefaultItemPrice コンポーネントは、このキーを _product_list_price キーの値に設定します。RequiredItemPrice コンポーネントは、このキーが初期化されているかどうかを確認します。 一部の販売促進コンポーネントは、このキーを価格調整の基準として使います。たとえば品目の価格を一定の割合 (%) だけ引き下げる場合、その割合は _cy_iadjust_regularprice キーに格納されている値に基づいて決められます。
item._cy_oadjust_adjustedprice | 品目のコストの合計です。このキーには、現在の価格に品目の数量を掛け、販売促進またはセールによる割引分を差し引いた金額が含まれます。
item._cy_tax_included | 品目のコストに含まれる税額を示す値です。
item._cy_tax_total | この在庫管理番号 (SKU) を持つ品目の合計税額です。
item._n_unadjusted | この SKU を持つ品目のうち、販売促進価格割引が適用されない品目の数です。
item._product_* | 指定された SKU を持つ品目についての情報が含まれます。このキーは QueryProdInfoADO コンポーネントによって初期化されます。キーには _product_ というプレフィックスが与えられ、その後に情報を取得したデータベース テーブル列の名前が付けられます。
item.cy_placed_price | バスケットに入れた時点での品目の価格です。購入中に価格変更が実施されたかどうかを確認するために使われます。
item.delete | 注文から削除する品目を示すフラグです。QueryCatalogInfo コンポーネントによって設定され、RequiredProdInfo コンポーネントで使われます。
item.discounts_applied | この品目に適用する割引の ID が含まれたディクショナリです。キーは ID で、値は割引のタイムスタンプです。OrderDiscount オブジェクトで使われます。
item.list_price | 品目の標準価格です。
item.quantity | 指定された SKU の品目の数です。
order._Basket_Errors | OPP のコンポーネントによって取得されたバスケット エラー メッセージが格納される SimpleList オブジェクトです。メッセージは MessageManager オブジェクトから取得されます。
order._cc_expmonth | ユーザーのクレジット カードが有効期限切れになる月です。
order._cc_expyear | ユーザーのクレジット カードが有効期限切れになる年です。
order._cc_number | この購入で使われるクレジット カードの番号です。既定では、SaveReceipt コンポーネントには OrderForm オブジェクトにあるほかの情報が保存されますが、クレジット カード番号は保存されません。
order._cy_handling_total | 注文処理のための手数料の合計です。この値は、手数料ステージ コンポーネント (TableHandlingADO、FixedHandling) によって初期化されます。
order._cy_oadjust_subtotal | 品目リスト内のすべての品目の合計代金です。この値は DefaultSubtotal コンポーネントによって初期化されます。リストに含まれる各品目の item._cy_oadjust_adjustedprice キーの合計を表しています。item._cy_oadjust_adjustedprice キーは、指定された品目の合計代金 (標準価格を品目の数量で乗算し、その値から販売促進割引の分を差し引いた額) を表します。
order._cy_shipping_total | OrderForm オブジェクト内の品目の送付にかかる合計コスト。このキーは、既定ではそれぞれの送付コンポーネントによって初期化されます。
order._cy_tax_included | 注文のコストに含まれる税額を示す値です。
order._cy_tax_total | この注文に対する税の合計です。このキーは税ステージ コンポーネントによって初期化されます。この値の計算方法は、使用する税ステージ コンポーネントによって異なります
order._cy_total_total | 注文の合計コストです。注文の代金、送料、手数料、および税が含まれます。この値は DefaultTotal コンポーネントによって初期化され、RequiredTotal コンポーネントによって検証されます。
order._payment_auth_code | 注文フォームの支払い認証コードです。
order._Purchase_Errors | OPP のコンポーネントによって取得された購入エラー メッセージが格納される SimpleList オブジェクトです。メッセージは MessageManager オブジェクトから取得されます。
order._Verify_With | 注文フォームのキーと値に対してテストするキーと値を持つディクショナリです。
order.cc_name | 購入に使われるクレジット カードに記載された氏名です。このキーは、OrderForm オブジェクトが OPP に送信される前に初期化されます。
order.cc_type | 提示されたクレジット カードの種類です。有効な種類は VISA、MC、AMEX、および Discover です。ValidateCCNumber コンポーネントで、クレジット カード番号に対して定型的な検証を実行する場合の基準として使われます
order.order_id | 注文の一意の ID です。
order.shipment._cy_tax_included | コストに含まれる送付の合計税額です。複数発送アーキテクチャの一部です。
order.shipment._cy_tax_total | 送付に対する税の合計です。複数発送アーキテクチャの一部です。
order.shipments | ディクショナリの SimpleList オブジェクトです。送付 1 つにつき 1 つのディクショナリが使われます。複数発送アーキテクチャの一部です。
order.shipments._cy_shipping_total | 個々の送付に対する送料を合計したものです。複数発送アーキテクチャの一部です。
order.shopper_id | この注文を送信したユーザーの一意の ID です。このキーは、注文が OPP に送信される前に初期化されます。

次の表は、OrderForm オブジェクトに含まれる名前と値の組み合わせと、指定された組み合わせに対して読み取り/書き込みを行う OPP コンポーネントの一覧です。金額値が含まれる場合、ディクショナリ キーの Currency バージョンが示されています。非 Currency バージョンのキーのみを使用するコンポーネントが存在する場合は、Currency バージョンと非 Currency バージョンを両方とも示してあります。名前付け規則および Currency データの詳細については、「通貨の概要」を参照してください。

キー | 読み込み元 | 書き込み元
item._cy_iadjust_currentprice | 適用せず | 適用せず
item._cy_iadjust_regularprice | 適用せず | 適用せず
item._cy_oadjust_adjustedprice | 適用せず | 適用せず
item._cy_tax_included | 適用せず | 適用せず
item._cy_tax_total | 適用せず | 適用せず
item._iadjust_currentprice | DbOrderPromoADO、ItemPromo、RequiredItemAdjustPrice、RequiredOrderAdjustPrice | ItemPromo、RequiredItemAdjustPrice、SaleAdjust
item._iadjust_regularprice | ItemPromo、RequiredItemAdjustPrice、RequiredItemPrice | DefaultItemPrice
item._inventory_backorder | 適用せず | FlagInventory、LocalInventory
item._n_unadjusted | DbOrderPromoADO、RequiredOrderInit | RequiredOrderInit
item._oadjust_adjustedprice | RequiredOrderAdjustPrice、SimpleCanadaTax、SimpleJapanTax、SimpleUSTax、SimpleVATTax | DbOrderPromoADO、DefaultOrderSubtotal、RequiredOrderAdjustPrice、RequiredOrderInit
item._oadjust_discount | 適用せず | RequiredOrderAdjustPrice
item._product_* | QueryProdInfoADO | 適用せず
item._product_gst | SimpleCanadaTax | 適用せず
item._product_in_stock | FlagInventory | 適用せず
item._product_jpn_tax_included | SimpleJapanTax | 適用せず
item._product_jpn_tax_rate | SimpleJapanTax | 適用せず
item._product_list_price | DefaultItemPrice | 適用せず
item._product_local_inventory | LocalInventory | 適用せず
item._product_pst | SimpleCanadaTax | 適用せず
item._product_sale_end | SaleAdjust | 適用せず
item._product_sale_price | SaleAdjust | 適用せず
item._product_sale_start | SaleAdjust | 適用せず
item._product_tax_rate | SimpleVATTax | 適用せず
item._tax_included | 適用せず | SimpleCanadaTax、SimpleJapanTax、SimpleUSTax、SimpleVATTax
item._tax_total | 適用せず | SimpleCanadaTax、SimpleJapanTax、SimpleUSTax、SimpleVATTax
item._tax_vat_item | 適用せず | SimpleVATTax
item.cy_placed_price | RequiredItemAdjustPrice | RequiredItemAdjustPrice
item.delete | RequiredProdInfo、QueryProdInfoADO | 適用せず
item.discounts_applied | 適用せず | 適用せず
item.list_price | 適用せず | 適用せず
item.quantity | DbOrderPromoADO、FlagInventory、LocalInventory、ReduceLocalInventory、RequiredItemAdjustPrice、RequiredOrderInit | RequiredOrderInit
item.sku | LocalInventory、QueryProdInfoADO、ReduceLocalInventory | 適用せず
order._Basket_Errors | 適用せず | RequiredProdInfo
order._cc_expmonth | ValidateCCNumber | 適用せず
order._cc_expyear | ValidateCCNumber | 適用せず
order._cc_number | ValidateCCNumber | 適用せず
order._cy_handling_total | 適用せず | 適用せず
order._cy_oadjust_subtotal | 適用せず | 適用せず
order._cy_shipping_total | 適用せず | 適用せず
order._cy_total_total | 適用せず | DefaultTotal、RequiredOrderInit
order._handling_total | RequiredHandling、DefaultTotal | RequiredOrderInit、DefaultHandling、FixedHandling、LinearHandling、TableHandlingADO
order._oadjust_subtotal | RequiredOrderSubtotal、DefaultTotal | DefaultOrderSubtotal、RequiredOrderInit
order._payment_auth_code | RequiredPayment | DefaultPayment、RequiredOrderInit
order._Purchase_Errors | 適用せず | FlagInventory、LocalInventory、RequiredHandling、RequiredItemAdjustPrice、RequiredOrderCheck、RequiredPayment、RequiredShipping、RequiredTotal、ValidateCCNumber
order._shipping_total | RequiredShipping、DefaultTotal | DefaultShipping、FixedShipping、LinearShipping、RequiredOrderInit、TableShippingADO
order._shopper_* | 適用せず | DefaultShopperInfo、QueryProdInfoADO
order._tax_included | 適用せず | DefaultTax、RequiredOrderInit、SimpleCanadaTax、SimpleJapanTax、SimpleUSTax、SimpleVATTax
order._tax_total | DefaultTotal | DefaultTax、RequiredOrderInit、SimpleCanadaTax、SimpleJapanTax、SimpleUSTax、SimpleVATTax
order._tax_total_gst | 適用せず | SimpleCanadaTax
order._tax_total_pst | 適用せず | SimpleCanadaTax
order._Verify_With | RequiredTotal | 適用せず
order.bill_to_* | 適用せず | 適用せず
order.cc_name | 適用せず | 適用せず
order.cc_type | ValidateCCNumber | 適用せず
order.date_changed | 適用せず | 適用せず
order.items | 適用せず | 適用せず
order.order_id | 適用せず | RequiredOrderInit
order.ship_to_city | 適用せず | 適用せず
order.ship_to_country | SimpleCanadaTax、SimpleJapanTax、SimpleVATTax | 適用せず
order.ship_to_state | SimpleCanadaTax、SimpleUSTax | 適用せず
order.ship_to_street | 適用せず | 適用せず
order.ship_to_zip | TableShippingADO、TableHandlingADO | 適用せず
order.shipment._cy_tax_included | 適用せず | 適用せず
order.shipment._cy_tax_total | 適用せず | 適用せず
order.shipments | 適用せず | 適用せず
order.shipments._cy_shipping_total | 適用せず | 適用せず
order.shipping_method | TableShippingADO、TableHandlingADO | 適用せず
order.shopper_id | 適用せず | 適用せず

OrderForm オブジェクトの項目を参照する

ディクショナリ項目は、名前と OrderForm オブジェクト内における所属セクションの両方を使って識別します。たとえば、order という Dictionary オブジェクトの cc_name 項目は次のようにして参照します。

order.cc_name

同様に、items という SimpleList オブジェクトにある項目の要素には、次のように、先頭に "item" が付いています。

item.SKU

この参照形式は、要点をわかりやすく説明するために示した例であり、必ずしも正確なものではありません。

OrderForm オブジェクトを修正する

注文処理パイプライン (OPP) に OrderForm オブジェクトを渡す場合は、何らかのデータ要素でオブジェクトをあらかじめ初期化しておく必要があります。

OrderForm オブジェクトの修正は、次のいずれかの方法で行います。

  • 直接割り当て : ページに含まれる shopper_id キーを初期化する場合、次のようにして、割り当てを直接実行することができます。

    objOrderForm.shopper_id = objPage.GetShopperID()

  • OrderForm オブジェクトの組み込みメソッドを使用 : OrderForm オブジェクトには AddItem、ClearItems、Clear の各メソッドが実装されています。これらのメソッドは、それぞれ items SimpleList オブジェクトへの品目の追加、items SimpleList オブジェクト内の品目のクリア、OrderForm オブジェクト全体のクリアを実行します。

  • DBStorage オブジェクトを使用 : DBStorage オブジェクトは、データベースのデータ行を OrderForm オブジェクトまたは Dictionary オブジェクトに読み込みます。詳細については、「DBStorage オブジェクト」を参照してください。


トランザクションと注文処理パイプライン

トランザクションとは、1 つのまとまった単位として実行される一連の処理のことです。エラーが発生した場合、トランザクションに含まれる処理はまとめて取り消すことができます。Active Server Pages (ASP) 環境では、1 ページが 1 つのトランザクション単位になります。トランザクションが必要であるというマークを ASP ページに付けるには、そのページの先頭に次のスクリプトを組み込みます。

<%@ LANGUAGE=VBScript Transaction=Required%>

ページをトランザクションとしてマークすると、そのページで作成されたオブジェクトと、それらのオブジェクトによって実行された処理はトランザクションの一部になります。ただし、それらのオブジェクトが、トランザクションをサポートするコンポーネントとしてサーバーに登録されていなければなりません。エラーが発生した場合には、これらのオブジェクトが実行した処理をロールバックすることができます。

たとえば、Microsoft ActiveX Data Objects (ADO) を利用するオブジェクトを組み込んだページを作成して、データベースへのデータ挿入とデータベースのデータ更新を実行させるとします。このコンポーネントによる処理が失敗した場合は、ObjectContext オブジェクトの SetAbort メソッドを呼び出すことで、トランザクションを中止させることができます。データベースに対して行われた変更は、すべて取り消されます。

注

  • トランザクション機能は Microsoft Transaction Server (MTS) によって提供されていましたが、Windows 2000 では COM+ に統合されました。COM+ がサポートするトランザクションは、MTS との完全な下位互換性があります。ただし、COM+ ではトランザクションに関して大幅な機能拡張が行われています。詳細については、MSDN 英語版 Web サイト (http://msdn.microsoft.com) の「More on Porting Applications from MTS to COM+」を参照してください。このページは英語で提供されています。

トランザクション パイプライン オブジェクトを呼び出す

Commerce Server の注文処理パイプライン (OPP) では、MtsTxPipeline オブジェクトと PooledTxPipeline オブジェクトを利用することで COM+ トランザクションをサポートします。これらのオブジェクトには、トランザクションが必要であるというマークが付けられています。トランザクションが必要であるというマークをページに付けずに MtsTxPipeline オブジェクトまたは PooledTxPipeline オブジェクトを作成することもでき、その場合にもトランザクションは存在します。ただし、そのトランザクションに含まれるのは、パイプラインと、パイプラインによって実行されるコンポーネントに限られます。ページ上で実行されるすべての処理をトランザクションに含めるには、トランザクションが必要であるというマークをそのページに付ける必要があります。

どちらの場合でも、MtsTxPipeline オブジェクトと PooledTxPipeline オブジェクトによるトランザクションのサポートを活用することで、サイト開発者は多くのメリットを享受することができます。トランザクションのサポートにおける最も重要な点は、MtsTxPipeline オブジェクトまたは PooledTxPipeline オブジェクト内の何らかのコンポーネントによる処理が失敗した場合、パイプライン内のそれ以前のコンポーネントが行った処理がロールバックされ、トランザクションが終了することです。

MtsTxPipeline オブジェクトと PooledTxPipeline オブジェクトによるトランザクションのサポートが特に役立つのは、サイト データベースに変更を加えるパイプライン コンポーネントを使う場合です。このようなパイプライン コンポーネントを使っている場合、次のコンポーネントによる処理が失敗すると、このパイプライン コンポーネントによるデータベース変更が自動的にロールバックされます。これは、そのページでのトランザクション処理の有無とは関係がありません。上で説明したとおり、2 つのオブジェクトを使うことで、パイプラインおよびパイプラインが実行するコンポーネントは常にトランザクションの一部として実行されるためです。

トランザクション パイプライン オブジェクトの詳細については、「MtsTxPipeline オブジェクト」および「PooledTxPipeline オブジェクト」を参照してください。


エラー処理

Commerce Server 2000 Web サイトにおけるエラー処理では、注文処理パイプライン (OPP)と、OrderForm オブジェクト、パイプライン オブジェクト (MtsPipeline、MtsTxPipeline、PooledPipeline、PooledTxPipeline)、および MessageManager オブジェクトという 3 者との連携が中心になります。

OrderForm オブジェクトは、1 つ以上の買い物セッションについての詳細なメモリ内要約を提供します。マーチャント、ユーザー、品目などに関する情報が提供されます。初期化した OrderForm オブジェクトを OPP に渡し、使用しているパイプライン オブジェクトの Execute メソッドを呼び出します。

OrderForm オブジェクトが OPP の各ステージを通る過程で、各ステージのコンポーネントは OrderForm オブジェクトに値を書き込んだり、オブジェクトから値を読み取ったりします。

OrderForm オブジェクトのメンバのうち、エラーの処理で重要となるのは _Basket_Errors コレクションと _Purchase_Errors コレクションです。これらのコレクションには、OrderForm オブジェクト内のほかの要素が処理されている間に検出されたエラーの状況を説明する文字列が格納されます。

エラー文字列は MessageManager オブジェクトから取得されます。MessageManager オブジェクトは、サイトに関するエラー メッセージを格納するための主要リポジトリです。メッセージはロケール別に複数の言語で格納できます。MessageManager オブジェクトに格納されるメッセージは、指定されたエラー状態を説明するための文字列と、OPP がそのメッセージを一意に識別するための文字列識別子で構成されています。MessageManager オブジェクトは、自身にメッセージを追加する AddMessage メソッドを使って、文字列識別子と文字列メッセージとの関連付けを作成します。

エラーを説明するための文字列はサイトによって異なりますが、メッセージを識別する文字列識別子は変わりません。たとえば、OrderForm オブジェクトのクレジット カードを検証できない場合、OPP はサイトの MessageManager オブジェクトのメッセージ ID "pur_bad_cc" に関連付けられている文字列を取得しようとします。サイト開発者がこのメッセージ ID に文字列を関連付けていない場合、エラー状態は無視されます。関連付けが存在する場合はこのメッセージが取得され、OrderForm オブジェクトの _Purchase_Errors コレクションに書き込まれます。Execute メソッドから制御が戻されたら、このコレクションを調べることができます。コレクションの内部にある文字列を利用すれば、注文の処理で発生したエラーに関する詳しい説明をサイト ユーザーに提供することができます。詳細については、「MessageManager オブジェクト」を参照してください。

関連項目

エラー レベル


注文ログを使う

注文処理パイプライン (OPP) に関する情報を表示するには、2 とおりの方法があります。1 つ目は、OPP ランタイム情報ログを作成する方法です。このログには、各ステージの各コンポーネントによって OrderForm オブジェクトに書き込まれたキーと値がすべて記録されます。もう 1 つの方法は、DumpOrder のサンプル Scriptor コンポーネントを使って、OrderForm オブジェクトの内容を表示することです。DumpOrder のサンプルは注文サイトレットに含まれています。このファイルは <ドライブ名>:\Program Files\Microsoft Commerce Server\SDK\Samples\Sitelets\Order\source\pipeline にあります。

パイプラインの各ステージについてのランタイム情報は、テキスト ファイルに記録することができます。テキスト ファイルに記録すると、各ステージとその内部のコンポーネントが実行された過程を調べることできます。このファイルには、各ステージで OrderForm オブジェクトに書き込まれた情報などが記録されています。この情報は、注文処理パイプラインのデバッグを行う際に特に有益です。テキスト ファイルに記録するには、Execute メソッドの呼び出しの前に SetLogFile メソッドの呼び出しを追加します。

パイプラインを実行すると、指定したファイルにステージとコンポーネントに関する情報が書き込まれます。

注

  • ログ ファイルを作成するには、書き込み権限のある場所を指定する必要があります。書き込み権限のない場所を指定した場合、警告されることなくログ ファイルの作成が失敗します。また、パイプラインのデバッグが完了したら、SetLogFile メソッドはコメントにするか削除してください。ログ機能を利用するとパイプラインの実行速度が大幅に低下します。

ログ ファイルでは、コンポーネントは実行順に番号が付けられ、名前順で並べ替えられています。パイプライン ステージごとには分類されていません。

ログ ファイルは、Microsoft Excel などのスプレッドシート アプリケーションを使って表示すると簡単に読むことができます。


注文フォームの内容を表示する

サンプルの Microsoft Visual Basic スクリプト DumpOrder.vbs を提供しています。このスクリプトは <ドライブ名>:\Program Files\Microsoft Commerce Server\SDK\Samples\Sitelets\Order\source\pipeline ディレクトリにあります。DumpOrder.vbs を実行すると、OrderForm オブジェクトの内容がファイルに書き込まれます。

DumpOrder スクリプトを使うには

  1. Scriptor コンポーネントをパイプラインの任意のステージに追加し、そのアイコンをダブルクリックします。表示されたプロパティ ダイアログ ボックスの [スクリプタ] タブをクリックし、[スクリプト実行エンジン] ボックスの一覧で [VBScript] をクリックします。次に [外部ファイルに記述] をクリックします。

  2. [ファイル名] ボックスに DumpOrder.vbs ファイルのパスを入力します。または [参照] をクリックしてファイルを指定します。

  3. DumpOrder はファイルの名前をパラメータとして使うため、[パラメータ (名前=値; 名前=値...)] ボックスに出力ファイルのフル パス名を入力します。たとえば「filename=c:\order.log」と入力します。

  4. [OK] をクリックし、パイプライン構成ファイルを保存します。

  5. インターネット インフォメーション サービス (IIS) をいったん停止してもう一度開始するか、Global.asa ファイルを修正してサービスの停止と再開を実行させるようにします。注文処理パイプラインが実行されると、パラメータとして指定した名前を持つファイルが DumpOrder によって書き込まれます。

関連項目

Scriptor

Scriptor コンポーネントを構成する


購入確認のメールを送信する

ここでは、パイプライン コンポーネントを追加して、新しい注文を受けたときに注文確認のメールが自動的に送信されるようにする手順について説明します。ユーザーが自分のプロファイルを入力するときに、メール アドレスの入力が必須になっていることを前提としています。このメール アドレスはユーザー情報と共に格納されるため、注文フォームで利用することができます。

この例では、確認メールの書式を次のようにします。

Subject: Order Confirmation

Thank you for shopping at our store. Your order is confirmed.

Tracking number: 93LFF5XNE9SK2TVX00L1R0D9N7

Total purchase: $57.25

ここでは、次のトピックについて説明します。

手順 1 : MessageManager オブジェクトにテキスト文字列を追加する

手順 2 : 電子メール メッセージの書式を設定するスクリプトを作成する

手順 3 : パイプラインに Scriptor コンポーネントを追加する

手順 4 : パイプラインに SendSMTP コンポーネントを追加する

手順 1 : MessageManager オブジェクトにテキスト文字列を追加する

ここでは、MessageManager オブジェクトにメッセージ テキストを追加します。テキストはスクリプト内に文字列として記述することができるため、この手順は厳密に言うと必要ではありませんが、MessageManager オブジェクトを使うとサイトのすべてのテキストを一元的に取り扱うことができます。このため、後で他の言語のサポートを簡単に追加できます。必要なメッセージを MessageManager オブジェクトに追加するには、次の操作を行います。

  1. メモ帳などのテキスト エディタで、Retail サイトの Global.asa ファイルを開きます。Global.asa ファイルは、通常は C:\Inetpub\wwwroot\retail に保存されています。

  2. MessageManager 文字列のリストの最後にある Main 呼び出しの後に、次の行を追加します。
Dim oMessageManager
Set  oMessageManager = Server.CreateObject("Commerce.MessageManager")
Call oMessageManager.AddLanguage("usa", &H0409)
Call oMessageManager.AddLanguage("FRA", &H040c)
Call oMessageManager.AddLanguage("ENC", &H1009)
oMessageManager.defaultLanguage = "usa"
Call oMessageManager.AddMessage("email_subject", "Order Confirmation")
Call oMessageManager.AddMessage("email_body", "Thank you for shopping at our store. Your order is confirmed. ")
Call oMessageManager.AddMessage("email_tracking", "Tracking number: ")
Call oMessageManager.AddMessage("email_total", "Total purchase: ")

手順 2 : 電子メールメッセージの書式を設定するスクリプトを作成する

Global.asa ファイルに適切なコードを追加したら、メール メッセージの書式を設定するスクリプトを作成します。このスクリプトは Scriptor コンポーネントで使われます。このスクリプトには、パイプラインの後のコンポーネントがメールを送信できるように、件名 (subject) とメッセージ本文テキストを注文フォームに追加する処理を記述します。

<ドライブ名>:\Inetpub\wwwroot\<サイト名>\pipeline ディレクトリに Email.vbs という名前のファイルを作成します。メモ帳などのテキスト エディタを使って、このファイルの中に次のスクリプトを入力してください。コピーしてもかまいません。

Function mscsexecute(config, orderform, context, flags)
    Dim oMessageManager, oDataFunctions
    Set oMessageManager = context.MessageManager
    Set oDataFunctions = context.DataFunctions

    orderform.[_email_subject] = _
              oMessageManager.GetMessage("email_subject")
    orderform.[_email_body] = _
              oMessageManager.GetMessage("email_body") _
              & chr(10) & chr(13) _
              & oMessageManager.GetMessage("email_tracking") _
              & orderform.[order_id] _
              & chr(10) & chr(13) _
              & oMessagemanager.GetMessage("email_total") _
              & oDataFunctions.Money(CLng(orderform.[_total_total]))
    mscsexecute = 1
End Function

パイプラインの Scriptor コンポーネントによってこのスクリプトが実行されると、注文フォームに新しいフィールドが 2 つ追加されます。電子メールの件名 (subject) 行として使われる _email_subject と、メールの本文として使われる _email_body です。

上のスクリプトは、MessageManager オブジェクトから適切なメッセージを取得し、その文字列をお問い合わせ番号 (order_id) や合計金額 (_total_total) などの注文フォーム内の値と連結して、メールの件名と本文を作成します。

mscsMessagemanager.GetMessage("email_tracking") & orderform.[order_id]

上のコードによって、メール本文の次の部分が生成されます。

Tracking number: 93LFF5XNE9SK2TVX00L1R0D9N7

合計代金を適切な国または地域の通貨で表記するために、DataFunctions.Money メソッドを使って、注文フォームに格納されている数値形式からテキストに変換しています。

上のスクリプトでは MessageManager と DataFunctions の両方のオブジェクトのメソッドを使っているため、最初にこれらのオブジェクトへの参照を作成しています。これらの参照は PipeContext ディクショナリから提供され、パイプラインに引数として渡されます。

関数の最後は次のスクリプトで終了しています。このスクリプトは、パイプライン内のコンポーネントが正常に実行されたことを示しています。

mscsexecute = 1

注

  • 電子メール フィールドが省略可能になっているサイトでは、SendSMTP コンポーネントによって電子メールが送信されないようにする必要があります。SendSMTP コンポーネントを無効にするには、メールの "To" (宛先) フィールドに "None" というテキストが入力されるようにします。Email.vbs スクリプトでは、メールの宛先が入力されているかどうかを確認することが可能です。ユーザーがメールの宛先を入力していない場合は、Email.vbs スクリプトによって "None" というテキストが入力されます。

手順 3 : パイプラインに Scriptor コンポーネントを追加する

OPP の中で Email.vbs スクリプトを実行するには、次の手順に従って、Scriptor コンポーネントを小売りの購入パイプライン構成に追加する必要があります。

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. Purchase.pct テンプレート、または使用しているサイトの小売りの購入パイプラインを開きます。稼働中のサイトで使われるパイプラインは、通常は C:\Inetpub\wwwroot\<サイト名>\pipeline に格納されています。

  3. [受注] ステージを開きます。

  4. [受注] ステージの最後のコンポーネントを右クリックします。受注ステージにコンポーネントが存在しない場合は [受注] ステージ自体を右クリックします。

  5. [コンポーネントの挿入] をポイントし、[後] をクリックします。

  6. [コンポーネントの選択] ダイアログ ボックスの [Scriptor] をクリックし、[OK] をクリックします。

    受注ステージに Scriptor コンポーネントが追加されます。

  7. Scriptor コンポーネントのアイコンをダブルクリックします。

  8. [コンポーネントのプロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [スクリプト実行エンジン] | [VBScript] をクリックします。
    [ソース] | [外部ファイルに記述] をクリックします。
    [ファイル名] | [参照] をクリックして Email.vbsファイルの場所を指定します。または Email.vbs ファイルのパスを入力します。

  9. [コンポーネントのプロパティ] タブで、[ラベル] ボックスの内容をわかりやすいものに変えます。たとえば、「Email.vbs (購入確認メールの書式設定スクリプト)」と入力します。

  10. [OK] をクリックしてプロパティ ページを閉じます。

手順 4 : パイプラインに SendSMTP コンポーネントを追加する

ここでは、小売りの購入パイプライン構成に SendSMTP コンポーネントを追加します。

  1. パイプライン エディタで、「手順 3 : パイプラインに Scriptor コンポーネントを追加する」で追加した Scriptor コンポーネントを右クリックします。

  2. [コンポーネントの挿入] をポイントし、[後] をクリックします。

  3. [コンポーネントの選択] ダイアログ ボックスの [SendSMTP] をクリックし、[OK] をクリックします。

  4. [SendSMTP] コンポーネントまたはコンポーネントのアイコンをダブルクリックします。

    [コンポーネントのプロパティ] ダイアログ ボックスが表示されます。

  5. [コンポーネントのプロパティ] ダイアログ ボックスの [SMTP の送信] タブで、次の操作を行います。
    項目 | 操作
    [差出人 (必須)] | メールを送信するコンピュータの電子メール アカウントを入力します。
    [SMTP ホスト (必須)] | メールの送信に使われる、稼働中の SMTP ホストの名前を入力します。
    [宛先 (必須)] | 「_shopper_email」と入力します。
    [cc] | 空白のままにします。
    [件名] | 「_email_subject」と入力します。
    [メッセージ本文] | 「_email_body」と入力します。
    [メッセージ本文は以下を含みます] | メールの内容に応じて、3 つの選択肢の中から 1 つを選択します。たとえば [テキスト] を選択します。

    注文フォーム オブジェクト内にあるこれらの値は、メールの書式を設定するために使われます。[宛先 (必須)] ボックスの _shopper_email は、注文フォームに追加されたユーザー情報の一部です。[件名] ボックスの _email_subject と [メッセージ本文] ボックスの _email_body の値は、Email.vbs スクリプトによって注文フォームに追加されます。

  6. [コンポーネントのプロパティ] ダイアログ ボックスの [SendSMTP テスト] タブで、次の操作を行います。
    項目 | 操作
    [テスト メッセージの送信先アドレス] | テスト メッセージの送信先メール アドレスを入力します。

  7. [テスト メールの送信] をクリックします。

    指定された受信者の受信トレイにテストの電子メール メッセージが表示されます。

  8. [コンポーネントのプロパティ] タブの [ラベル] ボックスに説明を入力します。

  9. [OK] をクリックしてプロパティ ページを閉じます。

  10. [ファイル] メニューの [名前を付けて保存] をクリックします。

  11. [名前を付けて保存] ダイアログ ボックスで、ファイルの保存先を参照し、[保存] をクリックします。

  12. [ファイル] メニューの [終了] をクリックします。

サイトを再び読み込むと、Global.asa ファイルに加えた変更が有効になります。

注

  • コンポーネントをパイプラインに追加する場合は、コンポーネントを配置する順序を考慮に入れてください。電子メールによる確認を行う場合、いったん SendSMTP コンポーネントによってメールが正常に送信されると、後に続くパイプライン コンポーネントで処理が失敗したときでもそのメールを撤回することはできません。このため、メール コンポーネントはパイプライン構成の最後に配置します。そのようにすることで、ほかのコンポーネントがすべて正常に実行された場合にのみ電子メールが送信されるようになります。

テンプレートを利用する

応答メールの内容が複雑な場合は、テンプレートを利用してメール メッセージの本文を生成することをお勧めします。このコンポーネントでは、注文フォームの値とテンプレート ファイルのテキストが結合されます。

テンプレートを利用するには、件名 (subject) の書式を設定するスクリプトと、数値を表示可能なテキスト形式に変換するスクリプトを作成します。次のスクリプトではメッセージ本文は生成されません。次のファイル (Email.vbs) は、Scriptor コンポーネントに読み込まれます。

Function mscsexecute(config, orderform, context, flags)
    Dim mscsDataFunctions
    Set mscsDataFunctions = context.DataFunctions

    orderform.[_email_subject] = "Order Confirmation"
    orderform.[_email_total] = mscsDataFunctions.Money(CLng(orderform.[_total_total]))
    mscsexecute = 1
End Function

次に、テンプレート ファイルを作成します。この例では、テンプレート ファイルに Confirm_Template.vbs という名前を付けて <ドライブ名>:\Inetpub\wwwroot\<サイト名>\pipeline ディレクトリに配置することにします。

Thank you for shopping at our store. Your order is on its way.

Tracking number: <%%= order_id %%>
<%% Dim nItemcount
    nItemCount = Items.Items.count
if (nitemcount > 0) then
    dim iItem,Item
    for iItem = 0 to nitemcount - 1
    Set Item = Items.Items.Item(iItem) %%>
<%%= item.quantity %%> <%%= item.[_product_name] %%> <%%
    next
end if  %%>

Total purchase: <%%= [_email_total] %%>

パイプライン エディタを使って、受注ステージの Scriptor コンポーネントの直後に MakePO コンポーネントを挿入します。[テンプレート ファイル名] ボックスで、作成したテンプレート ファイルの名前 (Confirm_Template.exe) を指定します。[出力プロパティ名] ボックスには _email_body と指定します。MakePO コンポーネントが実行されると、テンプレート テキストと、テンプレートのコマンドで指定された注文フォーム上の値とがマージされ、その結果は注文フォームの名前と値の組み合わせ _email_body に書き込まれます。

「手順 4 : パイプラインに SendSMTP コンポーネントを追加する」の手順に従って、MakePO コンポーネントの後に SendSMTP コンポーネントを挿入します。SendSMTP コンポーネントが実行されると、Scriptor コンポーネントで生成された件名テキストと、MakePO コンポーネントで生成されたメッセージ本文が使われます。

次の文章は、このテンプレートによって生成されたメッセージ本文の例を示しています。

Thank you for shopping at our store. Your order is on its way.

Tracking number: 8BMKQ3NHKES12M9D00L1R0D8N7

1 Plastic Commuter Mug

Total purchase: $14.28


Scriptor コンポーネントを使う

Scriptor コンポーネントを使うと、パイプラインにコード モジュールを組み込むことができます。挿入するコード モジュールは、Microsoft Visual Basic Scripting Edition (VBScript) で作成します。Scriptor コンポーネントでは、OrderForm オブジェクトやパイプライン コンテキスト情報にアクセスしたり、他のオブジェクトを作成したりできるほか、他のパイプラインを実行することも可能です。さらに、Scriptor コンポーネントでは構成パラメータがサポートされているため、注文処理パイプライン (OPP) 用のカスタム コンポーネントを作成する手段としては最適です。

Scriptor コンポーネントをパイプラインに追加したらンポーネントのプロパティ] ダイアログ ボックスを使ってコンポーネントの構成を行います。[コンポーネントのプロパティ] ダイアログ ボックスの使い方の詳細については、「Scriptor コンポーネントを構成する」を参照してください。

Scriptor メソッド

パイプライン エディタで Scriptor コンポーネントのプロパティ ページを表示したら、[ダイアログ内に記述] をクリックし、[編集] をクリックします。編集ウィンドウが開き、Scriptor コンポーネントで使用可能な 3 つのルーチンが表示されます。

'The following entry points are available (shown in VBScript format):

function MSCSExecute(config, orderform, context, flags)

    MSCSExecute = 1

end function

sub MSCSOpen(config)

end sub

sub MSCSClose()

end sub

これらのルーチンのことを、Scriptor コンポーネントの "エントリ ポイント" と呼びます。Visual Basic オブジェクトや Microsoft ActiveX コントロールの "イベント ハンドラ" と同様のものと考えることができます。これらのルーチンの中に、タスクに応じたスクリプト コードを入力します。注文処理パイプライン (OPP) によって Scriptor コンポーネントが実行されると、そのコードが実行されます。

MSCSOpen サブルーチンに記述したスクリプトは、Scriptor コンポーネントが作成されると直ちに実行されます。MSCSExit サブルーチンは、Scriptor コンポーネントが破棄された後に実行されます。MSCSExecute 関数は、MSCSOpen サブルーチンによる処理の後、かつ MSCSExit サブルーチンによる処理の前に呼び出されます。

既定の Scriptor コンポーネントを構成する 3 つのエクスポートのうち、必須なのは MSCSExecute 関数のみです。次に、Scriptor コンポーネントからこの関数に渡されるパラメータについて説明します。

  • config : スクリプトのための構成 Dictionary です。ここに記録される情報は次のとおりです。
    名前 | 値
    <ユーザー定義の構成パラメータ> | パラメータ値です。たとえば、Scriptor コンポーネントのプロパティ ページの [パラメータ (名前=値; 名前=値...)] ボックスに「tax=1」と入力すると、tax の名前と値の組み合わせが Configuration ディクショナリに表示されます。
    script_type | スクリプトが内部のものであるか、外部のものであるかを識別します。内部の場合は script_type に INTERNAL という値が指定されます。外部の場合は EXTERNAL という値が指定されます。
    script_text | コンポーネントのスクリプト全体が含まれます。
    script_name | 実行されるスクリプトを含め、ファイルの完全修飾パスが含まれています。script_type が INTERNAL である場合は、この名前と値の組み合わせには値が含まれません。
    engine_prog_id | スクリプトを解釈するために使われるスクリプト実行エンジンを識別します。使用可能な値は VBScript と JScript です。

  • orderform : パイプライン オブジェクトの Execute メソッドに渡す OrderForm オブジェクトです。

  • context : パイプライン オブジェクトの Execute メソッドに渡す Context ディクショナリです。

  • flags : パイプライン オブジェクトの Execute メソッドに渡すフラグです。


ExecuteProcess コンポーネントを使う

ExecuteProcess コンポーネントは、指定された実行ファイルを実行すると共に、指定された引数をその実行ファイルに渡します。この処理では、ユーザー インターフェイス要素はいっさい表示しないでください。このコンポーネントは、通常は受注ステージで実行しますが、他のステージでも実行可能です。

関連項目

ExecuteProcess


コンポーネントの調整

Commerce Server 2000 のパイプライン コンポーネントは直線的に実行されていくため、各パイプライン コンポーネント間で一定の調整が必要になります。コンポーネントの調整が重要になるのは、同一のステージに複数のコンポーネントが存在し、かつ、そのうちの一部しか実際には実行されない場合です。これには、実際に実行されるコンポーネントが Web サイト ユーザーのアクションによって決まる場合などがあります。たとえば、電子マネーによる支払いを実装するコンポーネントと、クレジット カードに請求するコンポーネントが支払いステージに含まれているとします。この場合、実行する必要があるのはユーザーの要求に対応するコンポーネントのみです。ユーザーがクレジット カードによる支払いを希望している場合、電子マネー コンポーネントによる支払いは実行されないようにする必要があります。

Commerce Server のパイプライン アーキテクチャでは、このような複数択一コンポーネントが同一ステージに存在できるように、特定のステージのコンポーネントについては調整を行う必要があります。Commerce Server 2000 のコンポーネントはこの規則に従っています。独自のコンポーネントを作成する場合は、コンポーネントがこの規則に従っているかどうかについて、特に注意してください。

新しいコンポーネントを作成する場合は、次の点に注意してください。

  • あるパイプライン コンポーネントが計算することになっている値が、そのコンポーネントの実行が開始された時点で既に設定済みであった場合、コンポーネントはすぐに終了します。たとえば、ユーザーがクレジット カードによる支払いを選択し、クレジット カード コンポーネントが電子マネー コンポーネントの前に実行された場合、クレジット カード コンポーネントはクレジット カードに payment_method キーを設定します。電子マネー コンポーネントが実行されても、payment_method キーが設定されているためコンポーネントは終了します。

  • コンポーネントは、ステージで指定されたタスクが実行できない、または実行が適切でないと判断した場合、そのステージのディクショナリ エントリをそのままにしてください。payment_method キーは、支払いステージでよく使われる apply ディクショナリ キーです。コンポーネントの実行が継続されるのは、payment_method キーの値が正しく設定されている場合に限られます。たとえば、ユーザーがクレジット カードによる支払いを選択した場合、クレジット カード コンポーネントは payment_method キーを "credit_card" に設定します。その後に電子マネー コンポーネントが実行されると、payment_method キーが電子マネーに設定されているかどうかが確認されます。支払い方法キーが電子マネーに設定されていないと判断されたときは、コンポーネントの以後の部分は適用しないようにします。つまり、ユーザーに電子マネーで請求が行われることはありません。

コンポーネントの調整が重要になるのは、次のステージです。

  • 送料 : 下位互換コンポーネントを利用する場合は、コンポーネントの調整が重要になります。Commerce Server の新しい複数発送アーキテクチャを使う場合には、通常は調整の必要はありません。_cy_shipping_total キーの調整を行う必要があります。shipping_method キーが適用キーです。

  • 手数料 : _cy_handling_total キーの調整を行う必要があります。shipping_method キーが適用キーです。

  • 税 : このステージは調整を行う必要があります。ただし、パイプラインに組み込む税コンポーネントは 1 つだけにすることをお勧めします。税キーを 1 つにしておけば、ビジネス デスクによる管理が容易になります。調整対象のキーは _cy_tax_total です。適用キーは country キーです。

  • 支払い : payment_method キーが調整対象のキーで、適用キーも兼ねています。

パイプライン コンポーネント作成の詳細については、「パイプライン コンポーネントを構築する」を参照してください。


基準フィールドを指定する

注文処理パイプライン コンポーネントの多くは、基準フィールドを使って適用レートを決定します。次の表は、基準フィールドで使用できる値を示しています。

基準フィールドのプレフィックス | 説明
order.fieldname | 指定されたフィールドの値です。fieldname は注文フォームにあるプロパティです。
sum.fieldname | 品目ごとの、指定されたフィールドの値の合計です。fieldname は品目リストにあるプロパティです。
sumq.fieldname | 品目ごとの、指定されたフィールドの値の合計です。fieldname は、品目リストにあるプロパティをその品目の数量で乗算したものです。
count | 注文フォーム内の品目の数です。各品目の数量とは別に計算されます。

次の表は、[基準フィールド] ボックスで有用ないくつかの値を示しています。

[基準フィールド] の例 | 結果の値
order._oadjust_subtotal | 注文フォーム上の代金です。
sum.quantity | 数量の合計 (注文品目の合計数) です。
sum._oadjust_adjustedprice | 調整済み価格の合計です。
sumq._iadjust_currentprice | 現在価格の合計に、注文されたすべての品目の数量を掛けた値です。
sumq._product_weight | 注文の合計重量です。商品テーブルに weight 列が存在し、QueryProdInfoADO コンポーネントによって使われるクエリにこのフィールドが含まれていることが前提となります。

たとえば、sumq._product_weight キーが指定され、2 つの品目を含む注文があるとして、そのうちの 1 つの重量が 2 ポンドで数量が 3、もう 1 つの重量が 4 ポンドで数量が 1 である場合、基準値は 10 です。


注文処理コンポーネントのリファレンス

次のコンポーネントは、注文処理パイプライン (OPP) の中でよく実行されるものです。

  • DBOrderPromoADO

  • DefaultHandlingCy/DefaultHandling

  • DefaultItemPriceCy/DefaultItemPrice

  • DefaultOrderSubTotalCy/DefaultOrderSubTotal

  • DefaultPayment

  • DefaultShippingCy/DefaultShipping

  • DefaultShopperInfo

  • DefaultTaxCy/DefaultTax

  • DefaultTotalCy/DefaultTotal

  • ExecuteProcess

  • FixedHandling

  • FixedShipping

  • FlagInventory

  • ItemPromo

  • LinearHandling

  • LinearShipping

  • LocalInventory

  • MakePO

  • MoneyConverter

  • OrderDiscount

  • POtoFile

  • QueryCatalogInfo

  • QueryProdInfoADO

  • RequiredHandlingCy/RequiredHandling

  • RequiredItemAdjustPriceCy/RequiredItemAdjustPrice

  • RequiredItemPriceCy/RequiredItemPrice

  • RequiredOrderAdjustPriceCy/RequiredOrderAdjustPrice

  • RequiredOrderCheck

  • RequiredOrderInitCy/RequiredOrderInit

  • RequiredOrderSubtotalCy/RequiredOrderSubtotal

  • RequiredPayment

  • RequiredProdInfo

  • RequiredShippingCy/RequiredShipping

  • RequiredTaxCy/RequiredTax

  • RequiredTotalCy/RequiredTotal

  • SaleAdjust

  • SampleRegionalTax

  • SaveReceipt

  • Scriptor

  • SendSMTP

  • ShippingDiscountAdjust

  • ShippingMethodRouter

  • SimpleCanadaTax

  • SimpleJapanTax

  • SimpleUSTax

  • SimpleVATTax

  • SQLItemADO

  • SQLOrderADO

  • StepwiseShipping

  • TableHandlingADO

  • TableShippingADO

  • ValidateCCNumber


ダイレクト メーラー パイプライン

Commerce Server ダイレクト メーラー プログラム (Dmlrun.exe) は、パイプラインを使って、受信者のリストを処理します。パイプラインに新しいコンポーネントを追加したり、コンポーネントを基幹業務システムに統合したり、そのコンポーネントをサード パーティが供給するコンポーネントと交換することができます。

ここでは、次のトピックについて説明します。

  • ダイレクト メーラー パイプラインについて : ダイレクト メーラー パイプラインの機能と構造について説明します。

  • ダイレクト メーラー パイプラインのステージとコンポーネント : ダイレクト メーラー パイプラインの個々のステージと、それらのステージで最もよく使われるコンポーネントについて説明します。

  • ダイレクト メーラー パイプラインの使い方 : ダイレクト メーラー パイプラインの使い方について説明します。

  • ダイレクト メーラー コンポーネントのリファレンス : ダイレクト メーラー パイプラインで使われるパイプライン コンポーネントの一覧を示します。


ダイレクト メーラー パイプラインについて

Commerce Server ダイレクト メーラー プログラム (Dmlrun.exe) は、パイプラインを使って、受信者のリストを処理します。通常、ダイレクト メーラー パイプラインは、製品で提供されているものをそのまま使います。ただし、独自のまたはサード パーティのコンポーネントを追加して、パイプラインの機能を拡張することができます。詳細については、「パイプライン コンポーネントを構築する」を参照してください。

サーバーにかかる負荷のために、ダイレクト メーラー サービスは別のサーバーにインストールすることを推奨します。ダイレクト メーラーの実行については、「ダイレクト メーラーの実行」を参照してください。

ここでは、次のトピックについて説明します。

  • ダイレクト メーラー パイプラインのステージとコンポーネント : ダイレクト メーラー パイプラインの各ステージのコンポーネントについて説明します。


ダイレクト メーラー パイプラインのステージとコンポーネント

ダイレクト メーラー パイプラインは各種のコンポーネントを実行して、受信者の選別、電子メールのパーソナライズ、およびパーソナライズした電子メールの送信を行います。次の表は、パイプラインのステージの一覧です。

ステージ | 説明
スロットル | ダイレクト メーラーの処理速度を制御します。
受信者の前処理 | 受信者についてのデータを検査します。
受信者のフィルタ | 受信者リストの追加のフィルタ処理を行います。
cookies 作成 | パーソナライズしたコンテンツの生成に使う cookie を作成します。ダイレクト メーラーは Web サーバーを使ってコンテンツを生成します。
電子メール作成 | メッセージを作成し、書式設定します。
電子メール送信 | メッセージを送信します。
受信者の後処理 | ダイレクト メーラー データベースを更新して送信済みのメッセージにマークを付けたり、必要に応じて適切なエラー メッセージを作成します。

スロットル ステージ

スロットル ステージでは、パイプラインがダイレクト メール メッセージを処理する速度を制御します。これにより、Simple Mail Transfer Protocol (SMTP) サーバーの負荷が制御されます。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
ThrottleDMLPerformance | ミリ秒で指定された時間だけ待機します。ダイレクト メーラー プログラム Dmlrun.exe が、適切な配信率を維持するために必要な遅延を計算します。Dmlrun.exe は、Context ディクショナリを通じて、この遅延を ThrottleDMLPerformance コンポーネントに渡します。

受信者の前処理ステージ

受信者の前処理ステージでは、受信者アドレスの存在などについてデータを確認します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
VerifyRecipientData | VerifyRecipientData コンポーネントは、パイプライン ディクショナリの複数の値を検査し、受信者の値を確認します。検査が 1 つでも失敗すると、rcp_bypass が True に設定され、パイプラインの以降のコンポーネントはその受信者をスキップします。

受信者のフィルタ ステージ

受信者のフィルタ ステージでは、潜在的な電子メール受信者に対する追加のフィルタリングを実行できます。Commerce Server 2000 では、このステージには、Scriptor コンポーネント以外のコンポーネントは含まれていません。ただし、フィルタ処理を実行する独自のカスタム コンポーネントを追加できます。詳細については、「パイプライン コンポーネントを構築する」を参照してください。

このステージでは、脱退リストに照らして受信者名をテストできます。ただし、メール ジョブを実行する前にリスト マネージャ モジュール内でメーリング リストから脱退者名を削除すると、パフォーマンスが向上することがあります。

このステージ用に記述するコンポーネントでは、Order ディクショナリ内の rcp_bypass キーを確認し、必要に応じて設定しなくてはなりません。パイプラインの以降のコンポーネントでその受信者をスキップする必要がある場合は、記述するコンポーネントで rcp_bypass キーを True に設定します。

cookies 作成ステージ

このステージでは、パーソナライズしたメッセージを生成するために Active Server Page で使う cookie を作成するためのデータを収集します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
CreateUPMCookie | Order ディクショナリと Context ディクショナリの情報を統合して、情報を含む Order ディクショナリ内に Cookie ディクショナリを作成します。

電子メール作成ステージ

電子メール作成ステージでは、電子メール メッセージの本文を作成し、アタッチメントを追加します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
ComposeDMLMessage | ダイレクト メール電子メール メッセージの本文を作成します。電子メールがパーソナライズされている場合は、Cookie ディクショナリのデータから cookie を生成します。
AddAttachments | Microsoft Windows 2000 の Collaboration Data Objects (CDO) を使ってメッセージにアタッチメントを追加します。

電子メール送信ステージ

電子メール送信ステージでは、ダイレクト メール電子メール メッセージの本文を検査し、メッセージを送信します。

次の表は、このステージに関連するコンポーネントを示しています。

コンポーネント | 説明
VerifyMessageBody | このコンポーネントは、ダイレクト メール電子メール メッセージの本文を確認するために使います。
SendPrecomposedMessage | このコンポーネントは、パイプラインの初期のステージで作成されたダイレクト メール電子メール メッセージを送信するために使います。

受信者の後処理ステージ

受信者の後処理ステージでは、データベースへの情報の記録など、受信者に対する追加の処理を実行できます。Commerce Server 2000 では、このステージには、Scriptor コンポーネント以外のコンポーネントは含まれていません。ただし、独自のカスタム コンポーネントを追加できます。詳細については、「パイプライン コンポーネントを構築する」を参照してください。


ダイレクト メーラー パイプラインの使い方

カスタム ASP ページを記述すると、パーソナライズしたダイレクト メール電子メール メッセージを作成できます。同様に、Commerce Server ダイレクト メーラー パイプラインにサード パーティのコンポーネントやカスタム コンポーネントを追加できます。これらのコンポーネントで実装する必要があるのは、標準のパイプライン コンポーネント インターフェイスだけです。ただし、それらのコンポーネントで、パイプライン内のコンポーネントが使うディクショナリ キーを認識できることが必要です。

ここでは、次のトピックについて説明します。

  • ダイレクト メールのコンテンツを作成する : パーソナライズしたダイレクト メール電子メールの送信で使う ASP ページの記述方法について説明します。

  • ダイレクト メールからの脱退を実装する : ユーザーが今後のメール送信を辞退するためのリンクをダイレクト メール電子メール メッセージで提供する方法について説明します。

  • ダイレクト メーラー パイプラインのディクショナリの値 : ダイレクト メーラー パイプラインのディクショナリ内で使われるキーの一覧を示します。


ダイレクト メールのコンテンツを作成する

Commerce Server 2000 のダイレクト メール モジュールでは、顧客情報とカスタム Active Server Pages (ASP) を使って、ターゲットを絞った電子メール メッセージを送信できます。ダイレクト メーラーは Web ブラウザと同様に動作して、cookie から顧客のユーザー ID を取得し、プロファイル サービスを使ってユーザー プロファイルを取得し、最後にページをパーソナライズします。ただし、ダイレクト メーラーでは、コンテンツは Web ページではなく電子メール メッセージとして表示されます。

次の例 (ServiceReminder.asp) を使って、ダイレクト メール コンテンツを作成できます。実装すると、この ASP ページは、パーソナライズした電子メール メッセージを送信して、新しい商品を見にWeb サイトに来るよう、それぞれの顧客を促します。この ASP ファイルには、顧客がメーリング リストからの削除を希望した場合の脱退用のリンクもあります。

この例では、AuthManager オブジェクトからユーザー ID を取得し、プロファイル サービスから UserObject プロファイルを取得します。この例でパーソナライズを正しく機能させるには、すべてのエントリについて電子メール アドレスとユーザー ID の両方をメーリング リストに含める必要があります。メーリング リストにユーザー ID がない場合、メールは送信されません。パーソナライズ フラグが有効にされていない場合、メールは送信されません。メーリング リストの作成の詳細については、「メーリング リストを作成する」を参照してください。

<%@ Language=VBScript %>
<%

Option Explicit
Response.AddHeader "pragma", "no-cache"
Response.Expires = 0
%>
<html>
<head>
</head>
<div class=Section1>
<%
Dim objAuthManager
Dim objUPM
Dim objProfile
Dim strUserID
Dim sCookieData

On Error goto 0

' Get User ID from AuthManager object.
SET objAuthManager = Server.CreateObject("Commerce.AuthManager")
objAuthManager.Initialize(Application("MSCSCommerceSiteName"))
if( Err.number <> 0 ) Then
   Response.Write "<P>AuthManager Failed to initialize</P>"
End If

If Request.Cookies("CampaignItemID") <> "" Then   ' Part of a Campaign
   strUserID = objAuthManager.GetUserID(1)
   if( Err.number <> 0 ) Then
      Response.Write "<P>Failed to get UserID</P>"
   End If
Else                     ' Not part of a Campaign
   ' The fix for being able to send personalized direct mail outside
   ' of a campaign is to toggle the comments on the two lines below.
   ' But please ensure that the web server that generates the
   ' personalized content is placed behind a firewall (since the user
   ' guid that is passed in not encrypted in this case).

   Err.Raise  &H80004005, , "Error: CampaignItemID was not specified"
   ' strUserID = Request.Cookies("MSCSProfile")
End If

' Get UserObject from profile Service
Set objUPM = Application("MSCSProfileService")

If (Err.Number <> 0) Then
  Response.Write "<P>Failed to create Commerce.ProfileService</P>"
End If

Set objProfile = objUPM.GetProfileByKey("User_ID", strUserID, "UserObject")

If (Err.Number <> 0) Then
  strErrMsg = "<P>User profile not found: " & strUserID & "</P>"
  Response.Write strErrMsg
End If

%>

<table border=1 cellspacing=0 cellpadding=0 bgcolor="#ffff99" style='background:
 #FFFF99;border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt;
 mso-padding-alt:0in 5.4pt 0in 5.4pt'>
 <tr>
  <td width=655 valign=top style='width:490.9pt;border:solid windowtext .5pt;
  padding:0in 5.4pt 0in 5.4pt'>
  <p class=MsoPlainText><span style='font-family:Tahoma;
    mso-fareast-font-family: "MS Mincho"'>
    From: E-mail Notifier<o:p></o:p></span></p>
  <p class=MsoPlainText><span style='font-family:Tahoma;
    mso-fareast-font-family:
    "MS Mincho"'>Sent: <% = Date() %><o:p></o:p></span></p>
  <p class=MsoPlainText><span style='font-family:Tahoma;
    mso-fareast-font-family:
    "MS Mincho"'>To: <% = objProfile.GeneralInfo.First_Name %><o:p> </o:p><% = objProfile.GeneralInfo.Last_Name %><o:p></o:p></span></p>
  <p class=MsoPlainText><span style='font-family:Tahoma;
    mso-fareast-font-family:
    "MS Mincho"'>Subject: </span><b><span style='font-size:12.0pt;
    mso-bidi-font-size: 10.0pt;font-family:Tahoma;
    mso-fareast-font-family:"MS Mincho";color:blue'>
    New product notice</span></b><span style='mso-fareast-font-family:
    "MS Mincho"'><o:p></o:p></span></p>
  </td>
 </tr>
</table>

<p class=MsoPlainText><b><span style='font-size:12.0pt;
    mso-bidi-font-size:10.0pt; mso-fareast-font-family:
    "MS Mincho";color:blue'><![if
    !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></b></p>

<p class=MsoPlainText><span style='font-family:Tahoma;
    mso-fareast-font-family:
    "MS Mincho"'>Dear <% = objProfile.GeneralInfo.First_Name
    %>,<o:p></o:p></span></p>

<p class=MsoPlainText><span style='font-family:Tahoma;
    mso-fareast-font-family:
    "MS Mincho"'><span style="mso-spacerun: yes">
    </span><o:p></o:p></span></p>

<p class=MsoPlainText><span style='font-family:Tahoma;
    mso-fareast-font-family: "MS Mincho"'>
    <span style="mso-spacerun: yes"> </span>We have added some exciting
    new products to our Web site. <o:p></o:p>
    <A HREF="<% =objAuthManager.GetUrl("default.asp", False, False)
    %>">Come see us today!</A>.<o:p></o:p></span></p>

<p class=MsoNormal style='mso-layout-grid-align:none;
    text-autospace:none'><span style='font-size:10.0pt;
    font-family:Arial;color:navy'>
    <![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></p>

<p class=MsoNormal style='mso-layout-grid-align:none;
    text-autospace:none'><span style='font-size:10.0pt;
    font-family:Arial;color:navy'><span style='mso-tab-count:
    1'> </span><o:p></o:p></span></p>

<p class=MsoPlainText><span style='mso-fareast-font-family:
    "MS Mincho"'>__________________________________________
    <o:p></o:p></span></p>

<p class=MsoPlainText><i><span style='font-size:8.0pt;
    mso-bidi-font-size:10.0pt; font-family:Verdana;
    mso-fareast-font-family:"MS Mincho"'>TO UNSUBSCRIBE: You
    have received this e-mail notifier as a result of your personal
    registration.<BR>To unsubscribe from this e-mail notifier, click
    the link below. <o:p></o:p></span></i></p>

<p class=MsoPlainText><i><span style='font-size:8.0pt;
    mso-bidi-font-size:10.0pt;
    font-family:Verdana;mso-fareast-font-family:"MS Mincho"'>
    <A HREF="<% On Error Goto 0
    Response.Write objAuthManager.GetUrl
        ("opt-out.asp", False, False, _
         Array("rcp_email", "campitem_id", "campitem_name"), _
         Array(CStr(objProfile.GeneralInfo.email_address),
         CStr(Request.Cookies("CampaignItemId")),
         CStr(Request.Cookies("CampaignItemName"))) _
        ) %>">Click here to opt-out of future
        mailings.</A><o:p></o:p></span></i></p>
</div>

</body>

</html>

この例を使うには、先にキャンペーンを作成する必要があります。詳細については、「ダイレクト メール キャンペーンを作成する」を参照してください。

[キャンペーン マネージャ <顧客> <キャンペーン> 新規 (ダイレクト メール)] 画面の [ダイレクト メールのプロパティ] セクションで、次の操作を行います。

項目 | 操作
[ダイレクト メール名] | ダイレクト メール ジョブの名前を入力します。
[送信元電子メール アドレス] | ダイレクト メールの送信元のアドレスを入力します。
[返信先電子メール アドレス] | 返信先が既定のアドレスと異なる場合に、返信先のアドレスを入力します。 特に指定しない限り、このボックスにはダイレクト メールの送信元のアドレスが入ります。
[メッセージの件名] | このダイレクト メール ジョブの件名を入力します。
[メッセージ本文を含むファイル パスまたは URL] | ダイレクト メール メッセージの表示に使う URL を入力します。たとえば、http://<host_name>/<site_name>/ServiceReminder.asp。
[アタッチメント] | 空のままにします。
[メーリング リスト] | このダイレクト メール キャンペーンで使用するメーリング リストをドロップダウン リストから選択します。このメーリング リストには電子メール アドレスおよび有効なユーザー ID が必要です。ほかの列は省略可能です。
[ユーザーごとにパーソナライズするダイレクト メール] | チェック ボックスをオンにします。
[メールの形式] | [MHTML] を選択します。
[コメント (メッセージには含まれない)] | 必要に応じてこのダイレクト メール ジョブに関するコメントを入力します。

ServiceReminder.asp コードをコマンド ラインから送信する場合は、次の行をコメントにする必要があります。

Err.Raise  &H80004005, , "Error: CampaignItemID was not specified"

さらに、次の行のコメントを外す必要があります。

' strUserID = Request.Cookies("MSCSProfile")

説明は、ServiceReminder.asp コードのコメントにあります。

テスト メッセージの送信の詳細については、「ダイレクト メール キャンペーンをテストする」を参照してください。


ダイレクト メールからの脱退を実装する

ダイレクト メール電子メールでは、少なくとも、受信者が今後のメール送信を辞退するための方法を必ず提供する必要があります。ダイレクト メールをどこから送信するかに応じて、メーリング リストに対する脱退リンクの働きは異なったものになります。

ビジネス デスクから送信するダイレクト メールの場合

アンパックしてビジネス デスク モジュールに関連付けられているサイトには、受信者の電子メール アドレス、キャンペーン項目 ID、およびキャンペーン名からなるクエリ文字列を受け取る ASP ページが含まれます。ビジネス デスクから送信されたダイレクト メール メッセージの脱退リンクをユーザーがクリックすると、ダイレクト メール送信元の特定のキャンペーンの脱退リストにそのユーザーが追加されます。そのユーザーが複数のキャンペーンのメーリング リストに含まれていた場合は、ダイレクト メールの送信元だったキャンペーン以外のすべてのキャンペーンから、引き続きダイレクト メールを受信します。

送信するダイレクト メール電子メールには、この ASP ページへのリンクを含めます。リンクのコードは次のようになります。

Click

<A HREF="http://mswaldofr/retail/opt-out.asp?rcp_email=mailuser8@passport.com&campitem_id=2&campitem_name=TestMail&MSCSProf"> here </A> if you do not wish to receive future mailings.

ユーザーが受け取る電子メールでは、"Click here if you do not wish to receive future mailings." というテキストが表示されます。

コマンド ラインから送信するダイレクト メールの場合

コマンド ラインから送信されるダイレクト メールは、どのキャンペーンにも関連付けられていません。したがって、脱退 ASP ページは、受信者の電子メール アドレスだけが含まれたクエリ文字列を受け取ります。コマンド ラインから送信されたダイレクト メール メッセージの脱退リンクをユーザーがクリックすると、そのユーザーはグローバル脱退リストに追加され、以降のすべてのメール送信から除外されます。

注

  • ビジネス デスクの [テスト メールの送信] ダイアログ ボックスを使ってダイレクト メールを送信した場合、受信者はそのサイトの脱退リストに入っていてもメールを受信します。ビジネス デスクの [テスト メールの送信] ダイアログ ボックスからダイレクト メール メッセージで送信された脱退リンクは、テスト メール メーリング リストから脱退リストを削除する ListManager オブジェクトを使いません。加えて、ユーザーが以前にキャンペーンの脱退リストに入っていなかった場合にテスト メール内の脱退リストをクリックすると、ユーザーは脱退リストに追加されます。

ダイレクト メールのサンプル コードに含まれている脱退リンクの詳細については、「ダイレクト メールのコンテンツを作成する」を参照してください。ダイレクト メールがコマンド ラインから送信されて、受信者が脱退リンクをクリックした場合、受信者はグローバル脱退リストに追加され、それ以降ダイレクト メールを受信しなくなります。ダイレクト メールがビジネス デスク モジュールから送信されて、受信者が脱退リンクをクリックした場合、受信者はキャンペーンの脱退リストに追加されます。その受信者が複数のキャンペーンのメーリング リストに含まれていた場合は、ほかのキャンペーンから引き続きダイレクト メールを受信します。


ダイレクト メーラー パイプラインのディクショナリの値

次の表は、Commerce Server ダイレクト メーラー パイプラインのディクショナリで使われているキーの一覧です。ほかのパイプラインと同様に、ダイレクト メーラー パイプラインは、Context (読み取り専用) ディクショナリと Order (読み取りと書き込み可能) ディクショナリの、２つのディクショナリを使います。

キー | ディクショナリ | 説明
Attachments | Order | アタッチメントをポイントする URL の SimpleList です。
campaign_item | Context | キャンペーン項目 ID です。
campaign_item_name | Context | キャンペーン項目の名前です。
cdo_config | Context | Collaboration Data Objects (CDO) 構成オブジェクト (CDO.Configuration) への参照です。
cdo_error | Order | 最新の CDO 処理が返すエラー文字列です (存在する場合)。エラーがない場合は Null が返されます
cdo_message | Context | CDO メッセージ オブジェクト (CDO.Message) への参照です。
cdo_result | Order | Microsoft Windows 2000 の最新の CDO 処理の結果コード (HRESULT)です。
Cookie | Order | cookie データを含むディクショナリです。
css_site | Context | サイト ID 文字列です。
default_formatting | Context | メッセージの既定の書式です。
default_locale | Order | 受信者用のロケール コード (rcp_locale) がない場合に使うロケール コードです。
default_url | Context | メールの内容を取得するために使用される URL です。
default_url_content | Context | default_url_isfile が True の場合は、default_url がポイントするファイルの内容です。
default_url_isfile | Context | 既定の URL がファイル パスであり、http:// パスではない場合に、Trueになります。
delay_msec | Context | メッセージ間の遅延で、ミリ秒の単位で表されます。
from_field | Order | メッセージの From (送信元) フィールドです。
messages_sent | Order | このパイプライン サイクルに送信されたメッセージの合計数です。
precomposed_body | Order | テキスト形式のメッセージ本文です。既定で空の文字列です。
rcp_bypass | Order | Boolean です。True の場合、コンポーネントは処理をバイパス (スキップ) します。
rcp_email | Order | 受信者の電子メール アドレスです。
rcp_formatting | Order | メッセージの書式です。
rcp_guid | Order | この受信者を一意に識別する GUID です。これはユーザー プロファイルから取得されます。
rcp_locale | Order | 受信者が使うロケール コードです。
rcp_personalize | Order | 数値です。この受信者のメッセージをパーソナライズするかどうかを示します。
rcp_url | Order | メールの内容を取得するために使用される URL です。default_url より優先されます。
rcp_url_content | Order | rcp_url_isfile が True の場合、rcp_url がポイントするファイルの内容です。
rcp_url_isfile | Order | コンテンツの URL (rcp_url) がファイルであり、http:// アドレスではない場合に、True になります。
replyto_field | Order | メッセージの Reply-to (返信先) フィールドです。
subj_field | Order | メッセージの Subject (件名) フィールドです。
use_precomposed_body | Order | Boolean です。True の場合、コンポーネントは precomposed_body キーに割り当てられたテキスト形式の本文からメッセージを作成します。
user_flags | Order | 確認対象のメッセージ要素を示すビット マスクです。現在は一番右のビットだけが使われています。


ダイレクト メーラー コンポーネントのリファレンス

ダイレクト メーラー パイプラインでは、一般に次のコンポーネントが実行されます。

  • AddAttachments

  • ComposeDMLMessage

  • CreateUPMCookie

  • SendPrecomposedMessage

  • ThrottleDMLPerformance

  • VerifyMessageBody

  • VerifyRecipientData


コンテンツ選択パイプライン

コンテンツ選択パイプラインはコンテンツ選択フレームワーク (CSF) の重要な部分です。コンテンツまたは割引の選択や、広告クリック スルーなどのイベントの記録に使われます。

ここでは、次のトピックについて説明します。

  • コンテンツ選択パイプラインについて : CSF 内でのコンテンツ選択パイプラインの役割について説明し、異なる形式のコンテンツ選択パイプラインを 2 種類紹介します。

  • コンテンツ選択パイプラインのステージとコンポーネント : コンテンツ選択パイプラインの個々のステージと、それらのステージで最もよく使われるコンポーネントについて説明します。

  • コンテンツ選択パイプラインの使い方 : Commerce Server サイト内でのコンテンツ選択パイプライン コンポーネントの使い方について説明します。

  • コンテンツ選択コンポーネント リファレンス : コンテンツ選択パイプラインで使われるパイプライン コンポーネントの一覧を示します。


コンテンツ選択パイプラインについて

コンテンツ選択パイプラインは、CacheManager オブジェクトや ContentSelector オブジェクトと共に使い、コンテンツ項目またはその他のカスタム コンテンツ (割引を含む) を選択します。

Microsoft Commerce Server 2000 の広告と割引の配信エンジンは、コンテンツ選択パイプラインを使って作成されています。違う種類のコンテンツを選択するために、独自のパイプラインを作成することができます。

コンテンツ選択アプリケーションごとに、2 つの異なるパイプラインが存在します。1 つ目のパイプラインは、表示されるコンテンツの選択を受け持ち、コンテンツ選択パイプライン (CSP) と呼ばれます。このパイプラインは、ContentSelection.pct パイプライン テンプレート ファイルに基づいています。2 つ目のパイプラインは、表示されたコンテンツに関連するイベントの処理を受け持ち、イベント処理パイプライン (EPP) と呼ばれます。このようなイベントの例として、広告に対するユーザー クリックや、ページに表示するために選択した広告に対するユーザー クリックなどがあります。このパイプラインは、EventProcessing.pct パイプライン テンプレート ファイルに基づいています。

注

  • コンテンツ選択パイプラインは割引の選択に使われますが、割引はコンテンツ選択パイプライン内では適用されません。割引は、注文処理パイプライン内の OrderDiscount パイプライン コンポーネントによって、注文に対して適用されます。

次の表は、CSP のステージと、それらのステージごとに提供されるパイプライン コンポーネントをアプリケーションごとに示します。

CSP のステージ | 広告アプリケーションのパイプライン コンポーネント | 割引アプリケーションの パイプライン コンポーネント
コンテキスト読み込み | InitCSFPipeline LoadHistory | InitCSFPipeline LoadHistory
フィルタ | FilterContent | FilterContent
初期スコア | AdvertisingNeedOfDelivery | 適用せず
スコア | HistoryPenalty EvalTargetGroups | ScoreDiscounts HistoryPenalty EvalTargetGroups
選択 | SelectWinners | SelectWinners
記録 | RecordHistory SaveHistory RecordEvent IISAppendToLog | RecordHistory SaveHistory RecordEvent IISAppendToLog
形式 | FormatTemplate | FormatTemplate

次の表は、EPP のステージと、それらのステージごとに提供されるパイプライン コンポーネントをアプリケーションごとに示します。

EPP のステージ | 広告アプリケーションの パイプライン コンポーネント | 割引アプリケーションの パイプライン コンポーネント
コンテキスト読み込み | なし | なし
記録 | RecordEvent IISAppendToLog | RecordEvent IISAppendToLog
形式 | なし | なし


コンテンツ選択パイプラインのステージとコンポーネント

ここでは、コンテンツ選択パイプラインとイベント処理パイプラインのステージとコンポーネントについて説明します。コンテンツ選択パイプラインは広告や割引などのカスタム コンテンツを選択するのに対し、イベント処理パイプラインは広告に対するユーザー クリックなどのイベントを処理します。

  • コンテンツ選択パイプライン: :コンテンツ選択パイプラインのステージとコンポーネントについて説明します。

  • イベント処理パイプライン : イベント処理パイプラインのステージとコンポーネントについて説明します。


コンテンツ選択パイプライン

コンテンツ選択パイプラインは、コンテンツの収集、フィルタ処理、スコア処理、および選択を行うコンポーネントを実行します。このパイプラインは、広告や割引の選択によく使われます。

コンテンツ選択パイプラインは次のステージで構成されます。

  • コンテキスト読み込みステージ

  • フィルタ ステージ

  • 初期スコア ステージ

  • スコア調整ステージ

  • 選択ステージ

  • 記録ステージ

  • 形式ステージ

コンテキスト読み込みステージ

このステージには、パイプラインの残りの部分の実行を準備するコンポーネントが含まれます。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
InitCSFPipeline | パイプラインの残りの部分で必要な値を初期化します。
LoadHistory | ユーザー プロファイルの履歴文字列、Active Server Pages (ASP) セッション コレクション内の項目、または cookie を取得します。

フィルタ ステージ

このステージには、コンテンツ リストをフィルタ処理または除去するコンポーネントが含まれます。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
FilterContent | 指定されたフィルタをコンテンツ リストに適用します。

初期スコア ステージ

このステージはコンテンツ項目ごとに初期スコアを設定します。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
AdvertisingNeedOfDelivery | 業務契約を満たすのに十分な頻度で広告が選択されるように、広告のスコアを設定します。

スコア調整ステージ

このステージには、各コンテンツ項目のスコアを調整するコンポーネントが含まれます。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
EvalTargetGroups | リスト内の項目ごとに式のリストを評価して項目の選択を調整することによって、特定のグループを広告、コンテンツ、または割引の対象にします。
HistoryPenalty | コンテンツ項目が選択された時期に基づいてペナルティを適用します。
ScoreDiscounts | 割引が現在のユーザーと最も関係が深くなるように、割引項目のスコアを調整します。

選択ステージ

このステージは、通常、1 つのコンポーネントを持ち、1 つ以上のコンテンツ項目を選択して返します。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
SelectWinners | 最終スコアに基づいて項目を選択します。

記録ステージ

このステージには、データベース、サーバー ログ ファイル、または履歴文字列に対して行われた選択を記録するコンポーネントが含まれます。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
IISAppendToLog | コンテンツ選択結果についての情報をインターネット インフォメーション サービス (IIS) ログ ファイルの QueryString フィールドに記録します。
RecordEvent | 選択されたコンテンツ項目(落札者)のイベント差分カウントをパフォーマンス ディクショナリに記録します。値は、項目の表示頻度を計算するために使われます。
RecordHistory | 落札したコンテンツ項目の識別子を履歴リスト文字列に記録します。
SaveHistory | ユーザー プロファイル オブジェクト、ASP セッション コレクション、または HTTP cookie のいずれかに履歴文字列を保存します。

形式ステージ

このステージには、選択された項目を、パイプラインを実行したページに返すために HTML または XML 形式にするコンポーネントが含まれます。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
FormatTemplate | 選択された項目のデータとそれらに関連付けられているテンプレートをマージして、書式化された文字列を作成します。これらは通常、ページで表示できる HTML 文字列です。


イベント処理パイプライン

イベント処理パイプラインは、特定のイベント (特定の広告に対するユーザー クリックなど) の発生を記録するコンポーネントを実行します。

イベント処理パイプラインは次のステージで構成されます。

  • コンテキスト読み込みステージ

  • 記録ステージ

  • 形式ステージ

コンテキスト読み込みステージ

Microsoft Commerce Server 2000 には、このステージのためのコンポーネントはありません。このステージは、CSF へのカスタム拡張や Commerce Server 2000 の将来的な機能拡張のために提供されています。

記録ステージ

このステージには、データベース、サーバー ログ ファイル、または履歴文字列に対して行われた選択を記録するコンポーネントが含まれます。

次の表に、このステージに関連するコンポーネントを示します。

コンポーネント | 説明
IISAppendToLog | コンテンツ選択結果についての情報を IIS ログ ファイルの QueryString フィールドに記録します。
RecordEvent | 選択されたコンテンツ項目(落札者)のイベント差分カウントをパフォーマンス ディクショナリに記録します。値は、項目の表示頻度を計算するために使われます。

形式ステージ

Microsoft Commerce Server 2000 には、このステージのためのコンポーネントはありません。このステージは、CSF へのカスタム拡張や Commerce Server 2000 の将来的な機能拡張のために提供されています。


コンテンツ選択パイプラインの使い方

Microsoft Commerce Server 2000 に含まれているコンテンツ選択パイプラインを使うには、CacheManager オブジェクトの設定と、ContentSelector オブジェクトに必要な情報が必要です。ただし、独自のコンテンツ選択パイプラインは、キャッシュするコンテンツのサイズに応じて CacheManager オブジェクトを使っても使わなくてもかまいません。CacheManager オブジェクトと ContentSelector オブジェクトを設定するコードについては、「コンテンツ選択オブジェクト」を参照してください。

コンテンツ選択パイプラインの動作は、パイプラインの追跡モードを有効にすると追跡できます。追跡モードでは、ContentSelector オブジェクトを使ってパイプラインに値を渡します。次の例に、CSO が ContentSelector オブジェクトである場合のコード行を示します。

oContentSelector.Trace=True

運用 Web サイトでコンテンツ選択パイプラインを実行する場合は、追跡モードを有効にしてはなりません。


コンテンツ選択コンポーネント リファレンス

コンテンツ選択パイプラインでは、一般に次のコンポーネントが実行されます。

  • AdvertisingNeedOfDelivery

  • EvalTargetGroups

  • FilterContent

  • FormatTemplate

  • HistoryPenalty

  • IISAppendToLog

  • InitCSFPipeline

  • LoadHistory

  • RecordEvent

  • RecordHistory

  • SaveHistory

  • ScoreDiscounts

  • SelectWinners

そのほかに、コンテンツ選択パイプラインでは、次のライタとキャッシュ ローダーが重要な役割を果たしています。

  • CSFLoadAdvertisements

  • CSFLoadDiscounts

  • CSFWriteEvents


プールされたパイプライン

プールされたパイプラインとは、パイプラインの速度を大幅に向上させる Commerce Server 2000 の機能です。Commerce Server 2000 のプールされたパイプラインは COM+ オブジェクト プーリングを利用し、読み込み速度および実行速度を向上させます。

ここでは、次のトピックについて説明します。

  • プールされたパイプラインについて : PooledPipeline オブジェクトおよび PooledTxPipeline オブジェクト、プール可能なコンポーネントおよびプール不可能なコンポーネントをプールされたパイプラインで実行する方法、およびデバッグを行う際の推奨事項について説明します。

  • プールされたパイプラインを管理する : プールされたパイプラインのコンポーネントのプロパティを変更してパイプラインのパフォーマンスを最大にする方法について、および Commerce Server ツールを使い、プールされたパイプラインのパフォーマンスを監視することについて説明します。

  • プール可能コンポーネント リファレンス : プール可能とタグが付けられたすべてのコンポーネントを一覧表示します。


プールされたパイプラインについて

Commerce Server 2000 には、2 つのプールされたパイプラインのオブジェクトがあります。1 つは非トランザクション パイプライン (PooledPipeline) 向けで、もう 1 つはトランザクション パイプライン (PooledTxPipeline) 向けです。これらの使用方法は、プールされないパイプライン オブジェクトの MtsPipeline および MtsTxPipeline と同等です。この 2 種類のパイプラインの違いは、プールされたパイプラインのオブジェクトは COM+ に登録され、オブジェクト プーリングを利用するという点です。

それぞれのプールされたパイプラインのオブジェクトは、パイプラインのテーブルを維持します。パイプラインを読み込むとき、プールされたパイプラインのオブジェクトは、まずそのパイプラインのテーブルを調べ、パイプラインが既に読み込まれているかどうかを確認します。パイプラインがまだ読み込まれていない場合、プールされたパイプラインのオブジェクトはパイプラインを読み込み、そのパイプラインの保護されたテーブルにエントリを追加します。Execute メソッドが呼び出されると、パイプラインはテーブルから取得され、実行されます。

プールされたパイプラインの個々のコンポーネントは、プール可能である場合、一度作成されるとそのパイプラインによってオブジェクト プールで保持されます。プール可能にするには、パイプライン コンポーネントをフリースレッドにする必要があり、状態情報を保持することはできません。Microsoft Visual Basic で記述されたパイプライン コンポーネントは、アパートメント スレッドで、プールすることはできません。プール不可能なコンポーネントでも、プールされたパイプライン内で実行できます。これらのコンポーネントは、Execute メソッドを呼び出すたびに作成されます。カスタムのプールされたパイプラインのコンポーネントを作成するには、Component Object Model (COM) カテゴリである CATID_POOLABLE をコンポーネントに追加することで、プールされるように設定します。

プールされたパイプラインはすべての新しいサイトで推奨されますが、デバッグ中は、古いパイプライン オブジェクトを使う必要があります。パイプラインは効率的にキャッシュされるため、パイプライン構成への変更は、Microsoft Transaction Server (MTS) またはインターネット インフォメーション サービス (IIS) が再起動されるまで有効にならない場合があります。MtsPipeline および MtsTxPipeline オブジェクトは、新しいパイプラインのデバッグに使うことができ、PooledPipeline または PooledTxPipeline オブジェクトは運用サイトで使うことができます。

注

  • Microsoft Application Center 2000 Component Load Balancing (CLB) を Commerce Server のプールされたパイプラインと共に使うことができます。セットアップ プログラムは、Commerce Server のパイプラインを COM+ パッケージとして登録します。CLB と共に使用するには、Microsoft 管理コンソール (MMC) のコンポーネント サービスで、パッケージの [アクティブ化の種類] を [ライブラリ アプリケーション] から [サーバー アプリケーション] に変更する必要があります。パイプライン オブジェクト自体は CLB によってプールされますが、パイプライン コンポーネントは負荷分散されません。これは、プールされたパイプライン内で実行するコンポーネントは COM+ アプリケーションとして登録できないことを意味します。

  • またセットアップ プログラムは、Commerce Predictor Build Watcher コンポーネントと Commerce Event Logging コンポーネントを COM+ パッケージに登録します。ただし、いずれのパッケージも CLB と共に使わないでください。これらのパッケージは、分散 COM (DCOM) で管理警告を監視するために作成されますが、CLB と共に使用してもあまり役に立ちません。


プールされたパイプラインを管理する

Component Services 管理ツールを使って、COM+ オブジェクト プールのプロパティを変更し、これらのプールのパフォーマンスを監視することができます。

パイプライン パフォーマンスを監視して、プールされたオブジェクトのパラメータを調整すると、アプリケーションに合わせてパイプライン プーリングを最適化することができます。

コンポーネントのプール プロパティを変更する

パフォーマンスを監視する

コンポーネントのプール プロパティを変更する

COM+ がパイプライン オブジェクトのプールを処理する方法を決定するいくつかのプロパティを指定できます。

  • 最小プール サイズ

  • 最大プール サイズ

  • 作成要求タイムアウト

最小プール サイズは、プール内にあるオブジェクトの最小数と、アプリケーションが起動したときに作成されるオブジェクトの数になります。プールが最大プール サイズに達すると、オブジェクトはそれ以上作成されなくなります。これには、アクティブなオブジェクトと非アクティブなオブジェクトの両方が含まれます。作成要求タイムアウト値はミリ秒の単位であり、要求がタイムアウトするまで、つまり E_TIMEOUT エラーが返されるまでに、クライアントがプールからのオブジェクトを待機する時間を指定します。

プール プロパティを変更するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[コンポーネント サービス] をクリックします。

  2. [コンポーネント サービス]、[コンピュータ]、[マイ コンピュータ]、[COM+ アプリケーション]、[CommercePipeline]、[コンポーネント] の順に展開します。

  3. 変更するパイプラインを右クリックして、[プロパティ] をクリックします。

  4. プロパティのダイアログ ボックスの [アクティブ化] タブで、次の操作を実行します。
    項目 | 操作
    [オブジェクトのプールを有効にする] | コンポーネントのオブジェクトのプールを有効にします。
    [最小プール サイズ] | プールに随時保持されるオブジェクトの最小数を入力します。
    [最大プール サイズ] | プールに随時存在可能なオブジェクトの最大数を入力します。
    [タイムアウトの作成 (ミリ秒)] | オブジェクト プールが要求されたオブジェクトを提供するのに要する時間 (ミリ秒単位) を入力します。
    [オブジェクトの構築を有効にする] | コンポーネント向けにオブジェクトの構築を有効にします。
    [コンストラクタ文字列] | オブジェクトの構築が有効な場合、作成時にオブジェクトが利用できる文字列を入力します。
    [ジャスト イン タイム アクティベーションを有効にする] | オブジェクトが非アクティブになったことをクライアントが認識していない場合に、クライアントからの呼び出しを時間内に処理するために、オブジェクトを繰り返し非アクティブ化したり再アクティブ化したりできるように指定します。
    [コンポーネントはイベンと統計をサポートする] | オブジェクトの呼び出し時刻など、オブジェクト イベント レポートとオブジェクト統計を有効にします。
    [呼び出し側のコンテキストの中で必ずアクティブ化する] | オブジェクトをその最初の呼び出しのコンテキスト内でのみアクティブ化できるようにします。

新しいプール プロパティは保存されます。

パフォーマンスを監視する

プールされたオブジェクトのパフォーマンスは、コンポーネント サービス管理ツールでアクティブに監視することができます。このツールを使うと、それぞれのプールされたオブジェクトについて、次の表に示された項目を表示できます。

列 | 説明
[Prog ID] | オブジェクトのプログラム識別子。
[オブジェクト] | クライアントによって現在保持されているオブジェクトの数。
[アクティブ化] | 現在アクティブなオブジェクトの数。
[プール済み] | プールによって作成されるオブジェクトの総数。使用中のオブジェクトと非アクティブなオブジェクトが含まれます。
[呼び出し中] | 呼び出し処理中のオブジェクトの数。
[呼び出し時間 (ミリ秒)] | 直近の 20 秒間に行われたメソッド呼び出しの平均呼び出し時間。

オブジェクトの状態を監視するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[コンポーネント サービス] をクリックします。

  2. [コンポーネント サービス]、[コンピュータ]、[マイ コンピュータ]、[COM+ Applications]、[CommercePipeline] の順に展開します。

  3. [コンポーネント] を展開して右クリックし、[表示] をポイントし、[状態] をクリックします。[状態] は、[コンポーネント サービス] 画面の右側に表示されます。


プール可能コンポーネント リファレンス

次の一覧は、プール可能とタグが付けられたパイプライン コンポーネントを示します。

A～D

AddAttachment、AdvertisingNeedOfDelivery、ComposeDMLMessage

CreateAUOCookie、DefaultHandling、DefaultHandlingCy

DefaultItemPrice、DefaultItemPriceCy、DefaultOrderSubTotal

DefaultOrderSubTotalCy、DefaultPayment、DefaultShipping

DefaultShippingCy、DefaultShopperInfo、DefaultTax

DefaultTaxCy、DefaultTotal、DefaultTotalCy

E～Q

EvalTargetGroups、FilterContent、FixedHandling

FixedShipping、FlagInventory、FormatTemplate

HistoryPenalty、IISAppendToLog、InitCSFPipeline

LinearHandling、LinearShipping、LoadCSFHistory

LocalInventory、MoneyConverter、OrderDiscount

QueryCatalogInfo、QueryProdInfoADO

R

RecordCSFHistory、RecordEvent、ReduceLocalInventory

RequiredHandling、RequiredHandlingCy、RequiredItemAdjust

RequiredItemAdjustCy、RequiredItemAdjustPrice、RequiredItemAdjustPriceCy

RequiredItemPrice、RequiredItemPriceCy、RequiredOrderAdjust

RequiredOrderAdjustCy、RequiredOrderAdjustPrice、RequiredOrderAdjustPriceCy

RequiredOrderCheck、RequiredOrderInit、RequiredOrderInitCy

RequiredOrderSubTotal、RequiredOrderSubTotalCy、RequiredPayment

RequiredProdInfo、RequiredShipping、RequiredShippingCy

RequiredTax、RequiredTaxCy、RequiredTotal

RequiredTotalCy

S～Z

SQLItemADO、SaveCSFHistory、ScoreDiscounts

Scriptor、SelectWinners、SendPrecomposedMessage

TableHandlingADO、TableShippingADO、ThrottleDMLPerformance

ValidateCCNumber、VerifyMessageBody、VerifyRecipientData


BizTalk Server と統合する

Microsoft Commerce Server 2000 のソリューション サイトは、次の 2 つの方法で Microsoft BizTalk Server と統合するように設計されています。

  • 商品カタログのインポートおよびエクスポート

  • マルチベンダ注文フォーム処理

BizTalk Server との統合を構成するには、Commerce Server マネージャを使います。これらの構成設定は、BizTalk Server との統合を実装するソリューション サイト内のコードを条件付きで実行するために使われます。以降で、この統合に関して詳細に説明します。

ここでは、次のトピックについて説明します。

  • 商品カタログを統合する : BizTalk Server を使ってさまざまなベンダから商品カタログをインポートする方法について説明します。

  • 注文フォームを統合する : 注文フォームをベンダ単位の複数の注文書 (PO) に分割する方法と、BizTalk Server を使ってこれらの PO を対応するベンダに送信する方法について説明します。

関連項目

BizTalk Server と Commerce Server の使用


商品カタログを統合する

商品カタログの統合とは、Web サイトで販売するためにさまざまなベンダのカタログから商品を提供するプロセスです。概念的に同様な別のシナリオとして、ある会社において社内 Web サイトで事務用品カタログにアクセスし、社員がオーダーできるようにする場合が挙げられます。このプロセスでは、ベンダ カタログの受信者の見地と、カタログを提供するベンダの見地の両方を考慮する必要があります。

このトピックには、次の内容が含まれています。

  • Commerce Server の XML 形式のカタログをインポートする : さまざまなベンダから受信した商品カタログをインポートするプロセスについて説明します。

  • Commerce Server の XML 形式のカタログを生成する : Microsoft Commerce Server 2000 を使用して、それらのベンダの商品カタログをエクスポートするプロセスについて説明します。

Commerce Server の XML 形式のカタログをインポートする

カタログをインポートするプロセスは通常、Commerce Server ビジネス デスクのカタログ エディタ モジュール内で実行されます。適切な XML 形式のカタログのインポートの詳細については、「XML カタログ ファイルをインポートする」を参照してください。ただし、CatalogManager オブジェクトの ImportXML メソッドを使用すると、適切な拡張マークアップ言語 (XML) 形式のカタログを、プログラムによって Commerce Server のカタログ データベースにインポートできます。このメソッドの詳細については、「CatalogManager.ImportXML」を参照してください。

カタログ XML ファイルが適切なスキーマに準拠しているかどうかを確認するには、次の操作を行います。

  1. カタログ XML ファイルの 2 行目を編集して、その行が Commerce Server をインストールしたルート フォルダにあるカタログ XML Data Reduced (XDR) ファイルを参照するようにします。次に例を示します。

    <MSCommerceCatalogCollection xmlns="x-schema:C:\Program Files\Microsoft Commerce Server\CatalogXMLSchema.xml">

  2. Internet Explorer (IE) でカタログ XML ファイルを開きます。IE は、XML ファイルが指定のスキーマに準拠しているかどうかを確認します。準拠していない場合は診断エラーを表示します。

注

  • 上記の手順では、カタログ XML ファイルが XDR スキーマに準拠しているかどうかの確認だけを行っています。商品、カテゴリ、およびプロパティの定義などのカタログ スキーマが既存のカタログ スキーマと互換性があるかどうか、または、カタログ XML ファイル内の商品およびカテゴリがその XML ファイルで定義されているカタログ スキーマと矛盾していないかどうかの評価は行っていません。この評価が行われるのは、ファイルがインポートされたときと、検出した問題がイベント ログに書き込まれるときです。

Microsoft BizTalk Server を Commerce Server と同じコンピュータ上にインストールすると、BizTalk Server が定義するアプリケーション統合コンポーネント (AIC) を使うことにより、ベンダから BizTalk Server 経由で到着した XML カタログを Commerce Server にインポートする処理を自動化できます。AIC の作成の詳細については、BizTalk Server のドキュメントを参照してください。

Commerce Server の XML 形式のカタログを生成する

商品カタログは、インポートができるように、Commerce Server が想定する XML 形式で作成されている必要があります。カタログを提供するベンダが、カタログを配布するために BizTalk Server を使い、カタログのソースとして Commerce Server も使っている場合、このプロセスはきわめて簡単なものになります。ビジネス マネージャはカタログを選択し、それを取引先に送信できます。取引先へのカタログの送信の詳細については、「カタログを取引先に送信する」を参照してください。

Commerce Server をカタログのソースとして使わないベンダであっても、BizTalk Server を使って商品カタログを Commerce Server に配信することができます。商品カタログを元の形式から Commerce Server が想定する XML 形式に変換するために、ループ Functoid を使った BizTalk Server の マッパーの機能を使うことができる場合があります。マッパーの機能の使用およびカタログを適切な XML 形式に変換するループ Functoid の詳細については、BizTalk Server のドキュメントの「ループ Functoid の使用」を参照してください。

BizTalk Server を使っていないベンダは、カタログの形式を Commerce Server が想定する XML 形式に変換する、独自のソリューションを開発する必要があります。この形式の詳細については、「カタログの XML 構造」を参照してください。


注文フォームを統合する

注文フォームの統合とは、1 つの注文フォームを複数の注文書に分割し、Microsoft BizTalk Server を使ってそれらの注文書を対応するベンダに送信するプロセスです。このプロセスでは、次の点について考慮する必要があります。

  • ベンダと各カタログとを関連付ける

  • 注文フォーム統合用に Commerce Server を構成する

  • 処理の概要

ベンダと各カタログとを関連付ける

ベンダ ID が各商品カタログに関連付けられていると、商品に関連付けられている商品カタログを識別することにより、注文に含まれている商品のベンダを特定でき、そのカタログに関連付けられているベンダを識別することができます。各商品に関連付けられているベンダを特定できれば、Commerce Server はベンダ単位で注文書を作成し、BizTalk Server を使ってそれらの注文書を対応するベンダに配信することができます。

ベンダをカタログと関連付けるプロセスは通常、Commerce Server ビジネス デスクを使って手動で行います。ベンダと各カタログとの関連付けの詳細については、「BizTalk Server のカタログを設定する」を参照してください。

Commerce Server は、プログラムでベンダをカタログに関連付けることができるように設計された Component Object Model (COM) オブジェクトも提供します。このオブジェクトは、たとえば、連絡可能なベンダの一覧を取得するメソッドや、ある特定のカタログに対して指定されたベンダ情報を返すメソッドも提供しています。このオブジェクトの詳細については、「CatalogToVendorAssociation オブジェクト」を参照してください。

注文フォーム統合用に Commerce Server を構成する

Commerce Server のソリューション サイトには、ベンダ単位の注文書を BizTalk Server に送信し、これらの注文書を対応するベンダに送信できる条件付きコードが含まれています。この機能はソリューション サイトに組み込まれ、Commerce Server マネージャを使って構成されます。Commerce Server ソリューション サイトを構成し、注文フォーム内の商品に関連付けられている各ベンダへの注文書を作成する方法の詳細については、「BizTalk Server と連携するように Commerce Server を構成する」を参照してください。

処理の概要

次の Microsoft Visual Basic コードは、注文フォームの BizTalk Server との統合に関連する 3 つの機能を使う処理を示しています。コメントは太字のイタリック体で示します。また、第 1 のルーチンがループの最も内側にある第 2 のルーチン 2 つを呼び出しています。

' Always call this routine when processing orders. It will
' return immediately if BizTalk PO integration is not enabled...
Sub InvokeBizTalk(ByVal mscsOrderGrp)
    Dim sOrderName, mscsOrderForm, oVendor, sXML
    Dim sVendorQualID, sVendorQualValue

    ' Do not do anything unless BizTalk PO integration is enabled...
    If dictConfig.i_BizTalkOptions = BIZTALK_PO_XFER_ENABLED Then

        ' Process each order form in the order group...
        For Each sOrderName In mscsOrderGrp.Value.OrderForms
            Set mscsOrderForm = _
                mscsOrderGrp.Value(ORDERFORMS).Value(sOrderName)

            ' Process each vendor known to the order form...
            For Each oVendor In mscsOrderForm.value("_vendors")

                ' Skip the default vendor, which
                ' is the local organization...
                If StrComp(oVendor.vendorID, DEFAULT_ORDERFORM, _
                                             vbTextCompare) <> 0 Then

                    ' Call second function defined here to
                    ' retrieve an XML string containing only
                    ' items associated with the current vendor...
                    sXML = GetXMLForVendorItems(mscsOrderForm, oVendor)

                    ' Get the vendor delivery information from
                    ' the orderform item...
                    sVendorQualID = _
                           mscsOrderForm.items( _
                                oVendor.itemindexes(0)).vendor_qual)
                    sVendorQualValue = _
                           mscsOrderForm.items( _
                                oVendor.itemindexes(0)).vendor_qual_value

                    ' Call third function defined here to submit
                    ' the single vendor PO to BizTalk Server...
                    Call SubmitUsingBizTalk(sXML, oVendor.vendorID, _
                                                     sVendorQualID, _
                                                  sVendorQualValue)
                End If
            Next
        Next
    End If
End Sub

' Returns an XML string containing the PO for the specified vendor...
Function GetXMLForVendorItems(ByVal mscsOrderForm, ByVal oVendor)
    Dim oXMLTransforms, oXMLSchema, oOrderFormXML, oXMLDoc
    Dim oNode, oAttribute
    Dim sFilePath

    ' Create a DictionaryXMLTransforms object...
    Set oXMLTransforms = _
        Server.CreateObject("Commerce.DictionaryXMLTransforms")

    ' Create a PO schema object...
    sFilePath = Server.MapPath("\" & MSCSAppFrameWork.VirtualDirectory) _
                & "\poschema.xml"
    Set oXMLSchema = oXMLTransforms.GetXMLFromFile(sFilePath)

    ' Create an XML version of the order form...
    Set oOrderFormXML = _
      oXMLTransforms.GenerateXMLForDictionaryUsingSchema(mscsOrderForm, _
                                                         oXMLSchema)

    ' Create a copy of the XML version of the order form...
    Set oXMLDoc = Server.CreateObject("MSXML.DOMDOCUMENT")
    oXMLDoc.loadXML oOrderFormXML.xml

    ' For each 'Item' node in the XML order form copy...
    For Each oNode In oXMLDoc.documentElement.childNodes
        If (oNode.nodeName = "Items") Then

            ' If this vendor ID of the 'Item' node is not the
            ' same as the passed vendor ID, discard the node...
            For Each oAttribute In oNode.Attributes
                If (oAttribute.nodeName = "vendorid") Then
                    If Not(oAttribute.nodeValue = oVendor.vendorID) Then
                        oNode.parentNode.removeChild oNode
                    End If
                    Exit For
                Else
                End If
            Next

        End If
    Next

    ' Return an XML string containing the remaining 'Item' nodes,
    ' all of which correspond to the passed vendor...
    GetXMLForVendorItems = oXMLDoc.xml
End Function

' Submit the vendor-specific PO to BizTalk Server...
Function SubmitUsingBizTalk(ByVal sXML, ByVal sVendorName, _
                            ByVal sDestQualID, ByVal sDestQualValue)
    Dim sSubmitType, sDocName
    Dim sSourceQualID, sSourceQualValue
    Dim oDBConfig, oOrg, sID, sName, sDef, oRes
    Dim oInterchange

    ' Retrieve the source BizTalk config values locally...
    sSubmitType = dictConfig.s_BizTalkSubmittypeQueue
    sDocName = dictConfig.s_BizTalkOrderDocType
    sSourceQualID = dictConfig.s_BizTalkSourceQualifierID
    sSourceQualValue = dictConfig.s_BizTalkSourceQualifierValue

    ' Create a BizTalk Interchange object and call its Submit
    ' routine using the passed and gathered parameters...
    Set oInterchange = Server.CreateObject("BizTalk.Interchange")
    oRes = oInterchange.Submit(sSubmitType, _
                               sXML, _
                               sDocName, _
                               sSourceQualID, _
                               sSourceQualValue, _
                               sDestQualID, _
                               sDestQualValue)
End Function


スタイル シートをカスタマイズする

.css という拡張子を持つファイルであるカスケード スタイル シートを使うと、表示される HTML 要素のクラスごとの外観を、1 つの場所からまとめて制御することができます。たとえば、要素のさまざまなクラスに使われる背景色やフォントを指定することができます。

Commerce Server ビジネス デスクでは、このようなスタイル シート ファイルを 2 つ、さまざまな場面で使っています。1 つは Bizdesk.css で、もう 1 つは Navtree.css です。Bizdesk.css はコンテンツ ウィンドウの表示を制御するために使われ、Navtree.css はナビゲーション ウィンドウの表示を制御するために使われます。これらのスタイル シートに変更を加えることによって、ビジネス デスクの外観を変更することができます。これらのスタイル シート ファイルに定義されているスタイルの詳細については、「スタイル シート リファレンス」を参照してください。

重要

  • スタイルを変更すると、ビジネス デスクの他の箇所で望ましくない影響が現れる可能性もあります。そのため、変更は慎重に行う必要があります。


世界各国の顧客用にサイトを変更する

Microsoft Commerce Server 2000 には、Web サイトを世界各国対応にする機能があります。Commerce Server には、ユーザーが選択している言語を記録する機能、複数の言語での Web サイトのテキストを管理する機能、および選択された言語で日付、時刻、通貨の各文字列を表示する機能があります。

ここでは、次のトピックについて説明します。

  • 選択されている言語を記録する : ユーザーが選択した言語を記録する各種の方法について説明します。

  • Web サイトのテキストをローカライズする : ユーザーが選択した言語で Web サイトのテキストを表示する方法について説明します。

  • 日付と時刻をローカライズする : ユーザーが選択した言語に準拠するように日付と時刻の文字列と値を操作するための Commerce Server オブジェクトについて説明します。

  • 通貨をローカライズする : ユーザーが選択した言語に準拠するように通貨の文字列と値を操作するための Commerce Server オブジェクトについて説明します。商品の価格を異なる通貨で表示する方法についても説明します。


選択されている言語を記録する

複数の言語をサポートする Web サイトを開発する場合は、ユーザーが選択している言語を記録する戦略が必要です。これには、次の方法があります。

  • 言語ごとに個別の Web サイトを作成する : サイトの大部分が静的な HTML ページで構成される場合は、生成済みのページを使うことを検討します。この方法を使う場合は、サポートする言語ごとに 1 つずつ、複数の並行した Web サイトを開発し、保守します。通常、これらのページ上のリンクは、同一言語のほかのページにリンクし、別の言語にユーザーを移すリンクは、サポートしている各言語で表記された、対応するページにリンクします。この方法では、選択された言語により、URL は固有になります。

    この方法での保守上の負担は、参照する Web サイトからページをあらかじめ生成することで最小にできます。参照する Web サイトでは、言語固有のすべての文字列を、置換可能な変数で表現する必要があります。それから、サポートする言語ごとにこれらの各変数を言語固有の適切な文字列に置換するツールを開発します。

  • 選択された言語をクライアント側の cookie に格納する : 選択された言語をクライアント側の cookie に格納することは、言語の選択を追跡する方法で一番簡単ですが、これには、クライアントのブラウザで cookie が有効になっている必要があります。この方法では、言語コード ("en"、"fr"、"nl" など) を cookie に格納し、言語に依存する文字列を表示するすべてのページで cookie を読み取ります。次に、言語コードを使って、テキスト、通貨、日付/時刻の書式を適切に選択することができます。

    この方法では、cookie の有効期限に応じて、セッションをまたいで言語の選択を維持することができます。

  • 選択された言語を URL クエリ文字列で渡す : 選択された言語は、選択された言語を記録する各ページの URL のクエリ文字列部分に格納できます。この方法を使う場合、それぞれのページでは、選択された言語を以降のページに渡せるように、その言語をクエリ文字列から読み取り、それを使ってページ上のすべての URL に選択された言語を動的に付加する必要があります。選択された言語を使って、テキスト、通貨、日付/時刻の適切な書式を選択します。

  • 選択された言語をユーザー プロファイルに格納する : 選択された言語を記録するもう 1 つの方法は、各ユーザーの選択をユーザー プロファイルに保存することです。この方法では、言語プロパティをユーザー プロファイルに追加する必要があります。ユーザー プロファイルは、ユーザーが言語を初めて選択した時点または変更した時点で初期化します。各ページでは、ユーザー プロファイルを取得してから、言語プロパティに格納されている値を使って、テキスト、通貨、日付/時刻の書式を適切に選択します。パフォーマンス コストがプロファイルの取得と更新だけなので、この方法では、選択された言語を効率的に保存できます。


Web サイトのテキストをローカライズする

複数の言語をサポートする Web サイトに表示するページでは、ユーザーが選択した言語でテキストを表示する必要があります。まず、言語ごとに異なる複数の並行した Web サイトを構築して維持するのか、それとも適切な言語で動的に各ページを構築する単一の Web サイトを構築するのかを決定します。

複数の並行した Web サイトを構築する方法は、その静的な性質から、パフォーマンスの面で有利ですが、複数の Web サイトを同期させて保持することには負担が伴うため、一般的ではありません。

Commerce Server には、動的な方法の開発に便利な機能が含まれています。これらの機能には、次のものがあります。

  • 商品カタログ システム : 商品カタログ システムには拡張可能という性質があり、カタログ内の商品ごとに複数の言語の情報を格納できる便利なしくみを提供しています。たとえば、商品の説明を既定の単一言語で格納する、単一の商品説明プロパティを使うのではなく、スキーマを拡張して、サポートする言語ごとに 1 つずつ、複数の商品説明プロパティをそのスキーマに格納することができます。

    たとえば、単一の short_description プロパティの代わりに、英語バージョン用の short_description_en、フランス語バージョン用の short_description_fr、およびオランダ語バージョン用の short_description_nl という 3 つの説明プロパティを定義できます。その後、表示する適切な説明の値を、ユーザーが選択した言語に基づいて Active Server Page (ASP) コードで動的に要求できます。

    商品カタログ スキーマの変更の詳細については、「カタログ スキーマを変更する」を参照してください。

  • MessageManager オブジェクト : このオブジェクトは、Web サイトで使うテキスト文字列のリポジトリとして機能します。このオブジェクトには、文字列のシンボル名を文字列の特定の言語変換と分離する機能があります。たとえば、次のように、MessageManager オブジェクトの GetMessage メソッドを使って、文字列 "Weekly Specials" を英語で出力できます。
    Dim sLangChoice
sLangChoice = "en"
<%= oMessageManager.GetMessage("Weekly_Specials", sLangChoice)%>

    sLangChoice パラメータの初期化の方法を変更することによって、同じコード行で別の言語のバージョンの文字列を表示できます。

    通常、MessageManager オブジェクトのインスタンスは、ファイル Global.asa 内のメッセージを使って作成および読み込まれます。それから、格納されたメッセージに Web サイトのすべてのページが簡単にアクセスできるように、このオブジェクトへの参照が、組み込みの Application オブジェクトに格納されます。複数の言語が使われる場合、複数のメッセージ セットを持つ MessageManager オブジェクトが、Global.asa ファイル内の初期化コードによって読み込まれます。これらの各セットは、サポートされる言語の 1 つにそれぞれ対応します。

    ローカライズした特定の言語のメッセージ セットを用意する場合は、対応するすべてのテキストを翻訳したバージョンを用意する必要があります。MessageManager オブジェクトの GetMessage メソッドを呼び出して、文字列の存在しない文字列名や言語を渡そうとすると、実行時エラーになります。

    MessageManager オブジェクトの使い方の詳細については、「MessageManager オブジェクト」と「表示オブジェクト」を参照してください。

  • CacheManager オブジェクト : このオブジェクトは、頻繁に使われる文字列またはその他のデータの高性能リポジトリとして機能します。CacheManager オブジェクトからの取得は、単一のキー文字列に依存し、MessageManager オブジェクトの場合と違ってキー文字列と言語文字列の組み合わせには依存しないので、選択された言語をキー文字列自体の中に埋め込む必要があります。推奨される方法は、商品カタログ システムで複数の言語をサポートするのに使う方法と類似しています。

    たとえば、英語、フランス語、オランダ語のそれぞれのキー文字列の末尾に "_en"、"_fr"、"_nl" を付けて、1 つの文字列をこの 3 つの言語バージョンで CacheManager オブジェクトに格納することができます。キー文字列は動的に作成され、ユーザーが選択した言語に応じて文字列の最終的な構成要素を変化させます。

    CacheManager オブジェクトの使い方の詳細については、「CacheManager オブジェクト」と「汎用オブジェクト」を参照してください。


日付と時刻をローカライズする

複数の言語をサポートする Web サイトに表示するページでは、ユーザーが選択した言語に適した書式で日付と時刻を表示する必要があります。

Commerce Server には、異なる言語での日付と時刻の値を処理するための、いくつかの Component Object Model (COM) オブジェクトがあります。これらの機能には、次のものがあります。

  • AppFrameWork オブジェクト : このオブジェクトには、ロケールに依存する日付と時刻の値を HTTP 要求から取得するためのメソッドがいくつか用意されています。次のようなメソッドがあります。

    AppFrameWork.RequestDate

    AppFrameWork.RequestDateTime

    AppFrameWork.RequestTime

  • DataFunctions オブジェクト : このオブジェクトには、ロケールに依存する日付と時刻の文字列を、等価の Variant 値に変換したり、元に戻したりするためのメソッドがいくつか用意されています。次のようなメソッドがあります。

    DataFunctions.ConvertDateString

    DataFunctions.Date

    DataFunctions.ConvertDateTimeString

    DataFunctions.DateTime

    DataFunctions.ConvertTimeString

    DataFunctions.Time

これらのオブジェクトの詳細については、「表示オブジェクト」を参照してください。


通貨をローカライズする

複数の言語をサポートする Web サイトに表示するページでは、ユーザーが選択した言語に適した書式で通貨値を表示する必要があります。さらに、どの商品の価格も複数の通貨で表示できなければなりません。

このトピックには、次の内容が含まれています。

  • 通貨を操作するためのオブジェクト

  • 複数の通貨で商品価格を表示する

  • 通貨に関するその他の問題

通貨を操作するためのオブジェクト

Commerce Server には、異なる言語で通貨値を処理するための、いくつかの Component Object Model (COM) オブジェクトがあります。これらの機能には、次のものがあります。

  • AppFrameWork オブジェクト : このオブジェクトには、ロケールに依存する通貨値を HTTP 要求から取得するためのメソッドが用意されています。このメソッドには、次のものがあります。

    AppFrameWork.RequestMoneyAsNumber

  • DataFunctions オブジェクト : このオブジェクトには、通貨値の変換や書式設定を行うためのメソッドがいくつか用意されています。このメソッドには、次のものがあります。

    DataFunctions.ConvertMoneyStringToNumber

    DataFunctions.ConvertStringToCurrency

    DataFunctions.CurrencySymbol

    DataFunctions.LocalizeCurrency

    DataFunctions.Money

  • EuroDisplay オブジェクト : このオブジェクトには、ロケールに依存する通貨の文字列を、等価の数値に変換したり、元に戻したりするためのメソッドがいくつか用意されています。このメソッドには、次のものがあります。

    EuroDisplay.ConvertAltStringToCurr

    EuroDisplay.ConvertBaseStringToCurr

    EuroDisplay.ConvertMoney

    EuroDisplay.FormatAltMoney

    EuroDisplay.FormatBaseMoney

    EuroDisplay.Initialize

これらのオブジェクトの詳細については、「表示オブジェクト」を参照してください。

複数の通貨で商品価格を表示する

複数の言語をサポートする Web サイトでの通貨の表示に関連する問題として、異なる通貨での商品価格の表示があります。

商品のテキストと同様に、商品カタログ スキーマを拡張し、言語ごとに 1 つずつの異なるプロパティに商品の価格を格納できるようにする方法があります。この方法の利点は、4.95 ドルや 9.99 ポンドといった、従来通りの端数の出ない金額で商品価格を表示できることです。ただし、この方法を使うと、ユーザーが選択した言語に応じて、わずかに異なる価格で商品を提供することになり、商品ごとに複数の価格を管理する手間が生じます。

別の策として、基本通貨と呼ばれる 1 つの通貨だけで商品価格の情報を格納しておく方法があります。たとえば、アメリカ ドルまたはユーロで価格を格納しておき、ほかの通貨での価格を必要に応じて動的に計算することができます。基本通貨に基づいて価格を計算するには、基本通貨に対する比率でほかの通貨のレートを指定する、為替レート テーブルを作成する必要があります。為替レート テーブルには、次のフィールドが必要です。

  • 通貨記号

  • 国際標準化機構 (ISO) 通貨コード

  • 為替レート

  • 表示形式

次の表は、為替レート テーブルの例を示しています。

通貨記号 | ISO 通貨コード | 為替レート | 表示形式
$ | USD (アメリカ ドル) | 1.0 | ####.##
｣ | UKP (イギリス ポンド) | 1.2 | ####.##
F | BEF (ベルギー フラン) | 0.023 | ######,00
? | EUR (ユーロ) | 0.9 | ####.##

サイトで価格を表示する場合、為替レートに基づいて価格を計算し、関連付けられた通貨記号と表示形式を使って価格を表示します。

重要

  • 検索結果と商品の詳細のページを CacheManager オブジェクトに格納する場合は、キャッシュ キーの通貨部分を作成する必要があります。作成しないと、価格を別の通貨で表示しようとしたときに誤った結果が取得されます。

通貨に関するその他の問題

選択したロケールが収まるように、パイプライン構成内の通貨モード設定を変更しなければならないことがあります。


Membership Directory を移行する

[Directory Migration] ツールボックスには、Site Server 3.0 Membership Directory から Commerce Server 2000 のユーザー プロファイル ストアに移行するために使うコンポーネントが用意されています。

ここでは、Site Server 3.0 ベースから Commerce Server 2000 ベースへと、サイトの移行を行うシステム管理者とサイト開発者を対象に、これらのコンポーネントのアーキテクチャと、Membership Directory の移行方法について説明します。[Directory Migration] ツールボックスを使う前に、両製品のドキュメントの内容を理解しておく必要があります。

ここでは、次のトピックについて説明します。

  • [Directory Migration] ツールボックスについて : [Directory Migration] ツールボックス内のコンポーネントについて説明します。

  • 移行を計画する : 移行を開始する前に考慮しておかなければならない問題について説明します。

  • 移行を準備する : プロファイル データ ストアに Active Directory グループをあらかじめ生成する方法と、Membership Directory の属性をプロファイル データ ストアの属性にマップする方法について説明します。

  • 移行処理を開始する : 移行プロセスの開始方法について説明します。

  • 移行ログ ファイルを使ってのトラブルシューティング : 移行ログ ファイルを使って問題点を調べる方法について説明します。

  • 移行に成功したことを確認する : 移行プロセスが正しく機能しているかどうかを確認する方法について説明します。

  • 移行のためのプログラマーズ リファレンス : Commerce Server で提供されている移行 Component Object Model (COM) オブジェクト、および関連するプロパティとメソッドに関するリファレンス ページです。


[Directory Migration] ツールボックスについて

[Directory Migration] ツールボックスには、次のコンポーネントがあります。これらのコンポーネントは、Site Server 3.0 Membership Directory から Commerce Server プロファイル データ ストアに、ユーザーを移行するために使います。

  • 移行コンポーネントのソース コード : 移行コンポーネントを必要に応じて修正できるように、そのソース コードを示し、単一のユーザー プロファイルを移行するために使う C++ ソース コードの例を示します。

  • Groups Pre-Population ツール : グループを使う必要がある場合に、プロファイル データ ストアに Active Directory グループをあらかじめ生成します。

  • Migration ProfileBuilder ツール : Membership Directory の属性をプロファイル データ ストアの属性にマップします。

  • Directory Migration ツール : バッチ モードまたは要求時モードで Membership Directory からプロファイルを移行します。

  • Subgroup Manager : ユーザーが Active Directory に格納されているかどうかを判定するコードを変更します。Subgroup Manager は、グループのメンバシップを決定するのに役立ちます。


移行コンポーネントのソース コード

[Directory Migration] ツールボックスには、コンパイル済みのコンポーネントが含まれています。これらのコンポーネントを使うと、Site Server 3.0 Membership Directory を直ちに Commerce Server プロファイル データ ストアに移行できます。加えて、このツールボックスにはすべてのコンポーネントのソース コードも含まれているので、必要に応じてコンポーネントを変更できます。

これらのコンポーネントのソース コードは次のフォルダにあります。

<ドライブ名>:\Program Files\Microsoft Commerce Server\SDK\Tools\MembershipMigration

次の表は、MembershipMigration フォルダのサブフォルダ、および各サブフォルダにあるコンポーネントの一覧です。

サブフォルダ | 説明
\bin\release | Directory Migration オブジェクトと移行テスト クライアントのコンパイル済みバイナリです。
\Client | 単一のユーザー プロファイルを移行する単純なクライアントの C++ ソース コードです。
\GroupMigration | ユーザー プロファイルを移行する前に Active Directory グループをあらかじめ生成するために使うツールの Microsoft Visual Basic ソース コードです。
\include | オブジェクトを構築する場合に使うインクルード ヘッダー ファイルです。
\MigrationLogObj | Directory Migration ツールの MigrationLogObj オブジェクトの C++ ソース コードです。
\MigrationMainObj | MigrationMainObj オブジェクトの C++ ソース コードです。
\MigrationModifyObj | MigrationModifyObj オブジェクトの C++ ソース コードです。
\MigrationReadObj | MigrationReadObj オブジェクトの C++ ソース コードです。
\MigUtil | Directory Migration ツールの移行ユーティリティ ライブラリの C++ ソース コードです。
\MigrationWriteObj | MigrationWriteObj オブジェクトの C++ ソース コードです。
\ProfileBuilder | Migration ProfileBuilder ツールの Visual Basic ソース コードです。Directory Migration ツールのオブジェクトが使う拡張マークアップ言語 (XML) 構成ファイルを構築するために使います。
\SubGroupManager | ヘルパ オブジェクトの Visual Basic ソース コードです。ユーザーが属するグループを特定するために使います。

MembershipMigration フォルダの Readme.htm ファイルには、このリリースの Commerce Server の [Directory Migration] ツールボックスに関する重要な情報が記載されています。

関連項目

移行のためのプログラマーズ リファレンス


Groups Pre-Population ツール

Groups Pre-Population ツールは、運用する環境でグループを使う場合に Active Directory グループをあらかじめ生成するために使います。グループは、Active Directory のドメインまたはフォレストに適宜作成できます。グループにユーザーを追加する前にグループを作成する必要があるので、ユーザーを移行する前に Groups Pre-Population ツールを実行します。

Active Directory グループをあらかじめ生成しておくことで、Commerce Server サイトを有効にする前に、ファイル システムにアクセス制御リスト (ACL) を設定できます。

関連項目

Groups Pre-Population ツールを実行する


Migration ProfileBuilder ツール

Migration ProfileBuilder ツールは、Site Server 3.0 Membership Directory から Commerce Server プロファイル データ ストアへ属性をマップするために使います。

Directory Migration ツールを実行すると、ユーザーの属性を Membership Directory からプロファイル データ ストアにマップする拡張マークアップ言語 (XML) ファイルが読み取られます。

Migration ProfileBuilder ツールは次のタスクを実行します。

  • Membership Directory スキーマからユーザーの属性を読み取ります。

  • ユーザー プロファイル オブジェクト スキーマからユーザーの属性を読み取ります。

  • Directory Migration ツールによって読み取られる XML 構成ファイルを作成します。

注

  • この Migration ProfileBuilder ツールを使うには、Active Directory フォレスト内のすべてのドメインを参照できる管理者権限が必要です。

関連項目

Migration ProfileBuilder ツールを実行する


Directory Migration ツール

Directory Migration ツールは、次のいずれかのモードで実行できます。

  • バッチ モード : 連続する一定範囲のユーザーを移行します。

  • 要求時モード : 必要に応じて、ユーザーを一度に 1 人ずつ移行します。

Directory Migration ツールのインスタンスは、複数を同時に実行できます。ディレクトリを移行するために両方のモードを使った場合は、すべてのユーザーがバッチ モードでまとめて移行されます。アカウントが移行される前にサイトにアクセスするユーザーについては、最小限の中断で新しいサイトを巡回できるように、要求時モードをトリガすることができます。移行オブジェクトは、1 つ以上のサーバーにインストールされ、要求に応じてユーザーを移行します。バッチ モードでは、連続的な一定範囲のユーザーが移行されます。要求時モードでは、ユーザーが Commerce Server 2000 サイトにログインすると、そのたびに 1 人ずつ移行されます。<ドライブ名>:\Program Files\Microsoft Commerce Server\SDK\Tools\MembershipMigration\Client ディレクトリにある Login.asp ファイルを使うと、要求に応じてユーザーを移行できます。

各ユーザーの移行状態を追跡するために、Membership Directory ユーザー スキーマに Migration 属性が追加されます。Migration 属性の型はバイナリです。

移行対象の属性ごとに、Directory Migration ツールは、移行に成功した場合は Migration 属性に True を割り当て、失敗した場合は False を割り当てます。移行に失敗した場合は、ログを参照して理由を確認してください。

注

  • 移行対象の属性がなかった場合、Directory Migration ツールは "移行が試みられなかった" と解釈します。

MigrationMainObj オブジェクト

MigrationMainObj オブジェクトは、個々のユーザーまたは一定範囲のユーザーに対する要求に応じた移行を管理する主要なオブジェクトです。MigrationMainObj オブジェクトは、移行対象のユーザーごとに、次のオブジェクトをこの順序で呼び出します。

  1. MigrationReadObj オブジェクト

  2. MigrationModifyObj オブジェクト

  3. MigrationWriteObj オブジェクト

  4. MigrationLogObj オブジェクト

バッチ モードで実行するように MigrationMainObj オブジェクトを構成してある場合、MigrationMainObj オブジェクトはフィルタを使って、フィルタ条件 (たとえば、"Aaa" から "Adz" で始まるユーザー名) に一致するユーザー プロファイルの Lightweight Directory Access Protocol (LDAP) クエリを生成します。このフィルタは、LDAP のタイムアウトを防ぐために使われます。このフィルタの詳細については、「Migration ProfileBuilder ツール」を参照してください。

次の図は、Directory Migration ツールがユーザー プロファイルを処理する方法を示しています。

ASP
<XML>
Directory Migration ツールでユーザー プロファイルを処理する方法を示す図
移行の構成
ProfileServices
オブジェクト
MigrationLogObj
MigrationWriteObj
MigrationModifyObj
MigrationReadObj
Commerce Server 2000
LDAP
サーバー
SQL Server 2000
Windows 2000 Active Directory
Membership Directory ストア
MigrationMainObj

Directory Migration ツールは、次の手順に従ってユーザー プロファイルを処理します。

  1. 使うオブジェクトに関する詳細、および読み取り対象データを書き込み対象データにマップするための指示が含まれている拡張マークアップ言語 (XML) 構成ファイルから、情報を取得します。

  2. ユーザー プロファイルを移行する要求を MigrationMainObj オブジェクトが受信します。

  3. MigrationMainObj オブジェクトは MigrationReadObj オブジェクトにその要求を送信します。

  4. Migration 属性が True または False に設定されていない場合、MigrationReadObj オブジェクトは Migration 属性を True に設定し、Directory Migration ツールのほかのインスタンスによって同じユーザー プロファイルが再度移行されないようにします。更新に成功したら、移行処理の次の手順に進みます。更新に失敗した場合は、移行処理が失敗します。

  5. MigrationReadObj オブジェクトは、Membership Directory からユーザー プロファイルを取得します。

  6. XML 構成ファイルに指定されている場合、MigrationReadObj オブジェクトは MigrationModifyObj オブジェクトを呼び出します。

  7. MigrationModifyObj オブジェクトは、指定されたとおりにユーザー プロファイルを変更してから、変更したバッファを MigrationReadObj オブジェクトに返します。

  8. MigrationReadObj オブジェクトは、このバッファへのポインタを MigrationMainObj オブジェクトに送信します。MigrationReadObj オブジェクトがエラーを返した場合は、MigrationMainObj オブジェクトは失敗をログに記録し、MigrationReadObj オブジェクトを呼び出して Migration 属性を "Failed" に設定してから、次の移行要求を処理する準備をします。

  9. MigrationMainObj オブジェクトがバッファを MigrationWriteObj オブジェクトに送信し、MigrationWriteObj オブジェクトがユーザー プロファイルをプロファイル データ ストアに書き込みます。

  10. MigrationWriteObj オブジェクトは ProfileService オブジェクトに書き込み要求を送信します。書き込みに成功すると、MigrationWriteObj オブジェクトは、適切なグループにユーザー プロファイルを追加し、MemberOf 属性を適宜更新します。書き込みに失敗した場合、書き込みはロールバックされます。ロールバックに失敗すると、MigrationWriteObj オブジェクトはロールバックの失敗をログに記録します。

  11. ProfileService オブジェクトが、書き込みの試行の成功または失敗のリターン コードを返します。

  12. 移行が Active Directory の移行の場合は、MigrationWriteObj オブジェクトが、Active Directory Service Interfaces (ADSI) を直接呼び出すことによって、適切なグループにユーザーを追加します。

  13. MigrationWriteObj オブジェクトは書き込みの試行の成功 (または失敗) をログに記録し、完了時にユーザーを適切なグループに追加します。MigrationWriteObj オブジェクトは、適宜、成功または失敗のコードを返します。

  14. MigrationMainObj オブジェクトが、成功または失敗した移行の試行をログに記録し、成功または失敗のリターン コードを呼び出し元のコンポーネントに返します。

MigrationReadObj オブジェクト

MigrationReadObj オブジェクトは、Site Server 3.0 Membership Directory からユーザー プロファイルの属性を読み取ります。MigrationMainObj オブジェクトは、各ユーザー プロファイルを移行するときに MigrationReadObj オブジェクトを呼び出します。

MigrationReadObj オブジェクトのソース コードは、SDK\Tools\MembershipMigration フォルダにあります。

MigrationModifyObj オブジェクト

MigrationModifyObj オブジェクトは、ユーザー プロファイルを移行できるよう変更するために使います。MigrationModifyObj オブジェクトはバッファ管理を受け持っています。バッファ管理の例については、ソース コードを参照してください。

MigrationModifyObj オブジェクトのソース コードは、SDK\Tools\MembershipMigration フォルダにあります。

MigrationWriteObj オブジェクト

MigrationWriteObj オブジェクトは、移行されたユーザー プロファイル データを ProfileService オブジェクトに書き込みます。加えて、ユーザーがグループのメンバの場合、MigrationWriteObj オブジェクトはActive Directory 内の対応するグループにユーザーを追加します。

MigrationLogObj オブジェクト

MigrationLogObj オブジェクトはトランザクション ログを作成するために使います。トランザクション ログは、移行処理中に発生した問題を診断するためのものです。

関連項目

移行のためのプログラマーズ リファレンス


Subgroup Manager

SubGroupManager オブジェクトは、グループのメンバシップを決定する手段として、Active Directory 内のどこにユーザーが格納されるかを決定するためのコードで使うヘルパ オブジェクトです。

SubGroupManager オブジェクトは、Visual Basic の ActiveX ダイナミック リンク ライブラリ (DLL) と、ユーザーとその親グループの識別名を入力として受け取る、関連付けられたテスト用の .exe ファイルです。

グループごとのオブジェクト数は最大 5000 に制限されるので、大きいグループのユーザーを完全に収容するには、ほとんどのグループでサブグループが必要になります。たとえば、10,000 人のユーザーがいる "friends" というグループが Membership Directory に存在するとします。この場合は、Active Directory でマスター グループ "friends" を作成してから、このマスター グループの下にサブグループを作成します。実際にすべてのユーザーを保持するのは、これらのサブグループです。サブグループは、マスター グループ名に数字のサフィックスを付けた名前を持つので、この名前で個々のサブグループを識別できます。たとえば、"friends_0001" です。

次の表は、SubGroupManager オブジェクトでサポートされている各メソッドと、その説明を示しています。

メソッド 説明
SubGroupMembership
  • ユーザー プロファイルが配置されるサブグループの識別名 (DN) を文字列として返します。

  • Active Directory に対する操作は行われません。
AddUserToMasterGroup
  • このユーザー プロファイルが、マスター グループのどのサブ グループにあるかを特定します。

  • サブグループが存在するかどうかを確認します。サブグループがない場合は自動的にサブグループを作成します。

  • ユーザー プロファイルをサブグループに書き込みます。
RemoveUserFromMasterGroup
  • このユーザー プロファイルが、マスター グループのどのサブ グループにあるかを特定します。

  • サブグループからユーザー プロファイルを削除します。
IsUserOfMasterGroup
  • このユーザー プロファイルが、マスター グループのどのサブ グループにあるかを特定します。

  • ユーザー プロファイルがメンバになっているかどうかについて、サブグループを検査します。メンバである場合は True を返し、メンバでない場合は False を返します。

SubGroupManager オブジェクトは機能的には完全なものですが、ディレクトリ サービスに接続するために、ハード コードされたユーザー名とパスワードが内部に含まれています。これらの定数を変更し、再コンパイルしてから、次のコマンドを使って新しい DLL を登録する必要があります。

regsvr32 subgroupmanager.dll

SubGroupManager オブジェクトを作成するためのプログラム ID は、SubgroupManagerProject.SubGroupManager です。

注

  • ハッシュ アルゴリズムを変更する場合は、migrationutil.dll ファイルに対応するソース コードも同様に変更する必要があります。


移行を計画する

移行プロセスを開始する前に、このプロセスのために行う操作を計画し、それらについて理解しておく必要があります。

ここでは、次のトピックについて説明します。

  • 認証の種類を移行する

  • グループを移行する

  • Active Directory または SQL Server に移行する


認証の種類を移行する

[Directory Migration] ツールボックスのツールは、Membership Directory のすべての種類の認証がサポートされるようにデータを移行します。


グループを移行する

Commerce Server のプロファイル システムではグループをサポートしますが、実装はプロファイル データ ストアの機能に依存します。Site Server 3.0 Membership Directory で実装されていたのと同様にグループを実装するには、Active Directory を使う必要があります。

Active Directory を使うと、グループを作成でき、ファイルとディレクトリにアクセス制御リスト (ACL) とアクセス制御エントリ (ACE) を割り当てることができます。ただし、Site Server 3.0 Membership Directory を使って実装されたサイトとの実装の互換性は、完全ではありません。Active Directory では、1 つのグループのオブジェクトが最大 5000 に制限されます。この制限が必要なのは、グループのコンテンツがドメイン コントローラのインスタンス間で複製される方式のためです。この制限については、Active Directory の将来のバージョンで対処する予定ですが、Membership Directory を移行するには何らかの対応策が必要です。

Directory Migration ツールを使うと、サブグループを作成して、それらのサブグループにユーザー プロファイルを追加できます。今後のサイズ増加とサブグループのための追加スペースを確保しておくために、Directory Migration ツールでは、ユーザー プロファイルはサブグループごとに 4500 までになっています。

次の表は、Membership Directory で 100,000 のユーザー プロファイルを持つグループを、Active Directory に移行する様子を示しています。

Membership Directory の構造 | 対応する Active Directory の構造
GroupA | GroupA
User1 ..User100000 | GroupA_0000
 | User1 ..User4500
 | GroupA_0001
 | User4501 ..User9000
 | …
 | GroupA_0023
 | User99001..User100000

注意

  • Active Directory は ネイティブ モードでセットアップする必要があります。混合モードではセットアップしないでください。混合モードでセットアップすると、Active Directory は必要なグループ階層を作成しません。

ユーザー プロファイルを格納するためにドメインのフォレストを使うと、移行はさらに複雑になります。次の図は、ユーザー プロファイルと ACL を Active Directory にマップしながら、サイトのセキュリティを維持する方法を示しています。

Windows 2000 Active Directory フォレスト
移行後
Windows 2000 Active Directory
ResourceDomain
Windows NT
4.0 ドメイン
Domain3
Domain2
ファイル ACL/ACE: DomainLocalGroup3
ファイル ACL/ACE: DomainLocalGroup2
ファイル ACL/ACE: DomainLocalGroup1
ファイル ACL/ACE: Group3
ファイル ACL/ACE: Group2
ファイル ACL/ACE: Group1
Group3

Group3
User1
User2
User3
Group11
User65
User66
User67

Group2
Group2
GlobalGroup1
GlobalGroup1
GlobalGroup2
GlobalGroup2
GlobalGroup3
Group1
Group1_0000
User1
Group11 Group11_0000
User66
GlobalGroup3
Group1
Group1_0000
User1
Group11 Group11_0000
User67
GlobalGroup3
Group1
Group1_0000
User1
Group11 Group11_0000
User65
GlobalGroup2
GlobalGroup1
DomainLocalGroup3
DomainLocalGroup2
DomainLocalGroup1
Group1
Group1
Domain1
Membership
Directory
移行前


Active Directory または SQL Server に移行する

ユーザーを Active Directory と Microsoft SQL Server のどちらに移行するのかを決定する必要があります。次の要素を検討します。

  • 移行のパフォーマンスと拡張性

  • 移行での属性の互換性

移行のパフォーマンスと拡張性

Active Directory

Windows 2000 Server Active Directory は、堅牢でセキュリティに優れたディレクトリ ストアです。パフォーマンスと拡張性について計画する場合は、次の点に注意してください。

  • ユーザーのグループにマップするファイルについてアクセス制御を設定するように配置するには、Active Directory が必要です。

  • Active Directory は、ドメイン コントローラではディレクトリの全体的な入出力の一部のみを行うように書き込みトランザクションがチューニングされています。

  • 最新のテストでは、ドメインのユーザー数が約 100 万になると、ドメイン内の Active Directory のインスタンス間のレプリケーション入出力が、プロファイルの読み取りと書き込みの動作に影響を及ぼし始めることが示されています。さらに、各ドメインのユーザー数が 100 万の場合は、ドメインを 5 つ程度にしないと、グローバル カタログのレプリケーション オーバーヘッドがプロファイル要求の入出力に影響を及ぼし始めるという、実質的な制限があります。これらの数字は、ハードウェアのパフォーマンスとチューニングの最適化に応じて異なります。

次の推奨事項は、一般的な電子商取引ユーザー プロファイルを使って行ったテストに基づいたものです。

  • Active Directory ドメインあたりのユーザーの最大数を 100 万にします。

  • ドメインのフォレストあたりの Active Directory ドメインの最大数を 5 にします。これは、Active Directory の配置での 500 万アカウントという実質的な制限と同じです。

詳細については、http://www.microsoft.com/japan/commerceserver でパフォーマンスと拡張性に関する最新のドキュメントを参照してください。

SQL Server

Commerce Server は Microsoft SQL Server 7.0 と SQL Server 2000 の両方をサポートしていますが、パフォーマンスが向上し、機能が強化されている SQL Server 2000 を使うことをお勧めします。パフォーマンスと拡張性について計画する場合は、次の点に注意してください。

  • SQL Server には、拡張性と安定性が優れているという特性があります。SQL Server は、きわめて動的なデータを扱うようにチューニングされていて、読み込みと書き込みのバランスは、パフォーマンスを特に低下させることなく、五分五分に保たれます。これは、嗜好や最後の訪問日時など、きわめて動的な属性がユーザーについて保持される電子商取引サイトに良好にマップされます。

  • ストアに最大 1 千万人のユーザーがいる場合のテストでは、1 パーセントの同時実行率で何の制限も見られませんでした。

  • SQL Server で作成したグループにはシステムの ACL/ACE の統合はなく、これにより、画像や音声のファイルなど、静的なコンテンツを保護することができます。

  • SQL で実装したグループは、複数値の文字列として作成され、グループあたり 200 人未満のユーザーという実質的な制限があります。

Active Directory と SQL Server を使用する

Active Directory で提供されるアクセス制御と SQL Server のパフォーマンスの両方が必要なサイトでは、Active Directory と SQL Server を一緒に使ってユーザー プロファイル情報を格納することをお進めします。このようなシナリオでは、ユーザー資格情報に関連付けられたデータときわめて安定したデータを、Active Directory データ ストアに格納します。残りの属性は SQL Server に格納します。

属性は、たとえば次のように分類します。

  • Active Directory に格納するユーザー プロファイル属性
    • ユーザー名

    • パスワード
  • SQL Server に格納するユーザー プロファイル属性
    • クレジット カード

    • 自宅の住所と郵便番号

    • 自宅電話番号

    • 前回の訪問日時

    • 好きな色

    • 前回訪問したページ

    • サイト滞在合計日数

移行での属性の互換性

Site Server 3.0 Membership Directory の属性によっては、同等の属性が Commerce Server プロファイル データ ストアにないことがあります。

次の表は、Membership Directory 内の属性の型、プロファイル データ ストア内の同等の属性の型、および Active Directory での型と SQL Server での型を示しています。これらは、変換の必要なく、Commerce Server でサポートされている属性です。

Membership Directory の属性の型 | Commerce Server プロファイル システムの同等の型 | Active Directory の基本データ型 | SQL Server の基本データ型
文字列 | Text、Password、SiteTerm、Profile | 文字列 | 文字列
Integer | Number のみ。 Currency | Number | Number
Date/Time | Date/Time、Date、Time | Date/Time | Date/Time
識別名 (DN) | Text、Password、SiteTerm、Profile | 文字列 | 文字列
Binary | Binary | Binary | Binary
複数の値を持つ文字列 | 複数の値を持つ Text、Password、SiteTerm、Profile | 複数の値を持つ文字列 | 複数の値を持つ文字列
複数の値を持つ Integer | 複数の値を持つ NUMBER | 複数の値を持つ Integer | サポートなし
複数の値を持つ DateTime | 複数の値を持つ Date/Time、Date、Time | 複数の値を持つ DateTime | サポートなし
複数の値を持つ識別名 | 複数の値を持つ Text、Password、SiteTerm、Profile | 複数の値を持つ文字列 | 複数の値を持つ文字列
複数の値を持つ Binary | 複数の値を持つ Binary | 複数の値を持つ Binary | サポートなし

注意

  • 複数の値を持つ属性をプロファイルで有効にする場合は注意してください。元となるデータ型については、複数の値を持つデータ型としてフラグが設定されているかどうかの確認は行われません。

  • 現在、一部のデータ型は、プロファイル内でサポートされていますが、SQL Server と Active Directory ストアのいずれかのデータ層では有効になっていません。Integer、Long Text、Reference がこれらに相当します。


移行を準備する

Membership Directory を Commerce Server に移行する前に、次の操作を行う必要があります。

  1. Commerce Server のプロファイルを設定する : Commerce Server プロファイル データ ストアにデータ要素とデータ型を作成します。

  2. 移行オブジェクトを変更する : 移行オブジェクトがすべてのユーザー情報を読み取って、必要に応じて変更してから、その情報を Commerce Server プロファイル ストアへ書き込むことができるようにします。

  3. Migration ProfileBuilder ツールを実行する : Directory Migration ツールで使われる拡張マークアップ言語 (XML) ファイルを作成します。

  4. Groups Pre-Population ツールを実行する : この手順は、Windows 2000 Server Active Directory を使う場合に必要です。

  5. 移行オブジェクトをコンパイルする : この手順は、移行オブジェクトを変更した場合にのみ必要です。

  6. 移行オブジェクトを登録する : Directory Migration ツールのオブジェクトを登録します。移行オブジェクトを変更していなくても行う必要があります。


Commerce Server のプロファイルを設定する

ここでは、Commerce Server 2000 がインストールされていて、各自の環境でソリューション サイトを正しく実行できることを確認済みであると想定しています。必要なデータ ストアに Commerce Server プロファイル システムからアクセスできることを確認する必要があります。必要なデータ ストアとは、たとえば、SQL Server、Active Directory、その他の OLE DB ストア、または Lightweight Directory Access Protocol (LDAP) バージョン 3 準拠のストアなどです。

Commerce Server のプロファイルを設定するには

  1. Membership Directory メンバ クラスのどの属性を移行するかを決定します。

  2. Commerce Server マネージャのプロファイル サービスを使って基本データ要素を作成します。

  3. プロファイル サービスを使って、適切なデータ型にデータ要素をマップします。

関連項目

プロファイル リソースの実行


移行オブジェクトを変更する

サイトの要件によっては、MigrationRead、MigrationWriteObj、MigrationModifyObj のいずれかのオブジェクトの変更が必要な場合があります。これらのオブジェクトは C++ で記述されています。

オブジェクトの変更は、Migration ProfileBuilder ツールを実行する前に行う必要があります。

関連項目

移行のためのプログラマーズ リファレンス


Migration ProfileBuilder ツールを実行する

Commerce Server プロファイルを設定して、移行オブジェクトを必要に応じて変更したら、Migration ProfileBuilder ツールを実行して、移行に使う拡張マークアップ言語 (XML) ファイルを生成することができます。

このトピックには、次の内容が含まれています。

  • Migration ProfileBuilder ツールをコンパイルする

  • Membership Directory からプロファイル データ ストアに属性をマップする

Migration ProfileBuilder ツールをコンパイルする

Migration ProfileBuilder ツールの変更が必要な場合は、次のフォルダにあるソース コードを使います。

<ドライブ名>:\Program Files\Microsoft Commerce Server\SDK\Tools\Membership Migration\ProfileBuilder

アプリケーション イメージは Microsoft Visual Basic 6.0 Professional を使って構築されています。

Migration ProfileBuilder ツールを変更したら、[スタート] メニューの [プログラム] の中の [管理ツール] にあるデータ ソース (ODBC) アドミニストレータを使って、Commerce Server プロファイル データ ストアのデータ ソース名 (DSN) を作成する必要があります。SQL Server ドライバを使ってシステム DSN を作成します。正しいプロファイル データ ストア (たとえば Retail_commerce) をポイントするように、既定の接続文字列を変更します。

Membership Directory からプロファイル データ ストアに属性をマップする

Migration ProfileBuilder ツールを実行するには、ツールを実行するサーバーが、Membership Directory の Lightweight Directory Access Protocol (LDAP) サーバーと、ProfileService オブジェクトを実行する Commerce Server コンピュータの両方にアクセスできなければなりません。

Migration ProfileBuilder ツールを実行するには

  1. Windows エクスプローラで、Migration ProfileBuilder ツールが格納されているフォルダに移動し、ProfileBuilder.exe をダブルクリックします。

  2. [Step 1] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [Location to store all of the profiles] | MigrationMainObj オブジェクトで使われる XML ファイルのあるディレクトリを入力します。通常は 1 つの XML ファイルだけを使います。
    [XML file name] | 生成するファイルの名前を入力します。Migration ProfileBuilder ツールにより、名前の末尾にプロファイル ID が追加されます。この例では、ファイル名は "migration"<n>.xml になります。'n' は、プロファイルを生成するごとに増分されます。
    [ProgID of IMigrationRead] | MigrationReadObj オブジェクトのプログラム ID を入力します。この既定値は、含まれるソース コードによって生成されます。
    [ProgID of IMigrationWrite] | MigrationWriteObj オブジェクトのプログラム ID を入力します。この既定値は、含まれるソース コードによって生成されます。
    [ProgID of IMigrationModify] | MigrationModifyObj オブジェクトのプログラム ID を入力します。この既定値は、含まれるソース コードによって生成されます。
    [ProgID of IMigrationLog] | MigrationLogObj オブジェクトのプログラム ID を入力します。この既定値は、含まれるソース コードによって生成されます。

  3. [Step 2] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [Membership Directory Server] | Membership Directory の NetBIOS 名を入力します。
    [Port Number] | Membership Directory インスタンスのポート番号を入力します。
    [MD User Name] | Membership Directory に接続するユーザーの識別名を入力します。
    [Password] | [MD User Name] ボックスに入力した Membership Directory ユーザー名のパスワードを入力します。
    [Server Name] | Commerce Server 管理データベースを実行している SQL Server の名前を入力します。
    [Database Name] | プロファイル ストアが格納されているデータベースの名前を入力します。
    [DBA Name] | システム管理者 (sa) 権限を持っているユーザーのログイン名を入力します。
    [DBA's Password] | ログイン ユーザーのパスワードを入力します。

  4. [Step 3] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [Migrate MemberOf] | この XML ファイルを読み取る移行オブジェクトがユーザーを Active Directory のグループに移行するかどうかを決定します。
    [Object Schema] | メンバなど、読み取られるユーザーを表すスキーマを入力します。ほかのカスタム クラスを移行する場合は、それらのカスタム クラスを入力できます。
    [Filter Depth] | どの程度まで詳細な検索を要求するかを指定する数値を入力します。これは、LDAP クエリのタイムアウトを防ぐ機能として用意されています。フィルタ深度 2 は cn=xx* を検索します。フィルタ深度 3 は cn=xxx* を検索します ("x" は [a-z, 0-9] です)。
    [Search Scope] | ツールが検索範囲とするルートの下の下位コンテナの深度を、ドロップダウン リストから選択します。
    [Search Filter Base] | バッチ モードで移行するアカウント名のプレフィックスを入力します。たとえば、cn=a です。

  5. [Step 4] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [Group's parent RDN] | Active Directory の相対識別名 (RDN) を入力します。
    [AD Administrator's User Name] | Active Directory に書き込む場合にどのアカウントとしてログインするかを、<ドメイン>\<アカウント> の形式で入力します。
    [AD Administrator's Password] | [AD Administrator's User Name] ボックスで指定したアカウントのパスワードを入力します。
    [Catalog] | 使うプロファイル カタログを選択します。通常、これがプロファイル定義です。

  6. 読み取り対象の属性を、書き込み対象の属性にマップします。最上部のリスト ボックスからプロファイル定義を選択することで、右側のペインに表示するオブジェクトを制御できます。関連付けを作成するには、[Site Server] ボックスで属性をクリックしてから、対応する属性を [Commerce Server] ボックスでクリックします。

    属性の左側の数字はマッピングを示します。たとえば、49 Telephone Number は 49 tel_number です。

    次の図は、Membership Directory から Commerce Server プロファイル データ ストアにマップされる属性を示しています。

    図をクリックすると、拡大または縮小します。

  7. 属性のマップが終了したら、[Preview] をクリックします。

    [Step 5] ダイアログ ボックスに XML ファイル全体が表示されます。

  8. XML ファイルが完成している場合は [Yes] をクリックします。

XML ファイルが保存されます。


Groups Pre-Population ツールを実行する

Migration ProfileBuilder ツールを実行して XML ファイルを作成したら、ユーザー プロファイルの移行先のグループを作成できます。

Groups Pre-Population ツールを実行するには、ツールを実行するサーバーが、Membership Directory の Lightweight Directory Access Protocol (LDAP) サーバーと、Commerce Server コンピューターの両方にアクセスできなければなりません。

Groups Pre-Population ツールを実行するには

  1. Windows エクスプローラで Groups Pre-Population ツールが格納されているフォルダに移動し、GroupMigration.exe をダブルクリックします。

  2. [Create group structure in AD] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [Server Name] | Membership Directory サーバー名を入力します。
    [Port Number] | Membership Directory LDAP サーバーのポート番号を入力します。
    [User Name] | LDAP サーバーへの接続に使うログイン名を入力します。<ドメイン名>\<ユーザー名> という形式にします。
    [Password] | ログイン名のパスワードを入力します。
    [Groups DN] | グループ オブジェクトの識別名を入力します。
    [Group's Schema] | グループのスキーマを記述するオブジェクトを入力します。
    [Organizational Unit] | 組織単位を入力します。Active Directory 内でこの組織単位の下にグループを作成します。
    [Server] | Commerce Server がインストールされているサーバーの名前を入力します。
    [Port] | Commerce Server がインストールされているサーバーのポート番号を入力します。
    [Partition] | Active Directory のフォレストに含めるパーティションのリストを入力します。dc = <ドメイン名> という形式にします。
    [Domain User Name] | Active Directory で権限を持つユーザーのログイン名を入力します。<ドメイン名>\<ユーザー名> という形式にします。
    [Password] | [Domain User Name] で指定したログイン名のパスワードを入力します。

    注

    • パーティションを入力する場合は、[Add] をクリックしてエントリを保存する必要があります。
  3. [Next] をクリックします。

  4. [Group Attributes Map] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [Top box on left] | Membership Directory のグループ属性カテゴリを選択します。
    [Top box on right] | Active Directory プロファイル データ ストアの名前を入力します。

  5. [Description] の下のボックスでユーザー プロファイルの属性を選択してから [Map] をクリックし、その属性を、Active Directory プロファイル データ ストア内の同等の属性にマップします。既定では、[Description] と [MBSTokenID] という 2 つのエントリがあります。マップする属性の名前を右側の列に入力します。入力した属性名が、一致するデータ型で Active Directory に存在することを確認してください。

  6. マップしない属性を、[Remove] をクリックして削除します。

  7. 属性のマップが終了したら、[Finish] をクリックします。

Groups Pre-Population ツールは Membership Directory 内のグループを読み取り、Active Directory 内にそれらを再作成します。存在するグループの数によっては、この作成処理にかなりの時間を要することがあります。


移行オブジェクトをコンパイルする

移行オブジェクトを変更する場合は、それらのオブジェクトを次の順序でコンパイルする必要があります。

  1. MigUtil

  2. MigrationModifyObj

  3. MigrationLogObj

  4. MigrationReadObj

  5. MigrationWriteObj

  6. MigrationMainObj

次の依存関係とその帰結であるコンパイル順序に注目してください。

  • MigrationMainObj は、ほかの 4 つのモジュールに依存します。

  • MigrationReadObj は MigUtil と MigrationModifyObj に依存します。

  • MigrationWriteObj は MigUtil と MigrationLogObj に依存します。

  • MigrationLogObj は MigUtil に依存します。

  • MigrationModifyObj は MigUtil に依存します。

MigrationLogObj オブジェクトは、エラーをログに記録するために MigrationWriteObj オブジェクトと MigrationMainObj オブジェクトで使われます。

MigrationReadObj オブジェクトが返すエラーは MigrationMainObj オブジェクトによってログに記録されるので、MigrationReadObj オブジェクトがエラーを直接ログに記録することはありません。

MigrationWriteObj オブジェクトは、書き込み中にエラーを見つけると、ユーザー レコード全体をロールバックして MigrationMainObj オブジェクトにエラーを返します。そして、MigrationMainObj オブジェクトがそのエラーをログに記録します。MigrationWriteObj が MigrationLogObj を直接使うのは、ロールバック処理自体の中でエラーが発生した場合だけです。

コードを変更した場合は、Microsoft Visual Basic 6.0 Service Pack 3 または Microsoft Visual C++ 6.0 Service Pack 3 を使って再コンパイルします。

次の表は、各コンポーネントに必要なコンパイラ設定を示しています。

コンポーネント | コンパイルに使う言語 | コンパイラ オプション
GroupMigration | Visual Basic 6 | 既定の設定を使用します。
ProfileBuilder | Visual Basic 6 | 既定の設定を使用します。
SubGroupManager | Visual Basic 6 | 既定の設定を使用します。
MigrationLogObj | Visual C++ 6 | アクティブ プロジェクトを "Release, Unicode, MinSize" に設定します。
MigrationMainObj | Visual C++ 6 | アクティブ プロジェクトを "Release, Unicode, MinSize" に設定します。
MigrationModifyObj | Visual C++ 6 | アクティブ プロジェクトを "Release, Unicode, MinSize" に設定します。
MigrationReadObj | Visual C++ 6 | アクティブ プロジェクトを "Release, Unicode, MinSize" に設定します。
MigrationWriteObj | Visual C++ 6 | アクティブ プロジェクトを "Release, Unicode, MinSize" に設定します。
MigUtil | Visual C++ 6 | アクティブ プロジェクトの構成を "Release" に設定します。


移行オブジェクトを登録する

ディレクトリ移行オブジェクトをインストールするコンピュータごとに、それらのオブジェクトを登録する必要があります。次に例を示します。

Regsvr32 /s MigrationLogObj.dll

次のサンプル コードを .bat ファイルにコピーして実行すると、5 つのオブジェクトがすべてまとめて登録されます。

Regsvr32 /s MigrationLogObj.dll
Regsvr32 /s MigrationMainObj.dll
Regsvr32 /s MigrationModifyObj.dll
Regsvr32 /s MigrationReadObj.dll
Regsvr32 /s MigrationWriteObj.dll


移行処理を開始する

移行処理を開始するには、移行処理を実行するサーバーに移行オブジェクトを配置します。次の手順に従ってください。

  1. Membership Directory で Migration 属性を作成して、メンバの属性を拡張します。

  2. Migration ProfileBuilder ツールを使って、少なくとも 1 つの移行プロファイルを作成します。計画している移行の種類ごとに (バッチと要求時を組み合わせて) 1 つの移行プロファイルを作成する必要があります。

  3. オブジェクトを配置するには、完成した移行オブジェクトを各サーバーにコピーして、登録します。詳細については、「移行オブジェクトを登録する」を参照してください。

  4. レジストリ キーが適切に設定されていることも確認する必要があります。詳細については、「MigrationLogObj オブジェクト」の "要件" を参照してください。

ユーザーが新しいサイトにログインする時点で、要求時移行によってユーザーを移行することを計画している場合は、移行オブジェクトを Web サーバーにインストールして、<ドライブ名>:\Program Files\Microsoft Commerce Server\SDK\Tools\MembershipMigration\Client ディレクトリにある Login.asp ファイルを使います。このファイルは、新しい Commerce Server サイトをユーザーが初めて訪れたときに移行をトリガする方法の例として使ってください。

すべてのユーザーをまとめて移行する場合は、すべてのユーザーの移行元であるサーバーに移行オブジェクトをインストールします。最高のパフォーマンスを得るには、移行処理専用のコンピュータを使います。Migration ProfileBuilder ツールを使って一定範囲のユーザーを移行するためのプロファイルを作成する場合は、[Step 3] ダイアログ ボックスでフィルタ深度、検索範囲、検索フィルタ ベースを設定します。移行処理を実際に開始する前に異なる値を使って実験をすると、移行のパフォーマンスを最適化できます。Membership Directory 内のユーザー アカウント名の分散パターンは、チューニング処理で重要な役割を果たすので、注意してください。

要求時での移行処理は、実際に運用する前に必ずテストする必要があります。


移行ログ ファイルを使ってのトラブルシューティング

移行オブジェクトは、"LogFilePath" レジストリ キーに指定されたディレクトリのテキスト ログ ファイルに問題を記録します。このログ ファイルには、移行の失敗に関するレポートと、正常な移行を妨げたイベントが記録されます。移行の失敗に関するそのほかの情報は、失敗したオブジェクトから返されるデータを使ってログに記録されます。

現在のログ ファイルの行数が、"MaxNumLinesEachFile" レジストリ キーに指定された上限に達すると、新しいログ ファイルが自動的に作成され、使用されます。


移行に成功したことを確認する

すべてのユーザーが正常に移行されたことを確認するには、Membership Directory にクエリを発行して、Migration 属性が欠落していたり、False に設定されているアカウントをすべて検出します。クエリで返されるアカウントがなくなるまで、返されたアカウントを個別に移行してください。

クエリでレコードが返されなければ、すべてのユーザーが移行されたことになります。

すべてのユーザーが移行されたことを確認したら、次のタスクを実行します。

  • 要求時での移行をトリガする Login.asp ファイルのバージョンを、必要に応じて元の Login.asp ファイルのバージョンと置き換えます。

  • 移行したオブジェクトがインストールされていたサーバーから、それらのオブジェクトの登録を解除し、削除します。

  • 移行ログ ファイルをバックアップして、削除します。


移行のためのプログラマーズ リファレンス

ここでは、メンバシップの移行について説明します。

ここでは、次のトピックについて説明します。

  • 移行オブジェクト

  • 移行ユーティリティ ライブラリ

  • XML ファイルの例


移行オブジェクト

ここでは、各移行オブジェクトについて説明します。

ここでは、次のトピックについて説明します。

  • MigrationMainObj オブジェクト

  • MigrationReadObj オブジェクト

  • MigrationWriteObj オブジェクト

  • MigrationModifyObj オブジェクト

  • MigrationLogObj オブジェクト


MigrationMainObj オブジェクト

MigrationMainObj オブジェクトは、Site Server 3.0 Membership Directory から Commerce Server プロファイル データ ストアへの移行を調整するために使います。MigrationMainObj オブジェクトは、次の 4 つの COM オブジェクトを使ってこのタスクを実行します。

  • MigrationReadObj オブジェクト

  • MigrationWriteObj オブジェクト

  • MigrationModifyObj オブジェクト

  • MigrationLogObj オブジェクト

インターフェイス

MigrationMainObj オブジェクトでは、次のインターフェイスをサポートしています。

interface IMigrationProfile::IDispatch
{
    HRESULT Initialize(BSTR sProfileDirectory);
    HRESULT MigrateObject(BSTR bstrKeyName, long lProfile_id);
    HRESULT ShutDown();
};

メソッド

次の表は、MigrationMainObj オブジェクトの各メソッドとその説明を示しています。

メソッド | 説明
Initialize 移行処理用のすべてのコンポーネントをセットアップします。sProfileDirectory パラメータは、すべてのプロファイル ファイルが置かれている場所を示すもので、次の値についてそれぞれ解析が行われます。
  • 各プロファイル ID の属性名を含む配列。これらの配列は、MigrationReadObj、MigrationModifyOb、MigrationWriteObj の各オブジェクトに渡される構造体に格納されます。

  • Membership Directory または SQL Server への接続文字列。接続文字列の配列の形式で MigrationReadObj オブジェクトと MigrationWriteObj オブジェクトに渡されます。

  • 属性の配列を正しく識別できるようにするための、各プロファイルのプロファイル ID。プロファイル ID は、MigrationReadObj オブジェクトと MigrationWriteObj オブジェクトに対して、プロファイル ID の配列の形式で渡されます。MigrationModifyObj オブジェクトには、単一の ID として渡されます。

  • COM オブジェクトを上記の値で初期化できるようにするための、各 COM オブジェクトのプログラム ID。プログラム ID は、プロファイル ID に基づいて正しいオブジェクトを呼び出せるように、配列に格納されます。
MigrateObject | ADSPath キーを Commerce ストアへ移行するために、Active Server Pages (ASP) ページまたは Microsoft Visual Basic Scripting Edition (VBscript) から呼び出されます。この ADSPath キーに使うプロファイル ID が、オブジェクトに渡されます。そして、このプロファイルが MigrationReadObj オブジェクトによって満たされるように、MigrationProfile オブジェクトが適切な属性の配列を探します。次に、その配列が、キー (ADSPath) とプロファイル ID と共に、MigrationReadObj、MigrationModifyObj、MigrationWriteObj の各オブジェクトに渡されて、処理されます。
ShutDown | MigrationReadObj オブジェクトと MigrationWriteObj オブジェクトから呼び出され、初期化時に作成されたデータ構造体の割り当てを解除します。

解説

プロファイル情報を各オブジェクトに容易に渡せるようにするには、次の構造体を .IDL ファイルに追加する必要があります。

typedef struct _PROFILE
    long lprofile_id;
    BSTR bstrConnection;  //bstrConfigStore in CS
    BSTR bstrCatalog;     // used in profile service initialization
    BSTR bstrMemberOf;    // migrate user's membership?
    SAFEARRAY(BSTR) Attributes;
    SAFEARRAY(USHORT) nAttributeTypes; // number of attributes types?
    SAFEARRAY(BSTR) ProfileTypes;      // only for write use
    BSTR bstrMOUserName;  // Membership User Name
    BSTR bstrMDPassword;
    BSTR bstrCSUserName
    BSTR bstrCSPassword;
    BSTR bstrADSite;      // True for ADSite, otherwise False
    BSTR bstrGroupOU;     // OU that holds all groups
    // modify info
    long lNumModifies;    // total number of modifiers in this profile
    SAFEARRAY(USHORT) rgModIndex;
} PROFILE;


MigrationReadObj オブジェクト

MigrationReadObj オブジェクトは、Membership Directory 内の各属性の値を読み取って、それらの値を MigrationProfile オブジェクトに送信するために使います。MigrationReadObj オブジェクトは、各属性の型を読み取ってから、データを埋めます。

インターフェイス

MigrationReadObj オブジェクトでは、次のインターフェイスをサポートしています。

interface IMigrationRead::IUnknown
{
    HRESULT Initialize([in] long lNumProfiles,
                       [in] size_is(lNumProfiles)] PROFILE Profile[],
                       [in] BSTR bstrModifyProgID);

    HRESULT ReadAttributes([in] BSTR bstrKeyName,
                           [in] long lProfile_id,
                           [out] SAFEARRAY(VARIANT)* AttributeStructure,
                           [out] VARIANT* varValueIndex,
                           [out] VARIANT* vMemberOfs);

    HRESULT MigrationFailed([in] BSTR bstrKeyName);

    HRESULT ShutDown();
};

メソッド

次の表は、MigrationReadObj オブジェクトの各メソッドとその説明を示しています。

メソッド | 説明
Initialize | 各プロファイル ID および使用する接続の属性がすべて格納されている構造体の配列を受け入れます。このメソッドは、このデータを使い、プロファイル ID に基づいて特定のキーに対してどの属性を読み取るかを決定します。
ReadAttributes | 実行される必要のある移行ごとに呼び出されます。このメソッドは、プロファイル ID を使って、キーに関連付けられている属性を調べ、それらの属性をデータ ソースから配列に読み取ります。
MigrationFailed | このオブジェクトの移行に失敗した場合に属性 cn=Migration を False に設定するために呼び出されます。この属性は Binary 型であり、現在のスキーマには存在しません。
Shutdown | MigrationProfile オブジェクトは、作成された接続プールを解放するために Shutdown メソッドを呼び出します。


MigrationWriteObj オブジェクト

MigrationWriteObj オブジェクトは、各属性の値を Commerce Server プロファイル データ ストアに書き込むために使います。

インターフェイス

MigrationWriteObj オブジェクトでは、次のインターフェイスをサポートしています。

interface IMigrationWrite::IUnknown
{
    HRESULT Initialize([in] long numBuffers,
                       [in] long numProfiles,
                       [in] size_is(numProfiles)] PROFILE Profiles[],
                       IUnknown * pIMigrationLog);

    HRESULT WriteUserAttributes([in] BSTR bstrKeyName,
                                [in] long lProfile_id,
                                [in] SAFEARRAY(VARIANT)*
                                                  AttributeStructure,
                                [in] VARIANT *varValueIndex,
                                [in] VARIANT *vMemberOfs);

    HRESULT ShutDown();
};

メソッド

次の表は、MigrationWriteObj オブジェクトの各メソッドとその説明を示しています。

メソッド | 説明
Initialize | 各プロファイル ID の属性がすべて格納されている構造体の配列を受け入れます。このメソッドは、このデータを使い、プロファイル ID に基づいて特定のキーに対してどの属性を書き込むかを決定します。
WriteUserAttributes | 実行される必要のある移行ごとに呼び出されます。このメソッドは、プロファイル ID を使って、キーに関連付けられている属性を識別し、それらの属性を配列から Commerce Server プロファイル データ ストアに書き込みます。
Shutdown | MigrationProfile オブジェクトは、作成された接続プールを解放するために Shutdown メソッドを呼び出します。


MigrationModifyObj オブジェクト

MigrationModifyObj オブジェクトは、Membership Directory から読み取られたデータを、Commerce Server プロファイル データ ストアに移行する前に変更するために使います。

インターフェイス

MigrationModifyObj オブジェクトでは、次のインターフェイスをサポートしています。

interface IMigrationModify::IUnknown
{
    HRESULT Initialize();
    HRESULT ModifyAttributes([in] long lProfile_id,
                             [in] BSTR bstrAttribute,
                             [in] USHORT targetType,
                             [in] USHORT sourceType,
                             [in, out] VARIANT *varTarg);
};

メソッド

次の表は、MigrationWriteObj オブジェクトの各メソッドとその説明を示しています。

メソッド | 説明
Initialize | MigrationModifyObj オブジェクトを初期化します。ModifyAttributes メソッドを呼び出す前に、このメソッドを呼び出します。
ModifyAttributes | 変更対象のキー、プロファイル ID、および値の配列を受け入れます。このメソッドは、プロファイル ID を使って、Initialize メソッドで読み取った属性に基づいて配列の構造体を決定します。


MigrationLogObj オブジェクト

MigrationLogObj オブジェクトは、接続文字列で決定されたデータ ストアにログ データを書き込むために使います。このログ データには、それぞれの移行の状態が含まれます。

インターフェイス

MigrationLogObj オブジェクトでは、次のインターフェイスをサポートしています。

interface IMigrationLog::IUnknown
{
    HRESULT Initialize([in] int nLogSuccess);
    HRESULT RecordInfo([in] LOGINFO lgInfo);
    HRESULT LogSuccess([in] BSTR bstrKeyName,
                       [in] long lprofile_id);
};

IMigrationLog インターフェイスは次の構造体に依存します。

typedef struct _LOGINFO
{
    long  lProfile_id
    BSTR  bstrDN;
    BSTR  bstrObject;
    Long  lErrorCode;
    BSTR  bstrReason;
} LOGINFO;

メソッド

次の表は、MigrationLogObj オブジェクトの各メソッドとその説明を示しています。

メソッド | 説明
Initialize | MigrationLogObj オブジェクトを初期化します。RecordInfo メソッドまたは LogSuccess メソッドを呼び出す前に、このメソッドを呼び出します。
RecordInfo | このメソッドは、重要なデータをログ ファイルに記録するために使います。
LogSuccess | このメソッドは、移行が正常に行われて、LogLevel レジストリ キーが 1 または 3 の場合に呼び出されます。成功コードは、LogFilePath レジストリ キーの値、文字列 "_success"、および数値の 3 つを連結して作成される名前の付いたファイルに書き込まれます。この数値は、ファイルの行数が "MaxNumLinesEachFile" レジストリ キーの値を超えるごとに増分されます。たとえば、C:\MigrationLog_success1 というファイル名になります。

要件

次の表は、MigrationLogObj オブジェクトの要件を示しています。

パラメータ | 説明
レジストリ キー | SYSTEM\\CurrentControlSet\\Services\\Migration\\Parameters
LogFilePath | ログ ファイルのパスで、既定では、"C:\MigrationLog" です。データ型は文字列です。
MaxNumLinesEachFile | 各ログ ファイルの最大行数です。行数がこの値を超えると、同じディレクトリに別のログ ファイルが作成されます。データ型は DWORD です。
MaxNumThreads | 移行ツールに対して実行されるスレッドの最大数で、既定値は 4 です。データ型は DWORD です。
AttributeFactors XML ファイルにある各属性のマッピング セクションのエントリ数です。データ型は DWORD です。既定値は 4 で、次の 4 行をカウントします。
<FromMembership>givenName</FromMembership>
<ToUPS>GeneralInfo.first_name</ToUPS>
<WProfileType>UserObject</WProfileType>
<WTypes>VT_BSTR</WTypes>

マッピング セクションの各属性には、この 4 行が格納されます。それぞれの値は異なります。
ADsSearchPageSize | 検索ページ数です。データ型は DWORD です。詳細については、Active Directory Service Interfaces (ADSI) のドキュメントを参照してください。
MaxNumLinesEachFile | 各ログ ファイルの最大行数です。この値に達すると、同じ場所に新しいログ ファイルが作成されます。ファイル名には連番が付けられます。データ型は DWORD です。
NumberOfLinesToFlush | 指定された数の行がログ ファイルに含まれる場合にメモリをフラッシュします。データ型は DWORD です。
MaxAttributesFetched Membership Directory に対して要求する値を持っている属性の数です。この数が大きすぎるとタイムアウトになることがあり、小さすぎるとパフォーマンスが低下します。この値は、最初は設定しないでください。

MigrationReadObj オブジェクトでタイムアウト エラーが発生する場合は、この値を 50 に設定します。データ型は DWORD です。
InitialWaitPeriod | 処理が最初に休止する、ミリ秒単位での時間で、既定値はゼロ (0) です。5 未満に設定することをお勧めします。データ型は DWORD です。
BackOffTimes | 失敗した場合の再試行回数で、既定値はゼロ (0) です。4 未満に設定することをお勧めします。データ型は DWORD です。
LogLevel ログ レベルの値は、次のいずれかです。

0 : エラーだけを記録します。

1 : エラーと成功を記録します。

2 : エラーとパフォーマンスを記録します。

3 : エラー、成功、パフォーマンスを記録します。

データ型は DWORD です。


移行ユーティリティ ライブラリ

移行ユーティリティ ライブラリ MigUtil には、グローバルな設定とメソッドがあります。たとえば、次のグローバル変数があります。

  • グローバル変数 g_pwszUserObject : Commerce Server の既定の設定に対応します。UserObject 以外のプロファイルに切り替える場合は、新しいプロファイルの名前をこのグローバル変数に割り当てる必要があります。

  • グローバル変数 g_searchOrder : 一般名 (CN) の検索フィルタの中で使うことができる、0 ～ 9 の数字以外のすべての記号を保持します。0 ～ 9 の数字は、初期化ステージで文字に変換されます。これらの 10 個の数字を保持するため、この配列に 10 個分のスペースを余分に割り当てる必要があります。次に例を示します。
    WCHAR g_searchOrder[128] = {L'a', L'b', L'c', L'd', L'e', L'f', L'g',
                            L'h', L'i', L'j', L'k', L'l', L'm', L'n',
                            L'o', L'p', L'q', L'r', L's', L't', L'u',
                            L'v', L'w', L'x', L'y', L'z'};

    この例では、予約される 128 文字は (10 個の余分の文字を含めても) 十分な数を超えています。

  • グローバル変数 g_numSymbols : g_searchOrder の配列に格納する記号の (数字の 10 個分を含まない) 数を格納します。次に例を示します。
    int g_numSymbols = 26;


XML ファイルの例

次に、移行プロファイルの XML ファイルの例を示します。Commerce Server 2000 Software Development Kit (SDK) の Migration ProfileBuilder ツールでは、次のような XML ファイルが構築されます。

<?xml version="1.0" ?>
<PROFILE1>
    <MIGRATION-PROFILE>
        <ProfileID>2</ProfileID>
    </MIGRATION-PROFILE>
    <MigrationObjects>
        <ReadObj>MigrationReadObj.MigrationRead</ReadObj>
        <WriteObj>MigrationWriteObj.MigrationWrite</WriteObj>
        <ModifyObj>MigrationModifyObj.MigrationModify</ModifyObj>
        <LogObj>MigrationLogObj.MigrationLog</LogObj>
    </MigrationObjects>
    <MembershipDirectory>
        <MConnectionString>LDAP://localhost1:1003</MConnectionString>
        <MigrateMemberOf>TRUE</MigrateMemberOf>
        <MDUserName>cn=administrator,ou=members,o=migration</MDUserName>
        <MDPassword>password</MDPassword>
    </MembershipDirectory>
    <SearchFilterInfo>
        <FilterDepth>2</FilterDepth>
        <ADsSearchScope>2</ADsSearchScope>
        <SearchFilterBase>cn=</SearchFilterBase>
    </SearchFilterInfo>
    <UserProfileService>
        <ADSite>TRUE</ADSite>
        <GenerateSamAccount>TRUE</GenerateSamAccount>
        <UConfigStore>SERVER=localhost2;
                      DATABASE=supplierAD_commerce;
                      UID=sa;PWD=</UConfigStore>
        <UCatalog>Profile Definitions</UCatalog>
        <GroupOUToDC>OU=MSCS_40_Root</GroupOUToDC>
        <CSUserName>administrator</CSUserName>
        <CSPassword>csdqfe</CSPassword>
    </UserProfileService>
    <Mapping>
        <FromMembership>givenName</FromMembership>
        <ToUPS>GeneralInfo.first_name</ToUPS>
        <WProfileType>UserObject</WProfileType>
        <WTypes>VT_BSTR</WTypes>
        <FromMembership>sn</FromMembership>
        <ToUPS>GeneralInfo.last_name</ToUPS>
        <WTypes>VT_BSTR</WTypes>
        <WProfileType>UserObject</WProfileType>
        <FromMembership>cn</FromMembership>
        <ToUPS>ProfileSystem.sam_account_name</ToUPS>
        <WTypes>VT_BSTR</WTypes>
        <WProfileType>UserObject</WProfileType>
    </Mapping>
</PROFILE1>


サイトの配置

Microsoft Commerce Server 2000 の Web サイトを配置するには、必要なハードウェアおよびソフトウェアを準備して構成し、Commerce Server 2000 をインストールし、Web サイトをアンパッケージし、サイトを監視および保守するための手順を整えます。全体の配置作業は、ここで説明するいくつかの段階に分かれます。

ここでは、次のトピックについて説明します。

  • 配置の前に 配置作業を始める前に完了しておくべき項目について説明します。

  • サーバー プラットフォームを設定する サイトを開発環境から移動して、テストを行い、配置するための、開発環境、テスト環境、および運用環境を設定する方法について説明します。また、Commerce Server をインストールする前に、ソフトウェア プラットフォームを構成する方法についても説明します。

  • サイトをインストールする Commerce Server をインストールし、2 種類の異なる小規模なサイト構成で Web サイトをアンパッケージする方法について説明します。

  • サイトにセキュリティを設定する 不正なアクセスを防ぐためのサイトの構成方法について説明します。

  • サイトをバックアップする サイトをバックアップする方法について説明します。

  • サイトを更新する 最初の配置後に、サイトのコンテンツおよびデータベースを更新する方法について説明します。

  • サイト パッケージャを使う Commerce Server サイト パッケージャの機能について、およびサイトをパッケージ化したりアンパッケージしたりする方法の概要について説明します。また、サイト パッケージャの参照情報も示します。

関連項目

配置の計画

Commerce Server のインストール計画


配置の前に

サイトを配置する前に、次のチェックリストを使って、計画が完了しているかどうかを確認します。

ここでは、次のトピックについて説明します。

  • サイト アーキテクチャのチェックリスト サイト アーキテクチャの計画および実装を行うためのチェックリストを提供します。

  • 可用性向上チェックリスト サーバーの障害を防ぐためのチェックリストを提供します。

  • サイトの開発およびテストのチェックリスト サイトの開発およびテストを行うためのチェックリストを提供します。

  • ビジネス プロセスのチェックリスト ビジネス プロセスの計画および実装を行うためのチェックリストを提供します。

  • プラットフォーム セキュリティのチェックリスト Windows 2000 プラットフォームおよびインターネット インフォメーション サービス (IIS) 5.0 のセキュリティを設定するためのチェックリストを提供します。

  • Commerce Server セキュリティ チェックリスト サイトのセキュリティを設定するためのチェックリストを提供します。

関連項目

配置の計画

Commerce Server のインストール計画

ハードウェアの必要条件

ソフトウェアの必要条件


サイト アーキテクチャのチェックリスト

サイトを配置する前に、サイト アーキテクチャの計画が立てられ、実装されているかどうかを確認します。次の項目をチェックしてください。

  • 最低 1 台の Microsoft Active Directory ドメイン コントローラを含む Microsoft Windows 2000 Server ネットワークが構築されている。ネットワーク負荷分散 (NLB) を使うか、またはサーバー クラスタを作成し、サイトの可用性を向上させる場合は、Windows 2000 Advanced Server を使うことをお勧めします。

  • 理想的には、Active Directory を効率よく扱うために 2 台のコンピュータが必要です。これらのコンピュータは、複製されたドメイン コントローラとして機能します。そのほかのコンピュータは、このドメインに参加します。詳細については、「Active Directory Servers をセットアップする」を参照してください。

  • Commerce サーバー用の Windows 2000 ドメイン アーキテクチャが決定され、文書化されている。

  • サーバー名、役割、ポート、および必要なサービスが特定され、文書化されている。

    注

    • できるだけサーバーの名前は変更しないでください。詳細については、「サーバーの名前を変更する」を参照してください。
  • 必要なインターネット ドメイン名およびインターネット プロトコル (IP) アドレスが取得されている。

  • Windows 2000、インターネット インフォメーション サービス (IIS) 5.0、および Microsoft SQL Server のセキュリティ モデルが決定されている。

  • Internet Explorer Version 5.0 以降がインストールされている。Commerce Server ビジネス デスク クライアント コンピュータには Internet Explorer 5.5 が必要です。

  • ファイアウォールおよびプロキシ サーバーが設置されている。

  • 初期のユーザー、グループ、権限、およびポリシーが設定されている。

  • サーバー ハードウェアがサイトにインストールされている。

  • ビジネス デスク クライアント コンピュータ用のクライアント ハードウェアがサイトにインストールされている。

  • ネットワーク ハードウェアおよび接続が設定されており、インターネットへの接続が確立されている。

  • 代替用のハードウェアがサイトに用意されている。

  • ビジネス デスクのセッションにリモート コンピュータを使う場合は、Windows 2000 ターミナル サービスが設定されている。詳細については、『ターミナル サービス』を参照してください。

  • 「Commerce Server のインストール計画」で定義されている、必要なソフトウェアはすべてこのサイトで入手できます。


可用性向上チェックリスト

サイトを配置する前に、次の方法を組み合わせてサーバーの障害に対処するための計画が立てられているかどうかを確認します。

  • 地理的に分散化されたデータ センター。

  • 無停電二重化電源装置。

  • データのバックアップ。

  • クラスタ化されたデータベース サーバー。Windows クラスタリングでは、共通データを共有する 2 台のサーバーがクラスタを構成し、1 つのシステムとして機能します。詳細については、「サーバー クラスタを設定する」を参照してください。

  • データ レプリケーション。Microsoft SQL Server のレプリケーション機能を使って、サイトのデータベース サーバー間の同期を保ちます。SQL Server には、スナップショット レプリケーションやトランザクション レプリケーションなどのレプリケーション オプションが用意されています。詳細については、｢SQL Server を使ってデータベースを複製する｣を参照してください。

  • Web サーバーのネットワーク負荷分散クラスタ。ネットワーク負荷分散 (NLB) は、Web (IIS/ASP ベースの) アプリケーションの可用性および負荷分散を提供します。

サイト障害を回避する方法の詳細については、「可用性向上の計画」を参照してください。


サイトの開発およびテストのチェックリスト

サイトを配置する前に、サイトの開発およびテストが完了しているかどうかを確認します。次の項目をチェックしてください。

  • サイトの開発が完了している。

  • サイトがパッケージ化されている。

  • サイト リソースの一覧が文書化されている。

  • サイト サーバーの名前が決定されている。

  • データベース名、ユーザー名、およびパスワードが決定されている。

  • テストが完了している。テストを行う項目には、コンテンツ、ブラウザの互換性、パフォーマンス、サーバー負荷、データベース、検索オプション、クエリ応答時間、データの有効性と整合性、システムの回復、外観の一貫性、リンク、およびルーターがあります。サイトのパフォーマンスをテストするには、Web Application Stress ツールを使います。

  • 独立した、外部の会社がサイトのセキュリティ監査を完了している。セキュリティ リスクを発見するには、こうした調査が効果的です。


ビジネス プロセスのチェックリスト

サイトを配置する前に、ビジネス プロセスの計画が立てられ、実装されているかどうかを確認します。次の項目をチェックしてください。

  • ワークフローが決定され、テストされている。

  • システム管理者が初期トレーニングを受けており、Commerce Server ビジネス デスクの主なユーザーであるビジネス マネージャがビジネス デスク チュートリアルを完了している。

  • サーバー環境チームが特定され、運用手順 (変更依頼、変更管理ログ、サーバーの更新、保守のスケジュール、上司への問題報告手順など) が確立されている。

詳細については、「ビジネス プロセス パイプラインの計画」を参照してください。


プラットフォーム セキュリティのチェックリスト

イントラネットまたはインターネット上のコンピュータが公開する情報のセキュリティを強化するには複数の方法があります。システムのセキュリティに不安がある場合は、このチェックリストを使って、改善が見込めるセキュリティの要素をチェックしてください。

注

  • 高い機密性を要する情報については、専門のセキュリティ コンサルティング会社に問い合わせてください。コンサルティング会社のサポートを受けることにより、適切なセキュリティ ポリシーおよびセキュリティ手順を確立できる場合もあります。

Windows セキュリティ

インターネット インフォメーション サービス セキュリティ

物理的なセキュリティ

作業員のセキュリティ

Windows セキュリティ

Commerce Server のセキュリティ機能は、Windows のセキュリティ機能を基にしています。Windows で次の設定を行うことにより、Web サイトのセキュリティを強化できます。

ファイル システム

 | 操作 | 理由
□ | NTFS を使う | NTFS システムのセキュリティのほうが FAT システムのセキュリティより堅牢です。コンピュータのハードディスクを、FAT から NTFS に変換する方法の詳細については、Windows のマニュアルを参照してください。
□ | ディレクトリの権限を確認する | 既定では、Windows で作成される新規フォルダには、フル コントロール権限が、Everyone グループに対して割り当てられます。
□ | IUSR_computername アカウントのアクセス制御を設定する | この操作を行うことにより、匿名ユーザーによるコンピュータへのアクセスを制限できます。
□ | 実行可能ファイルを個別のディレクトリに格納する | この操作を行うことにより、アクセス権限の割り当ておよび監査が容易になります。
□ | ネットワーク ドライブ上の NTFS の権限をチェックする | 既定では、Windows で作成される新規の共有リソースには、フル コントロール権限が、Everyone グループに対して割り当てられます。

ユーザ アカウント

 | 操作 | 理由
□ | ユーザー アカウントを頻繁に確認する | 有効な管理者によって作成されていない新規アカウントをチェックします。IUSR_computername アカウントに割り当てられた権限を確認します。サイトへの匿名アクセスを行うすべてのユーザーは、このアカウントへのアクセス権を所有します。監査を行うことにより、セキュリティ ポリシーが、いつ、誰によって変更されたかを監視することもできます。
□ | 解読が困難なパスワードを選択する | 大文字と小文字、数字、および特殊文字を組み合わせることにより、パスワードの解読をより困難にすることができます。
□ | 厳しいアカウント ポリシーを維持する | 重要なユーザー アカウントおよびグループに対して割り当てられているアクセスの種類を常に把握しておきます。同様に、セキュリティ ポリシーを変更する権限を持つユーザーを把握しておくことも必要です。
□ | 管理者グループのメンバーシップを制限する | 一般に、管理者グループは、コンピュータへのフル アクセス権を持ちます。
□ | 管理者アカウントにパスワードを割り当てる | 既定では、管理者アカウント用のパスワードはブランクになっています。前で述べたように、セキュリティをより堅牢にするために、解読が困難なパスワードを設定します。

サービスおよびその他の問題

 | 操作 | 理由
□ | 最小限のサービスを実行する | 作業の目的上どうしても必要なサービスだけを実行します。むやみにサービスを追加することは、悪質な攻撃の機会を与えることにつながります。
□ | PDC をサーバーとして使わない | プライマリ ドメイン コントローラ (PDC) では、常時、認証要求が処理されています。PDC で Web サービスを実行するとパフォーマンスが低下します。また、すべてのネットワークのセキュリティを無効化するような攻撃に対して PDC をさらすことにもなります。
□ | 監査を有効にする | 機密ファイルや重要なファイルへのアクセスを追跡するために、監査は極めて重要なツールです。監査は、セキュリティ ポリシーの変更など、サーバー イベントの追跡にも使用できます。監査ログをアーカイブしておき、後で利用することもできます。
□ | コンピュータをリモート管理する場合は暗号化を使う | 通常、リモート管理では、管理者アカウントのパスワードなど機密情報の交換が行われます。オープン ネットワーク上の機密情報にセキュリティを設定するには、Secured Sockets Layer (SSL) 暗号化を使います。
□ | インターネットを参照する場合は、権限の低いアカウントを使う | 管理者、パワー ユーザー、またはその他の上級権限が付与されたアカウントを使ってインターネットを参照すると、コンピュータに対する潜在的な攻撃の機会を増やすことになります。同様に、プライマリ ドメイン コントローラ (PDC) からインターネットを参照しないでください。
□ | 重要なファイルやレジストリのバックアップを頻繁に行う | データの安全性を保障するセキュリティ維持方法はありません。
□ | 定期的にウィルス チェックを実行する | オープン ネットワーク上のすべてのコンピュータが、コンピュータ ウィルスに感染する可能性があります。定期的にチェックすることで無用なデータの損失を防ぐことができます。
□ | インターネット アダプタ カードの不要なサービスをアンバインドする | 警告 サービスをアンバインドすると、システムのほかのユーザーに悪影響が生じる場合があります。事前にシステム管理者に確認してください。

インターネット インフォメーション サービス セキュリティ

IIS では、認証および Web アクセス権など、Web サイトの最前線のセキュリティが提供されます。

認証

 | 操作 | 理由
□ | 最も信頼性の高い認証方式を使う | クライアントで利用できる最も信頼性の高い認証方式を使います。たとえば、統合 Windows 認証やダイジェスト認証には、基本認証よりも高い信頼性があります。クライアント証明書を使って、より信頼性の高い認証を行うこともできます。
□ | 一対一マッピング/多対一マッピング | クライアント証明書を Windows ユーザー アカウントにマッピングする場合、これらの方法のいずれかまたは両方を使用できます。一対一マッピングでは、より高度のセキュリティを実現できますが、クライアント証明書のコピーがサーバー上に格納されている必要があります。多対一マッピングは、実装が容易で、サーバー上にクライアント証明書のコピーが格納されている必要もありません。

Web アクセス権

 | 操作 | 理由
□ | Web および NTFS の権限を同期させる | Web と NTFS の権限が同期していない場合は、より制限の厳しい方の権限を使います。同期は手動で行うことも、アクセス許可ウィザードを使って行うこともできます。
□ | IIS をリモート管理している場合は IP アドレス制限を使う | 詳細については、IIS のマニュアルの｢Granting and Denying Access to Computers｣を参照してください。
□ | 最も制限の厳しい権限を使う | たとえば、Web サイトが情報の表示のみに使われる場合は、Read の権限だけを割り当てます。ディレクトリ (つまりサイト) に ASP アプリケーションが含まれる場合は、Scripts や Executables ではなく、Scripts Only の権限を割り当てます。詳細については、IIS のマニュアルの｢Setting Web Server Permissions｣を参照してください。
□ | Write、Scripts、Executable の権限 | この組み合わせを行う場合は、細心の注意を払ってください。第三者が、サーバーに対して、悪質な実行可能ファイルをアップロードしたり実行したりできる可能性があります。詳細については、IIS のマニュアルの｢Setting Web Server Permissions｣を参照してください。

物理的なセキュリティ

 | 操作 | 理由
□ | 不在にする場合は、ワークステーションをロックする | コンピュータから離れる場合は、CTRL + ALT + DELETE キーを押し、[ワークステーションのロック] をクリックします。
□ | パスワードで保護されたスクリーン セーバーを使う | 実行までの待ち時間は、できるだけ短くし、席を外した直後に使われないようにします。スクリーン セーバーは何も指定しないようにします。アニメーションのスクリーン セーバーを使うとサーバーのパフォーマンスが低下することがあります。
□ | コンピュータをしっかり保管する | 悪質なユーザーによるアクセスの危険性を低減するため、コンピュータを安全な部屋に保管、施錠します。

作業員のセキュリティ

 | 操作 | 理由
□ | 異なる管理者アカウントを使う | 管理者権限を持つ個々のユーザーには、異なるユーザー アカウントとパスワードが割り当てられている必要があります。これにより、加えられた変更の追跡が容易になります。
□ | 機密保持契約書を使う | 機密保持契約書を使うことにより、責任の所在をより明確にできます。
□ | 定期的にアカウントの再割り当てを行う | ユーザー アカウント情報のセキュリティが損なわれるリスクを低減するには、管理者またはその他の上級権限を持つ作業員に対して新しいユーザー アカウントを割り当てます。
□ | 使われていないアカウントを早急に削除する | これにより、会社に対する不満を抱いている、既に退職した従業員や以前の製造元が、ネットワークにアクセスするリスクを低減できます。


Commerce Server セキュリティ チェックリスト

サイトを配置する前に、サイト セキュリティの計画が立てられ、実装されているかどうかを確認します。

サイトのセキュリティを設定するときは、次に示すガイドラインを使います。

  • インターネット インフォメーション サービス (IIS) 5.0 と SQL Server は、できるだけ別々のコンピュータにインストールする。データベースが格納されているコンピュータをユーザーの接続先にすると、データに対するセキュリティ リスクが生じます。Web アプリケーションとデータベースは別々のコンピュータに配置する必要があります。

  • 機密扱いのデータは、必ずファイアウォールの内側で管理する。

内部の攻撃からサイトを保護するには、次に示す配置ガイドラインを使います。

  • すべてのコンピュータに対する物理的なアクセスを制限する。

  • すべてのコンピュータでログオン ユーザー数を制限し、業務上必要な最小限の権限だけをユーザーに与える。

  • パスワードを頻繁に変更する (特に、社員の退職後)。

  • システムのすべての利用状況のログを記録して、頻繁に調べる。

  • すべてのバックアップを安全な場所に保管する。

  • Commerce Server CS 認証リソースを使って、Microsoft Commerce Server 2000 サイトの認証および識別の方法を設定または変更する。詳細については、「CS 認証リソースの管理」を参照してください。

次に、サイトの配置中または配置直後に考慮すべきそのほかのセキュリティ項目の一覧を示します。

  • Commerce Server のフォルダおよびファイルへのアクセスを制限する。

  • Commerce Server サービスへのアクセスを制限する。

  • ビジネス デスク モジュールへのアクセスを制限する。

  • 管理データベースへのアクセスを制限する。

  • ログ ファイルのセキュリティを設定する。

  • 最も安全なバージョンの統合 Windows (NTLM) 認証だけを有効にする。

  • "sa" SQL 管理者ログインを削除する。

  • データベース管理者にフル アクセスを提供する。

インストール後のセキュリティ項目の詳細については、｢サイトにセキュリティを設定する｣を参照してください。

ここでは、次のトピックについて説明します。

  • ビジネス デスクのセッションにセキュリティを設定する

  • ユーザー情報の保管に Active Directory を使う

  • ユーザーを内部ドメインから切り離す

  • SQL Server のパスワードにセキュリティを設定する

  • データ ウェアハウスの権限を設定する

  • Cookie のセキュリティを設定する

  • サイトが格納されているフォルダの権限設定にスクリプトを使う

  • 外部の顧客のサイトを運用する

ビジネス デスクのセッションにセキュリティを設定する

Commerce Server サイト パッケージャが Commerce Server ビジネス デスク アプリケーションをアンパッケージするときに、アプリケーションは統合 Windows 認証を使うように構成されます。これによってクライアント認証の安全は確保されますが、ビジネス デスクのセッション自体はデータをクリア テキストで送信します。ビジネス デスクのセッションにセキュリティを設定するには、インターネット ファイアウォールの内側にあるビジネス デスク クライアントだけを許可するようにします。セキュリティをさらに強化するには、ビジネス デスクの接続に Secure Sockets Layer (SSL) を使います。SSL の詳細については、IIS 5.0 のマニュアルの｢Setting Up SSL on Your Server｣を参照してください。

ユーザー情報の保管に Active Directory を使う

パスワード、クレジット カード番号、電話番号などのユーザー情報は、Commerce Server のプロファイル データベースにクリア テキストで保管されます。SQL Server は不正なアクセスに対してこの情報にセキュリティを設定しますが、セキュリティを強化するには、Active Directory を使って機密扱いのユーザー データを保管するようにします。詳細については、「Active Directory 統合の計画」を参照してください。

また、SQL Server のデータを暗号化するサードパーティの製品を使う方法もあります。

ユーザーを内部ドメインから切り離す

サイトおよび内部組織の両方に Microsoft Active Directory を使う場合は、別々のドメインを使う必要があります。ユーザー データを企業ネットワークの外側で管理すると、より多くの時間と手間がかかりますが、通常はそのコストに見合うだけのセキュリティの強化を図ることができます。内部用と外部用に同じドメインを使うと、外部ユーザーのデータによって内部の Active Directory グローバル カタログが壊される可能性があります。サイトで内部の Active Directory を使わざるを得ない理由がある場合は、ファイアウォールの Active Directory ドメイン コントローラと同じ側に、Commerce Server ビジネス デスク サーバーを配置することをお勧めします。内部と外部の Active Directory 情報を共有した場合のリスクとしては、サイトの改変、不正購入、アカウントの変更、サービス拒否、ウィルスの混入などが挙げられます。

SQL Server のパスワードにセキュリティを設定する

Web サーバーから SQL Server に接続するときに、SQL パスワードはクリア テキストで送信されます。SQL Server の接続を侵入者から保護するには、SQL Server でマルチプロトコル ネットワーク ドライバを使用し、セッションの接続を暗号化します。Windows NT 認証を使うと、このパスワードは保護されます。ただし、Commerce Server のセットアップ時、および Commerce Server サイト パッケージャで [標準] オプションを選択した場合は除きます。

データ ウェアハウスの権限を設定する

Commerce Server ビジネス デスクのユーザーが、Commerce Server データ ウェアハウスにあるオブジェクトを読み取ったり変更したりできるようにする 1 つの方法は、ユーザーに Windows の管理者アカウントを与えることです。けれども、一部のビジネス デスクのユーザーに、レポートの読み取りだけを許可する場合があります。このような場合は、ユーザーごとに特定の SQL Server データベース ロールを割り当てます。db_datareader ロールを割り当てられたユーザーは、データベースのすべてのテーブルにあるすべてのデータを表示できます。db_datawriter ロールを割り当てられたユーザーは、データベースのテーブルで、データの追加、変更、または削除を行うことができます。

SQL Server データベース ロールにユーザーを追加するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  2. SQL Server Enterprise Manager で、サーバー グループを展開し、目的のサーバーを展開します。

  3. [データベース] を展開し、ロールが存在するデータベースを展開します。次に、[ロール] をクリックします。

  4. 詳細ウィンドウで、ユーザーを追加するロールをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  5. [データベース ロールのプロパティ] ダイアログ ボックスの [追加] をクリックします。

  6. [ロール メンバの追加] ダイアログ ボックスで、追加するユーザーを選択し、[OK] をクリックします。

    ロールに追加できるのは、選択したデータベースのユーザーだけです。

Cookie にセキュリティを設定する

既定では、cookie はクリア テキストで送信されます。侵入者が cookie に含まれる情報を傍受し、その情報を使ってユーザーになりすます可能性があります。ただし、cookie は暗号化できます。Commerce Server 2000 では、暗号化された認証および匿名 cookie を使ってセキュリティを強化します。cookie にセキュリティを設定するには、暗号化を使用し、クライアントのインターネット プロトコル (IP) アドレスをその中に埋め込みます。これによって、受信側のサーバーは cookie が真正なユーザーから送られたものかどうかを確認できます。

サイトが格納されているフォルダの権限設定にスクリプトを使う

Commerce Server サイト パッケージャでは、NTFS のフォルダやファイルの権限 (アクセス制御リスト) のパッケージ化やアンパッケージは行われません。アンパッケージ後に、サイトが格納されているファイルとフォルダに必ずセキュリティを設定してください。サイト パッケージャのスクリプト フックを使うと、サイト パッケージャの実行中または実行後にフォルダの権限を変更できます。詳細については、｢サイト パッケージャでスクリプトを使う｣を参照してください。

外部の顧客のサイトを運用する

アプリケーション サービス プロバイダ (ASP) として外部の顧客のサイトを運用する場合は、1 台のコンピュータで複数のサイトを運用しないでください。顧客のサイトごとに個別の管理データベースを用意する必要があります。複数のサイトで同じ管理データベースを共有すると、あるサイトのユーザーが別のサイトのデータを読み取れる場合があります。ユーザーがサイトにスクリプトをアップロードできる場合は、管理データベースやほかの Commerce Server データベースを読み書きするコードをスクリプトに組み込むことができるので、セキュリティ リスクが増大します。


サーバー プラットフォームを設定する

ここでは、ネットワーク負荷分散 (NLB) を使った 1 組みの Web サーバーと、1 組みの SQL Server クラスタ サーバーから成る 4 台構成のコンピュータでのインストールについて説明します。この構成の詳細については、「 小規模サイトの構成 」を参照してください。

次の手順に従って、Commerce Server 2000 Web サイト用のサーバーを設定します。

  • 計画されたコンピュータの構成を確認します。

  • テストによって明らかになった構成変更を組み込みます。

  • コンピュータの役割ごとに標準の構成を作成します。小規模な構成では、Web サーバーやデータベース サーバーなどの役割があります。

  • テスト環境のすべてのコンピュータに Microsoft Windows 2000 Server または Advanced Server をインストールし、構成用の文書に従って、適切なドメイン メンバーシップ、インターネット プロトコル (IP) アドレス、ドメイン ネーム システム (DNS) クライアント構成、サービス、および Microsoft SQL Server を使うように構成します。

    また、サーバーのハードウェアがイメージングの要件を満たしている場合は、役割ごとにサーバー イメージを 1 つ作成し、Microsoft Application Center 2000 を使って同じ役割のほかのサーバーにイメージを複製する方法もあります。詳細については、Microsoft Application Center 2000 のマニュアルを参照してください。

ここでは、次のトピックについて説明します。

  • Web サーバーを設定する ネットワーク負荷分散クラスタのインストール方法および Web サーバーを 4 台のコンピュータ構成で Active Directory ドメインにインストールする方法について説明します。

  • データベース サーバーを設定する 4 台のコンピュータ構成で、2 つの SQL Server クラスタ サーバーを設定する方法について説明します。

  • Active Directory Servers をセットアップする 6 台のコンピュータ構成で、ネットワーク負荷分散、2 つの SQL Server クラスタ サーバー、および 2 つの Microsoft Active Directory ドメイン コントローラを設定する方法について説明します。


Web サーバーを設定する

ここでは、ネットワーク負荷分散 (NLB) を使った 1 組みの Web サーバーと、1 組みの SQL Server クラスタ サーバーで構成される 4 台のコンピュータを使います。構成の詳細については、｢小規模サイトの構成｣を参照してください。

Web サーバーを設定するには、次の点を確認します。

  • Web サーバーが、Web サイトおよび Commerce Server ランタイム コンポーネントのホストになるコンピュータであることを確認します。ビジネス ロジック層とデータベース層を分離するには、Web サーバーにデータベースが含まれないようにします。Commerce Server 2000 をインストールする前に、必要なソフトウェア プラットフォームが Web サーバー上に存在することを確認します。詳細については、「ソフトウェアの必要条件」を参照してください。

  • Windows 2000 Server または Advanced Server をインストールします。

  • Windows 2000 NLB クラスタが設定されていることを確認します。

  • サイトごとにインターネット インフォメーション サービス (IIS) 5.0 Web サイトが作成されていることを確認します。

ここでは、次のトピックについて説明します。

  • ネットワーク負荷分散クラスタをインストールする

  • Web サーバーを Active Directory ドメインに参加させる

  • IIS を構成する

関連項目

Web サーバー


ネットワーク負荷分散クラスタをインストールする

Microsoft Windows 2000 ネットワーク負荷分散 (NLB) は、Commerce Server アプリケーションの可用性および拡張性を向上させます。複数の Web サーバーのリソースを 1 つの負荷分散クラスタに結合することで、より信頼性の高い Web サイトを提供できるようになります。

各サーバーは、Commerce Server アプリケーションの別々のコピーを実行します。NLB では、サーバーのグループを同じクラスタ インターネット プロトコル (IP) アドレスで参照できるようにして、各サーバー間の作業負荷を分散します。

NLB をインストールするには、次のいずれかのプログラムを使います。

  • Microsoft Application Center 2000

  • Windows 2000 Advanced Server

  • Windows 2000 Datacenter Server

必要なハードウェアの情報を含む、NLB のインストールについては、インストールに使用する製品のマニュアルを参照してください。


Web サーバーを Active Directory ドメインに参加させる

Microsoft Active Directory ドメインを作成する場合は、Web サーバーがドメインに参加していることを確認してから Commerce Server 2000 をインストールしてください。Active Directory の詳細については、｢Active Directory Servers をセットアップする｣を参照してください。

注

  • コンピュータをドメインに参加させるには、ローカル コンピュータに管理者としてログオンし、有効なユーザー名とパスワードを使う必要があります。使用するユーザー名とパスワードがわからない場合は、システム管理者に問い合わせてください。

ドメインに参加するには

  1. [スタート] ボタンをクリックし、[設定] をポイントします。次に [コントロール パネル] をクリックし、[システム] をクリックします。

  2. [システムのプロパティ] ダイアログ ボックスの [ネットワーク ID] タブで、[プロパティ] をクリックします。

  3. [識別の変更] ダイアログ ボックスの [次のメンバ] で [ドメイン] を選択します。参加するドメインの名前を入力し、[OK] をクリックします。

    コンピュータをドメインに参加させるためのユーザー名とパスワードの入力を求められます。

    注

    • Active Directory ドメインで長い名前が認識されるようにするには、ドメイン管理者が 16 バイト以上のドメイン ネーム システム (DNS) 名の登録を有効にする必要があります。
  4. ユーザー名とパスワードを入力したら、[OK] をクリックして [システムのプロパティ] ダイアログ ボックスを閉じます。

変更を適用するために、コンピュータを再起動するように求められます。

関連項目

  • Active Directory Servers をセットアップする


IIS を構成する

インターネット インフォメーション サービス (IIS) 5.0 は、Microsoft Windows 2000 Server および Advanced Server に既定でインストールされます。

Web サイトのセキュリティを強化するには、Commerce Server でインストールするサイトごとに、新しい IIS Web サイトを作成する必要があります。既定では、Commerce Server によりサイトが IIS の既定の Web サイトにインストールされます。Commerce Server サイト パッケージャを使ってサイトをアンパッケージするときに、既定の Web サイトではなく、自分で作成した IIS Web サイトにサイトを配置するように指定できます。

新しい IIS Web サイトを作成するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [管理ツール] をポイントし、[インターネット サービス マネージャ] をクリックします。

  2. [インターネット インフォメーション サービス] で、新しい IIS サイトを作成するコンピュータの名前をマウスの右ボタンでクリックします。次に [新規作成] をポイントし、[Web サイト] をクリックします。

  3. [Web サイトの作成ウィザード] ダイアログ ボックスの [次へ] をクリックします。

  4. [Web サイトの説明] ダイアログ ボックスの [説明] ボックスに、新しい Web サイトの名前を入力します。入力した名前は、サイト名として Internet Services Manager に表示されます。[次へ] をクリックします。

  5. [IP アドレスとポートの設定] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [この Web サイトで使用される IP アドレスを入力してください] | この Web サイトのインターネット プロトコル (IP) アドレスを入力するか、またはドロップダウン リストから選択します。ドロップダウン リストの [未使用の IP アドレスすべて] という値は、コンピュータに割り当てられているものの、特定のサイトに割り当てられていない IP アドレスを意味します。既定の Web サイトは、ほかのサイトに割り当てられていないすべての IP アドレスを使います。割り当てられていない IP アドレスを使用できるのは、1 つのサイトだけです。
    [Web サイトが使用する TCP ポート] (既定値 : 80) | この Web サイトのポート アドレスを入力します。
    [このサイトのホスト ヘッダー] (既定 : なし) | この Web サイトのホスト ヘッダー名を割り当てます。ホスト ヘッダーを使って 1 つの IP アドレスに別のサイトを追加する場合は、ホスト ヘッダー名を割り当てる必要があります。

  6. [次へ] をクリックします。

  7. [Web サイト ホーム ディレクトリ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [パス] | Windows ファイル システムにおけるサイトのルート ディレクトリの場所を入力します。
    [この Web サイトへの匿名アクセスを許可する] | リモート ユーザーがユーザー名とパスワードを入力せずにサイトに接続することを許可します。

  8. [次へ] をクリックします。

  9. [Web サイトのアクセス許可] ダイアログ ボックスで、前の手順で指定した Web サイトのホーム ディレクトリにアクセスするユーザーに割り当てるアクセス権を指定し、[次へ] をクリックします。

  10. [完了] をクリックしてウィザードを終了します。

注

  • イントラネット上のコンピュータにドメイン ネーム システム (DNS) サービスをインストールすることをお勧めします。イントラネットが小規模な場合は、ネットワークのすべてのコンピュータで Hosts ファイルや Lmhosts ファイルを使用できます。DNS を使うと、ユーザーは IP アドレスの代わりにテキスト名を使ってサイトにアクセスできるようになります。

  • セキュリティ上の理由から、IIS で使用するドライブはすべて NTFS でフォーマットすることをお勧めします。

関連項目

Commerce Server と IIS を使用する


データベース サーバーを設定する

ここでは、ネットワーク負荷分散 (NLB) を使った 1 組みの Web サーバーと、1 組みの SQL Server クラスタ サーバーで構成される 4 台のコンピュータを使います。構成の詳細については、｢小規模サイトの構成｣を参照してください。

データベース サーバーは、Commerce Server データベースおよびアプリケーション データベースのホストとして使用するコンピュータです。また、Commerce Server ダイレクト メーラー リソースおよび予測リソースをインストールする場合は、それらのホストにもなります。ビジネス ロジック層とデータベース層を分離するには、データベース サーバーにアプリケーションや管理ツールが含まれないようにします。ただしダイレクト メーラーは例外で、小規模なサイト構成ではデータベース サーバーにダイレクト メーラーをインストールできます。Commerce Server 2000 をインストールする前に、必要なソフトウェア プラットフォームがデータベース サーバー上に存在することを確認します。詳細については、｢ソフトウェアの必要条件｣を参照してください。

注

  • Commerce Server では、Data Warehouse および OLAP サーバー データベースで SQL Server 7.0 および SQL Server 2000 を混在させることはできません。

サーバー クラスタを設定する

SQL Server データベースの可用性を高めるには、データベースをサーバー クラスタに格納することをお勧めします。クラスタとして構成されたサーバーは、共通データを共有し、1 つのシステムとして機能します。各サーバーは、クラスタ内のほかのサーバーから独立して動作させることができます。このため、1 台のサーバーで障害が発生しても、別のサーバーがその機能を引き継ぎます。

サーバー クラスタをインストールする前に、互換性のあるディスク ドライブ、ネットワーク アダプタ、およびディスク コントローラを使ってクラスタ内のサーバーを構成する必要があります。これらの要件の詳細については、ハードウェア メーカーに問い合わせてください。

サーバー クラスタでは、ニーズと予算に応じて、共有ディスクやミラー化されたディスクをはじめとするいくつかの手法を選択できます。また、サーバーをアクティブ/アクティブで構成し、各サーバーでアプリケーションを実行しながら、同時に他方のサーバーのバックアップとして機能させることや、アクティブ/パッシブで構成し、一方のサーバーをアプリケーションの実行用、もう一方のサーバーをバックアップ用にすることもできます。これらの決定を下す際は、サイトにおけるサーバー クラスタの役割を考慮する必要があります。サーバー クラスタを作成する前に、綿密な計画を立てる必要があります。サーバー クラスタの計画の詳細については、『Microsoft Windows 2000 Server Deployment Planning Guide』を参照してください。

サーバー クラスタの計画を立てたら、Windows クラスタ サービスの構成ウィザードを使ってサーバー クラスタを作成および構成します。詳細については、｢クラスタ サービスのインストール｣および｢Step-by-Step Guide to Installing Cluster Service｣(英語版) を参照してください。

サーバー クラスタをインストールするときは、決められた順序でアプリケーションをインストールすることが大切です。サーバー クラスタに SQL Server をインストール方法の詳細については、｢クラスタ サービスのインストール｣および｢Step-by-Step Guide to Installing Cluster Service｣(英語版) を参照してください。

注

  • Commerce Server 2000 の最初のリリースでは、SQL Server 仮想クラスタへの Commerce Server ダイレクト メーラーのインストールはサポートされません。ダイレクト メーラーは、物理コンピュータの名前を使って SQL Server 仮想クラスタの物理ノードにインストールし、仮想インスタンスとは別の SQL Server インスタンスを使ってください。最新のソリューションについては、Microsoft Commerce Server Web サイトを参照してください。


Active Directory Servers をセットアップする

ここでは、ネットワーク負荷分散 (NLB) を使った 1 組みの Web サーバー、1 組みの SQL Server クラスタ サーバー、および 1 組みの Microsoft Active Directory ドメイン コントローラから成る 6 台のコンピュータを使います。構成の詳細については、｢小規模サイトの構成｣を参照してください。

Active Directory を実装してユーザー プロファイルやその他のデータを格納する場合は、これ以降のトピックで説明するいくつかの手順を実行する必要があります。

注

  • これ以降の手順を実行する前に、Active Directory について、およびサイト計画での Active Directory の役割について理解しておくことが大切です。Active Directory の詳細については、｢Active Directory の概要｣および｢Active Directory Overview｣(英語版) を参照してください。

ここでは、次のトピックについて説明します。

  • Active Directory ドメインを作成する Active Directory ドメイン コントローラの設定方法について説明します。サイトごとに独立したドメインを作成し、企業ネットワークのドメインから分離することで、サイトのセキュリティが向上します。

  • 既存のドメインにドメイン コントローラを追加する 既存のドメインにドメイン コントローラを追加する方法について説明します。この手順は必須ではありませんが、Active Directory に格納するあらゆるユーザー プロファイル データの可用性を確保することを強くお勧めします。

  • Web サーバーでのほかのサーバーのユーザー認証を可能にする ユーザーがすべての Commerce サーバーにアクセスできるように Windows を構成する方法について説明します。

関連項目

プロファイル システムの計画

Active Directory 統合の計画


Active Directory ドメインを作成する

Commerce Server Web サイトでユーザー プロファイル情報の Active Directory 認証を有効にする前に、サイトで Active Directory ドメインを設定する必要があります。1 組みの複製サーバーを専用に設けることをお勧めします。

これ以降の手順を実行するには、Active Directory の概念を理解していることと、既に Active Directory 構造の計画が立てられていることが不可欠です。Active Directory については、『Microsoft Windows 2000 Server Deployment Planning Guide』を参照してください。

新しいドメイン ツリーを作成して Active Directory ドメインを設定するには

既存のドメイン ツリーに新しい子ドメインを作成して Active Directory ドメインを設定するには

新しいドメイン ツリーを作成して Active Directory ドメインを設定するには

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスの [名前] ボックスに「dcpromo」と入力し、[OK] をクリックします。

  3. [Active Directory のインストール ウィザード] の [次へ] をクリックします。

  4. [ドメイン コントローラの種類] ダイアログ ボックスで、[新しいドメインのドメイン コントローラ] を選択し、[次へ] をクリックします。

  5. [ツリーまたは子ドメインの作成] ダイアログ ボックスで、[新しいドメイン ツリーを作成] を選択し、[次へ] をクリックします。

  6. [フォレストの作成または追加] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ドメイン ツリーの新しいフォレストを作成] | これが組織の最初のドメインの場合、または作成する新しいドメイン ツリーを現在のフォレストから完全に独立させる場合に、このオプションを選択します。
    [既存のフォレストに新しいドメイン ツリーを配置] | 新しいドメイン ツリーのユーザーが既存のドメイン ツリーのリソースにアクセスできるようにし、またその逆方向のアクセスもできるようにする場合に、このオプションを選択します。

  7. [ドメイン ツリーの新しいフォレストを作成] を選択した場合は、[新しいドメイン名] ダイアログ ボックスの [新しいドメインの完全な DNS 名] ボックスに新しいドメインのフル ドメイン ネーム システム (DNS) 名を入力します。

  8. [NetBIOS ドメイン名] ダイアログ ボックスの [ドメイン NetBIOS 名] ボックスに、以前のバージョンの Microsoft Windows のユーザーがドメインの識別に使用する名前を入力します。ここでは、フル DNS 名の短縮版である既定の名前をそのまま使うことをお勧めします。[次へ] をクリックします。

  9. [データベースとログの場所] ダイアログ ボックスでは、特に必要でない限り、既定の設定をそのまま使います。

  10. [共有システム ボリューム] ダイアログ ボックスでは、特に必要でない限り、既定の設定をそのまま使います。

  11. コンピュータに DNS がインストールされていない場合は、インストールするように求められます。[はい、DNS をこのコンピュータにインストールして構成します (推奨)] を選択し、[次へ] をクリックします。

  12. [アクセス許可] ダイアログ ボックスで、[Windows 2000 サーバーとのみ互換性があるアクセス許可] を選択し、[次へ] をクリックします。

注意

  • 下位互換性を有効にすると、Commerce Server 2000 でセキュリティ上の問題が起きる可能性があります。
  13. [ディレクトリ サービス復元モード Administrator パスワード] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [パスワード] | サーバーの管理者アカウントに割り当てるパスワードを入力します。
    [パスワードの確認入力] | 確認のためにもう一度パスワードを入力します。

  14. [概要] ダイアログ ボックスで、選択したオプションを点検し、Active Directory の構成が正しいかどうかを確認します。構成が正しければ [次へ] をクリックします。そうでない場合は [戻る] をクリックし、選択したオプションを変更します。

    構成した Active Directory がコンピュータにインストールされている最中であることを示す [Active Directory の構成中] ダイアログ ボックスが表示されます。

  15. [Active Directory のインストール ウィザードの完了] ダイアログ ボックスの [完了] をクリックします。

既存のドメイン ツリーに新しい子ドメインを作成して Active Directory ドメインを設定するには

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスの [名前] ボックスに「dcpromo」と入力し、[OK] をクリックします。

  3. [Active Directory のインストール ウィザード] の [次へ] をクリックします。

  4. [ドメイン コントローラの種類] ダイアログ ボックスで、[新しいドメインのドメイン コントローラ] を選択し、[次へ] をクリックします。

  5. [ツリーまたは子ドメインの作成] ダイアログ ボックスで、[既存のドメイン ツリーに新しい子ドメインを作成] を選択し、[次へ] をクリックします。

  6. [子ドメインのインストール] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [親ドメイン] | 親ドメイン名を入力します。
    [子ドメイン] | 子ドメイン名を入力します。

  7. [NetBIOS ドメイン名] ダイアログ ボックスの [ドメイン NetBIOS 名] ボックスに、以前のバージョンの Microsoft Windows のユーザーがドメインの識別に使用する名前を入力します。ここでは、フル DNS 名の短縮版である既定の名前をそのまま使うことをお勧めします。[次へ] をクリックします。

  8. [データベースとログの場所] ダイアログ ボックスでは、特に必要でない限り、既定の設定をそのまま使います。

  9. [共有システム ボリューム] ダイアログ ボックスでは、特に必要でない限り、既定の設定をそのまま使います。

  10. コンピュータに DNS がインストールされていない場合は、インストールするように求められます。[はい、DNS をこのコンピュータにインストールして構成します (推奨)] を選択し、[次へ] をクリックします。

  11. [アクセス許可] ダイアログ ボックスで、[Windows 2000 サーバーとのみ互換性があるアクセス許可] を選択し、[次へ] をクリックします。

注意

  • 下位互換性を有効にすると、Commerce Server 2000 でセキュリティ上の問題が起きる可能性があります。
  12. [ディレクトリ サービス復元モード Administrator パスワード] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [パスワード] | サーバーの管理者アカウントに割り当てるパスワードを入力します。
    [パスワードの確認入力] | 確認のためにもう一度パスワードを入力します。

    構成した Active Directory がコンピュータにインストールされている最中であることを示す [Active Directory の構成中] ダイアログ ボックスが表示されます。

  13. [Active Directory のインストール ウィザードの完了] ダイアログ ボックスの [完了] をクリックします。

関連項目

小規模サイトの構成

Web サーバーを Active Directory ドメインに参加させる


既存のドメインにドメイン コントローラを追加する

複数のドメイン コントローラを作成すると、Active Directory は頻繁に、しかも自動的にドメイン コントローラ間でディレクトリ情報を複製します。1 台のドメイン コントローラが利用できなくなっても、ほかのドメイン コントローラを通じてディレクトリ情報を参照できます。

既存のドメインにドメイン コントローラを追加するには

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスの [名前] ボックスに「dcpromo」と入力し、[OK] をクリックします。

  3. [ドメイン コントローラの種類] ダイアログ ボックスで、[追加ドメイン コントローラ] を選択します。これにより、ドメイン コントローラが複製パートナーとして作成されます。

  4. [ネットワーク資格情報] ダイアログ ボックスで、ドメイン管理者のユーザー名、パスワード、およびドメイン名を入力し、[次へ] をクリックします。

  5. [追加ドメイン コントローラ] ダイアログ ボックスの [次へ] をクリックします。

  6. [データベースとログの場所] ダイアログ ボックスでは、既定値をそのまま使用し、[次へ] をクリックします。

  7. [共有システム ボリューム] ダイアログ ボックスの [次へ] をクリックします。

  8. [ディレクトリ サービス復元モード Administrator パスワード] ダイアログ ボックスでは、各ボックスを空白のままにして、[次へ] をクリックします。

  9. [概要] ダイアログ ボックスの [次へ] をクリックします。

  10. [Active Directory のインストール ウィザード] ダイアログ ボックスが表示されたら [完了] をクリックし、Windows を再起動します。


Web サーバーでのほかのサーバーのユーザー認証を可能にする

Commerce Server 2000 では、ほかのサーバーにあるサービスにアクセスするユーザーを、Web サーバーで認証できるようにする必要があります。Microsoft Windows がこのようなアクセスを許可できるようにする必要があります。

注

  • 委任を有効にするには、Windows 2000 ドメインに適切な管理者権限が必要です。

Web サーバーでのほかのサーバーのクライアント認証を可能にするには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. Commerce Server マネージャのコンソールで、[Active Directory ユーザーおよびコンピュータ] を展開します。次に、ドメイン ノードをマウスの右ボタンでクリックし、[検索] をクリックします。または、コンピュータが属している組織単位がわかっている場合は、コンソール ツリーの組織単位をマウスの右ボタンでクリックし、[検索] をクリックします。(または、[検索] コマンドを使わずに、変更するコンピュータ アカウントを選択し、手順 9. に進むこともできます。)

  3. [ユーザー、連絡先およびグループを検索します] ダイアログ ボックスの [検索] ボックスで、ドロップダウン リストの [コンピュータ] をクリックします。

  4. [コンピュータ] タブの [コンピュータ名] ボックスに、検索対象のコンピュータ名を入力します。

  5. [場所] ボックスで、検索するドメインまたは組織単位をドロップダウン リストから選択するか、または [参照] をクリックし、検索を開始するフォルダまたはドメインを選択します。

  6. (省略可能) [所有者] ボックスに、ドメイン内にコンピュータを所有するユーザーの名前を入力します。

  7. (省略可能) [役割] ボックスで、コンピュータの役割を一覧から選択します。ネットワーク上のすべてのコンピュータ、ワークステーションまたはサーバーになっているコンピュータ、あるいはドメイン コントローラになっているコンピュータを検索できます。

  8. [検索開始] をクリックします。

    目的のコンピュータの名前が [コンピュータを検索します] ダイアログ ボックスの下部にある一覧に表示されます。

  9. コンピュータの名前をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  10. [<コンピュータ名> のプロパティ] ダイアログ ボックスで、[コンピュータを委任に対して信頼する] チェック ボックスをオンにし、[OK] をクリックします。


サイトをインストールする

ここでは、ネットワーク負荷分散 (NLB) を使った 1 組みの Web サーバーと、1 組みの SQL Server クラスタ サーバーで構成される 4 台のコンピュータを使います。構成の詳細については、｢小規模サイトの構成｣を参照してください。

ここでは、次のトピックについて説明します。

  • 例 A: クラスタ構成の 4 台のコンピュータにインストールする Commerce Server 2000 のインストール方法および 4 台のコンピュータ構成でアプリケーションをアンパッケージする方法について説明します。

  • 例 B: 非クラスタ構成の 3 台のコンピュータにインストールする Web サーバーに Commerce Server 2000 をインストールする方法、および異なるコンピュータに Commerce Server データベースを配置する方法について説明します。


例 A: クラスタ構成の 4 台のコンピュータにインストールする

ここでは、次に示す 4 台のコンピュータ構成で Commerce Server 2000 をインストールし、アプリケーションをアンパッケージする方法について説明します。

  • ネットワーク負荷分散 (NLB) クラスタ内の 2 台の Web サーバー。これらのサーバーには、Commerce Server 管理ツールも含まれます。

  • 1 つのサーバー クラスタとして構成された 2 台の SQL Server。これらのサーバーは、共有クラスタ名を使って参照されます。

この構成を示す図については「小規模サイトの構成」を参照してください。

手順 1:Web サーバーに Commerce Server をインストールするには

手順 2:SQL Server クラスタに Commerce Server をインストールするには

手順 3:Web サイトおよびアプリケーションをアンパッケージするには

手順 1:Web サーバーに Commerce Server をインストールするには

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、Commerce Server 2000 のセットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、既定のフォルダをインストール先に指定します。

  2. [セットアップの種類] ダイアログ ボックスで [カスタム] を選択し、[次へ] をクリックします。

  3. [カスタム セットアップ] ダイアログ ボックスで、[管理ツール]、[Commerce サイト パッケージ]、および[オンライン マニュアル] のオプションを選択します。必要に応じて、[予測サービス] を選択することもできます。

  4. [分析およびデータ ウェアハウス] と [ダイレクト メーラー サービス] が選択されていないことを確認します (選択されていないことを示す [X] が各チェック ボックスに表示されます)。次の図は、[カスタム セットアップ] ダイアログ ボックスを示します。
    [カスタム セットアップ] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  5. [次へ] をクリックします。

  6. [管理データベースの構成] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | データベース サーバーのコンピュータ名を入力します。
    [SQL Server ログイン名] | このコンピュータの SQL Server ログイン名を入力します。新しいデータベースを作成するには、sysadmin または dbcreator のいずれかの SQL Server ロールに属するログイン名を使う必要があります。オンライン分析処理 (OLAP) のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL Server ログイン パスワード] | このログイン名に対応する SQL Server パスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

    管理データベースは SQL クラスタに配置されるので、ここでこのコンピュータがデータベースを参照するように設定します。次の図は、[管理データベースの構成] ダイアログ ボックスを示します。

    [管理データベースの構成] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  7. [次へ] をクリックします。

  8. [サービス アカウント] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ユーザー名] | このコンピュータで Commerce Server サービスを実行するアカウントの Windows ユーザー名を入力します。
    [パスワード] | Windows アカウントのパスワードを入力します。
    [ドメイン] | Windows アカウントのドメインを入力します。

    次の図は、[サービス アカウント] ダイアログ ボックスを示します。

    [サービス アカウント] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  9. [次へ] をクリックします。

  10. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    管理ツールおよびサイト パッケージがインストールされます。

  11. [完了] をクリックし、セットアップ プログラムを終了します。

手順 2:SQL Server クラスタに Commerce Server をインストールするには

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、Commerce Server 2000 のセットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、既定のフォルダをインストール先に指定します。

  2. [セットアップの種類] ダイアログ ボックスで [カスタム] を選択し、[次へ] をクリックします。

  3. [カスタム セットアップ] ダイアログ ボックスで、[分析およびデータ ウェアハウス] を選択します。

  4. ほかのオプションの選択がすべて解除されていることを確認します (選択されていないことを示す [X] が各チェック ボックスに表示されます)。次の図は、[カスタム セットアップ] ダイアログ ボックスを示します。
    カスタム セットアップ、例 A、サーバー クラスタ

    図をクリックすると、拡大または縮小します。

注

  • Commerce Server 2000 の最初のリリースでは、SQL Server 仮想クラスタへの Commerce Server ダイレクト メーラーのインストールはサポートされません。ダイレクト メーラーは、物理コンピュータの名前を使って SQL Server 仮想クラスタの物理ノードにインストールし、仮想インスタンスとは別の SQL Server インスタンスを使ってください。最新のソリューションについては、「Microsoft Commerce Server Web サイト」を参照してください。
  5. [次へ] をクリックします。

  6. [管理データベースの構成] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | このサーバー クラスタのクラスタ名を入力します。
    [SQL Server ログイン名] | 管理データベースのアクセスに使用する SQL Server ログイン名を入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL Server ログイン パスワード] | SQL Server ログイン名に対応するパスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

    次の図は、[管理データベースの構成] ダイアログ ボックスを示します。

    [管理データベースの構成] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  7. [次へ] をクリックします。

  8. [サービス アカウント] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ユーザー名] | このコンピュータで Commerce Server サービスを実行するアカウントの Windows ユーザー名を入力します。
    [パスワード] | Windows アカウントのパスワードを入力します。
    [ドメイン] | Windows アカウントのドメインを入力します。

  9. [次へ] をクリックします。

  10. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    分析およびデータ ウェアハウスの機能が SQL Server クラスタにインストールされます。

  11. [完了] をクリックし、セットアップ プログラムを終了します。

手順 3:Web サイトおよびアプリケーションをアンパッケージするには

  1. 目的の Web サーバーで、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. [Commerce Server マネージャ] を展開し、[Commerce サイト] をクリックします。

  3. [Commerce サイト] をマウスの右ボタンでクリックし、[新規作成] をポイントします。次に、[サイトのアンパック] をクリックします。

  4. [サイトのアンパック元] ダイアログ ボックスで、アンパッケージするパッケージ ファイルが含まれるフォルダを開き、パッケージ ファイルを選択して [開く] をクリックします。

    Commerce Server サイト パッケージャが起動します。

  5. [アンパック] ダイアログ ボックスで [カスタム] を選択し、[次へ] をクリックします。

    次の図は、[アンパック] ダイアログ ボックスを示します。

    [アンパック] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  6. [アンパック方法] ダイアログ ボックスで [新しいサイトの作成] を選択し、[次へ] をクリックします。

    次の図は、[アンパック方法] ダイアログ ボックスを示します。

    [アンパック方法] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  7. [サイト名] ダイアログ ボックスの [サイト名] ボックスに、サイトの名前を入力するか、または既定の名前をそのまま使用し、[次へ] をクリックします。

    次の図は、[サイト名] ダイアログ ボックスを示します。

    [サイト名] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

    注

    • アンパッケージ時のエラーを回避するには、サイト名に特殊文字 (#、@、%、' など) を使わないようにしてください。既定では、サイトのデータベース名にサイト名のプレフィックスが付くために、特殊文字が SQL Server で認識されないことがあります。

    • シングルバイトで 256 文字、またはダブルバイトで 128 文字を超えるサイト名を指定しないでください。

    • サイトに "Commerce" という名前を付けないでください。この名前は Online Analytical Processsing (OLAP) データベース名に予約されています。サイトに "Commerce" という名前を付けると、次回サイトをアンパッケージするときに、OLAP データベースが上書きされることがあります。
  8. [リソースの選択] ダイアログ ボックスで、[Direct Mail] を除くすべてのリソースを右側の一覧に残します。[Direct Mail] を選択して [削除] をクリックし、Commerce Server ダイレクト メーラーを削除します。次の図は、[リソースの選択] ダイアログ ボックスを示します。
    [リソースの選択] ダイアログ ボックス (ダイレクト メールなし)

    図をクリックすると、拡大または縮小します。

  9. 予測リソースをインストールしない場合は、[Predictor] を選択し、[削除] をクリックします。

    注

    • [CS 認証] リソースと [プロファイル] リソースは一緒にインストールする必要があります。両方がインストールされていないと機能しません。
  10. [グローバル リソース ポインタ] ダイアログ ボックスの [次へ] をクリックします。

    [グローバル リソース ポインタ] ダイアログ ボックスは、既存のグローバル リソースにマップするか、または新しいグローバル リソースを作成するときに使います。また、既にグローバル リソースがコンピュータ上にアンパッケージされていて、そのグローバル リソースを使用するサイトでグローバル リソース ポインタをアンパッケージする場合も、このダイアログ ボックスを使います。

    次の図は、[グローバル リソース ポインタ] ダイアログ ボックスの画面の例を示します。

    [グローバル リソース ポインタ] ダイアログ ボックス (ダイレクト メールなし)

    図をクリックすると、拡大または縮小します。

    [データベースの接続文字列] ダイアログ ボックスに、サイト パッケージャが使用するデータベースと、そのデータベースが存在するサーバーが一覧表示されます。次の図は、既定の設定時に表示される [データ ベースの接続文字列] ダイアログ ボックスを示しています。

    データ ベースの接続文字列 2、例 A

    図をクリックすると、拡大または縮小します。

    [データベースの接続文字列] ダイアログ ボックスの [新規データベース] をクリックします。ここではデータベース サーバー クラスタにデータベースを配置するため、データベースを作成する必要があります。

  11. [新規データベース] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | SQL Server クラスタの名前を入力します。
    [データベース名] | データ ウェアハウス データベースに付ける名前を入力します。
    [SQL ユーザー名] | 新しいデータベースを作成するには、sysadmin または dbcreator のいずれかの SQL Server ロールに属するログイン名を使う必要があります。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL パスワード] | SQL Server ログイン パスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

    次の図は、[新規データベース] ダイアログ ボックスを示します。

    [新規データベース] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  12. [データベースの作成] をクリックし、新しいデータベースを作成します。

    ほかのデータ ストア (カタログやトランザクションなど) は、データベース サーバー クラスタのもう一方のデータベースに格納されます。これらのデータベースも作成する必要があります。

    データベースがデータベース サーバー クラスタ上に作成されます。

  13. [データベースの接続文字列] ダイアログ ボックスに戻ったら、[データ ウェアハウス] を選択し、[変更] をクリックします。

  14. [データ リンク プロパティ] ダイアログ ボックスの [接続] タブで、[サーバー名を選択または入力します] ボックスにデータベース サーバー クラスタの名前を入力します。[サーバー上のデータベースを選択する] ボックスで、作成したデータ ウェアハウス データベースに割り当てた名前を選択し、[OK] をクリックします。

    注

    • [パスワードを保存する] ボックスがオンになっていることを確認してください。選択されていないと、データベースが作成されません。

    次の図は、[データ リンク プロパティ] ダイアログ ボックスを示します。

    [データ リンク プロパティ] ダイアログ ボックス、DW

    図をクリックすると、拡大または縮小します。

  15. [データベースの接続文字列] ダイアログ ボックスに戻ったら、ほかのすべてのデータベースを選択し、[変更] をクリックします。

  16. [データ リンク プロパティ] ダイアログ ボックスの [接続] タブで、[サーバー名を選択または入力します] ボックスにデータベース サーバー クラスタの名前を入力します。[サーバー上のデータベースを選択する] ボックスで、作成したほかのデータベースに割り当てた名前を選択し、[OK] をクリックします。

    注

    • [パスワードを保存する] ボックスがオンになっていることを確認してください。選択されていないと、データベースが作成されません。

    次の図は、変更後の [データベースの接続文字列] ダイアログ ボックスを示します。

    データ ベースの接続文字列 2、例 A

    図をクリックすると、拡大または縮小します。

  17. [次へ] をクリックします。

  18. [アプリケーションの選択] ダイアログ ボックスで、アンパッケージするアプリケーションが選択されていることを確認し、[次へ] をクリックします。次の図は、[アプリケーションの選択] ダイアログ ボックスを示します。
    [アプリケーションの選択] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  19. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスで、各アプリケーションの IIS Web サイトおよび IIS パスが正しいことを確認します。アプリケーションの IIS Web サイトを変更するには、一覧でアプリケーションを選択し、ドロップダウン リストから IIS Web サイトを選択します。

    アプリケーションの仮想ディレクトリ名を変更するには、一覧でアプリケーションを選択します。[IIS 仮想ディレクトリ] ボックスに、割り当てる名前を入力します。

    注

    • IIS のエラーを回避するには、IIS 仮想ディレクトリ名に特殊文字 (#、@、%、' など) を使わないでください。

    • サイト パッケージャでは、リモート コンピュータでのサイトのアンパッケージはサポートされません。

    • サイト パッケージャは、対応する IIS Web サイトのホーム ディレクトリの下に各アプリケーションをアンパッケージします。ホーム ディレクトリの中には、アプリケーションの IIS 仮想ディレクトリ名を使ったサブフォルダが作成されます。

    次の図は、[IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスを示します。

    [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  20. [次へ] をクリックします。

  21. [データ ウェアハウス] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [名前] | グローバル データ ウェアハウス リソースに付ける名前を入力します。
    [サーバー] | SQL 分析 (OLAP) コンピュータの名前を入力します。
    [データベース] | 使用する分析 (OLAP) データベースの名前を入力します。

  22. [次へ] をクリックします。

  23. 最初の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [プロファイル スキーマの定義] | インポートするプロファイル スキーマの定義を指定します。
    [サイト用語の定義] | インポートするサイト用語の定義を指定します。
    [式の定義] | インポートする式の定義を指定します。

  24. [次へ] をクリックします。

  25. 2 番目の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [システム プロファイリングの接続文字列] | OLEDB データ ストアにインポートするファイルを指定します。ほかのデータベースを指定するには、[変更] をクリックします。
    [スキーマ定義のスクリプト (*.sql, *.vbs)] | インポートするスキーマ定義スクリプトを指定します。
    [データ生成スクリプト (*.sql)] | インポートするデータ生成スクリプトを指定します。

  26. [次へ] をクリックします。

  27. [アンパックが完了しました!] ダイアログ ボックスで、作成された SQL Server データベースと IIS アプリケーションの一覧を確認します。[ログ ファイルの表示] をクリックし、サイト パッケージャ ログ ファイルでイベントの一覧を確認します。

  28. サイト パッケージャを閉じるには、[終了] をクリックします。

注

  • サイトをインストールした直後、および配置した Commerce Server の構成に大きな変更を加えるときは、管理データベースのバックアップを別の名前で作成しておくことをお勧めします。必要に応じて、このバックアップを使って後から変更を元に戻すことができます。

  • 1 台のコンピュータでサイト パッケージャの複数のインスタンスを同時に実行しないでください。

関連項目

サイト パッケージャでスクリプトを使う


例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

Commerce Server サイト パッケージャを使って、任意の Commerce Server 2000 コンピュータから管理データベースにサイト リソースを配置します。たとえば、3 台のコンピュータがある場合は、Commerce Server を Web サーバーにインストールし、Commerce Server のデータベースを別のコンピュータに配置できます。構成例は次のようになります。

  • コンピュータ A 管理データベースおよび管理ツールに使います。このコンピュータは、Commerce Server の管理に使います。

  • コンピュータ B データ ウェアハウスおよびその他のデータベースに使います。

  • コンピュータ C Web サーバーとして使います。また、アプリケーション用の Active Server Pages (ASP) も含まれます。

ここでは、Microsoft Windows 2000 Server が 3 台のコンピュータのすべてにインストールされ、Microsoft SQL Server 7.0 または SQL Server 2000 がコンピュータ A と B にインストールされていることを前提にしています。インストール方法については、「Commerce Server をインストールする」参照してください。

手順 1:Commerce Server をコンピュータ A にインストールする

手順 2:Commerce Server をコンピュータ B にインストールし、データ ウェアハウスだけを選択する

手順 3:Commerce Server の Web サーバーをコンピュータ C にインストールする

手順 4:サイトをコンピュータ A からアンパッケージする

手順 5:Commerce Server の Web サーバー (コンピュータ C) をアプリケーションに追加する

手順 1:Commerce Server をコンピュータ A にインストールする

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、Commerce Server 2000 のセットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、既定のフォルダをインストール先に指定します。

  2. [セットアップの種類] ダイアログ ボックスで [カスタム] を選択し、[次へ] をクリックします。

  3. [カスタム セットアップ] ダイアログ ボックスの [ランタイム オブジェクト] フォルダの下で、[分析およびデータ ウェアハウス] が選択されていないことを確認します (選択されていないことを示す [X] がチェック ボックスに表示されます)。[予測サービス] など、インストールするそのほかの機能を選択します。次の図は、[カスタム セットアップ] ダイアログ ボックスを示します。
    [カスタム セットアップ] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  4. [管理データベースの構成] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | データベース サーバー (コンピュータ B) のコンピュータ名を入力します。
    [SQL Server ログイン名] | このコンピュータの SQL Server ログイン名を入力します。新しいデータベースを作成するには、sysadmin または dbcreator のいずれかの SQL Server ロールに属するログイン名を使う必要があります。オンライン分析処理 (OLAP) のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL Server ログイン パスワード] | このコンピュータの SQL Server パスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

  5. [次へ] をクリックします。

  6. [サービス アカウント] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ユーザー名] | このコンピュータで Commerce Server サービスを実行するアカウントの Windows ユーザー名を入力します。
    [パスワード] | Windows アカウントのパスワードを入力します。
    [ドメイン] | Windows アカウントのドメインを入力します。

  7. [次へ] をクリックします。

  8. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    管理ツールを含めて、指定した機能がコンピュータ A にインストールされます。このコンピュータを使って、Commerce Server のインストール環境を管理できます。

  9. [完了] をクリックし、セットアップ プログラムを終了します。

手順 2:Commerce Server をコンピュータ B にインストールし、データ ウェアハウスだけを選択する

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、Commerce Server 2000 のセットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、既定のフォルダをインストール先に指定します。

  2. [セットアップの種類] ダイアログ ボックスで [カスタム] を選択し、[次へ] をクリックします。

  3. [カスタム セットアップ] ダイアログ ボックスの [ランタイム オブジェクト] フォルダの下で、[分析およびデータ ウェアハウス] を選択し、それ以外のオプションの選択を解除します。ただし、ダイレクト メーラーを使う場合は [ダイレクト メーラー サービス] を選択します。[次へ] をクリックします。次の図は、[カスタム セットアップ] ダイアログ ボックスを示します。
    [カスタム セットアップ] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  4. [管理データベースの構成] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | データベース サーバー (コンピュータ B) のコンピュータ名を入力します。
    [SQL Server ログイン名] | このコンピュータの SQL Server ログイン名を入力します。新しいデータベースを作成するには、sysadmin または dbcreator のいずれかの SQL Server ロールに属するログイン名を使う必要があります。オンライン分析処理 (OLAP) のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL Server ログイン パスワード] | このコンピュータの SQL Server パスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

  5. ダイレクト メーラーをインストールする場合は、[ダイレクト メーラー データベースの構成] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | 既定のオプション (コンピュータ B) を使います。
    [SQL Server ログイン名] | このコンピュータの SQL Server ログイン名を入力します。新しいデータベースを作成するには、sysadmin または dbcreator のいずれかの SQL Server ロールに属するログイン名を使う必要があります。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL Server ログイン パスワード] | このサーバーの SQL Server ログイン パスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

  6. [サービス アカウント] ダイアログ ボックスで、このコンピュータで Commerce Server サービスを実行するアカウントの Windows ユーザー名とパスワードを入力し、[次へ] をクリックします。

  7. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    分析およびデータ ウェアハウスの機能がコンピュータ B にインストールされます。

  8. [終了] をクリックし、セットアップ プログラムを終了します。

手順 3:Commerce Server の Web サーバーをコンピュータ C にインストールする

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、[Web サーバー] インストール オプションを使って Commerce Server 2000 のセットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、既定のフォルダをインストール先に指定します。

  2. [次へ] をクリックします。

  3. [管理データベースの構成] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | データベース サーバー (コンピュータ B) のコンピュータ名を入力します。
    [SQL Server ログイン名] | このコンピュータの SQL Server ログイン名を入力します。新しいデータベースを作成するには、SQL Server ロール (sysadmin または dbcreator) のいずれかのメンバであるログイン名を使います。オンライン分析処理 (OLAP) のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL Server ログイン パスワード] | このコンピュータの SQL Server パスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

  4. [次へ] をクリックします。

  5. [サービス アカウント] ダイアログ ボックスで、このコンピュータの Commerce Server サービスへのアクセスを許可されたユーザーの Windows ユーザー名とパスワードを入力します。[次へ] をクリックします。

  6. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    Runtime オブジェクトおよびCommerce サイト パッケージがコンピュータ C にインストールされます。

  7. [完了] をクリックし、セットアップ プログラムを終了します。

手順 4:サイトをコンピュータ A からアンパッケージする

  1. コンピュータ A で、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. [Commerce Server マネージャ] を展開し、[Commerce サイト] をクリックします。

  3. [Commerce サイト] をマウスの右ボタンでクリックし、[新規作成] をポイントします。次に [サイトのアンパック] をクリックします。

  4. [サイトのアンパック元] ダイアログ ボックスで、アンパッケージするパッケージ ファイルが含まれるフォルダを開き、パッケージ ファイルを選択して [開く] をクリックします。

    Commerce Server サイト パッケージャが起動します。

  5. [アンパック] ダイアログ ボックスで [カスタム] を選択し、[次へ] をクリックします。次の図は、[アンパック] ダイアログ ボックスを示します。
    [アンパック] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  6. [アンパック方法] ダイアログ ボックスで [新しいサイトの作成] を選択し、[次へ] をクリックします。次の図は、[アンパック方法] ダイアログ ボックスを示します。
    [アンパック方法] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  7. [サイト名] ボックスに、サイトの既定の名前が表示されます。必要に応じて名前を変更し、[次へ] をクリックします。

    注

    • アンパッケージ時のエラーを回避するには、サイト名に特殊文字 (#、@、%、' など) を使わないようにしてください。既定では、サイトのデータベース名にサイト名のプレフィックスが付くために、特殊文字が SQL Server で認識されないことがあります。

    • シングルバイトで 256 文字、またはダブルバイトで 128 文字を超えるサイト名を指定しないでください。

    • サイトに "Commerce" という名前を付けないでください。この名前は OLAP データベース名に予約されています。サイトに "Commerce" という名前を付けると、次回サイトをアンパッケージするときに、OLAP データベースが削除されることがあります。
  8. [リソースの選択] ダイアログ ボックスで、すべてのリソースを選択します。Commerce Server ダイレクト メーラーをインストールしない場合は、[Direct Mail] を選択し、[削除] をクリックします。予測リソースをインストールしない場合は、[Predictor] を選択し、[削除] をクリックします。次の図は、[リソースの選択] ダイアログ ボックスを示します。
    [リソースの選択] ダイアログ ボックス (すべて)

    図をクリックすると、拡大または縮小します。

    注

    • [CS 認証] リソースと [プロファイル] リソースは一緒にインストールする必要があります。両方がインストールされていないと機能しません。
  9. [グローバル リソース ポインタ] ダイアログ ボックスの [次へ] をクリックします。

    この画面を使って、既存のグローバル リソースにマップするか、または新しいグローバル リソースを作成します。また、既にグローバル リソースがコンピュータ上にアンパッケージされていて、そのグローバル リソースを使用するサイトでグローバル リソース ポインタをアンパッケージする場合も、このダイアログ ボックスを使います。

    [データベースの接続文字列] ダイアログ ボックスに、サイト パッケージャが使用するデータベースと、そのデータベースが存在するサーバーが一覧表示されます。

    ここではデータ ウェアハウスを別のコンピュータに配置するので、データベースを作成する必要があります。[新規データベース] をクリックし、データ ウェアハウス用の Blank_dw というデータベースをコンピュータ B に作成します。

  10. [新規データベース] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | SQL Server コンピュータ (コンピュータ B) の名前を入力します。
    [データベース名] | データ ウェアハウス データベースの「Blank_dw」という名前を入力します。
    [SQL ユーザー名] | 新しいデータベースを作成するには、sysadmin または dbcreator のいずれかの SQL Server ロールに属するログイン名を使う必要があります。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL パスワード] | SQL Server ログイン パスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

    次の図は、[新規データベース] ダイアログ ボックスを示します。

    [新規データベース] ダイアログ ボックス、例 B、1

    図をクリックすると、拡大または縮小します。

  11. [データベースの作成] をクリックします。Blank_dw データベースがコンピュータ B に作成されます。

  12. [データベースの接続文字列] ダイアログ ボックスに戻ったら、[新規データベース] をクリックします。

    コンピュータ B には、ほかの Commerce Server データベースも配置します。

  13. 手順 11. を繰り返し、[データベース名] ボックスには「Blank_commerce」という名前を入力して、これらのデータベースをまとめる Blank_commerce という独立したデータベースを作成します。次の図は、Blank_commerce データベースが指定された [新規データベース] ダイアログ ボックスを示します。
    [新規データベース] ダイアログ ボックス、例 B、2

    図をクリックすると、拡大または縮小します。

  14. [データベースの作成] をクリックします。Blank_commerce データベースがコンピュータ B に作成されます。

  15. [データベースの接続文字列] ダイアログ ボックスに戻ったら、[データ ウェアハウス] を選択し、[変更] をクリックします。

  16. [データ リンク プロパティ] ダイアログ ボックスの [サーバー名を選択または入力します] ボックスに、コンピュータ B の名前を入力します。[サーバー上のデータベースを選択します] ボックスで、コンピュータ B に作成したデータ ウェアハウスに割り当てた名前 (Blank_dw) を選択し、[OK] をクリックします。

    注

    • [パスワードを保存する] ボックスがオンになっていることを確認してください。選択されていないと、データベースが作成されません。

    次の図は、[データ リンク プロパティ] ダイアログ ボックスを示します。

    [データ リンク プロパティ] ダイアログ ボックス、blank_dw

    図をクリックすると、拡大または縮小します。

  17. [データベースの接続文字列] ダイアログ ボックスに戻ったら、ほかのすべてのデータベース (データ ウェアハウスを除く) を選択し、[変更] をクリックします。

  18. [データ リンク プロパティ] ダイアログ ボックスの [サーバー名を選択または入力します] ボックスに、コンピュータ B の名前を入力します。[サーバー上のデータベースを選択します] ボックスで、データベースに割り当てた名前 (blank_commerce) を選択し、[OK] をクリックします。

    注

    • [パスワードを保存する] ボックスがオンになっていることを確認してください。選択されていないと、データベースが作成されません。

    次の図は、変更後の [データベースの接続文字列] ダイアログ ボックスを示します。

    [データベースの接続文字列] ダイアログ ボックス、例 B

    図をクリックすると、拡大または縮小します。

  19. [次へ] をクリックします。

  20. [アプリケーションの選択] ダイアログ ボックスで、アンパッケージするアプリケーションが選択されていることを確認し、[次へ] をクリックします。次の図は、[アプリケーションの選択] ダイアログ ボックスを示します。
    [アプリケーションの選択] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  21. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスで、各アプリケーションのインターネット インフォメーション サービス (IIS) 5.0 Web サイトおよび IIS パスが正しいことを確認します。アプリケーションの IIS Web サイトを変更するには、一覧でアプリケーションを選択し、ドロップダウン リストから IIS Web サイトを選択します。

    アプリケーションの仮想ディレクトリ名を変更するには、一覧でアプリケーションを選択します。[IIS 仮想ディレクトリ] ボックスに、割り当てる名前を入力します。

    注

    • IIS のエラーを回避するには、IIS 仮想ディレクトリ名に特殊文字 (#、@、%、' など) を使わないようにしてください。

    • サイト パッケージャでは、リモート コンピュータでのサイトのアンパッケージはサポートされません。

    • サイト パッケージャは、対応する IIS Web サイトのホーム ディレクトリの下に各アプリケーションをアンパッケージします。ホーム ディレクトリの中には、アプリケーションの IIS 仮想ディレクトリ名を使ったサブフォルダが作成されます。

    次の図は、[IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスを示します。

    [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  22. [データ ウェアハウス] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | グローバル データ ウェアハウス リソースに付ける名前を入力します。
    [サーバー] | SQL 分析 (OLAP) コンピュータの名前を入力します。
    [データベース] | 使用する分析 (OLAP) データベースの名前を入力します。
  23. [次へ] をクリックします。

  24. 最初の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [プロファイル スキーマの定義] | インポートするプロファイル スキーマの定義を指定します。
    [サイト用語の定義] | インポートするサイト用語の定義を指定します。
    [式の定義] | インポートする式の定義を指定します。

  25. [次へ] をクリックします。

  26. 2 番目の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [システム プロファイリングの接続文字列] | OLEDB データ ストアにインポートするファイルを指定します。ほかのデータベースを指定するには、[変更] をクリックします。
    [スキーマ定義のスクリプト (*.sql, *.vbs)] | インポートするスキーマ定義スクリプトを指定します。
    [データ生成スクリプト (*.sql)] | インポートするデータ生成スクリプトを指定します。

  27. [次へ] をクリックします。

  28. [アンパックが完了しました!] ダイアログ ボックスで、作成された SQL Server データベースと IIS アプリケーションの一覧を確認します。[ログ ファイルの表示] をクリックし、サイト パッケージャ ログ ファイルでイベントの一覧を確認します。

  29. サイト パッケージャを閉じるには、[終了] をクリックします。

手順 5:Commerce Server の Web サーバー (コンピュータ C) をアプリケーションに追加する

  1. アプリケーションに追加する Web サーバー (コンピュータ C) で、[Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、Web サーバーを追加するアプリケーションの名前をクリックします。その名前をマウスの右ボタンでクリックし、[新規作成] をポイントします。次に [Web サーバーの追加] をクリックします。

    既存のパッケージ ファイルの一覧を含む [Web サーバーの追加元] ダイアログ ボックスが表示されます。

  3. [Web サーバーの追加元] ダイアログ ボックスで、Web サーバーに追加する Web サーバー ファイルが含まれるパッケージ ファイルを選択し、[開く] をクリックします。

    Commerce Server サイト パッケージャが起動します。

  4. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスに、アプリケーションがインストールされる IIS Web サイトの名前と、各 Commerce アプリケーションの IIS 仮想ディレクトリが表示されます。この情報は読み取り専用です。IIS Web サイトおよび仮想ディレクトリは、アプリケーションのすべての Web サーバーで同じでなければなりません。[次へ] をクリックします。

    サイト パッケージャは Web サーバーにファイルを追加し、選択したアプリケーションに Commerce Web サーバー オブジェクトを追加します。Commerce Server マネージャを開くと、アプリケーションの下に Commerce Web server オブジェクトが表示されます。

    注

    • サイト パッケージャでは、リモート コンピュータでの Web サーバーのアンパッケージはサポートされません。
  5. [アンパックが完了しました!] ダイアログ ボックスでログ ファイルを確認し、[終了] をクリックします。

Web サーバーをアプリケーションに追加すると、Commerce Server マネージャのアプリケーション ノードの下に Commerce Web server オブジェクトが表示されます。Commerce Web server オブジェクトには、データ ウェアハウス リソースがログ ファイルをインポートするために必要なプロパティが含まれます。たとえば、サーバー名、Internet Protocol (IP) アドレス、ログ ファイルのパス、ログ記録の間隔などのプロパティです。これらのプロパティは、Commerce Web server オブジェクトをアプリケーションに追加するときに、IIS から自動的に読み込まれます。Web サーバーのプロパティを構成する方法については、「Web サーバーを設定する」を参照してください。

注

  • サイトをインストールした直後、および配置した Commerce Server の構成に大きな変更を加えるときは、管理データベースのバックアップを別の名前で作成しておくことをお勧めします。このバックアップを使って、後から変更を元に戻すことができます。

  • 1 台のコンピュータでサイト パッケージャの複数のインスタンスを同時に実行しないでください。

関連項目

Web サーバーを設定する


サイトにセキュリティを設定する

サイトのアンパッケージが終わったら、Commerce Server およびアプリケーション ファイルへの不正なアクセスを防ぐために、サイトにセキュリティを設定する必要があります。

ここでは、次のトピックについて説明します。

  • サイトへのアクセスを制限する サイトのファイルへのアクセスを制限する NTFS 権限の使用方法について説明します。

  • Commerce Server サービスへのアクセスを制限する 特定の Windowsアカウントについて Commerce Server へのアクセスを許可する方法について説明します。

  • ビジネス デスク モジュールへのアクセスを制限する 指定されたユーザーが特定の Commerce Server ビジネス デスク モジュールにアクセスすることを防ぐ方法について説明します。

  • 管理データベースへのアクセスを制限する Windows レジストリ エディタを使って管理データベースへのアクセスを制限する方法について説明します。

  • Commerce Server リソースへのアクセスを提供する Commerce Server のリソースごとに SQL Server データベースへのアクセスを提供する方法について説明します。

  • ログ ファイルにセキュリティを設定する ログ ファイルをWeb サーバーから、より安全な場所に移動する方法について説明します。

  • 最も安全なバージョンの統合 Windows 認証だけを有効にする 最も信頼性の高いバージョンの統合 Windows 認証を使用できるように Web サーバーを構成する方法について説明します。

  • SQL 管理者ログイン名 "sa" の使用 SQL Server で既定により作成される "sa" というログイン名を使わないように推奨する背景について説明します。

  • リソースへのアクセスを区別する Commerce サイトのユーザー別のアクセス権限について説明します。

  • データ ウェアハウスのパスワードを変更する データ ウェアハウス パスワードを変更する方法について説明します。

関連項目

セキュリティの計画

Commerce Server セキュリティ チェックリスト


サイトへのアクセスを制限する

Commerce Server サイト パッケージャは、Windows アクセス制御リスト (ACL) の設定を変更しません。サイトをアンパッケージした後で、Commerce Server サイトのいくつかのファイルおよびフォルダの権限を変更し、セキュリティを設定する必要があります。また、Web サーバーの権限を設定して、ファイルへのアクセスを制限することもできます。詳細については、｢Web サーバーの権限の設定方法｣を参照してください。

ここでは、NTFS の権限を使ってサイト ファイルへのアクセスを制限する方法について説明します。サイトのファイルおよびフォルダへのアクセスを制限するときは、次の点を考慮する必要があります。

  • ビジネス デスクのユーザーがプロファイル定義の変更を保存するには、[Profiles] フォルダにあるログ ファイルへのアクセス権が必要です。ビジネス マネージャがプロファイル デザイナ モジュールで行った変更を保存する場合も、[Profiles] フォルダにあるログ ファイルへのアクセス権が必要です。Commerce Server ソリューション サイトを使っている場合は、IIS Web サーバーの権限で読み取りアクセスが既定で拒否に設定されますが、このフォルダの NTFS の権限でも読み取りアクセスを拒否に設定することで、セキュリティをさらに強化できます。

  • パイプライン ログの記録を使ってパイプラインをデバッグする場合は、機密情報がクリア テキストでログ ファイルに表示されることに注意してください。これらのパイプライン ログ ファイルが格納される 「Pipelines\Logfiles」 フォルダの読み取りアクセスには、必ずセキュリティを設定してください。

  • IP アドレスのアクセス制限を使って Bdrefresh.asp および RefreshApp.asp に対するアクセス権を制限することにより、権限のないユーザーがこれらのスクリプトを実行できないようにします。既定では、Bdrefresh.asp および Refreshapp.asp は、ビジネス デスクのユーザーが Web サイトに対する変更を発行できるように匿名アクセスで設定されています。これらのファイルにセキュリティを設定するためには、インターネット インフォメーション サービス (IIS) 5.0 で IP アドレス アクセス制限を使うことにより、特定のビジネス デスク ユーザーにアクセス権を付与します。詳細については、｢IP アドレスのアクセス制限を設定するには｣を参照してください。

    Bdrefresh.asp スクリプトは、ビジネス デスクのキャッシュを消去します。RefreshApp.asp スクリプトは、プロファイルのキャッシュを消去します。このいずれかのキャッシュが繰り返し消去されると、ユーザーへのサービス拒否が発生することがあります。これらのファイルは、アンパッケージしたソリューション サイトのルート フォルダに置かれています。

    Commerce Server ソリューション サイトには、ほかにも同じようなファイルが含まれています。ほかの保護対象ファイルの詳細については、ソリューション サイトを参照してください。

  • ビジネス デスク以外のアプリケーションをアンパッケージするときに、自分で作成した unpack.vbs スクリプト ファイルを使う場合は、アンパッケージ後すぐにファイルを削除するか、またはセキュリティを設定してください。ファイルはルート ディレクトリにあり、匿名ユーザーからもアクセスできます。このスクリプトが不正に使われると、サービス拒否が発生したり、サイトの設定が壊れることがあります。ただし、サイトを再パッケージ化する場合は、このファイルが必要になります。

    Commerce Server ソリューション サイトでは、unpack.vbs ファイルに既定でセキュリティが設定されます。

  • ファイルおよびフォルダの権限を設定できるのは、NTFS でフォーマットされたドライブだけです。

  • 権限を変更できるのは、システム管理者か、またはシステム管理者からその権限を与えられたユーザーだけです。

  • フォルダに対するフル コントロールのアクセス権を与えられたグループまたはユーザーは、設定された権限とは無関係に、そのフォルダ内にあるファイルおよびサブフォルダを削除できます。

  • [アクセス許可] の下のチェック ボックスが影付きになっている場合、または [削除] ボタンが無効になっている場合は、そのファイルまたはフォルダは親フォルダから権限を継承しています。

ファイルおよびフォルダの権限を設定、表示、変更、または削除するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [アクセサリ] をポイントし、[エクスプローラ] をクリックします。

  2. [エクスプローラ] ウィンドウで、目的のファイルまたはフォルダに移動し、そのファイルまたはフォルダをマウスの右ボタンでクリックします。次に [プロパティ] をクリックし、[セキュリティ] タブをクリックします。

  3. [セキュリティ] タブで、次のいずれかの操作を行います。
    • 既存のグループまたはユーザーに対する権限を変更するには、[名前] ボックスでそのグループまたはユーザーの名前を選択します。[アクセス許可] ボックスで、変更する権限ごとに [許可] または [拒否] の各チェック ボックスを設定します。

    • 権限の一覧からグループまたはユーザーを削除するには、[名前] ボックスでそのグループまたはユーザーを選択し、[削除] をクリックします。

    • 新しいグループまたはユーザーの権限を設定するには、[追加] をクリックします。[ユーザー、コンピュータ、またはグループの選択] ダイアログ ボックスで、権限を設定するグループまたはユーザーの名前を「domain_name\user_name」形式で入力し、[OK] をクリックします。
  4. [OK] をクリックし、[プロパティ] ダイアログ ボックスを閉じます。

IP アドレスのアクセス制限を設定するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [管理ツール] をポイントし、[インターネット サービス マネージャ] をクリックします。

  2. インターネット インフォメーション サービスで Bdrefresh.asp ファイルを表示します。

  3. Bdrefresh.asp をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  4. [ファイル セキュリティ] タブの IP アドレスおよびドメイン名の制限セクションで [編集] をクリックします。

  5. [IP アドレスとドメイン名の制限] ダイアログ ボックスの [追加] をクリックし、Bdresfresh.asp へのアクセス権を付与するコンピュータを追加します。次に [拒否する]、[OK] を順にクリックします。

  6. Refreshapp.asp に移動し、Refreshapp.asp をマウスの右ボタンでクリックして、[プロパティ] をクリックします。

  7. 手順 4 と手順 5 を繰り返して Refreshapp.asp にセキュリティを設定します。


Commerce Server サービスへのアクセスを制限する

リスト マネージャ、ダイレクト メーラー、予測の各 Commerce Server サービスでは、Commerce Server セットアップ プログラムの実行時に、[サービス アカウント] ダイアログ ボックスで Windows のユーザー名およびパスワードを指定できます。これらの Windows アカウントには、"サービスとしてログオン" の権利が自動的に与えられます。次の図は、[サービス アカウント] ダイアログ ボックスを示します。

[サービス アカウント] ダイアログ ボックス

図をクリックすると、拡大または縮小します。

同じダイアログ ボックスで、イベント ログの記録を実行するアカウントも指定します。このアカウントは、セットアップ時に作成される Commerce Event Logging COM+ パッケージで使われます。

サービスごとに適切なアカウントを指定します。リスト マネージャでは、Commerce Server ビジネス デスクのユーザーが、リストのインポート元のフォルダを読み取って、リストのエクスポート先のフォルダに書き込めるようにする必要があります。リスト マネージャのサービス アカウントには、ユーザーがリストをインポートおよびエクスポートするフォルダに対する適切な NTFS の権限が必要です。

また、セットアップ プログラムでは、これらのサービスでローカル システム アカウントを使うように設定することはできません。セットアップ後に手動で設定することは可能ですが、それによってサービスに必要以上の権限が割り当てられる場合があるため、お勧めできません。


ビジネス デスク モジュールへのアクセスを制限する

特定のユーザーが、特定の Commerce Server ビジネス デスク モジュールにアクセスできないようにすることができます。そのためには、ビジネス デスクの ASP ファイルにアクセス制御エントリ (ACE) を設定します。各ビジネス デスク モジュールには、そのモジュールがビジネス デスクのナビゲーション ウィンドウに追加される前に ACE と照合される、メインの ASP ファイルがあります。ビジネス デスクを実行しているログイン ユーザーが、モジュールのメインの ASP ファイルに対する読み取りの権限を持っていない場合、そのモジュールはユーザーのナビゲーション ウィンドウに表示されません。

ビジネス デスク モジュールへのアクセスを制限するには

  1. Windows エクスプローラで、ビジネス デスク アプリケーションのファイルが格納されているフォルダを開きます。

    このフォルダが IIS Web サイトのホストになっています。既定では、このフォルダは「Inetpub\wwwroot」フォルダに置かれます。

  2. アクセスを制限するモジュールが格納されているフォルダをクリックします。

  3. 次の表の情報を使って、アクセスを制限するモジュールに対応するファイルの名前をマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  4. [セキュリティ] タブをクリックします。

  5. [セキュリティ] タブでは、そのファイルのアクセス制御リスト (ACL) に含まれる ACE を管理できます。

    次の表は、各ビジネス デスク モジュールで ACE を設定できるファイルを示します。

    アクセスを制限するカテゴリ/モジュール | ACE を設定する ASP ファイル
    分析/レポート | Analysis\Analysis_reports.asp
    分析/完成したレポート | Analysis\Analysis_report_viewer.asp
    分析/セグメント ビューア | Segviewer\Modellist.asp
    キャンペーン/キャンペーン マネージャ | Marketing\Cmanager.asp
    キャンペーン/リスト マネージャ | Marketing\Listmanager.asp
    キャンペーン/キャンペーン式 | Marketing\Targetexpr.asp
    キャンペーン/対象グループ | Marketing\Target_group.asp
    キャンペーン/参照テーブル | Marketing\Reftable.asp
    キャンペーン/キャンペーンの発行 | Productionrefresh\refresh.asp
    カタログ/カタログ デザイナ | Catalogs\Designer\List_categorydefinitions.asp
    カタログ/カタログ エディタ | Catalogs\Editor\List_catalogs.asp
    カタログ/カタログ セット | Catalogsets\Catalogsets_list.asp
    注文/バスケット マネージャ | Orders\Basket_list.asp
    注文/データ コード | Application\Datacodes_list.asp
    注文/注文状況 | Orders\Orderstatus_list.asp
    注文/トランザクションの発行 | Productionrefresh\refresh.asp
    注文/送付方法 | Shipping\Shipping_list.asp
    注文/税率 | Tax\Regionaltax.asp
    ユーザー/ユーザー | Users\Registered.asp
    ユーザー/組織 | Organizations\Orgs.asp
    ユーザー/プロファイル デザイナ | Profiles\Profileselector.asp
    ユーザー/サイト用語エディタ | Profiles\Profileeditor.asp
    ユーザー/プロファイルの発行 | Profiles\Refreshprofilesvcall.asp

注

  • 個人ユーザーおよび Authenticated Users グループが Commerce Server ビジネス デスク モジュールに対するアクセス権を持ち、その個人ユーザーの権限を取り消す場合は、ユーザーが使用できるモジュールがナビゲーション バーで更新されるように、クライアント コンピュータを再起動してナビゲーション バーを再描画します。

  • Administrator アカウントの ACE を含める場合は、Everyone グループにも権限を与える必要があります。権限の設定自体は重要ではありませんが、ユーザーおよびグループの一覧に Everyone グループが存在していなければなりません。Everyone グループがビジネス デスク モジュールに対する権限を持たないと、管理者はそのモジュールにアクセスできません。

  • プロファイルの発行、キャンペーンの発行、またはトランザクションの発行のいずれかのモジュールにセキュリティを設定すると、既定ですべてのモジュールにセキュリティが設定されます。


管理データベースへのアクセスを制限する

サイトの管理データベースのホストとなるサーバーにセキュリティを設定することは重要です。Commerce Server のセットアップ プログラムを実行すると、そのコンピュータのユーザーに、管理データベースに対するフル コントロールのアクセス権が与えられます。管理データベース ログインの SQL パスワードは Windows レジストリで暗号化されていますが、ユーザーは SiteConfigReadOnly、SiteConfig、または GlobalConfig のいずれかのプログラミング オブジェクトにアクセスするスクリプトを使って、パスワードにアクセスすることが可能です。セットアップを実行した後で、ユーザーがコンピュータにアクセスしたり、コンピュータでスクリプトを実行したりできないようにする必要があります。Guest アカウントを無効にし、管理者権限を持たないすべてのユーザーのアクセスを拒否します。

SiteConfig オブジェクトおよび GlobalConfig オブジェクトは、これらのオブジェクト クラスのレジストリ キーのアクセス制御リスト (ACL) を変更することで、使用を制限できます。これらのオブジェクトへのアクセスを制限するには、Windows レジストリ エディタを使ってオブジェクトの権限を変更します。

管理用オブジェクトの権限を変更するには

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスの [名前] ボックスに「regedt32」と入力します。

  3. [HKEY_LOCAL_MACHINE] をクリックします。

  4. [表示] メニューの [キーの検索] をクリックします。

  5. [検索] ダイアログ ボックスの [検索する文字列] ボックスに、次の表に示す該当するキーを入力します。
    キーを検索するオブジェクト | 入力するキー
    SiteConfig | 31B031AE-8877-4973-BC58-FEE0EF8CE07B
    GlobalConfig | CB438FDD-81EC-45FF-9DBB-9F9FBBF717AF
  6. [単語単位で探す] チェック ボックスをオフにして、[次を検索] をクリックします。

    キーの一覧が表示されます。指定したキーが、細い黒の枠線で囲まれて選択されます。選択されたキーを表示するために、一覧を下方向にスクロールしなければならないことがあります。

  7. 検索したキーのノードをクリックします。

  8. [セキュリティ] メニューの [アクセス許可] をクリックします。

  9. [アクセス許可] ダイアログ ボックスで、必要に応じて適切な権限を設定します。読み取りの権限は、管理データベースを変更する必要があるアカウントだけに限定します。

注

  • SiteConfigReadOnly オブジェクトは、Commerce Server アプリケーションにアクセスするすべてのユーザー アカウントからアクセスできるようにしなければなりません。匿名アクセスを許可する場合は、匿名アカウントからオブジェクトを利用できるようにする必要があります。匿名アカウントの名前は IUSR_<コンピュータ名> です。SiteConfigReadOnly オブジェクトのキーは D1AA04A4-B00D-4D30-88AA-E3070DAE8040 です。


Commerce Server リソースへのアクセスを提供する

Commerce Server ビジネス デスクのユーザーおよび管理者が商品カタログなどのリソースにアクセスするには、そのリソースに対応する SQL Server データベースにアクセスする適切な権限が必要です。ユーザーは、db_owner データベース ロールを持つ SQL Server ユーザーにリンクした SQL Server ログイン名を持つ必要があります。または、よりきめ細かいレベルでアクセスを提供する場合は、ユーザーを db_ddladmin、db_datareader、db_datawriter の各ロールに割り当てることができます。

リソースに対してログイン名に割り当てられた SQL Server ロールを確認するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  2. SQL Server Enterprise Manager で、[Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、目的のリソース データベースが含まれるデータベース サーバーの名前を展開します。

  3. [データベース] を展開し、目的のリソースに対応するデータベースを展開します。次に [ユーザー] をクリックします。

  4. 右側のウィンドウで、ログイン名をダブルクリックします。

  5. [データベース ユーザーのプロパティ] ダイアログ ボックスで、[db_owner] チェック ボックスがオンになっていることを確認し、[OK] をクリックします。

    または、[db_ddladmin]、[db_datareader]、[db_datawriter] の各チェック ボックスがオンになっていることを確認し、[OK] をクリックします。

注

  • SQL Server Enterprise Manager でログインのプロパティを変更して、これらの設定を変更することもできます。目的のデータベース サーバーのノードを展開し、[セキュリティ] を展開します。次に [ログイン] をクリックしてログイン名の一覧を表示します。名前をダブルクリックし、データベース ロールを変更します。

指定したログイン名がデータベース ユーザーの一覧に表示されない場合は、新しい SQL Server ユーザーを追加できます。

リソース データベースに新しい SQL Server ユーザーを追加するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  2. SQL Server Enterprise Manager で、[Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、目的のリソース データベースが含まれるデータベース サーバーの名前を展開します。

  3. [データベース] を展開し、目的のリソースに対応するデータベースを展開します。次に [ユーザー] をマウスの右ボタンでクリックし、[新規データベース ユーザー] をクリックします。

  4. [データベース ユーザーのプロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ログイン名] | データベースへのアクセスに使うログイン名を選択するか、または入力します。
    [ユーザー名] | このログイン名に割り当てる SQL Server ユーザー名を入力します。ユーザー名によって、新しいユーザーにデータベースのオブジェクトに対する権限が割り当てられます。
    [データベース ロールの構成メンバ] | 新しいユーザーに割り当てるロールを選択します。リソースへのアクセス権を新しいユーザーに与えるには、[db_owner] ボックスをオンにします。または、[db_ddladmin]、[db_datareader]、[db_datawriter] の各チェック ボックスをオンにします。

  5. [OK] をクリックします。


ログ ファイルにセキュリティを設定する

ログ ファイルは、Web サーバーから、より安全な場所に移動することをお勧めします。ファイルを移動するときは、セキュリティが設定された方法で行ってください。セキュリティを確保する方法の 1 つに、準備環境と運用環境とを直接つなぐ、独立したネットワーク回線を使うという方法があります。この独立した回線を、コンテンツを更新したり、ログ ファイルを安全なサーバーに移動したりするときに利用します。ログ ファイルを安全に移動するもう 1 つの方法は、HTTP 上の Secure Sockets Layer (SSL)、またはファイル転送プロトコル (FTP) を使うことです。

パイプライン ログの記録を使ってパイプラインをデバッグする場合は、機密情報がクリア テキストでログ ファイルに表示される場合があることに注意してください。これらのパイプライン ログ ファイルを含むフォルダ (既定ではアプリケーションの 「\Pipeline\Logfiles」 フォルダ) は必ずセキュリティを設定してください。


最も安全なバージョンの統合 Windows 認証だけを有効にする

サイトで統合 Windows 認証を使っていて、Web サーバーに接続するクライアント コンピュータが Microsoft Windows 2000、または Microsoft Windows NT 4.0 Service Pack 3 以降を使っている場合は、最も強力なバージョンの統合 Windows 認証である NTLMv2 だけを使うように Web サーバーを構成できます。

Windows ポリシーを設定し、最新版の NTLM だけを使うように指定します。Web サーバーのローカル セキュリティ ポリシーで、[LAN Manager 認証レベル] ポリシーを [NTLMv2 応答のみ送信\LM と NTLM を拒否する] に設定し、最も安全な設定を使います。


SQL 管理者ログイン名 "sa" の使用

SQL Server が既定で作成する "sa" というログイン名は使わないことをお勧めします。データベース サーバーに別の管理者ログイン名を指定します。'sa' というログイン名を使う必要がある場合は、空のパスワードを使わないでください。空のパスワードを使うと、サイトのセキュリティ リスクが増大します。


リソースへのアクセスを区別する

Commerce Server リソースは、各データベースに対して 1 つの接続文字列を持ちます。このため、Commerce サイトのユーザーごとに異なるアクセス権限を指定することはできません。


データ ウェアハウスのパスワードを変更する

SQL Server コンピュータのパスワードを変更する場合は、Commerce Server データ ウェアハウスのパスワード、およびすべてのリソースの接続文字列も変更する必要があります。

データ ウェアハウスのパスワードを変更するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. Commerce Server マネージャのコンソールで、[グローバル リソース] を展開します。次に、パスワードを変更するデータ ウェアハウスをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [<データ ウェアハウス名> のプロパティ] ダイアログ ボックスの [接続] タブをクリックします。

  4. [接続] タブの [パスワード] ボックスに新しいパスワードを入力し、[OK] をクリックします。

関連項目

グローバル リソースを設定する


サイトをバックアップする

サイトの配置と構成が終わったら、サイトのすべてのファイルをバックアップして、サーバーで障害が発生した場合にサイトを復元できるようにします。サイトが小規模な場合、サイトをバックアップする最も簡単な方法は、Commerce Server サイト パッケージャを使ってサイトを再パッケージ化することです。新しいパッケージには、現在のサイトに固有の多くの構成設定が保存されます。使用するコンピュータに固有のプロパティはパッケージ化されません。たとえば、Commerce Server マネージャで設定した Web サーバー プロパティやいくつかのアプリケーション プロパティはパッケージ化されません。各リソースごとにパッケージ化されるデータの一覧については、「サイト パッケージャの参照情報」を参照してください。

サイトの構成を変更するたびに、必ずサイトを再パッケージしてください。サイトをパッケージ化する方法の詳細については、｢サイトをパッケージ化する｣を参照してください。

サイトが大規模な場合は、サイトのパッケージ ファイルの作成が現実的でない場合があります。このような場合は、各コンポーネント (アプリケーションやデータベースなど) を適切な方法でバックアップする必要があります。次の表は、Commerce Server の各コンポーネントの種類に応じた適切なバックアップ ツールを示します。

バックアップするコンポーネントの種類 | 項目
アプリケーション ファイルおよび Windows レジストリ | Windows バックアップまたは Microsoft Application Center 2000
データベース | SQL Server バックアップ
ドメイン情報 | 複数のドメイン コントローラ間のActive Directory 複製

関連項目

Commerce Server をバックアップおよび復元する

SQL データベースをバックアップおよび復元する


サイトを更新する

配置は終わりのない作業です。サイトが運用を開始した後も、変化し続けるニーズに対応するために、サイトのコンテンツや構成を更新する必要があります。

ここでは、次のトピックについて説明します。

  • 更新用のテスト環境を使う 運用サーバーの更新前にテスト環境を使う方法について説明します。

  • Web サーバーを追加する Commerce Web サーバーのインストール方法について説明します。

  • サイト パッケージャを使わずに Web サーバーを追加する Site Packager を使わずに Commerce Web サーバーをインストールする方法について説明します。

  • サイトのコンテンツを更新する Commerce Server のコンポーネントの更新方法について説明します。

  • SQL Server を使ってデータベースを複製する SQL Server を使って Commerce Server データベースを複製する方法について説明します。

  • サーバーの名前を変更する サーバー名の変更方法について説明します。


更新用のテスト環境を使う

運用環境のサーバーを更新する前に、必ず別の準備/テスト環境で更新を配置およびテストします。これにより、十分にテストされ、更新されたサイトを効率的に配置できるようになります。

たとえば、商品カタログを更新するとします。運用環境でカタログを変更する前に、まず準備環境でカタログを更新します。そして、そこで更新したカタログをテストします。更新が適切に機能することを確認したら、SQL Server を使って更新を運用サーバーに複製します。

関連項目

サイトのコンテンツを更新する

SQL Server を使ってデータベースを複製する


Web サーバーを追加する

既存のサイトに Web サーバーを追加するには、新しい Web サーバーで Commerce Server のセットアップ プログラムおよび Commerce Server サイト パッケージャを実行する必要があります。まず、必要なハードウェアとソフトウェアがインストールされていることを確認します。

Commerce Server の Web サーバーをインストールするには

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、[Web サーバー] インストール オプションを使って Commerce Server 2000 のセットアップ プログラムを実行します。

  2. [次へ] をクリックします。

  3. [管理データベースの構成] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL Server コンピュータ] | このサーバーの名前を入力します。
    [SQL Server ログイン名] | 管理データベースのアクセスに使用する SQL Server ログイン名を入力します。オンライン分析処理 (OLAP) のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。
    [SQL Server ログイン パスワード] | SQL Server ログイン名に対応するパスワードを入力します。OLAP のエラーを回避するには、特殊文字 (#、@、%、' など) を使わないようにしてください。

  4. [次へ] をクリックします。

  5. [サービス アカウント] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ユーザー名] | このコンピュータで Commerce Server サービスを実行するアカウントの Windows ユーザー名を入力します。
    [パスワード] | Windows アカウントのパスワードを入力します。
    [ドメイン] | Windows アカウントのドメインを入力します。

  6. [次へ] をクリックします。

  7. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    Commerce Server のセットアップ プログラムにより、Runtime オブジェクトおよび Commerce Server のサイト パッケージがこのサーバーにインストールされます。

  8. [終了] をクリックし、セットアップ プログラムを終了します。

次に、必要なアプリケーションを新しい Web サーバーにアンパッケージする必要があります。新しい Web サーバーに Commerce Server をインストールしたら、次の手順を実行します。

アプリケーションに新しい Web サーバーを追加するには

  1. アプリケーションに追加する物理的な Web サーバーで、[Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション] を展開し、Web サーバーを追加するアプリケーションの名前をマウスの右ボタンでクリックします。次に、[新規作成] をポイントし、[Web サーバーの追加] をクリックします。

  3. [Web サーバーの追加元] ダイアログ ボックスで、Web サーバーに追加する Web サーバー ファイルが含まれているパッケージ ファイルを選択し、[開く] をクリックします。

    Commerce Server サイト パッケージャが起動します。

  4. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスに、アプリケーションがインストールされるインターネット インフォメーション サービス (IIS) 5.0 Web サイトの名前と、各 Commerce アプリケーションの IIS 仮想ディレクトリが表示されます。この情報は読み取り専用です。IIS Web サイトおよび仮想ディレクトリは、アプリケーションのすべての Web サーバーで同じでなければなりません。[次へ] をクリックします。

    サイト パッケージャは Web サーバーにファイルを追加し、選択したアプリケーションに Commerce Web server オブジェクトを追加します。Commerce Server マネージャを開くと、アプリケーションの下に Commerce Web server オブジェクトが表示されます。

  5. [アンパックが完了しました!] ダイアログ ボックスでログ ファイルを確認し、[終了] をクリックします。

Web サーバーをアプリケーションに追加すると、Commerce Server マネージャのアプリケーション ノードの下に Commerce Web server オブジェクトが表示されます。Commerce Web server オブジェクトには、データ ウェアハウス リソースがログ ファイルをインポートするために必要なプロパティが含まれます。たとえば、サーバー名、Internet Protocol (IP) アドレス、ログ ファイルのパス、ログ記録の間隔などのプロパティです。これらのプロパティは、Commerce Web server オブジェクトをアプリケーションに追加するときに、IIS から自動的に読み込まれます。Web サーバーのプロパティの詳細については、｢Web サーバーを構成する｣を参照してください。

注

  • 既存のアプリケーションに Web サーバーを追加するには、そのアプリケーションのイメージが含まれるパッケージを使う必要があります。たとえば、Retail というアプリケーションが含まれる ShoeStore というサイトをアンパッケージするとします。Retail アプリケーションの名前を Retail2 に変更した場合は、名前を変更したアプリケーションと共にサイトを再パッケージし、新しいパッケージを使ってアプリケーションに Web サーバーを追加する必要があります。

関連項目

ハードウェアの必要条件

ソフトウェアの必要条件

サイト パッケージャを使わずに Web サーバーを追加する


サイト パッケージャを使わずに Web サーバーを追加する

Commerce Server サイト パッケージャを使わずに、Web サーバーをアプリケーションに追加できます。まず、アプリケーションのファイルをサーバーにコピーし、新しいサーバーでインターネット インフォメーション サービス (IIS) 5.0 アプリケーションを構成します。この作業には Microsoft Application Center 2000 を使用できます。アプリケーションを最初に新しいサーバーに読み込むときに、新しいサーバーは Commerce Server 管理データベースの該当するアプリケーションの下の Web サーバーとして追加されます。管理データベースを更新する関数は JoinWebFarm で、Commerce Server ソリューション サイトに含まれています。この関数は Global_siteconfig_lib.asp ファイルにあり、ファイルはアンパッケージした Commerce Server ソリューション サイトの [Include] フォルダにあります。

アプリケーションに Web サーバーを追加したら、以下の Web サーバー プロパティについて、Commerce Server と IIS のプロパティを同期させる必要があります。

  • TCP ポート

  • SSL ポート

  • IP (インターネット プロトコル) アドレス

  • ログ ファイル パス

  • ログ ファイル出力期間

プロパティを同期させるには、Commerce Server マネージャで手動によって値を更新するか、[<サイト名> のプロパティ] の [Web サーバー] タブで [値の同期] ボタンをクリックします。詳細については、｢アプリケーションを構成する｣を参照してください。

[値の同期] をクリックすると、IIS のアプリケーション レベルのプロパティと、そのアプリケーションの下にあるすべての Web サーバー オブジェクトのプロパティがコピーされます。具体的には、アプリケーション レベルのプロパティ (TCP ポートと SSL ポート) に、最初の Web サーバーの対応するプロパティの値が読み込まれます。これには、すべての Web サーバーがまったく同一に構成されていることが前提となります。構成が異なると、Web ファームは正常に機能しません。

JoinWebFarm のコードは SiteConfig オブジェクトを使うので、ユーザーが SiteConfig オブジェクトを使う権限を持っている場合にのみ機能します。以前に SiteConfig オブジェクトへのアクセスを拒否に設定した場合は、Windows レジストリ エディタを使ってこのオブジェクトに対する権限を復元できます。詳細については、｢管理データベースへのアクセスを制限する｣を参照してください。

注

  • Application Center 2000 では、ファイルおよび IIS の設定は同期されますが、Commerce Server 管理データベースは更新されません。したがって、JoinWebFarm 関数など別のスクリプトを使う必要があります。Application Center 2000 の詳細については、Application Center 2000 のマニュアルを参照してください。


サイトのコンテンツを更新する

最初に Web サイトを配置するときは、Commerce Server サイト パッケージャを使います。サイトのコンテンツを更新する場合は、更新するコンポーネントに応じてさまざまなツールを使います。次の表は、Commerce Server のコンポーネントが置かれている場所と、その更新方法を示します。

更新するコンテンツの種類 | 更新方法
Web ページ (ASP および HTML ファイル) | Microsoft Visual Studio、Microsoft Application Center 2000、Content Deployment ツール、その他の Web ページ発行ツールを使います。 詳細については、Visual Studio または Application Center 2000 のマニュアルを参照してください。
Component Object Model (COM) アプリケーション | 該当するダイナミック リンク ライブラリ (DLL) を Web サーバーに転送し、regsvr32 <dll ファイル名> コマンドを使って登録します。
ユーザー プロファイルおよびカタログ スキーマ | スクリプトを作成します。 これらのスキーマの説明については、「プロファイル スキーマ」および「カタログ スキーマを作成する」を参照してください。
カタログ データ、キャンペーン、広告、および割引 | データ変換サービス (DTS) タスクを作成して実行します。キャンペーン、広告、および割引を更新するときは、これらのレコードが含まれるテーブルだけを移動します。パフォーマンス テーブルは上書きしないでください。 DTS タスクの詳細については、｢データ ウェアハウスの実行｣を参照してください。
パイプライン | 該当するパイプライン (.pcf) ファイルをコピーします。

注

  • サーバーのコンテンツを更新する前に、そのサーバーに接続しているユーザーがいないことを確認してください。ユーザーの接続中に更新を行うと、Web サイトのリンクが機能しない場合があります。

関連項目

SQL Server を使ってデータベースを複製する.


SQL Server を使ってデータベースを複製する

大規模な Commerce Server 2000 サイトの可用性および拡張性を実現するために、カタログ データベースの複製が必要になることがあります。そのためには、SQL Server を使って、ネットワーク負荷分散 (NLB) クラスタ内のカタログ サーバーまたはサーバー クラスタを複製します。この構成の図については、「大規模サイトの構成」を参照してください。

SQL Server を使って Commerce Server データベースを複製します。スナップショット、トランザクション、またはマージのいずれのレプリケーションを使う場合でも、次の各ステージがレプリケーションの実装に役立ちます。

ステージ | 作業
レプリケーションの構成 | トポロジにおけるパブリッシャ、ディストリビュータ、およびサブスクライバを識別します。SQL Server Enterprise Manager、SQL-DMO、または Transact-SQL システム ストアド プロシージャとスクリプトを使って、パブリケーション サーバーを構成し、ディストリビューション データベースを作成し、サブスクリプション サーバーを有効にします。
データおよびデータベース オブジェクトのパブリッシング | パブリケーションを作成して、パブリケーションのデータおよびデータベース オブジェクトのアーティクルを定義し、パブリッシュするデータに必要なフィルタを適用します。
パブリケーションのサブスクライブ | プッシュ、プル、または匿名サブスクリプションを作成し、個々のサブスクリプション サーバーに伝達する必要があるパブリケーションと、そのタイミングを指定します。
初期スナップショットの生成 | スナップショット ファイルを保存する場所、ファイルを圧縮するかどうか、および初期スナップショットの適用前または適用後に実行するスクリプトを指定します。
初期スナップショットの適用 | ディストリビューション エージェントまたはマージ エージェントを使ってサブスクリプションを同期させることで、スナップショットを自動的に適用します。スナップショットは、既定のスナップショット フォルダから適用できます。または、サブスクリプション サーバーに手動で運搬できるリムーバブル メディアから適用することもできます。
データの同期 スナップショット エージェント、ディストリビューション エージェント、またはマージ エージェントが実行され、パブリケーション サーバーとサブスクリプション サーバーの間で更新が伝達されると、データの同期が行われます。

スナップショット レプリケーションの場合は、スナップショットがとられて、サブスクリプション サーバーに伝達されます。トランザクション レプリケーションの場合は、ログ リーダー エージェントが更新をディストリビューション データベースに格納し、ディストリビューション エージェントがサブスクリプション サーバーに更新を伝達します。

スナップショット レプリケーションまたはトランザクション レプリケーションで更新できるサブスクリプションを使っている場合は、データがサブスクリプション サーバーからパブリケーション サーバーへ、そしてほかのサブスクリプション サーバーへ伝達されます。

マージ レプリケーションの場合は、すべてのサーバーでのデータの変更が収束するときに、マージ処理の過程でデータが同期します。競合がある場合は検出され、解決されます。

関連項目

サイトのコンテンツを更新する


サーバーの名前を変更する

Commerce Server 2000 をインストールした後は、サーバー名を変更しないことを強くお勧めします。サーバーの NetBIOS 名を変更しなければならない場合は、Commerce Server をアンインストールし、名前を変更し、サーバーを再起動し、プラットフォームが正しく構成されていることを確認してから、Commerce Server を再インストールします。

Commerce Server は、サーバー名に基づいてリソース間の接続文字列に名前を付けます。名前を変更すると、リソース間の接続が切れることがあります。これらの接続文字列は、Commerce Server マネージャで手動で変更する必要があります。

予測、Commerce Server ダイレクト メーラー、プロファイルの各グローバル リソースには、これらが作成されたサーバーの名前を含む表示名が付けられます。サーバーの名前を変更する場合は、Commerce Server のセットアップ プログラムを使って予測およびダイレクト メーラーを削除し、再インストールできます。新しい名前の付いたプロファイル グローバル リソースを作成するには、Commerce Server サイト パッケージャを使います。さらに、そのプロファイル グローバル リソースを使っていたすべてのサイトのプロファイル グローバル リソース ポインタの参照プロパティを変更する必要があります。

Microsoft Application Center 2000 を使って、名前を変更した Web サーバーにアプリケーションを再び読み込むと、Application_OnStart イベント時にGlobal.asa ファイルから呼び出される JoinWebFarm 関数が、管理データベースに新しい Web サーバー ノードを作成します。Commerce Server マネージャを使って、サイトから古いサーバー名を削除する必要があります。


サイト パッケージャを使う

Commerce Server サイト パッケージャは、2 つの主要な用途を持つ配置用のツールです。このツールは、インターネット インフォメーション サービス (IIS) 5.0 の設定 (メタベース)、ファイル システム、管理データベースからのリソース、および SQL Server データベースを含む Commerce Server 2000 サイトを 1 つのファイルにパッケージ化するときに使います。また、パッケージ化された Commerce Server サイト (またはその一部分) をほかのコンピュータにアンパッケージするときにも使います。

ほとんどの場合、サイトを最初に配置するときにサイト パッケージャを使います。それ以降の配置、インクリメンタル更新、およびロールバックには、Microsoft Application Center 2000 などのツールや、ほかのコンテンツ管理製品を使います。

ここでは、次のトピックについて説明します。

  • サイト パッケージャについて サイト パッケージャの機能、パッケージの構成、およびグローバル リソースをアンパッケージする方法について説明します。

  • サイトをパッケージ化する サイトをパッケージ ファイルにパッケージ化する方法について説明します。

  • サイトをアンパッケージする パッケージ ファイルからサイトをアンパッケージする方法について説明します。

  • サイト パッケージャでスクリプトを使う サイト パッケージャでインストール前およびインストール後のスクリプトを使う方法について説明します。

  • サイト パッケージャをコマンド ラインから実行する サイト パッケージャをコマンド ラインから使う方法について説明します。

  • サイト パッケージャの .ini ファイルをカスタマイズする Commerce Server ソリューション サイトに含まれる .ini ファイルについて説明します。また、それらの .ini ファイルをテンプレートとして使用し、各自のパッケージ用のカスタム .ini ファイルを作成する方法についても説明します。

  • サイト パッケージャの参照情報 サイトをアンパッケージしたときに SQL Server に作成されるデータと設定を示します。


サイト パッケージャについて

Commerce Server サイト パッケージャは、アプリケーションを簡単に配置できるように、Web サイトと設定をパッケージ化およびアンパッケージします。

パッケージ

アンパッケージのオプション

ソリューション サイト

データベース名とアプリケーション名の作成方法

グローバル リソースをアンパッケージする方法

データベースの場所

Web サーバーの権限の設定方法

パッケージ

パッケージ とは、特殊な形式の Commerce Server ファイルです。各パッケージは、.pup というファイル名の拡張子で識別されます。1 つのパッケージには必ず 1 つのサイトが含まれ、その中に Commerce Server サイトのリソース、データ、アプリケーションなどが含まれています。

Commerce Server サイト パッケージャには、Web サーバーの再構成に必要なサイト リソース、アプリケーション、およびインターネット インフォメーション サービス (IIS) 5.0 の設定に加えて、管理データベースからのプロパティ値も含まれます。たとえば、アプリケーション既定の構成リソースをパッケージ化すると、現在のすべてのプロパティ値もパッケージ化されます。アプリケーション既定の構成リソースをアンパッケージすると、プロパティ値は管理データベースにアンパッケージされます。

パッケージには、グローバル リソース ポインタは含まれますが、グローバル リソース自体は含まれません。接続文字列は、ユーザー名とパスワードのフィールドが含まれずにパッケージ化されます。

アプリケーションのパッケージ処理の過程で、サイト パッケージャはローカル コンピュータの IIS メタベースを検索し、そのアプリケーションのルートになっている物理ディレクトリを見つけます。次に、見つかったルート ディレクトリとそのすべてのサブディレクトリを、.pup 拡張子付きの新しいファイルにパッケージ化します。認証や権限など、IIS の特定の設定は保持されます。

使用するコンピュータに固有のプロパティはパッケージ化されません。たとえば、Commerce Server マネージャで設定した Web サーバー プロパティやいくつかのアプリケーション プロパティはパッケージ化されません。各リソースごとにパッケージ化されるデータの一覧については、「サイト パッケージャの参照情報」を参照してください。

アンパッケージのオプション

既定では、サイト パッケージャは各アプリケーションをそのアプリケーションの名前に一致する仮想ディレクトリにある IIS の既定の Web サイトにアンパッケージします。サイトのセキュリティを強化するには、既定の Web サイトを使う代わりに、アンパッケージする Commerce Server サイト用の新しい IIS Web サイトを作成します。各アプリケーションが格納される仮想ディレクトリの名前は変更できます。アンパッケージの最中に IIS Web サイトまたは仮想ディレクトリを変更するには、サイト パッケージャのカスタム モードを使う必要があります。

アプリケーションにほかの Web サーバーをアンパッケージして Web ファームを作成する場合は、すべての Web サーバーで同じ設定を使わなければならないため、アンパッケージ処理時にアプリケーションの構成情報を変更できません。サイト パッケージャは、アプリケーションがインストールされる IIS Web サイトの名前と、各 Commerce Server アプリケーションの IIS アプリケーション パスを表示します。

管理データベースに既に存在するサイトおよびアプリケーションをアンパッケージすると、サイト パッケージャはアプリケーションに Web サーバーを追加するものと見なします。

ソリューション サイト

ソリューション サイトは、サイトの構築に必要なリソースを含むパッケージです。Commerce Server をインストールしたら、ソリューション サイトの 1 つをアンパッケージして、それを基に独自のサイトを構築できます。

Commerce Server には、次のソリューション サイトが用意されています。

  • Blank カスタム サイトを構築するための Commerce Server リソースがすべて含まれます。

Commerce Server Web サイト で利用できるその他のソリューション サイトを次に示します。

  • Retail Retail サイトを構築するための Commerce Server リソースが含まれます。

  • Supplier Active Directory 対応の Supplier サイトを構築するための Commerce Server リソースが含まれます。

データベース名とアプリケーション名の作成方法

Commerce Server サイト パッケージャは、パッケージに基づいてデータベース名とアプリケーション名を作成します。

IIS アプリケーションは、パッケージのアプリケーションごとに作成されます。パッケージには、各アプリケーションのフル パスが格納されています。

グローバル リソースをアンパッケージする方法

予測およびダイレクト メーラーの 2 つのグローバル リソースは、Commerce Server のセットアップ プログラムでインストールします。それ以外のグローバル リソースは、すべてサイト パッケージャでインストールします。予測またはダイレクト メーラー グローバル リソースを必要とするサイトをアンパッケージする場合は、その前に Commerce Server のセットアップ プログラムでこれらのリソースをインストールしておく必要があります。グローバル リソースのインストール方法については、「グローバル リソースをインストールまたはアンインストールする」を参照してください。

データベースの場所

サイト パッケージャでは、データベース ファイルの場所を指定するように求められません。代わりに、SQL Server の既定のフォルダが使われます。データベースの作成に必要なディスク容量がデータベース サーバーにあることを確認してください。

Web サーバーの権限の設定方法

IIS Web サーバーの権限を設定し、匿名ユーザーによるアプリケーションへのアクセスを制限できます。また、Windows の権限 (またはアクセス制御エントリ) を持つユーザーに対しても、インターネット経由でソース コードを参照することを制限できます。

Web サーバーの権限と NTFS の権限の違いを理解することが大切です。NTFS と異なり、Web サーバーの権限は、Web サイトにアクセスするすべてのユーザーに適用されます。NTFS の権限は、有効な Windows アカウントを持った特定のユーザーまたはユーザーのグループにのみ適用されます。NTFS はサーバーの物理ディレクトリへのアクセスを制御するのに対して、Web の権限は Web サイトの仮想ディレクトリへのアクセスを制御します。

サイトのパッケージ化では、元のサイトで設定されていた Web サーバーの権限が継承されます。たとえば、元のコンピュータでアプリケーションのルート フォルダの [スクリプトおよび実行可能ファイル] に [実行アクセス権] を設定していた場合は、インストール先のコンピュータの仮想ルート フォルダでも同じ設定になります。

たとえば、次の表は、Microsoft が提供するパッケージで IIS の権限がどのように設定されているかを示します。

フォルダ | 権限
ルート | [スクリプトおよび実行可能ファイル] に実行アクセス権を設定します。
[Pipeline]、[Include]、[Template] | 読み取り、書き込み、および実行の権限を拒否します。

注

  • サイト パッケージャでは、NTFS の権限が保存されている Windows アクセス制御リスト (ACL) は保持されません。ACL には、Windows 2000 の特定のオブジェクトにアクセスできるグループおよび個人ユーザーが記述されます。これらのオブジェクトには、Microsoft Active Directory オブジェクト、ローカルの NTFS ファイルおよびフォルダ、レジストリ、プリンタなどがあります。

関連項目

Commerce Server と IIS を使用する

サイトをパッケージ化する

サイトをアンパッケージする

サイト パッケージャの参照情報

サイト パッケージャをコマンド ラインから実行する


サイトをパッケージ化する

サイトをパッケージ化すると、アプリケーションと設定が 1 つのパッケージ ファイルに保存されます。

サイトをパッケージ化するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server サイト パッケージャ] をクリックします。

  2. [Commerce Server サイト パッケージャへようこそ] ダイアログ ボックスで、[既存のサイトをパッケージ化] を選択し、[次へ] をクリックします。

  3. [パッケージ サイト] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [パッケージ化するサイト] | 利用できるサイトの一覧から、パッケージ化するサイトを選択します。
    [作成するパッケージ ファイル] | 作成するパッケージ ファイルの名前を入力します。

  4. [参照] をクリックします。

  5. [名前を付けて保存] ダイアログ ボックスで、パッケージの作成先となるフォルダを開き、ファイル名を指定して [保存] をクリックします。[Commerce サイト パッケージャ] 画面に戻ったら、[次へ] をクリックします。

  6. [システム プロファイリング] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [スキーマ定義のスクリプト] パッケージに含めるスキーマ定義のスクリプトを指定します。[参照] をクリックし、スクリプトの場所を指定します。

    サイト パッケージャは、既定のスキーマ定義のスクリプトを使います。UserObject テーブル、またはその他のプロファイル スキーマの定義を変更する場合は、SQL Server Enterprise Manager を使って、ここで使用するスクリプトを生成する必要があります。詳細については、｢拡張プロファイル スキーマをパッケージ化する｣を参照してください。
    [データ生成スクリプト] | パッケージに含めるデータ生成スクリプトを指定します。[参照] をクリックし、スクリプトの場所を指定します。

  7. [OK] をクリックします。

  8. [パッケージが完了しました!] ダイアログ ボックスで、[ログ ファイルの表示] をクリックし、サイト パッケージャ ログ ファイルでイベントの一覧を確認します。

  9. サイト パッケージャを閉じるには、[終了] をクリックします。

注

  • IIS 仮想ディレクトリに子 IIS アプリケーションが含まれる Commerce Server アプリケーションをパッケージ化すると、サイト パッケージャは子アプリケーションのフォルダとファイルをパッケージ化します。子アプリケーションのフォルダとファイルが必要でない場合は、親 Commerce Server アプリケーションのアンパッケージ後に削除する必要があります。

  • サイト パッケージャは、IIS アプリケーションの子仮想ディレクトリにあるファイルをパッケージ化しません。子仮想ディレクトリのファイルをパッケージ化する必要がある場合は、サイトをパッケージ化する前に、フォルダとファイルを IIS アプリケーションのルート フォルダの子物理フォルダに移動します。

  • アプリケーション (Retail や RetailBusinessDesk など) が、別々の Web サーバーに存在するサイトをパッケージ化するには、いずれかの Web サーバーをほかのアプリケーションに追加する必要があります。たとえば、Retail がコンピュータ A にインストールされ、RetailBizDesk がコンピュータ B にインストールされている場合は、サイト パッケージャをコンピュータ B で実行し、コンピュータ B を Retail 用の Web サーバーとして追加します。次に、コンピュータ B からサイトをパッケージ化します。(反対に、コンピュータ A を RetailBizDesk に追加し、コンピュータ A からサイトをパッケージ化することもできます。)詳細については、｢アプリケーションに Web サーバーを追加する｣を参照してください。

関連項目

サイト パッケージャについて

サイトをアンパッケージする

サイト パッケージャをコマンド ラインから実行する


サイトをアンパッケージする

Commerce Server サイト パッケージャを使って、サイト、またはサイトのサブセットをコンピュータにアンパッケージします。サイト パッケージャを実行するときは、アンパッケージ先のフォルダにファイルをコピーするための適切な権限が必要です。

大部分の既定の設定をそのまま使って、サイトをすばやくアンパッケージするには

すべての設定を自分で指定して、サイトをアンパッケージするには

注

  • 1 台のコンピュータでサイト パッケージャの複数のインスタンスを同時に実行しないでください。

  • 既定以外のインターネット インフォメーション サービス (IIS) 5.0 Web サイトにサイトをアンパッケージするには、サイト パッケージャのカスタム モードを使います。

  • ビジネス デスク アプリケーションをアンパッケージし、ビジネス デスク クライアントをインストールした後でダイレクト メーラー リソースをアンパッケージする場合は、ダイレクト メーラーの追加が検出されるように、ビジネス デスク アプリケーションのホストとなっている Web サーバーでインターネット インフォメーション サービス (IIS) 5.0 を再起動する必要があります。ビジネス デスク クライアントからは、アプリケーションに接続し直す必要があります。IIS の再開方法については、「IIS を再起動する」を参照してください。

  • 必要なリソースをアンパッケージしないように選択すると、ビジネス デスクのモジュールはビジネス デスク アプリケーションから自動的に排除されます。たとえば、Product Catalog をアンパーケージしない場合、Catalogs モジュールはビジネス デスクに表示されますが機能はしません。

このコンピュータを Web サーバーにして、すべてのデータベース ファイルを 1 台の SQL Server に配置する場合は、次の手順を実行します。

大部分の既定の設定をそのまま使って、サイトをすばやくアンパッケージするには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server サイト パッケージャ] をクリックします。

  2. [Commerce Server サイト パッケージャ] ダイアログ ボックスで、[パッケージ ファイルからアンパックする] を選択し、[次へ] をクリックします。

  3. [アンパック] ダイアログ ボックスで、[アンパックするファイル] ボックスの横の [参照] をクリックします。

  4. [ファイルを開く] ダイアログ ボックスで、アンパッケージするファイルが含まれているフォルダを開き、ファイルを選択して [開く] をクリックします。

  5. [アンパック] ダイアログ ボックスに戻ったら、[標準] を選択し、[次へ] をクリックします。

  6. [標準] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [サイト名] | サイトの名前を変更する場合は、サイト名を入力します。名前に特殊文字 (#、@、%、' など) を含めないでください。サイトに "Commerce" という名前を付けないでください。
    [IIS Web サイト] | アプリケーションをインストールする IIS Web サイトの名前を選択します。
    [SQL Server コンピュータ] | サイトのデータベースを格納する SQL Server の名前を入力します。
    [SQL ユーザー名] | データベースの SQL ログイン名を入力します。
    [SQL パスワード] | SQL ログイン パスワードを入力します。

  7. [データ ウェアハウス] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [名前] | グローバル データ ウェアハウス リソースに付ける名前を入力します。
    [サーバー] | SQL 分析オンライン分析処理 (OLAP) コンピュータの名前を入力します。
    [データベース] | 使用する分析 (OLAP) データベースの名前を入力します。

  8. [次へ] をクリックします。

  9. 最初の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [プロファイル スキーマの定義] | インポートするプロファイル スキーマの定義を指定します。
    [サイト用語の定義] | インポートするサイト用語の定義を指定します。
    [式の定義] | インポートする式の定義を指定します。

  10. [次へ] をクリックします。

  11. 2 番目の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [システム プロファイリングの接続文字列] | OLEDB データ ストアにインポートするファイルを指定します。ほかのデータベースを指定するには、[変更] をクリックします。
    [スキーマ定義のスクリプト (*.sql, *.vbs)] | インポートするスキーマ定義スクリプトを指定します。
    [データ生成スクリプト (*.sql)] | インポートするデータ生成スクリプトを指定します。

  12. [次へ] をクリックします。

  13. [アンパックが完了しました!] ダイアログ ボックスで、作成された SQL Server データベースと IIS アプリケーションの一覧を確認します。[ログ ファイルの表示] をクリックし、サイト パッケージャ ログ ファイルでイベントの一覧を確認します。

  14. [終了] をクリックし、サイト パッケージャを閉じます。

この Web サーバーを既存のアプリケーションに追加する場合、またはサイトで複数のデータベース サーバーを使うことを指定する場合は、次の手順を実行します。

すべての設定を自分で指定して、サイトをアンパッケージするには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server サイト パッケージャ] をクリックします。

  2. [Commerce Server サイト パッケージャ] ダイアログ ボックスで、[パッケージ ファイルからアンパックする] を選択し、[次へ] をクリックします。

  3. [アンパック] ダイアログ ボックスで、[アンパックするファイル] ボックスの横の [参照] をクリックします。

  4. [ファイルを開く] ダイアログ ボックスで、アンパッケージするファイルが含まれているフォルダを開き、ファイルを選択して [開く] をクリックします。

  5. [アンパック] ダイアログ ボックスに戻ったら、[カスタム] を選択し、[次へ] をクリックします。

  6. [アンパック方法] ダイアログ ボックスで、適切なオプションを選択し、[次へ] をクリックします。

  7. [サイト名] ボックスにサイトの名前を入力し、[次へ] をクリックします。

    注

    • アンパッケージ時のエラーを回避するには、サイト名に特殊文字 (#、@、%、' など) を使わないようにしてください。既定では、サイトのデータベース名にサイト名のプレフィックスが付くために、特殊文字が SQL Server で認識されないことがあります。

    • シングルバイトで 256 文字、またはダブルバイトで 128 文字を超えるサイト名を指定しないでください。

    • サイトに "Commerce" という名前を付けないでください。この名前は OLAP データベース名に予約されています。サイトに "Commerce" という名前を付けると、次回サイトをアンパッケージするときに、OLAP データベースが上書きされることがあります。
  8. [アプリケーションの選択] または [リソースの選択] ダイアログ ボックスで、インストールする項目を選択し、[次へ] をクリックします。

    注

    • [リソースの選択] ダイアログ ボックスでは、[CS 認証] リソースと [プロファイル] リソースを一緒にインストールする必要があります。両方がインストールされていないと機能しません。
  9. [グローバル リソース ポインタ] ダイアログ ボックスの [次へ] をクリックします。

    このダイアログ ボックスを使って、既存のグローバル リソースにマップするか、または新しいグローバル リソースを作成します。

  10. [データベースの接続文字列] ダイアログ ボックスに、サイト パッケージャが作成するデータベースと、そのデータベースが作成されるサーバーが一覧表示されます。データベースが正しいことを確認し、[次へ] をクリックします。

  11. [アプリケーションの選択] ダイアログ ボックスで、アンパッケージするアプリケーションが選択されていることを確認し、[次へ] をクリックします。

  12. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスで、IIS Web サイトおよびアプリケーションのパスが正しいことを確認し、[次へ] をクリックします。

    注

    • IIS のエラーを回避するには、仮想ディレクトリ名に特殊文字 (#、@、%、' など) を使わないようにしてください。

    • サイト パッケージャでは、リモート コンピュータでのサイトのアンパッケージはサポートされません。

    • サイト パッケージャは、対応する IIS Web サイトのホーム ディレクトリの下に各アプリケーションをアンパッケージします。ホーム ディレクトリの中には、アプリケーションの IIS 仮想ディレクトリ名を使ったサブフォルダが作成されます。
  13. [データ ウェアハウス] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [名前] | グローバル データ ウェアハウス リソースに付ける名前を入力します。
    [サーバー] | SQL 分析 (OLAP) コンピュータの名前を入力します。
    [データベース] | 使用する分析 (OLAP) データベースの名前を入力します。

  14. [次へ] をクリックします。

  15. 最初の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [プロファイル スキーマの定義] | インポートするプロファイル スキーマの定義を指定します。
    [サイト用語の定義] | インポートするサイト用語の定義を指定します。
    [式の定義] | インポートする式の定義を指定します。

  16. [次へ] をクリックします。

  17. 2 番目の [システム プロファイリング] ダイアログ ボックスが表示された場合は、次の操作を行います。
    項目 | 操作
    [システム プロファイリングの接続文字列] | OLEDB データ ストアにインポートするファイルを指定します。ほかのデータベースを指定するには、[変更] をクリックします。
    [スキーマ定義のスクリプト (*.sql, *.vbs)] | インポートするスキーマ定義スクリプトを指定します。
    [データ生成スクリプト (*.sql)] | インポートするデータ生成スクリプトを指定します。

  18. [次へ] をクリックします。

  19. [アンパックが完了しました!] ダイアログ ボックスで、作成された SQL Server データベースと IIS アプリケーションの一覧を確認します。[ログ ファイルの表示] をクリックし、サイト パッケージャ ログ ファイルでイベントの一覧を確認します。

  20. サイト パッケージャを閉じるには、[終了] をクリックします。

注

  • サイトをインストールした直後、および配置した Commerce Server の構成に大きな変更を加えるときは、管理データベースのバックアップを別の名前で作成しておくことをお勧めします。このバックアップを使って、後から変更を元に戻すことができます。

  • データ ウェアハウス以外の Commerce Server データベースをリモート コンピュータにインストールする場合、データベースがそのコンピュータに表示されるまでに時間がかかることがあります。

  • Commerce Server ビジネス デスク以外のアプリケーションをアンパッケージするときに、unpack.vbs スクリプト ファイルを作成して使う場合は、アンパッケージ後すぐにファイルを削除するか、またはセキュリティを設定してください。ファイルはルート ディレクトリにあり、匿名ユーザーからもアクセスできます。このスクリプトが不正に使われると、サービス拒否が発生したり、サイトの設定が壊れることがあります。

関連項目

サイト パッケージャについて

サイトをパッケージ化する

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

サイト パッケージャをコマンド ラインから実行する

サイト パッケージャのトラブルシューティング


サイト パッケージャでスクリプトを使う

Commerce Server サイト パッケージャでは、次の 3 種類の Microsoft Visual Basic スクリプトを使用できます。

パッケージ前のスクリプト

パッケージ後のスクリプト

アプリケーション スクリプト

拡張プロファイル スキーマをパッケージ化する

パッケージ前のスクリプト

パッケージ前のスクリプトは、パッケージ名を指定した直後、サイトがアンパッケージされる前に実行されます。パッケージ前のスクリプトには、Pre<パッケージ名>.vbs 形式の名前 (PreRetail.vbs など) を付ける必要があります。

パッケージ前のスクリプトには、モード ( /s: ) のパラメータが 1 つ用意されています。このパラメータが、サイト パッケージャをサイレント モードと標準のインストール モードのどちらで実行するかを示します。パッケージ前のスクリプトを実行するためには、アンパッケージするパッケージと同じフォルダにスクリプトを置く必要があります。

パッケージ後のスクリプト

パッケージ後のスクリプトは、すべてのアンパッケージが完了した後、[アンパックが完了しました!] ダイアログ ボックスが表示される前に実行されます。パッケージ後のスクリプトには、Post<パッケージ名>.vbs 形式の名前 (PostRetail.vbs など) を付ける必要があります。パッケージ後のスクリプトには、次の 2 つのパラメータが用意されています。

  • 引用符 (") で囲まれたサイト名 (/n:"MySite")

  • モード ( /s:) — サイレント モードまたは標準のインストール モード

パッケージ後のスクリプトを実行するためには、アンパッケージするパッケージと同じフォルダにスクリプトを置く必要があります。

アプリケーション スクリプト

サイト パッケージャでは、アプリケーション固有のスクリプトも実行できます。アプリケーション スクリプトには、次の 6 つのパラメータが用意されています。

  • 引用符 (") で囲まれたサイト名 (/n:"MySite")

  • 引用符で囲まれたアプリケーション名 (/r:"MyApp")

  • サーバー番号、またはアプリケーションがインストールされた IIS Web サイトのインスタンス番号 (/i:1)

  • アプリケーションがインストールされた仮想ディレクトリの名前 (/v:"MyRoot")

  • アプリケーション ファイルがインストールされた場所を示す、引用符で囲まれたファイル パス (/d: "C:\inetpub\wwwroot")

  • モード ( /s:) — サイレント モードまたは標準のインストール モード

アプリケーション スクリプトは、次のイベントが発生した後で、アプリケーションごとに実行されます。

  • アプリケーションがインストールされ、ファイルがコピーされる。

  • IIS のプロパティがアプリケーション用に設定される。

  • アプリケーションの情報が管理データベースに書き込まれる。

  • アプリケーションが終了したことを、サイト パッケージャがデータ ウェアハウスに通知する。

注

  • Commerce Server ビジネス デスク以外のアプリケーションをアンパッケージするときに、unpack.vbs スクリプト ファイルを作成して使う場合は、アンパッケージ後すぐにファイルを削除するか、またはセキュリティを設定してください。ファイルはルート ディレクトリにあり、匿名ユーザーからもアクセスできます。このスクリプトが不正に使われると、サービス拒否が発生したり、サイトの設定が壊れることがあります。

関連項目

サイト パッケージャをコマンド ラインから実行する

サイト パッケージャの .ini ファイルをカスタマイズする

拡張プロファイル スキーマをパッケージ化する

拡張プロファイル スキーマを含むパッケージを作成する場合は、サイトをパッケージ化する前にスクリプトを生成する必要があります。次の手順は、拡張プロファイル スキーマをパッケージ化する方法の概要を示します。

  1. SQL Server Enterprise Manager を使って、UserObject テーブルを拡張し、独自の属性を追加します。詳細については、SQL Server のマニュアルを参照してください。

  2. データ オブジェクトに新しいデータ メンバを追加します。詳細については、「新しいデータ メンバを追加する」を参照してください。

  3. SQL Server Enterprise Manager を使って、拡張プロファイル スキーマ用のスクリプトを生成します。詳細については、SQL Server のマニュアルを参照してください。

  4. サイトをパッケージ化するときに、生成したスキーマ定義のスクリプトの場所を指定するように求められます。スクリプトを指定しないと、既定のスクリプトがパッケージ化されて、拡張は含まれません。

関連項目

UserObject プロファイル スキーマ

サイトをパッケージ化する


サイト パッケージャをコマンド ラインから実行する

ランタイム ファイルの Pup.exe を使うと、コマンド ライン インターフェイスから Commerce Server サイト パッケージャを実行できます。サイト パッケージャには、サイトやリソースのパッケージ化、アンパッケージ、削除など、サイトとリソースに対する処理を行うための一連のコマンド ライン スイッチが用意されています。また、Microsoft Visual Basic スクリプトを使って、カスタム インストールの要件に合わせた独自リソースの参照を設定することもできます。

たとえば、BlankSite という名前のサイトをパッケージ化するには、コマンド ラインで次のように入力します。

PuP.exe /p  /s:BlankSite /f:D:\Program Files\Microsoft Commerce Server\PuP Packages\XBlank.pup /i:D:\Program Files\Microsoft Commerce Server\SiteCreate\packBlank.ini

注

  • サイトをパッケージ化するコマンドを入力するときは、パラメータをスペースで区切る必要があります。また、応答ファイルのフル パスとファイル名も指定する必要があります (上の例では、packBlank.ini が応答ファイルになります)。

次の表は、Pup.exe ファイルで使用できるコマンド ライン オプションを示します。

パラメータ | パッケージ | アンパッケージ | 説明
/s: | X |  | パッケージ化するサイトの名前を指定します。 /s:<サイトの名前>
/f: | X | X | パッケージ ファイルのパスを指定します。 /f:<パッケージのフル パス>
/r | X | X | [リソースの選択] ダイアログ ボックスを表示します。
/i: | X | X | サイレント処理で使用する .ini ファイルを指定します。 /i:<完全なパス名>
/p | X |  | サイトまたはリソースをパッケージ化します。
/u |  | X | サイトまたはリソースをアンパッケージします。
/a: | X | X | アプリケーションの名前を指定します。 /a:<アプリケーション名>
/w: |  | X | Web サーバーの名前を指定します。 /w:<Web サーバー名> このオプションは、ローカル コンピュータを Web サーバとしてアンパッケージするときに使います。

たとえば、Retail という名前のサイトをアンパッケージするには、次のようなコマンドを使います。

D:\Program Files\Microsoft Commerce Server\PuP.exe /u /f:D:\Program Files\Microsoft Commerce Server\PuP Packages\Retail.pup /i:C:\Commerce\Retail.ini

関連項目

サイト パッケージャの .ini ファイルをカスタマイズする


サイト パッケージャの .ini ファイルをカスタマイズする

Commerce Server の BlankSite パッケージには、packBlank.ini ファイルが含まれています。Retail および Supplier ソリューション サイトごとに提供される個々の .ini ファイルは、「Commerce Server Web サイト」で入手できます。これらの .ini ファイルをテンプレートとして使って、独自のパッケージに合わせたカスタム .ini ファイルを作成できます。たとえば、毎晩パッケージを構築して朝インストールする運用環境では、これらの .ini ファイルがパッケージ構築の自動化に役立ちます。

パッケージ化とアンパッケージの両方に、同じ .ini ファイルを使用できます。パッケージ化またはアンパッケージの処理時には、処理と無関係な部分が無視されます。

.ini ファイルはコマンド ラインから実行します。実行方法とコマンドの例については、「サイト パッケージャをコマンド ラインから実行する」を参照してください。

ここでは、packBlank.ini ファイルの内容を、各セクションに関するコメントと共に示します。アスタリスク (*) はコメントを示します。

[General]

SiteName=BlankSite
Description=Blank site
NumOfResources= 11
NumOfApplications= 2

*インストールされるリソースの一覧がこの後ろに続きます。特定のリソースをインストールしない場合は、そのリソースの行を .ini ファイルから削除して、リソースの番号を付け直します。リソースがアンパッケージされる順序は、アンパッケージ処理には影響しません。ただし、アプリケーションの前にすべてのリソースがアンパッケージされます。

注

  • サイトをパッケージ化するときには、.ini ファイルのリソースの一覧は読み込まれません。代わりに、サイト全体がパッケージ化されます。
Resource0=App Default Config
Resource1=Product Catalog
Resource2=Campaigns
Resource3=Site Data Warehouse
Resource4=Transactions
Resource5=Transaction Config
Resource6=Direct Mail
Resource7=Predictor
Resource8=Biz Data Service
Resource9=Group Data Warehouse
Resource10=Site CS Authentication
Application0=B2CSite
Application1=B2CBizDesk
NumOfConnStrs= 6

[App Default Config]

*App Default Config には構成情報だけが含まれるため、UseData フラグは含まれません。

[ConnStrs]

*このセクションには、リソースの接続文字列が表示されます。接続文字列は次のパラメータをとります。

ConnStrResourceName

リソースの名前です。

ConnStrValue

接続文字列の値です。

ConnStrPropertyName

接続文字列のプロパティ名です。

次の例は [ConnStrs] セクションを示します。

ConnStrResourceName0=Product Catalog
ConnStrPropertyName0=connstr_db_Catalog
ConnStrValue0=Provider=SQLOLEDB;Persist Security Info=False;User ID=;Password=;Initial Catalog=BlankSite_commerce;Data Source=SERVERNAME;
ConnStrResourceName1=Campaigns
ConnStrPropertyName1=connstr_db_Campaigns
ConnStrValue1=Provider=SQLOLEDB;Persist Security Info=False;User ID=;Password=;Initial Catalog=BlankSite_commerce;Data Source=SERVERNAME;
ConnStrResourceName2=Transactions
ConnStrPropertyName2=connstr_db_Transactions
ConnStrValue2=Provider=SQLOLEDB;Persist Security Info=False;User ID=;Password=;Initial Catalog=BlankSite_commerce;Data Source=SERVERNAME;
ConnStrResourceName3=TransactionConfig
ConnStrPropertyName3=connstr_db_TransactionConfig
ConnStrValue3=Provider=SQLOLEDB;Persist Security Info=False;User ID=;Password=;Initial Catalog=BlankSite_commerce;Data Source=SERVERNAME;
ConnStrResourceName4=Biz Data Service
ConnStrPropertyName4=connstr_db_bds
ConnStrValue4=Provider=SQLOLEDB;Persist Security Info=False;User ID=;Password=;Initial Catalog=BlankSite_commerce;Data Source=SERVERNAME;
ConnStrResourceName5=Global Data Warehouse
ConnStrPropertyName5=connstr_db_dw
ConnStrValue5=Provider=SQLOLEDB;Persist Security Info=False;User ID=;Password=;Initial Catalog=BlankSite_dw;Data Source=SERVERNAME;

[Product Catalog]

*UseData では、データとスキーマを含めるか、スキーマだけを含めるかを指定します。1 を指定すると、データとスキーマの両方が含まれます。UseData の指定は、アプリケーションや、プロファイル リソース、CS 認証リソース、データ ウェアハウスリソースには影響しません。

UseData = 1

[Campaigns]

UseData = 1

[Site Data Warehouse]

*Site Data Warehouse には構成情報だけが含まれるので、UseData フラグは使われません。

[Transactions]

UseData = 1

[Transaction Config]

UseData = 1

[Direct Mail]

*コンピュータに既に存在するグローバル リソース名にグローバル リソースを割り当てるには、GlobalResourceName を使います。この設定の値が (Add New Global Resource) の場合は、既存のグローバル リソースに関連付けられる代わりに、グローバル リソースはサイトに追加されます。

GlobalResourceName=Direct Mail on SERVERNAME

[Predictor]

GlobalResourceName=Predictor on SERVERNAME

[B2CSite]

ASPDir=
VRoot=
Website=
UseData = 1

[B2CBizDesk]

ASPDir=
VRoot=
Website=
UseData = 1

[Biz Data Service]

*この UseData の指定は、プロファイル サービスに含まれる項目には影響しません。プロファイル サービスはスキーマだけをとります。データをとることはありません。

UseData = 1
GlobalResourceName= (Add new global resource)

[Global Data Warehouse]

*この UseData の指定は、Group Data Warehouse に含まれる項目には影響しません。Group Data Warehouse はスキーマだけをとります。データをとることはありません。

UseData = 1
GlobalResourceName= (Add new global resource)

[Site CS Authentication]

GlobalResourceName= (Add new global resource)


サイト パッケージャの参照情報

ここでは、サイトをパッケージ化したときに含まれるデータおよび設定に関する情報を示します。

リソースとデータ

次の表は、リソースと、サイトをパッケージ化したときにパッケージ化されるリソースごとのデータを示します。

リソース | パッケージ化されるデータ
アプリケーション既定の構成 | すべてのプロパティ値。
キャンペーン | キャンペーン データベースの次のテーブル。industry_code、customer、event_type、campaign、creative_type、creative_size、creative、creative_property、creative_property_value、campaign_item_types、campaign_item、order_discount、dm_item、ad_item、creative_type_xref、page_group、page_group_xref、target_group、target、target_group_xref、order_discount_expression、order_discount_misc。
CS 認証 | AuthSetup.ini の設定。サイトをアンパッケージするときに、新しいリソースを作成することも、既存のリソースを参照することもできます。
Commerce Server データ ウェアハウス | なし。サイトをアンパッケージするときに、新しいデータ ウェアハウス リソースを作成することも、既存のリソースを参照することもできます。
Commerce Server ダイレクト メーラー | なし。サイト内にダイレクト メーラーが存在することを確認します。使用するダイレクト メーラー グローバル リソースは、アンパッケージ時に指定します。サイトをアンパッケージするときに、ダイレクト メーラー リソースを参照できます。新しいリソースを作成するには、Commerce Server のセットアップ プログラムを使う必要があります。
予測 | なし。サイト内に予測が存在することを確認します。使用する予測グローバル リソースは、アンパッケージ時に指定します。サイトをアンパッケージするときに、予測リソースを参照できます。新しいリソースを作成するには、Commerce Server のセットアップ プログラムを使う必要があります。
商品カタログ | カタログ データベースの次のテーブル。CatalogAttributes、CatalogDefinitions、CatalogDefinitionProperties、CatalogGlobal、CatalogUsedDefinitions、CatalogEnumValues、CatalogStatus、CatalogCustomCatalogs、CatalogCustomPrices、CatalogSet_Info、CatalogSet_Catalogs、CatalogToVendorAssociation、x_ProductsComplete、x_Relationships、x_Hierarchy。
プロファイル | スキーマ スクリプトとデータ スクリプト。既定では、それぞれ commerce_server_root\Profilesql.sql と commerce_server_root\PopulateProfileSql.sql になります。既存のデータベースはパッケージ化されません。サイトをアンパッケージするときに、新しいリソースを作成することも、既存のリソースを参照することもできます。
トランザクション | トランザクション データベースの次のテーブル。TransDimension、TransCategory。
トランザクション構成 | トランザクションの構成データベースの次のテーブル。Decode、Region、RegionalTax、ShippingConfig、TableShippingRates。

IIS の設定

サイトをパッケージ化するときに、サイト パッケージャは IIS の多くの設定をパッケージに含めます。IIS Web サイト (既定の Web サイトなど) はパッケージ化されませんが、アプリケーションの物理ルート フォルダにあるファイルや、そのすべての物理子フォルダとファイルがパッケージ化されます。

アプリケーション、フォルダ、またはファイルの IIS の設定を表示するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. [Commerce Server マネージャ] ウィンドウで、[インターネット インフォメーション サービス] を展開し、アプリケーションが含まれているWeb サーバーの名前を展開します。次に、アプリケーションがある IIS Web サイトの名前を展開して、アプリケーション、フォルダ、またはファイルの名前をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

    アプリケーションの [プロパティ] ダイアログ ボックスが表示されます。

次の表は、[プロパティ] ダイアログ ボックスの [仮想ディレクトリ] タブおよび [ディレクトリ セキュリティ] タブの設定と、サイト パッケージャを使ったときにどの設定がパッケージ化されるかを示します。

[仮想ディレクトリ] タブ

フィールド | パッケージ化の有無
[スクリプト ソース アクセス] | パッケージ化される
[読み取り] | パッケージ化される
[書き込み] | パッケージ化される
[ディレクトリの参照] | パッケージ化される
[ログ アクセス] | パッケージ化される
[このリソースに索引を付ける] | パッケージ化される
[アプリケーション名] | パッケージ化されない
[開始点] | パッケージ化されない
[実行アクセス権] | パッケージ化される
[アプリケーション保護] | アンパッケージ時に常に [中] に設定される。
[アプリケーションの設定] ([構成] をクリックした後に表示される) | パッケージ化されない

[ディレクトリ セキュリティ] タブ

フィールド | パッケージ化の有無
[匿名アクセス] | パッケージ化される
[匿名ユーザー アカウント] | パッケージ化されない
[基本認証] | パッケージ化される
[基本認証ドメイン] | パッケージ化されない
[Windows ドメイン サーバー でダイジェスト認証を使用する] | パッケージ化される
[統合 Windows 認証] | パッケージ化される
[IP アドレスとドメイン名の制限] | パッケージ化されない
[セキュリティ保護された通信] (SSL 証明書) | パッケージ化されない

注

  • [ドキュメント]、[HTTP ヘッダー]、[カスタム エラー] の各タブには、パッケージ化される設定はありません。ビジネス デスクの unpack.vbs スクリプト ファイルが、アンパッケージ後にビジネス デスクのカスタム エラーを追加します。

IIS 仮想ディレクトリ

アプリケーション内に仮想ディレクトリがある場合、仮想ディレクトリ オブジェクト、およびオブジェクトが参照するパスにあるフォルダとファイルはパッケージ化されません。これらのフォルダとファイルをパッケージ化する場合は、アプリケーションの物理パスにあるフォルダにコピーしてからパッケージ化します。

NTFS の権限

フォルダとファイルに設定された NTFS の権限およびアクセス制御リストはパッケージ化されません。unpack.vbs スクリプトまたは postsite.vbs スクリプトを使うと、アンパッケージ後に NTFS の権限を自動的に適用できます。


Commerce Server の管理

ここでは、Commerce Server マネージャを使って Microsoft Commerce Server 2000 を管理する方法について説明します。ここで説明する内容は、サイトで使用するリソースの追加と管理、Web サーバーのインストールと構成、Commerce Server のパフォーマンスの監視、Commerce Server のデータベースの管理などの作業を担当するシステム管理者を対象にしています。

ここでは、次のトピックについて説明します。

  • Commerce Server マネージャのヘルプ Commerce Server マネージャを使って実行する一般的な作業の一覧を示します。

  • 管理に関する基本 Commerce Server のリソース、サイト、アプリケーション、Web サーバー、および管理データベースについて説明します。また、Commerce Server と Microsoft インターネット インフォメーション サービス (IIS) 5.0 の関係についても説明します。さらに、管理専用のコンピュータをセットアップする方法について説明します。

  • 管理データベースの管理 管理データベースについて、および管理データベースとサイトとのやり取りについて説明します。また、データベースの構成方法と、セキュリティの管理方法についても説明します。

  • Commerce リソースの管理 グローバル レベルのリソースとサイト レベルのリソースを追加および削除する方法について説明します。また、リソースを開始および停止する方法についても説明します。

  • Commerce サイトの管理 サイトを追加、構成、および削除する方法について説明します。

  • Commerce アプリケーションと Web サーバーの管理 Commerce Server アプリケーションを追加、構成、および削除する方法について説明します。また、Web サーバーを追加および削除する方法についても説明します。

  • Commerce Server の保守 Commerce Server のファイルと Commerce Server のデータベースをバックアップおよび復元する方法について説明します。

  • CS 認証リソースの管理 Commerce Server サイトの認証および識別方法を、CS 認証リソースを使って設定または変更する方法について説明します。

  • データ ウェアハウスの実行 データ ウェアハウスにデータをインポートする方法と、インポート プロセスをカスタマイズする方法について説明します。また、データ ウェアハウスのデータを管理および拡充する方法についても説明します。

  • ダイレクト メーラーの実行 パーソナライズされたダイレクト メール メッセージを作成する方法について説明します。また、Commerce Server ダイレクト メーラーをカスタマイズする方法と、ダイレクト メール ジョブを実行、監視、および削除する方法についても説明します。

  • 予測リソースの実行 新しい予測モデルとセグメント モデルの構築、モデルの表示、および予測リソースの監視を行う方法について説明します。

  • プロファイル リソースの実行 プロファイルのデータ ソースを Commerce Server に追加する方法、プロファイル定義を作成して Web サイトからデータを収集する方法、およびサイト用語を作成する方法について説明します。

  • BizTalk Server と Commerce Server の使用 Commerce Server と BizTalk Server を設定して、注文書の処理とカタログの交換を行う方法について説明します。

  • Commerce Server サイトの監視 Commerce Server を監視する方法について説明します。また、Commerce Server のカウンタについても説明します。さらに、Commerce Server のシステム カウンタを使ってサーバーのパフォーマンスを向上させる方法について説明します。

  • Commerce Server の最適化 個々の要求に対する応答時間を最小にする方法と、Commerce Server のスループットを最大にする方法について説明します。

  • ユーザー インターフェイスのリファレンス データ ウェアハウス、データ 変換サービス タスク、予測リソース、および Commerce Server サイト パッケージャに関する、状況依存のヘルプ トピックについて説明します。


Commerce Server マネージャのヘルプ

Commerce Server マネージャで実行する一般的な作業の一覧を次に示します。

分野 トピック
リソース
  • グローバル リソースをインストールまたはアンインストールする

  • サイトにグローバル リソース ポインタを追加する

  • サイトにリソースを追加する
サイトとアプリケーション
  • サイト パッケージャを使う

  • 例 A: クラスタ構成の 4 台のコンピュータにインストールする

  • 例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

  • サイトを追加する

  • サイトにアプリケーションを追加する

  • アプリケーションに Web サーバーを追加する

  • 管理データベースを構成する

  • アプリケーションを構成する

  • Web サーバーを構成する
予測リソース
  • 予測リソースのプロパティを構成する

  • 分析モデルを再構築する
ダイレクト メーラー
  • ダイレクト メーラーを構成する

  • ダイレクト メーラーの実行
データ ウェアハウス
  • データ ウェアハウス リソースを構成する

  • Web ログ ファイル インポート プロパティを構成する

  • データ ウェアハウスにデータをインポートする
CS 認証リソース
  • CS 認証リソースのプロパティを設定する

  • CS 認証リソースの管理
プロファイル リソース
  • プロファイル リソースを設定する

  • 新しいデータ ソースを追加する
アプリケーション既定の構成リソース
  • アプリケーション既定の構成リソースを構成する

  • BizTalk Server と連携するように Commerce Server を構成する
トラブルシューティング
  • Commerce Server のトラブルシューティング


管理に関する基本

ここでは、Microsoft Commerce Server 2000 のリソース、サイト、アプリケーション、および Web サーバーについて説明します。管理データベースについて取り上げ、その作成方法や更新方法などについて説明します。また、Commerce Server と Microsoft インターネット インフォメーション サービス (IIS) 5.0 との関係についても説明します。さらに、管理専用のコンピュータをセットアップする方法についても説明します。

ここでは、次のトピックについて説明します。

  • 管理ツール Commerce Server の保守に使用するツールの一覧を示し、各ツールについて説明します。

  • Commerce Server マネージャを使う Commerce Server マネージャと、その起動方法について説明します。

  • リソース、サイト、アプリケーション、および Web サーバーについて リソース、サイト、アプリケーション、および Web サーバーについて説明します。これらは、Microsoft 管理コンソール (MMC) では Commerce Server オブジェクトになります。

  • Commerce Server データベースについて Commerce Server データベースと、各データベースに格納されるデータについて説明します。

  • データベースの接続文字列を設定する Commerce Server の接続文字列の一覧を示し、その設定方法について説明します。

  • Commerce Server と IIS を使用する Commerce Server と IIS の両方で設定できる Web サーバーのプロパティについて説明します。また、プロパティを IIS から Commerce Server に継承する方法についても説明します。

  • 管理ツールだけをインストールする 管理専用のコンピュータの特徴と、この種類のコンピュータをセットアップする方法について説明します。

  • データ変換サービス (DTS) について Commerce Server に付属のデータ変換サービス (DTS) タスクの一覧を示し、各タスクについて説明します。


管理ツール

次の表は、Commerce Server 2000 を保守するために使用する管理ツールの一覧です。

項目 | 操作
Commerce Server マネージャを使う | Commerce Server リソース、サイト、アプリケーション、および Web サーバーの管理と構成を行います。
サイト パッケージャを使う | サイト、リソース、アプリケーション、および Web サーバーを展開します。
SQL Enterprise Manager | Commerce Server データベースを管理します。
IIS スナップイン | Web サーバーを管理します。
Windows 2000 Active Directory ユーザーおよびコンピュータ | Windows 2000 のユーザー アカウント、コンピュータ アカウント、およびセキュリティと配布グループを管理します。
Windows 2000 イベント ビューア | イベント ログの記録を表示します。
Windows 2000 システム モニタ | リアルタイムのコンピュータ パフォーマンス データを収集し、表示します。
Windows 2000 バックアップ ウィザード | IIS メタベース、Windows 2000 レジストリ設定、および Commerce Server ファイルをバックアップします。
Windows 2000 復元ウィザード | IIS メタベース、Windows 2000 レジストリ設定、および Commerce Server ファイルを復元します。


Commerce Server マネージャを使う

Commerce Server マネージャは、Commerce Server 2000 のリソース、サイト、アプリケーション、および Web サーバーの管理と設定に使用するツールです。Microsoft Windows 2000 に付属の Windows ベースのインターフェイスである Microsoft 管理コンソール (MMC) が、Commerce Server マネージャのホストになります。

Commerce Server マネージャの機能は、Web ベース管理やコマンド ラインからの管理からは利用できません。その機能のほとんどは、Component Object Model (COM) オブジェクトを介して利用したり操作することになります。したがって、開発者は Windows Scripting Host (WSH) スクリプトや Active Server Pages (ASP) ページを作成して管理環境を拡大できます。

Commerce Server マネージャにアクセスするには

  • [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[Commerce Server マネージャ] をクリックします。

関連項目

カスタム リソースを統合する

管理データベースを構成する


リソース、サイト、アプリケーション、および Web サーバーについて

リソース、サイト、アプリケーション、および Web サーバーは、Commerce Server のインストール環境の管理に使用する、Commerce Server マネージャの Commerce Server 2000 オブジェクトです。ここでは、各オブジェクトの機能と関係について説明します。

  • リソース

  • サイト

  • アプリケーション

  • Web サーバー

次の図は、Commerce Server マネージャのコンソールとその構成要素を示します。

図をクリックすると、拡大または縮小します。


リソース

リソースは、Commerce Server サイトのアプリケーションに機能を提供します。

リソースは、アプリケーションの Web ページでリソース機能へのアクセスに使われる、1 つ以上の Component Object Model (COM) オブジェクトで構成されます。リソースには、管理データベースに格納されているプロパティがあります。これらのプロパティは、Commerce Server マネージャを使ってアクセスし、変更できます。また、Config オブジェクトを通じてプログラムから変更できます。

リソースには、グローバル リソースとサイト リソースの 2 種類があります。サード パーティは、Commerce Server で使用するカスタム グローバル リソースとサイト リソースを開発できます。詳細については、「カスタム リソースを統合する」を参照してください。

グローバル リソース

サイト リソース

グローバル リソース

グローバル リソースは、すべてのサイトで使用できます。

グローバル リソースには、Commerce Server のセットアップ時に作成されるものと、Commerce Serverサイト パッケージャを使ってサイトをアンパッケージのときに作成されるものがあります。Commerce Server マネージャの [グローバル リソース] には、グローバル レベルのプロパティを持つリソースのみが表示されます。グローバル リソースを使うサイトはすべて、そのグローバル リソースに割り当てられたプロパティも使います。

次の表は、Commerce Server に用意されているグローバル リソースの一覧と説明を示します。

グローバル リソース | 説明 | リソースをインストールするプログラム
Commerce Server ダイレクト メーラー (Windows 2000 のサービスでもあります) | パーソナライズされたメーリングまたはパーソナライズされていないメーリングを、多数の受信者のグループ宛てに送信します。 | Commerce Server のセットアップ プログラム
予測 (Windows 2000 のサービスでもあります) | Web サイトに予測機能を追加し、ユーザーのセグメントと傾向を特定するための複雑な分析モデルを構築します。 | Commerce Server のセットアップ プログラム
データ ウェアハウス | Web ログ ファイル、Commerce Server データベース、およびその他のデータ ソースから Web サイトのデータをインポートして管理します。 | Commerce Server サイト パッケージャ
CS 認証 | Commerce Server サイトの認証と識別の方法を構成します。 | Commerce Server サイト パッケージャ
プロファイル | プロファイル データを格納するデータ ソースを作成し、プロファイル定義とプロパティの作成と格納を行います。 | Commerce Server サイト パッケージャ

サイト リソース

サイト リソースは、特定のサイトに機能を提供します。

Commerce Server マネージャでは、サイトの下にグローバル リソース ポインタとサイト リソースが一覧表示されます。サイト リソースのプロパティはサイト レベルで設定します。グローバル リソース ポインタは、グローバル レベルでグローバル リソースを指すように設定します。

リソースは、そのすべてのプロパティをサイト レベルまたはグローバル レベルにすることができます。ただし、両方のレベルのプロパティを持つことはできません。

次の表は、Commerce Server に用意されているサイト リソースの一覧と説明を示します。

サイト リソース | 説明
アプリケーション既定の構成 | 通貨のロケールと記号、請求と支払いのオプション、プライバシーのオプション、重量の測定単位、BizTalk Server との統合のオプションなど、サイトを構成するためのプロパティを格納します。
キャンペーン | キャンペーン (広告、割引、およびダイレクト メール) に関するデータを格納するデータベースに接続します。
商品カタログ | カタログ スキーマと商品データを格納するデータベースに接続します。
トランザクション | バスケットと注文のデータを格納するデータベースに接続します。
トランザクション構成 | 送付方法、税率、都道府県/州コード、および注文状況コードのデータを格納するデータベースに接続します。

関連項目

カスタム リソースを統合する

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

Commerce リソースの管理


サイト

サイトとは、リソースを使用および変更する、Commerce Server COM オブジェクトを使用する Active Server Page (ASP) ベースのアプリケーションの集合です。サイトは、サイト内のアプリケーションをまとめて管理するための手段となります。

サイトには、通常、少なくとも 2 つのアプリケーションがあります。1 つはユーザーがオンライン ストアを表示するためのアプリケーションで、もう 1 つはビジネス マネージャが Commerce Server ビジネス デスクにアクセスするために使用するアプリケーションです。また、サイトにほかのアプリケーションが含まれることもあります。たとえば、1 つのサイトには www.alpineskihouse.com、www.alpineskihouse.com/equipment、www.alpineskihouse.com/clothing、www.alpineskihouse.com/BusinessDesk などが含まれます。これらのアプリケーションはすべて、複数のサーバーに分散できます。

サイトは、複数のサイトで共有するグローバル リソースと、そのサイトに明示的に定義されているサイト リソースの両方を使います。

Commerce Server マネージャのサイト ノードから、サイトをパッケージ化したり、リソースの追加と削除を行うことができます。

関連項目

サイト パッケージャを使う

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

サイトにセキュリティを設定する

サイトをバックアップする


アプリケーション

Commerce Server 2000 のアプリケーションは Web サイトです。この Web サイトはインターネット インフォメーション サービス (IIS) 5.0 アプリケーションを論理的に表現したもので、Commerce Server マネージャと IIS の両方のコンソール ツリーに表示されます。IIS のコンソールでは、アプリケーションは Web サイトのホーム ディレクトリ レベルまたはサブディレクトリ レベルで表示されます。詳細については、「Commerce Server と IIS を使用する」を参照してください。ここには、Commerce Server マネージャと IIS のコンソールのオブジェクトの関係も図で示されています。

アプリケーションは、Web クライアントがアクセスする Web アドレスを表しています。Commerce Server にアプリケーションを追加すると、そのアプリケーションの構成データを使って、管理データベースが更新されます。アプリケーションに Web サーバーを追加すると、Web サーバー コンピュータに ASP ファイルがインストールされます。

Commerce Server サイトのアンパッケージでは、通常、2 つのアプリケーションがインストールされます。1 つは商品の参照と購入のためにユーザーがアクセスする Web サイト用のアプリケーションで、もう 1 つはそのサイトの管理に使用される Commerce Server ビジネス デスク用のアプリケーションです。アプリケーションが使用できるのは、そのアプリケーションが属するサイトのリソースだけです。

アプリケーションにはそれぞれ独自の Web サーバーがあり、Web サーバーは Web サイト用の ASP ページのコンテンツを提供します。複数の Web サーバーが含まれているアプリケーションもありますが、どのアプリケーションにも少なくとも 1 つの Web サーバーが含まれています。アプリケーションは、IIS Web サイトのルート レベル、またはルートの下の任意レベルの仮想ディレクトリに設定できます。

IIS のコンソールと Commerce Server マネージャのコンソールからは、次の機能を実行できます。

  • IIS スナップインのアプリケーション ノードからは、仮想ディレクトリ レベルにあるすべてのプロパティを設定できます。たとえば、仮想ディレクトリのプロパティ、既定の文書、ディレクトリのセキュリティ、ハイパーテキスト転送プロトコル (HTTP) ヘッダー、カスタム エラーなどを設定できます。また、Microsoft FrontPage Server Extensions を構成したり、アプリケーションの名前の変更や削除を行うこともできます。

  • Commerce Server マネージャのアプリケーション ノードから、保護なしのホスト名の設定、保護付きのホスト名の設定、IIS アプリケーション パスの設定、HTTPS の有効化、自動 cookie の有効化、認証フィルタの有効化、およびアプリケーションに含まれるすべての Web サーバーに共通した設定の構成を行うことができます。

IIS から Commerce Server に継承されるプロパティの詳細については、「Commerce Server と IIS を使用する」を参照してください。

関連項目

Commerce Server のセキュリティ

サイト パッケージャを使う

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

サイトにセキュリティを設定する

Commerce アプリケーションと Web サーバーの管理


Web サーバー

Commerce Server では、インターネット インフォメーション サービス (IIS) 5.0 がインストールされているコンピュータを Web サーバーと呼びます。Commerce Server 2000 で Web サーバーを使うには、IIS と同じコンピュータに Commerce Server をインストールする必要があります。

Commerce Server では、1 つの Web サーバーを 1 つまたは複数のアプリケーションと関連付けることができます。したがって、複数のアプリケーションで同じ Web サーバーを共有することが可能です。Web サーバーには、アプリケーション用の Active Server Pages (ASP) ファイルとサブフォルダがあります。1 つのアプリケーションに複数の Web サーバーが含まれ、まとまって Web ファームを形成する場合もあります。

Web サーバーに ASP ファイルを追加するには、Commerce Server サイト パッケージャを使って、その Web サーバーをアンパッケージします。アンパッケージが完了すると、Commerce Web サーバー オブジェクトはアプリケーションに追加されます。Commerce Server マネージャでは、Web サーバー オブジェクトは関連付けられたアプリケーションの下に公開されます。

Web サーバー オブジェクトには、データ ウェアハウスにログ ファイルをインポートするために必要なプロパティが含まれています。Web サーバーを追加すると、IIS から次のプロパティが Commerce Server 管理データベースに自動的に読み込まれます。

プロパティ | 説明
サーバー名 | IIS がインストールされているコンピュータの名前です。
IP アドレス | アプリケーションの IIS Web サイトのインターネット プロトコル (IP) アドレスです。
ログ ファイル パス | アプリケーションの IIS Web サイトがイベントを書き込むパスです。たとえば、C:\Winnt\System32\LogFiles\Log1 です。
ログ ファイル出力期間 | アプリケーションの IIS Web サイトがログ ファイルを保持する期間です。この期間を過ぎるとデータは上書きされます。

Commerce Server マネージャの Web サーバー ノードからは、これらのプロパティを表示したり変更することができます。Commerce Server マネージャでプロパティを変更した場合は、IIS でも同じプロパティを手動で変更する必要があります。IIS でプロパティを変更した場合は、Commerce Server マネージャの [値の同期] ボタンを使って、新しい値を IIS から Commerce Server にコピーできます。

Commerce Server は、IIS が実行されていない Web サーバーや、Commerce Server コンポーネントが含まれていない Web サーバーもサポートしています。このため、Web サーバーのログ ファイルもデータ ウェアハウスにインポートできます。詳細については、「非 Commerce のアプリケーションと Web サーバーを追加する」を参照してください。

複数のアプリケーションで 1 つの Web サーバーを共有できます。各アプリケーションには一意の URL があり、一意の URL は 1 つの IIS Web サイトで利用できます。たとえば、同じ IIS Web サイトで www.microsoft.com と www.microsoft.com/commerceserver の両方を利用できます。

Web ファームを実行している場合は、Web サーバーを複製する必要があります。Microsoft Application Center 2000 またはその他の製品を使って、コンテンツ レプリケーションを実行することをお勧めします。

関連項目

Web サーバーを構成する

アプリケーションに Web サーバーを追加する

別の Web サーバーを追加する

非 Commerce のアプリケーションと Web サーバーを追加する

Web サーバーを構成する

データ ウェアハウスの実行


Commerce Server データベースについて

次の表は、Commerce Server サイトでよく使用されるデータベースの一覧を示します。実際のデータベースの数は、サイトで選択した機能と設定によって増減します。

これらのデータベースの接続文字列は、セットアップ時とアンパッケージ処理時に指定します。ただし、接続文字列は Commerce Server マネージャを使って変更できます。

データベースと名前 | 説明
Commerce Server <サイト名>_commerce | カタログ、キャンペーン、トランザクション、プロファイル、およびイベントのデータ。
管理 MSCS_Admin | Commerce Server で使用される構成データ。
データ ウェアハウス <サイト名>_dw | サイトを訪問したユーザーに関する操作データ。ユーザー プロファイル データ、トランザクション データ、およびクリック履歴データがあります。このデータは、Commerce Server の Data Transformation Services (DTS) タスクを使って、Web ログやその他の Commerce Server データベースからインポートされます。
ダイレクト メーラー DirectMailer | メーリング リスト、メッセージ、およびイベントのデータ。

関連項目

Commerce Server の保守

データベース テーブル リファレンス

データ ウェアハウスを操作する


データベースの接続文字列を設定する

ログイン ユーザー名とパスワードを含む Commerce Server の接続文字列は、管理データベースに格納されます。

注

  • Commerce Server の接続文字列には、すべて Microsoft SQL Server のセキュリティが使用されます。ただし、データ ウェアハウス リソースからオンライン分析処理 (OLAP) サーバー データベースに接続するための接続文字列については、Microsoft Windows NT 認証のみがサポートされています。

Commerce Server は、次のデータベースの接続文字列を使います。

  • 管理データベースとダイレクト メーラー データベース 管理データベースおよびダイレクト メーラー データベースのログイン ユーザー名とパスワードは、セットアップ中に入力します。これらの情報は、Commerce Server マネージャを使って後で変更できます。

  • リソースが使用するデータベース Commerce Serverサイト パッケージャを使ったサイトのアンパッケージでは、いくつかのリソースについて、適切なデータベースへの接続文字列の入力を求められます。次の表は、各リソースの接続文字列の一覧です。
    リソース | 接続文字列
    商品カタログ | Catalog データベース
    キャンペーン | Campaigns データベース
    トランザクション | Transactions データベース
    トランザクションの構成 | Transactions Config データベース
    Profiles | s_BizDataStoreConnectionString、s_CommerceProviderConnectionString、s_ProfileServiceConnectionString
    Data Warehouse | データ ウェアハウスには独自の拡張スナップインがあるため、接続文字列はユーザー インターフェイス上では名前が付いていません。

  • その他のデータベース 次のような場合も接続文字列を指定します。
    機能 | 接続文字列
    アプリケーション既定の構成リソース : BizTalk Server との統合 | BizTalk Interchange Manager データベースへの接続文字列を設定します。このデータベースには、Commerce Server から送信されたメッセージが格納されます。
    リスト マネージャ : リストのインポートおよびエクスポート | Commerce Server ビジネス デスクのリスト マネージャ モジュールで、インポートまたはエクスポートする SQL Server データベース テーブルへの接続文字列を設定します。
    Migration ProfileBuilder ツール | Migration ProfileBuilder を修正した後、Commerce Server プロファイル データ ストアのデータ ソース名 (DSN) を作成します。
    Profiles リソース : データ ソースの追加 | [データ ソースの選択] ダイアログ ボックスを使って、データ ソースのパーティションをマップするデータベースへの接続文字列を入力します。パーティションを Lightweight Directory Access Protocol (LDAP) ソースにマップする場合は、[LDAP 接続文字列] ダイアログ ボックスを使用します。
    Predictor リソース | データ ウェアハウスではなく、外部データベースへの接続文字列を入力します。

データベースへの接続文字列を変更する必要がある場合は、Commerce Server マネージャを使用します。

管理データベースの接続文字列を変更するには

グローバル リソースの接続文字列を変更するには

サイト リソースの接続文字列を変更するには

管理データベースの接続文字列を変更するには

  1. [Commerce Server マネージャ] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。[Commerce Server マネージャのプロパティ] ダイアログ ボックスが表示されます。

  2. [管理データベース] タブの [変更] をクリックします。[データ リンク プロパティ] ダイアログ ボックスが表示されます。

  3. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

    [データ リンク プロパティ] ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ] ダイアログ ボックスの [ヘルプ] をクリックして [Microsoft データ リンク] ヘルプ ファイルを開いてください。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

グローバル リソースの接続文字列を変更するには

データ ウェアハウスのグローバル リソースには、インターフェイスの異なる独自の拡張スナップインがあるため、次の手順は適用されません。データ ウェアハウスの接続文字列を変更する方法については、「データ ウェアハウス リソースを構成する」を参照してください。

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。

  2. 設定するグローバル リソースをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. グローバル リソースの接続文字列を設定するには、[接続文字列] タブをクリックし、接続文字列を選択して [変更] をクリックします。[データ リンク プロパティ] ダイアログ ボックスが表示されます。

  4. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

サイト リソースの接続文字列を変更するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [サイト リソース] を展開し、設定するサイト リソースをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [<サイト リソース名> のプロパティ] ダイアログ ボックスの [接続文字列] タブをクリックし、接続文字列を選択して [変更] をクリックします。[データ リンク プロパティ] ダイアログ ボックスが表示されます。

  4. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

データ ウェアハウスの接続文字列

プロファイル システムの接続文字列

式ストアに接続するコード

データベース接続文字列を取得するためのコード

プロファイル ストアに接続するコード


Commerce Server と IIS を使用する

Commerce Server 2000 の日常的な管理を担当しているシステム管理者は、一般的にインターネット インフォメーション サービス (IIS) 5.0 の管理も担当します。

Commerce Server は IIS に依存しますが、IIS オブジェクトと Commerce Server オブジェクトが厳密な階層を形成しているわけではありません。Commerce Server サイトに影響を与えるプロパティには、次のようなものがあります。

  • IIS レベルでのみ設定されるプロパティ

  • IIS から独立した、Commerce Server でのみ設定されるプロパティ

  • IIS から継承されるプロパティ

Web サイトのアクセス権限とセキュリティ、パフォーマンス、ディレクトリとパス、Web サイト名の識別、およびインターネット プロトコル (IP) アドレスとポート番号の管理には、IIS スナップインを使います。

Commerce Server マネージャでは、次の作業を行います。

  • Commerce Server のグローバル リソースとサイト リソースの管理、Commerce Server 固有のプロパティの設定、リソースのデータベース接続文字列の設定、およびアプリケーションへの Web サーバーの追加と削除を行います。

  • Commerce Server のアプリケーション レベルでは、IIS アプリケーション パス、IIS Web サイト、保護なしのホスト名、保護付きのホスト名、IP ポート、および保護付きの IP ポートを指定します。また、プロパティを設定することで、Hypertext Transfer Protocol (HTTP) の有効化、自動 cookie の有効化、および認証フィルタの選択を行うことができます。これらのプロパティは、アプリケーションが使用するすべての Web サーバーに適用されます。

    Commerce Server マネージャでポートのプロパティを変更した場合、その変更は自動では IIS に反映されないため、IIS で手動で変更する必要があります。IIS でポートのプロパティを変更した場合は、Commerce Server でも同じプロパティを変更する必要があります。ポートのプロパティのうち、IIS で実際に使用されるプロパティを次に示します。

    アプリケーション レベルで使用されるプロパティ

    • 伝送制御プロトコル (TCP) ポート

    • Secure Sockets Layer (SSL) ポート

    各 Web サーバーで使用されるプロパティ

    • IP (インターネット プロトコル) アドレス

    • ログ ファイル パス

    • ログ ファイル出力期間

    Web サーバーのプロパティは IIS から継承されます。継承されたプロパティは、簡単にアクセスできるように管理データベースに格納されます。IIS 側のプロパティを変更した場合は、Commerce Server 管理データベースを IIS と同期させる必要があります。それには、Commerce Server マネージャを使い手動で新しい値に更新するか、または [<アプリケーション> のプロパティ] ダイアログ ボックスの [Web サーバー] タブの [値の同期] をクリックします。詳細については、「アプリケーションを構成する」を参照してください。

    [値の同期] をクリックすると、IIS のアプリケーション レベルのプロパティと、そのアプリケーションの下にあるすべての Web サーバー オブジェクトのプロパティがコピーされます。具体的には、アプリケーション レベルのプロパティ (TCP ポートと SSL ポート) に、最初の Web サーバーの対応するプロパティの値が読み込まれます。これには、すべての Web サーバーがまったく同一に構成されていることが前提となります。構成が異なると、Web ファームは正常に機能しません。

  • Commerce Server の Web サーバー レベルでは、インターネット プロトコル (IP) アドレス、ログ ファイルのパス、およびログ ファイル出力期間に関するプロパティを表示したり変更することができます。

    次の図は、IIS のコンソール ツリーおよび Commerce Server マネージャのコンソール ツリーに表示されるオブジェクトと、各オブジェクト間の関係を示します。

    IIS および Commerce Server マネージャのオブジェクト間の関係を示す図

    図をクリックすると、拡大または縮小します。

関連項目

アプリケーションを構成する

非 Commerce のアプリケーションと Web サーバーを追加する

カスタム リソースを統合する

サイト パッケージャを使う


データ変換サービス (DTS) について

Commerce Server には、データ ウェアハウスにデータをインポートするための、複数のデータ変換サービス (DTS) タスクが組み込まれています。DTS は、Microsoft SQL Server の機能です。DTS を使用すると、Microsoft SQL Server と 、OLE DB、オープン データベース コネクティビティ (ODBC)、またはテキスト ファイル形式との間で、データのインポートやエクスポートを行うことができます。また、データを変換することもできます。たとえば、カタログ データベースからデータ ウェアハウスにカタログ データをインポートする作業は DTS タスクです。データ ウェアハウスにデータをインポートしておくと、ビジネス マネージャが Commerce Server ビジネス デスクの分析モジュールを使ってそのデータを分析できます。

Commerce Server の DTS タスクの使い方については、「データ ウェアハウスの実行」を参照してください。

次の表は、Commerce Server に用意されている DTS タスクの一覧を示します。

Commerce Server 2000 DTS タスク | 説明
Web サーバー ログ インポート | Web ログ ファイルを定義およびインポートします。このタスクを使って、Web ログ ファイルからインポートするデータ、および個々のユーザーを訪問と区別する方法を指定する、Web ログ ファイルのプロパティを設定します。
構成の同期 | 構成設定の変更後に、データ ウェアハウスを Commerce Server ビジネス デスクに同期させます。このタスクは、それぞれのインポート タスク前に実行する必要があります。
トランザクション データ インポート | トランザクション データを定義およびインポートします。このタスクを使って、データ ウェアハウスにインポートするトランザクション データのタイプを選択します。
データ削除 | 詳細ログ ファイル データおよび要約データをデータ ウェアハウスから削除します。ログ ファイル データを削除すると、データ ウェアハウスのサイズが削減されます。テスト データをインポートしていて、正規データをインポートする前にデータ ウェアハウスを空にする場合は、詳細および要約のすべてのデータを削除します。
商品カタログ インポート | カタログ データをインポートします。インポートしたカタログ データを使ったカタログ レポートには、トランザクション データを使ったレポートよりも詳細な商品情報が含まれます。
ユーザー プロファイル データ インポート | ユーザー プロファイル データをインポートします。ユーザー プロファイル データは、プロファイル リソースで作成されるユーザー プロファイルで定義され、Web サイトから登録するユーザーの個人情報を収集するために使われます。
IP 解決 | インポートしたユーザー データからインターネット プロトコル (IP) アドレスを解決します。IP 解決では、ログ ファイルからインポートした IP アドレスをドメイン名に変換します。たとえば、198.105.232.4 という IP アドレスは www.microsoft.com になります。これにより、レポートを読む際に、レポートのデータを理解しやすくなります。
キャンペーン データ インポート | マーケティング キャンペーンに関するデータをインポートします。キャンペーン データを使って、マーケティング キャンペーンの成功度を分析します。
レポート準備 | インポート データで OLAP キューブを生成し、レポート生成用のデータを準備します。削除後のクリーンアップも行います。このタスクは、それぞれのインポート タスクと削除タスクの後に実行する必要があります。

DTS タスクの詳細については、SQL Server Books Online を参照してください。

関連項目

データ ウェアハウスの実行


管理ツールだけをインストールする

Commerce Server 2000 が少なくとも 1 台のコンピュータにインストールされていれば、管理専用のコンソールをほかのコンピュータにセットアップすることもできます。管理専用のコンピュータには Commerce Server マネージャだけがインストールされ、既存の管理データベースに接続します。

管理専用のコンピュータは、次のような場合に使うことをお勧めします。

  • 既存のコンピュータを最小限のインストールで利用する場合。管理専用のコンピュータは、Commerce Server を完全にインストールする場合よりも、ソフトウェアと構成の要件が緩やかになります。Microsoft Windows 2000 Server ではなく、Microsoft Windows 2000 Professional で実行できます。

  • Commerce Server をほかの場所から管理する場合。管理専用のコンピュータは、Commerce Server と同じドメインまたは信頼される側のドメインに配置する必要があります。

管理専用のコンピュータは、次の要件を満たしている必要があります。

  • Microsoft Windows 2000 Professional、Server、または Advanced Server がインストールされていること。

  • 20 MB のハード ディスクの空き容量があること。

  • 既存の管理データベースに接続できること。

管理ツールだけをインストールするには

プロキシ サーバーまたはファイアウォール経由での管理を有効にするには

管理ツールだけをインストールするには

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、Commerce Server 2000 のセットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、既定のフォルダをインストール先に指定します。

  2. [セットアップの種類] ダイアログ ボックスで [カスタム] を選択し、[次へ] をクリックします。

  3. [カスタム セットアップ] ダイアログ ボックスで、[管理ツール] オプションを選択します。その他のオプションについては、[インストールしない] を選択します。[次へ] をクリックします。

  4. [管理データベースの構成] ダイアログ ボックスで、[SQL Server コンピュータ] ボックスに管理データベースを格納するコンピュータの名前を入力します。SQL Server のログイン ユーザー名とパスワードを入力し、管理データベースに接続します。[次へ] をクリックします。

  5. [サービス アカウント] ダイアログ ボックスで、イベント ログ アカウントの Windows ユーザー名とパスワードを入力し、[次へ] をクリックします。

  6. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    コンピュータに管理ツールがインストールされます。このコンピュータを使って、Commerce Server のインストール環境を管理できます。

  7. [完了] をクリックしてセットアップ プログラムを終了します。

Commerce Server マネージャがコンピュータにインストールされます。

プロキシ サーバーまたはファイアウォール経由での管理を有効にするには

  • SQL Server と管理専用のコンピュータとの間でポート 1433 を開きます。

特に指定しない限り、SQL Server はポート 1433 で待機します。ポート番号の変更手順については、SQL Server Books Online を参照してください。

注

  • Commerce Server マネージャについては、プロキシ サーバーまたはファイアウォール経由でも使用できますが、インターネット サービス マネージャは、プロキシ サーバーまたはファイアウォール経由では使用できません。ファイアウォールの向こう側にある管理専用のコンピュータに IIS の管理機能を追加するには、ブラウザ ベースの IIS または Microsoft ターミナル サービスを使います。IIS の使い方の詳細については、IIS 5.0 のマニュアルを参照してください。ターミナル サービスの使い方については、Windows 2000 のマニュアルの「Client Services」を参照してください。

関連項目

Commerce Server をインストールする


管理データベースの管理

Commerce Server 2000 サイトは、複数のコンピュータで構成される場合があります。その場合でも、すべてのコンピュータのリソースに関する構成データは、MSCS_Admin という名前の単一の SQL Server 管理データベースにまとめて格納されます。このデータベースは、Commerce Server を最初にインストールするときに自動的に作成されます。管理データベースを置く SQL Server コンピュータは、セットアップ時に指定する必要があります。

Commerce Server をさらに別のコンピュータにインストールする場合は、セットアップ時に各コンピュータがこの管理データベースを参照するように指定します。すべてのコンピュータがこの中央のデータベースを参照するように設定すると、1 つのコンソールからすべての Commerce Server コンピュータを集中管理できるようになります。

注

  • 1 つの管理データベースをすべての Commerce Server コンピュータから使用できます。また、各コンピュータがそれぞれ独自の管理データベースを使うこともできます。

次の表は、管理データベースが一般的に置かれる場所を、環境ごとにまとめて示します。

環境 | 管理データベースの一般的な場所
Commerce Server、Microsoft SQL Server、およびすべての Web コンポーネントを含む単一のサーバー | 単一のサーバー
1 つまたは複数の Web サーバーと 1 つのデータベース サーバー | SQL Server コンピュータ
複数層の複数サーバー環境 | いずれかの SQL Server コンピュータ (最適なパフォーマンスを得るために、データ ウェアハウスとは別のコンピュータにします)

ここでは、次のトピックについて説明します。

  • 管理データベースを構成する

  • サイトと管理データベースとの間で情報をやり取りする

  • 管理データベースのセキュリティを管理する


管理データベースを構成する

Commerce Server 2000 をインストールすると、管理データベースの接続文字列に応じてサーバーが自動的に設定されます。ただし、管理データベースの SQL Server ログイン ユーザー名やパスワードが変更された場合など、この接続文字列を変更しなければならないことがあります。

注

  • Commerce Server マネージャが管理データベースに接続できない場合、Microsoft 管理コンソール (MMC) のスコープ ウィンドウには、Commerce Server マネージャのルート ノードは表示されますが、Commerce Server 階層のほかの部分は表示されません。正しい接続文字列が使われるようにするには、Commerce Server マネージャを構成する必要があります。

Commerce Server マネージャを構成するには

  1. [Commerce Server マネージャ] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。[Commerce Server マネージャのプロパティ] ダイアログ ボックスが表示されます。

  2. [管理データベース] タブの [変更] をクリックします。[データ リンク プロパティ] ダイアログ ボックスが表示されます。

  3. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

    注

    • [データ リンク プロパティ] ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ] ダイアログ ボックスの [ヘルプ] をクリックして [Microsoft データ リンク] ヘルプ ファイルを開いてください。

関連項目

データベース サーバーを設定する

サイトにセキュリティを設定する

Commerce Server のトラブルシューティング


サイトと管理データベースとの間で情報をやり取りする

管理データベースへのアクセスには、SiteConfig、GlobalConfig、SiteConfigReadOnly の 3 つの COM オブジェクトが使われます。次の図は、サイトと管理データベースとの間で効率よく情報を交換するのに、これらの Config オブジェクトがどのような働きをしているのかを示しています。

アプリケーション
<コンピュータ名>
/RetailBusinessDesk
<コンピュータ名>/Retail
アプリケーション
アプリケーション
Web ページ
Web ページ
Config オブジェクト
サイト 2
サイト 1
管理データベース :
SCS_Admin
サイト 2
サイト 1

Config オブジェクトは管理データベースにデータを書き込みます。また、アプリケーションで使用されるデータをデータベースから取得します。Config オブジェクトを使ったプログラミングについては、「プログラマーズ リファレンス」を参照してください。

関連項目

サーバー プラットフォームを設定する

サイトにセキュリティを設定する

管理データベースのセキュリティを管理する


管理データベースのセキュリティを管理する

管理データベースの接続文字列には、Microsoft SQL Server ログイン ユーザー名とパスワードを使用します。

Commerce Server のインストール時に、セットアップ プログラムは既存の SQL Server ログイン名とパスワードを入力するように要求します。管理データベースは、これらの情報を使って SQL Server に作成されます。管理データベースが既に存在する場合は、そのデータベースに接続します。

管理データベースが作成されていれば、Microsoft SQL Server Enterprise Manager を使って管理データベースの SQL Server ログイン名とパスワードを変更できます。ほかの SQL Server ログインを使って Commerce Server コンピュータから管理データベースに接続する場合は、Commerce Server マネージャで管理データベースの接続文字列を変更する必要があります。

セキュリティのため、管理データベースへのアクセスに "sa" ログインは使わないでください。その代わりに、SQL Server Enterprise Manager を使って、管理データベースの新規のログインとユーザーを作成してください。

管理データベースの SQL Server ログイン ユーザー名とパスワードを変更するには

  1. [Commerce Server マネージャ] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。[Commerce Server マネージャのプロパティ] ダイアログ ボックスが表示されます。

  2. [管理データベース] タブの [変更] をクリックします。[データ リンク プロパティ] ダイアログ ボックスが表示されます。

  3. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

    注

    • [データ リンク プロパティ] ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ] ダイアログ ボックスの [ヘルプ] をクリックして [Microsoft データ リンク] ヘルプ ファイルを開いてください。

関連項目

サイトにセキュリティを設定する

Commerce Server の保守


Commerce リソースの管理

リソースには、グローバル リソースとサイト リソースの 2 種類があります。サード パーティは、Commerce Server で使用するカスタム グローバル リソースとサイト リソースを開発できます。Commerce Server リソースをインストール、追加、および設定するには、ここで説明する手順を使います。

ここでは、次のトピックについて説明します。

  • グローバル リソースをインストールまたはアンインストールする グローバル リソースのインストールとアンインストールの方法について説明します。

  • サイトにグローバル リソース ポインタを追加する サイトにグローバル リソース ポインタを追加する方法について説明します。

  • サイトにリソースを追加する サイトにリソースを追加する方法について説明します。

  • グローバル リソースを構成する グローバル リソースを構成する方法について説明します。

  • サイト リソースを構成する サイト リソースを構成する方法について説明します。

  • アプリケーション既定の構成リソースを構成する アプリケーション既定の構成リソースを構成する方法について説明します。

  • サービスのアカウントまたはパスワードを変更する 予測、ダイレクト メーラー、イベント ログの記録、およびリスト マネージャのアカウントまたはパスワードを変更する方法について説明します。

  • サイトからリソースを削除する サイトからリソースを削除する方法について説明します。


グローバル リソースをインストールまたはアンインストールする

Commerce Server のグローバル リソースである予測とダイレクト メーラーは、Microsoft Commerce Server 2000 のセットアップ プログラムでインストールやアンインストールを実行できます。ほかのグローバル リソースは、アンパッケージ時に作成されます。

予測とダイレクト メーラーをインストールした後、サイトで利用するにはこれらのリソースのアンパッケージが必要になります。アプリケーションをアンパッケージの場合に、サイトのグローバル リソース ポインタを予測およびダイレクト メーラーに設定します。サイトのグローバル リソース ポインタを追加および削除する方法については、「サイトにグローバル リソース ポインタを追加する」および「サイトからリソースを削除する」を参照してください。

予測とダイレクト メーラーのインストールおよび配置については、「サイトの配置」を参照してください。

注

  • Commerce Server 2000 の最初のリリースでは、SQL Server 仮想クラスタにダイレクト メーラーをインストールすることはできません。ダイレクト メーラーは、物理コンピュータの名前を使って SQL Server 仮想クラスタの物理ノードにインストールし、仮想インスタンスとは別の SQL Server インスタンスを使ってください。

予測またはダイレクト メーラーをインストールするには

  1. Commerce Server 2000 の CD-ROM を CD-ROM ドライブに挿入し、Commerce Server 2000 セットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、インストール先のフォルダを選択します。

  2. [セットアップの種類] ダイアログ ボックスの [カスタム] (Commerce Server が既にインストールされているコンピュータでは、[変更]) を選択し、[次へ] をクリックします。

  3. [カスタム セットアップ] ダイアログ ボックスの [ランタイム オブジェクト] フォルダの下で、[予測サービス] または [ダイレクト メーラー サービス] オプションを選択し、それ以外のオプションでは [インストールしない] を選択します。[次へ] をクリックします。

  4. [ダイレクト メーラー データベースの構成] ダイアログ ボックスで、[SQL Server コンピュータ] ボックスにコンピュータの名前を入力します。ダイレクト メーラー データベースを作成するときに使用する、SQL Server ログイン ユーザー名とパスワードを入力します。[次へ] をクリックします。

  5. [サービス アカウント] ダイアログ ボックスで、サービスを実行するアカウントの Windows ユーザー名とパスワードを入力します。[次へ] をクリックします。

    注

    • 恒久的なアカウントを使ってください。後でこのアカウントが無効になった場合、またはパスワードが変更された場合には、Commerce Server は機能を停止します。サービスのアカウントまたはパスワードを変更する方法については、「サービスのアカウントまたはパスワードを変更する」を参照してください。
  6. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    Commerce Server セットアップは、コンピュータに予測とダイレクト メーラーをインストールします。

  7. [完了] をクリックしてセットアップ プログラムを終了します。

予測またはダイレクト メーラーをアンインストールするには

  1. Commerce Server 2000 の CD-ROM をディスク ドライブに挿入し、Commerce Server 2000 のセットアップ プログラムを実行します。使用許諾契約書に同意したら、顧客情報を入力し、既定のフォルダをインストール先に指定します。

  2. [セットアップの種類] ダイアログ ボックスで [変更] を選択し、[次へ] をクリックします。

  3. [カスタム セットアップ] ダイアログ ボックスで、削除する機能 ([予測サービス] または [ダイレクト メーラー サービス]) が選択されていないことを確認します (選択されていないことを示す [X] がチェック ボックスに表示されます。)。[次へ] をクリックします。

  4. [インストールの開始] ダイアログ ボックスの [インストール] をクリックします。

    Commerce Server セットアップは、コンピュータから予測またはダイレクト メーラーをアンインストールします。

  5. [完了] をクリックしてセットアップ プログラムを終了します。

関連項目

サイトの配置

サイトにグローバル リソース ポインタを追加する

サイトからリソースを削除する

Commerce Server をインストールする

Commerce Server をアンインストールする


サイトにグローバル リソース ポインタを追加する

Commerce Server 2000 のセットアップ プログラムを使ってグローバル リソースをインストールすると、そのグローバル リソースへのポインタは、Commerce Server 管理データベースに登録されているすべてのサイトに追加できます。サイトにグローバル リソース ポインタを追加するには、Commerce Server サイト パッケージャ ファイルからそのグローバル リソース ポインタをアンパッケージします。

たとえば、予測およびダイレクト メーラーをインストールした後に、予測とダイレクト メーラーのリソースを含むサイトをアンパッケージします。サイトをアンパッケージの場合に、サイトのグローバル リソース ポインタを予測およびダイレクト メーラーに設定します。

注

  • 次の手順を実行するには、パッケージ ファイルを作成するか、またはサイトに追加するグローバル リソース ポインタが含まれるソリューション サイト パッケージを使う必要があります。パッケージを作成する手順については、「サイト パッケージャを使う」を参照してください。

  • Commerce Server ビジネス デスク アプリケーションをアンパッケージし、ビジネス デスク クライアントをインストールした後でダイレクト メーラー リソースをアンパッケージの場合は、ダイレクト メーラーの追加が検出されるように、ビジネス デスク アプリケーションのホストとなっている Web サーバーでインターネット インフォメーション サービス (IIS) 5.0 を再起動する必要があります。ビジネス デスク クライアントからは、アプリケーションに接続し直す必要があります。IIS の再開方法については、「IIS を再起動する」を参照してください。

サイトにグローバル リソース ポインタを追加するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [サイト リソース] をクリックし、[サイト リソース] をマウスの右ボタンでクリックします。次に、[新規] をポイントし、[リソースの追加] をクリックします。

    [開く] ダイアログ ボックスが表示されます。

  3. サイトに追加するグローバル リソース ポインタが含まれているパッケージを選択し、[開く] をクリックします。

    Commerce Server サイト パッケージャが起動します。

  4. [リソースの選択] ダイアログ ボックスで、[利用できるリソース] ボックスからグローバル リソースを選択し、[追加] をクリックします。選択したリソースが [アンパックするリソース] ボックスに表示されます。[次へ] をクリックします。

  5. [グローバル リソース ポインタ] ダイアログ ボックスで、選択したリソースが適切なグローバル リソースを指していることを確認します。この画面を使って、いくつかの種類の、新しいグローバル リソースを作成できます。新しいグローバル リソースを作成するには、グローバル リソース ポインタをマップするときに [新しいグローバル リソースを追加] を選択します。

  6. [データベースの接続文字列] ダイアログ ボックスに、サイト パッケージャが作成するデータベースと、そのデータベースが作成されるサーバーが一覧表示されます。

  7. グローバル リソースの新しいデータベースを作成する必要がある場合は、[新規データベース] をクリックします。

    [SQL Server コンピュータ] ボックスに、データベースを格納するコンピュータの名前を入力します。[データベース名] ボックスに、データベースの名前を入力します。残りのボックスに SQL Server のログイン ユーザー名とパスワードを入力し、[データベースの作成] をクリックします。

  8. [データベースの接続文字列] ダイアログ ボックスに戻ったら、接続文字列を選択し、[変更] をクリックします。

  9. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

    注

    • [データ リンク プロパティ] ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ] ダイアログ ボックスの [ヘルプ] をクリックして [Microsoft データ リンク] ヘルプ ファイルを開いてください。
  10. [次へ] をクリックします。

  11. [アンパックが完了しました] ダイアログ ボックスで、アンパッケージ処理のログ ファイルの内容を確認し、[終了] をクリックします。

追加したグローバル リソース ポインタが Commerce Server マネージャのサイトの下に表示されます。

関連項目

管理に関する基本

サイト パッケージャを使う

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

サイトからリソースを削除する

Commerce Server をインストールする


サイトにリソースを追加する

サイトにリソースを追加するには、パッケージからそのリソースをアンパッケージします。

注

  • 次の手順を実行するには、パッケージ ファイルを作成するか、またはサイトに追加するリソースが含まれるソリューション サイト パッケージを使う必要があります。リソースをパッケージ化し、パッケージ ファイルを作成する手順については、「サイト パッケージャを使う」を参照してください。

  • Commerce Server ビジネス デスク アプリケーションをアンパッケージし、ビジネス デスク クライアントをインストールした後でダイレクト メーラー リソースをアンパッケージの場合は、ダイレクト メーラーの追加が検出されるように、ビジネス デスク アプリケーションのホストとなっている Web サーバーでインターネット インフォメーション サービス (IIS) 5.0 を再起動する必要があります。ビジネス デスク クライアントからは、アプリケーションに接続し直す必要があります。IIS の再開方法については、「IIS を再起動する」を参照してください。

サイト リソースを追加するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [サイト リソース] をクリックし、[サイト リソース] をマウスの右ボタンでクリックします。次に、[新規] をポイントし、[リソースの追加] をクリックします。

    既存サイト パッケージの一覧を含む [開く] ダイアログ ボックスが表示されます。

  3. サイトに追加するリソースが含まれているパッケージを選択し、[開く] をクリックします。

    Commerce Server サイト パッケージャが起動します。

  4. [リソースの選択] ダイアログ ボックスで、[利用できるリソース] ボックスからリソースを選択し、[追加] をクリックします。選択したリソースが [アンパックするリソース] ボックスに表示されます。[次へ] をクリックします。

  5. [グローバル リソース ポインタ] ダイアログ ボックスで、選択したリソースが適切なグローバル リソースを格納するサーバーを指していることを確認します。この画面を使って、いくつかの種類の、新しいグローバル リソースを作成できます。新しいグローバル リソースを作成するには、グローバル リソース ポインタをマップするときに [新しいグローバル リソースを追加] を選択します。

    追加しようとしている新規グローバル リソースの接続文字列プロパティの一覧が表示されます。追加しようとしているリソースがグローバル リソース ポインタでない場合、接続文字列プロパティの一覧は表示されません。

  6. [データベースの接続文字列] ダイアログ ボックスに、サイト パッケージャが作成するデータベースと、そのデータベースが作成されるサーバーが一覧表示されます。

  7. グローバル リソースの新しいデータベースを作成する必要がある場合は、[新規データベース] をクリックします。

    [SQL Server コンピュータ] ボックスに、データベースを格納するコンピュータの名前を入力します。[データベース名] ボックスに、データベースの名前を入力します。残りのボックスに SQL Server のログイン ユーザー名とパスワードを入力し、[データベースの作成] をクリックします。

  8. [データベースの接続文字列] ダイアログ ボックスに戻ったら、接続文字列を選択し、[変更] をクリックします。

  9. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

    注

    • [データ リンク プロパティ] ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ] ダイアログ ボックスの [ヘルプ] をクリックして [Microsoft データ リンク] ヘルプ ファイルを開いてください。
  10. [次へ] をクリックします。

  11. [アンパックが完了しました] ダイアログ ボックスで、アンパッケージ処理のログ ファイルの内容を確認し、[終了] をクリックします。

追加したリソースが Commerce Server マネージャのサイトの下に表示されます。

関連項目

リソース

サイト パッケージャを使う

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

サイト リソースを構成する

サイトからリソースを削除する


グローバル リソースを構成する

グローバル リソースがインストールされていれば、そのグローバル リソースで使用されるプロパティおよびデータベース接続文字列はいつでも変更できます。

注

  • Commerce Server マネージャを使ってグローバル リソースのプロパティまたはデータベース接続文字列を変更しても、グローバル リソースを使用しているアプリケーションの Web ページや Commerce Server ビジネス デスクに、変更内容がすぐに反映されない場合があります。変更内容をすぐに反映させるには、インターネット インフォメーション サービス (IIS) 5.0 スナップインを使って、IIS アプリケーションをそのアプリケーションが使用する Web サーバーからアンロードします。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

グローバル リソースを構成するには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。

  2. 設定するグローバル リソースをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [<グローバル リソース> のプロパティ] ダイアログ ボックスの [プロパティ] タブをクリックします。

  4. プロパティを 1 つずつ選択して、[選択したプロパティ値] ボックスに値を入力していきます。

  5. グローバル リソースの接続文字列を設定するには、[接続文字列] タブをクリックし、[変更] をクリックします。[データ リンク プロパティ] ダイアログ ボックスが表示されます。

    注

    • [データ リンク プロパティ] ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ] ダイアログ ボックスの [ヘルプ] をクリックして [Microsoft データ リンク] ヘルプ ファイルを開いてください。
  6. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

これで、選択したグローバル リソースの設定が完了しました。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

リソース

サイト リソースを構成する

メモリからアプリケーションをアンロードする


サイト リソースを構成する

サイトにサイト リソースが追加されていれば、そのサイト リソースで使用するプロパティはいつでも変更できます。サイトで使用するサイト リソースはすべて、サイト レベルでオブジェクトを公開します。

注

  • サイトで使用するグローバル リソースは、サイト レベルでオブジェクト (グローバル リソース ポインタ) を公開します。ただし、このオブジェクトが公開するプロパティは、関連付けられたグローバル リソースへのポインタだけです。グローバル リソースを構成する方法については、「グローバル リソースを構成する」を参照してください。

サイト リソースを構成するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [サイト リソース] を展開し、設定するサイト リソースをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [プロパティ] ダイアログ ボックスで、設定するプロパティを選択し、[選択したプロパティ値] ボックスに値を入力します。

  4. サイト リソースのプロパティを設定し終えたら、[OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

リソース

グローバル リソースを構成する


アプリケーション既定の構成リソースを構成する

アプリケーション既定の構成リソースには、サイトの機能と Commerce Server ビジネス デスクの機能に影響を与えるプロパティがあります。たとえば、サポートする通貨の指定や、Commerce Server をセットアップして Microsoft BizTalk Server 2000 に統合する場合の支払い方法の指定などに、アプリケーション既定の構成リソースのプロパティを使います。

BizTalk Server を使うために アプリケーション既定の構成を構成する方法については、「BizTalk Server と連携するように Commerce Server を構成する」を参照してください。サイトをローカライズする方法については、「世界各国の顧客用にサイトを変更する」を参照してください。

アプリケーション既定の構成リソースを構成するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション既定の構成] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [プロパティ] タブで、次の操作を行います。
    項目 | 操作
    [品目の追加リダイレクト オプション] | ユーザーがバスケットに項目を追加した場合のサイト機能を指定します。現在の商品ページを続けて表示するには「1」を入力します。バスケット ページにリダイレクトするには「0」を入力します。
    [アドレス帳オプション] サイトでアドレス帳機能を有効にするかどうかを指定します。

    アドレス帳を無効にするには「0」を入力します。

    アドレス帳を読み取り専用にするには「1」を入力します。定義済みのアドレス帳がある場合は、このオプションを選択することをお勧めします。

    アドレス帳を読み取り/書き込み可能にして、ユーザーがアドレスを追加または変更できるようにするには、「2」を入力します。
    [認証マネージャの認証チケットのタイムアウト] | チケットがタイムアウトするまでの時間を、分単位で入力します。このプロパティは、Commerce Server ソリューション サイトに基づいてサイトを構築している場合にのみ使用されます。
    [BizTalk カタログの形式] | BizTalk Server がカタログのために必要とする文書の定義名 (たとえば、「CatalogTransferDoc」) を入力します。
    [BizTalk オプション] | BizTalk Server との統合を有効にして文書を交換するには「1」を入力します。統合を無効にするには「0」を入力します。
    [BizTalk 注文書の形式] | BizTalk Server が注文書のために必要とする文書の定義名 (たとえば、「PurchaseOrder」) を入力します。
    [BizTalk 送信元組織の修飾子] | BizTalk Server のこのサイト用の別名識別子 (たとえば、「MyCompany」) を入力します。
    [BizTalk 送信元組織の修飾子の値] | BizTalk Server のこのサイト用の別名値 (たとえば、「Sender」) を入力します。
    [BizTalk 送信形式] | BizTalk Server に文書を非同期に送信するには、「1」を入力します。
    [Cookie パス訂正オプション] | アプリケーション ベースの訂正を有効にするには「1」を入力します。フィルタ ベースの訂正を有効にするには「2」を入力します。
    [通貨 : 代替通貨コード] | 代替通貨の ISO 4217 コードを入力します。
    [通貨 : 代替通貨の変換レート] | 基本通貨と代替通貨の交換に使用するレートを入力します。
    [通貨 : 代替通貨のロケール] | 代替通貨のロケールを入力します (1031 = ドイツ語、1033 = 英語、1034 = スペイン語、1036 = フランス語、1041 = 日本語)。
    [通貨 : 代替通貨オプション] | 2 つの通貨を同時に表示するには「1」を入力します。この機能を無効にするには「0」を入力します。
    [通貨 : 代替通貨記号] | 代替通貨を使用している場合は、その通貨の記号を入力します。
    [通貨 : 基本通貨コード] | 基本通貨の ISO 4217 コードを入力します。
    [通貨 : 基本通貨のロケール] | 基本通貨のロケールを入力します (1031 = ドイツ語、1033 = 英語、1034 = スペイン語、1036 = フランス語、1041 = 日本語)。
    [通貨 : 基本通貨記号] | 基本通貨の記号を入力します。
    [通貨の表示順序オプション] | 代替通貨を使用している場合、最初に基本通貨を表示するには「0」を入力します。最初に代替通貨を表示するには「1」を入力します。
    [代理管理者オプション] 取引先サービスを有効にするには「1」を入力します。取引先サービスを無効にするには「0」を入力します。

    代理管理者を作成するには、Commerce Server ビジネス デスクのユーザー モジュールで、[取引先サービス ロール フラグ] が [管理者] に設定されたユーザーを作成し、そのユーザーを特定の組織と関連付ける必要があります。

    代理管理者のサイトには、取引先サービス リンクが表示されます。取引先サービスを有効にした代理管理者は、ユーザーの管理や注文の確認など、組織の特定のタスクを実行できます。
    [フォーム ログイン オプション] サイトへのログインをユーザーに要求するタイミングを指定します。次のいずれかの値を入力します。

    0 = ログインが無効になります。ユーザーはゲストとしてのみ、サイトにアクセスできます。

    1 = ユーザーがサイトにアクセスした時点でログインを要求します。

    2 = ユーザーがサイトにアクセスした時点で、ログインするかどうかを選択できます。

    5 = 購入時にログインを要求します。

    6 = ユーザーはどの時点でもログインするかどうかを選択できます。

    7 = ユーザーに IIS 認証を要求します。

    このプロパティは、Commerce Server ソリューション サイトに基づいてサイトを構築している場合にのみ使用されます。
    [ホスト名訂正オプション] | ホスト名訂正を有効にするには「1」を入力します。この機能を無効にするには「0」を入力します。
    [ページ エンコーディング文字セット] | サイトで使用する文書エンコード用文字セットを指定します (Windows - 1252 など)。
    [支払いオプション] | 注文の支払いをクレジット カードで行う場合には「1」を入力します。アカウント課金で行う場合には「4」を入力します。両方のオプションを有効にするには「5」を入力します。
    [サイト既定のロケール] | このサイトのロケールを入力します (1031 = ドイツ語、1033 = 英語、1034 = スペイン語、1036 = フランス語、1041 = 日本語)。
    [サイト プライバシ オプション] 匿名ユーザーのプロファイルを作成するには「1」を入力します。匿名ユーザーのプロファイルを作成し、サイトへの訪問を追跡するには「2」を入力します。

    このプロパティは、Commerce Server ソリューション サイトに基づいてサイトを構築している場合にのみ使用されます。
    [サイト登録オプション] | 自動登録を有効にするには「1」を入力します。この機能を無効にするには「2」を入力します。このプロパティは、Commerce Server ソリューション サイトに基づいてサイトを構築している場合にのみ使用されます。
    [サイト チケット オプション] | ユーザー チケットを URL に配置するには「1」を入力します。ユーザー チケットを cookie に配置するには「2」を入力します。このプロパティは、Commerce Server ソリューション サイトに基づいてサイトを構築している場合にのみ使用されます。
    [SMTP サーバー名] | Simple Mail Transfer Protocol (SMTP) サーバーの名前を入力します。
    [重量測定単位] | 商品の送料を計算するための測定単位を入力します。

  4. [接続文字列] タブで、[変更] をクリックして BizTalk Interchange Manager データベースへの接続文字列を指定します。このデータベースには、Commerce Server から送信されたメッセージが格納されます。

  5. [OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

リソース

BizTalk Server と Commerce Server の使用

CS 認証リソースの管理

BizTalk Server と統合する

BizTalk Server と連携するように Commerce Server を構成する

世界各国の顧客用にサイトを変更する


サービスのアカウントまたはパスワードを変更する

Commerce Server をインストールするときに、Commerce Server のサービス (リスト マネージャ、ダイレクト メーラー、および予測) 用に Windows のユーザー名とパスワードを指定します。また、イベント ログの記録で使用する Windows アカウントも指定します。これらの Windows アカウントのいずれかのパスワードが変更されるか、使用している Windows アカウントのいずれかを変更する場合は、この変更を Windows の [サービス] コンソールで指定する必要があります。これら 3 つのサービスそれぞれに対して、アカウントとパスワードを更新する必要があります。

イベント ログのアカウントを変更するには、コンポーネント サービス スナップインを使う必要があります。

サービス アカウントまたはパスワードを変更するには

イベント ログのアカウントまたはパスワードを変更するには

サービス アカウントまたはパスワードを変更するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [管理ツール] をポイントし、[サービス] をクリックします。

  2. [サービス] ウィンドウで、アカウント名またはパスワードを変更する Commerce Server サービスをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [ログオン] タブをクリックします。

  4. [ログオン] タブで、次の操作を行います。
    項目 | 操作
    [アカウント] このサービスの認証に使用する Windows アカウントのユーザー名を入力します。名前は次の形式で入力する必要があります。

    domain_name\user_name
    [パスワード] | ユーザー アカウントのパスワードを入力します。
    [パスワードの確認] | ユーザー アカウントのパスワードを再入力します。

  5. [OK] をクリックします。

イベント ログのアカウントまたはパスワードを変更するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [管理ツール] をポイントし、[コンポーネント サービス] をクリックします。

  2. [コンポーネント サービス] を展開し、[コンピュータ] を展開します。次に、[マイ コンピュータ] を展開し、[COM+ アプリケーション] を展開します。

  3. [Commerce イベント ログ] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  4. [ID] タブでユーザー名とパスワードを入力し、[OK] をクリックします。


サイトからリソースを削除する

アプリケーションで使用されていないリソースは、サイトから削除できます。

次の表は、サイトからリソースを削除するとどうなるかをまとめたものです。

リソース | 削除の対象
アプリケーション既定の構成 | 管理データベースからリソースを削除します。
プロファイル | 管理データベースからリソースを削除します。プロファイル データベースのデータは削除されません。
キャンペーン | Schema_drop.sql を実行して、ストアド プロシージャ、トリガ、およびドロップ テーブルを削除します。また、管理データベースからリソースを削除します。
CS 認証 | CS 認証のグローバル リソースへのサイトの参照を管理データベースから削除します。
データ ウェアハウス | データ ウェアハウスのグローバル リソースへのサイトの参照を管理データベースから削除します。
Commerce Server ダイレクト メーラー | ダイレクト メーラーのグローバル リソースへのサイトの参照を管理データベースから削除します。
予測 | 予測のグローバル リソースへのサイトの参照を管理データベースから削除します。
商品カタログ | 管理データベースからリソースを削除します。
トランザクション | 管理データベースからリソースを削除します。
トランザクション構成 | 管理データベースからリソースを削除します。

サイトからリソースを削除するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. 削除するリソースをマウスの右ボタンでクリックし、[削除] をクリックします。

リソースのデータが管理データベースから削除されます。Commerce Server マネージャでは、そのリソース オブジェクトは、サイトの下に表示されなくなります。グローバル リソース ポインタを削除した場合、そのポインタが指していたグローバル リソースはほかのサイトから引き続き使用できます。

関連項目

リソース

サイトにリソースを追加する


Commerce サイトの管理

Commerce Server マネージャに表示されている Commerce Sites コンテナは、セットアップ プログラムの実行時に作成されます。サイト インスタンスは、パッケージ内のサイトごとに作成され、Commerce Sites コンテナ内のサブフォルダとして表示されます。サイトとサイト リソースの追加には、Commerce Server マネージャと Commerce Server サイト パッケージャを使います。

ここでは、次のトピックについて説明します。

  • サイトを追加する Commerce Server にサイトを追加する方法について説明します。

  • サイトを削除する Commerce Server からサイトを削除する方法について説明します。


サイトを追加する

Microsoft Commerce Server 2000 をコンピュータにインストールしたら、そのコンピュータにサイトを追加できます。

注

  • 次の手順でサイトを追加するには、そのサイトが含まれているパッケージ ファイルをあらかじめ作成しておくか、またはソリューション サイト パッケージを使います。サイトをパッケージ化する方法については、「サイト パッケージャを使う」を参照してください。

次の操作手順は、ログインしているユーザーがファイルを目的のフォルダにコピーするための適切な権限を持っていることを前提にしています。

サイトを追加するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce サイト パッケージャ] をクリックします。

    [Commerce Server サイト パッケージャ] 画面が表示されます。

  2. [パッケージ ファイルからアンパックする] を選択し、[次へ] をクリックします。

  3. [アンパック] ダイアログ ボックスで、[アンパックするファイル] ボックスの横の [参照] をクリックします。[開く] 画面が表示されます。

  4. [開く] ダイアログ ボックスで、アンパッケージのためのファイルが含まれているフォルダを開き、ファイルを選択して [開く] をクリックします。

  5. [アンパック] ダイアログ ボックスに戻ったら、1 つの SQL Server にすべてのデーベース ファイルを配置する場合は [標準] を選択します。このオプションを選択した場合は、[次へ] をクリックして手順 13 に進みます。

    それ以外の場合は、[カスタム] を選択して、アンパッケージのすべてのオプションをカスタマイズします。[次へ] をクリックします。

  6. [アンパック方法] ダイアログ ボックスで [新しいサイトの作成] を選択し、[次へ] をクリックします。

  7. [サイト名] ダイアログ ボックスで、サイトの名前を入力し、[次へ] をクリックします。

  8. [リソースの選択] ダイアログ ボックスで、インストールする項目を選択し、[次へ] をクリックします。

  9. [グローバル リソース ポインタ] ダイアログ ボックスの [次へ] をクリックします。

    この画面を使って、既存のグローバル リソースにマップするか、または新しいグローバル リソースを作成します。また、既にグローバル リソースがコンピュータ上にアンパッケージされていて、そのグローバル リソースを使用するサイトでグローバル リソース ポインタをアンパッケージの場合も、このダイアログ ボックスを使います。

  10. [データベースの接続文字列] ダイアログ ボックスに、サイト パッケージャが作成するデータベースと、そのデータベースが作成されるサーバーが一覧表示されます。データベースを確認して、[次へ] をクリックします。

  11. [アプリケーションの選択] ダイアログ ボックスで、アンパッケージのためのアプリケーションが選択されていることを確認し、[次へ] をクリックします。

  12. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスで、IIS アプリケーションのパスと仮想ディレクトリが正しいことを確認し、[次へ] をクリックします。

  13. [データ ウェアハウス] ダイアログ ボックスが表示された場合は、[OK] をクリックします。

  14. 1 番目の [プロファイル システム] ダイアログ ボックスが表示されたら [次へ] をクリックし、2 番目の [プロファイル システム] ダイアログ ボックスの [OK] をクリックします。

  15. [アンパックが完了しました] ダイアログ ボックスで、作成された SQL データベースと IIS アプリケーションの一覧を確認します。Pup.log ファイルのイベントの一覧を参照するには、[ログ ファイルの表示.] をクリックします。

  16. サイト パッケージャを閉じるには、[終了] をクリックします。

関連項目

管理に関する基本

サイト パッケージャを使う

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

サイトをバックアップする

サイト パッケージャのトラブルシューティング


サイトを削除する

サイトを削除すると、サイト構成データが管理データベースから削除されます。一度削除したサイトは元に戻せません。

サイトを削除するには

サイトで使用されているデータベースを削除するには

サイトの OLAP データベースを削除するには

サイトの仮想ディレクトリを削除するには

サイトのフォルダとファイルを削除するには

ダイレクト メーラー ジョブを削除するには

サイトを削除するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。

  2. 削除するサイトをマウスの右ボタンでクリックし、[削除] をクリックします。

サイトで使用されているデータベースを削除するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、インストールされているデータベースに応じて [Microsoft SQL Server] または [Microsoft SQL Server 7.0] をポイントし、[Enterprise Manager] をクリックします。

    注

    • SQL Server Enterprise Manager で、SQL Server が実行されていることを確認します。SQL Server が実行されている場合は、[Enterprise Manager] ウィンドウのアイコンが緑色を示しています。実行されていない場合は、SQL Server のコンピュータ名をマウスの右ボタンでクリックし、[開始] をクリックします。
  2. ノードを展開して、次のパスを開きます。\Microsoft SQL Servers\SQL Server グループ\SQL Server Name\Databases

  3. 削除するデータベースを右クリックし、[すべてのタスク] をクリックします。次に、[データベースのデタッチ] をクリックします。[データベースのデタッチ] ダイアログ ボックスで、[消去] をクリックし、[OK] をクリックします。削除するデータベースすべてについて、この手順を繰り返します。

    最初にデータベースを切り離すことにより、接続文字列を切断できます。

  4. サイトで使用されているデータベースをマウスの右ボタンでクリックし、[削除] をクリックします。

サイトの OLAP データベースを削除するには

  1. [スタート] ボタンをクリックして [プログラム] をポイントし、[Microsoft SQL Server] をポイントします。次に、[Analysis Services] をポイントして [分析マネージャ] をクリックします。

  2. ノードを展開して、次のパスを開きます。\Analysis Servers\SQL Server Name

  3. 削除するデータベースをマウスの右ボタンでクリックし、[削除] をクリックします。

  4. 削除するデータベースごとに [はい] をクリックし、フォルダの削除を確認します。

  5. 削除するデータベースごとに 3. と 4. を繰り返します。

サイトの仮想ディレクトリを削除するには

  1. [スタート] ボタンをクリックし、[管理ツール] をポイントします。次に [インターネット サービス マネージャ] をクリックします。

  2. ノードを展開して、次のパスを開きます。\<コンピュータ名>\<IIS Web サイト名>

  3. 削除する仮想ディレクトリ (Retail や Supplier など) をマウスの右ボタンでクリックし、[削除] をクリックします。

  4. 削除する仮想ディレクトリごとに [はい] をクリックします。

  5. 削除する仮想ディレクトリごとに 3. と 4. を繰り返します。

サイトのフォルダとファイルを削除するには

  1. Windows エクスプローラで、サイトのファイルがインストールされているディレクトリ (C:\Inetpub\wwwroot など) を表示します。

  2. 削除するフォルダをマウスの右ボタンでクリックし、[削除] をクリックします。

  3. 削除するフォルダごとに [はい] をクリックします。

  4. 削除するフォルダごとに 2. と 3. を繰り返します。

ダイレクト メーラー ジョブを削除するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、インストールされているデータベースに応じて [Microsoft SQL Server] または [Microsoft SQL Server 7.0] をポイントし、[Enterprise Manager] をクリックします。

  2. ノードを展開して、次のパスを開きます。\Microsoft SQL Servers\SQL Server Group\SQL Server Name\Management\SQL Server Agent\Jobs

  3. SQL Server Enterprise Manager の右側のウィンドウにダイレクト メーラー ジョブが表示されます。

  4. 削除するダイレクト メーラー ジョブを選択し、ツール バーの [削除] をクリックします。

関連項目

Commerce Server をアンインストールする

サイトからリソースを削除する

サイトからアプリケーションを削除する

アプリケーションから Web サーバーを削除する


Commerce アプリケーションと Web サーバーの管理

ここでは、アプリケーションと Web サーバーを追加および管理する方法について説明します。これらの手順を実行する前に、Commerce Server をインストールし、サイトをアンパッケージしておく必要があります。

ここでは、次のトピックについて説明します。

  • サイトにアプリケーションを追加する サイトにアプリケーションを追加する方法について説明します。

  • アプリケーションを構成する アプリケーションを構成する方法について説明します。

  • アプリケーションに Web サーバーを追加する アプリケーションに最初の Web サーバーを追加する方法について説明します。

  • 別の Web サーバーを追加する アプリケーションにさらに Web サーバーを追加する方法について説明します。

  • Web サーバーを構成する Web サーバーを構成する方法について説明します。

  • アプリケーションの名前を変更する Commerce Server でのアプリケーション名の付け方と、アプリケーション名の変更方法について説明します。

  • メモリからアプリケーションをアンロードする メモリからアプリケーションをアンロードする方法について説明します。

  • サイトからアプリケーションを削除する サイトからアプリケーションを削除する方法について説明します。

  • アプリケーションから Web サーバーを削除する アプリケーションから Web サーバーを削除する方法について説明します。

  • Web サーバーを自動的に追加する Web サーバーがアプリケーションに自動的に追加されるしくみについて説明します。

  • 非 Commerce のアプリケーションと Web サーバーを追加する Commerce Server コンポーネントを使用しないアプリケーションと Web サーバーを追加する方法について説明します。


サイトにアプリケーションを追加する

アプリケーションとは、Web サイトのことです。アプリケーションは、Web クライアントがアクセスする Web アドレスを表しています。Commerce Server にアプリケーションを追加すると、そのアプリケーションの構成データを使って、管理データベースが更新されます。アプリケーションに Web サーバーを追加すると、Web サーバー コンピュータに Active Server Pages (ASP) ファイルがインストールされます。

Commerce Server サイトのアンパッケージでは、通常、2 つのアプリケーションがインストールされます。1 つはユーザーがアクセスする Web サイト用のアプリケーションで、もう 1 つはそのサイトの管理に使用する Commerce Server ビジネス デスク用のアプリケーションです。アプリケーションが使用できるのは、そのアプリケーションが属する Commerce サイトのリソースだけです。

アプリケーションにはそれぞれ独自の Web サーバーがあり、Web サーバーは Web サイト用の ASP ページのコンテンツを提供します。複数の Web サーバーが含まれているアプリケーションもありますが、どのアプリケーションにも少なくとも 1 つの Web サーバーが含まれています。アプリケーションは、IIS Web サイトのルート レベル、またはルートの下の任意レベルの仮想ディレクトリに設定できます。

注

  • 次の手順でサイトを追加するには、サイトに追加するアプリケーションを含むパッケージ ファイルをあらかじめ作成しておくか、またはソリューション サイトを使います。パッケージ ファイルを作成する手順については、「サイト パッケージャを使う」を参照してください。

サイトにアプリケーションを追加するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション] をクリックし、[アプリケーション] をマウスの右ボタンでクリックします。次に [新規] をポイントし、[アプリケーションの追加] をクリックします。

    [アプリケーションの追加元] ダイアログ ボックスが表示されます。

  3. サイトに追加するアプリケーションが含まれているパッケージを選択し、[開く] をクリックします。

    Commerce Server サイト パッケージャが起動します。

  4. [アプリケーションの選択] ダイアログ ボックスで、アンパッケージのためのアプリケーションが選択されていることを確認し、[次へ] をクリックします。

  5. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスで、IIS アプリケーションのパスと仮想ディレクトリが正しいことを確認し、[次へ] をクリックします。

  6. [アンパックが完了しました] ダイアログ ボックスで、作成された SQL データベースと IIS アプリケーションの一覧を確認します。サイト パッケージャの実行中に発生したイベントの一覧を参照するには、[ログ ファイルの表示] をクリックします。

  7. サイト パッケージャを閉じるには、[終了] をクリックします。

アプリケーションを追加したら、アプリケーションの保護なしのホスト名 (または保護付きのホスト名) を ドメイン ネーム システム (DNS) サーバーに設定されているドメイン名 (www.microsoft.com など) に変更する必要があります。詳細については、「アプリケーションの名前を変更する」を参照してください。

関連項目

アプリケーションの名前を変更する

アプリケーション

サイト パッケージャを使う

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする


アプリケーションを構成する

アプリケーションを構成するときは、そのアプリケーションで使用するすべての Web サーバーに適用されるプロパティを指定します。

Web サーバーをアプリケーションに追加すると、一部のプロパティは自動的にインターネット インフォメーション サービス (IIS) 5.0 から読み込まれ、管理データベースに格納されます。IIS 側のプロパティを変更した場合は、管理データベースを IIS メタベースと同期させる必要があります。それには、Commerce Server マネージャを使って手動で新しいプロパティを更新するか、またはアプリケーションの [プロパティ] ダイアログ ボックスを表示し、[Web サーバー] タブの [値の同期] をクリックします。

重要

  • [値の同期] ボタンをクリックすると、アプリケーション レベルのプロパティと、そのアプリケーションの下にあるすべての Web サーバー オブジェクトのプロパティが同期します。アプリケーション レベルのプロパティ (伝送制御プロトコル (TCP) ポートと Secure Sockets Layer (SSL) ポート) については、最初の Web サーバーのプロパティの値が読み込まれます。Web サーバーはすべて同じ設定になっていると見なされます。Web ファームのサーバーはすべて同じ設定でなければ正常に動作しないからです。

アプリケーションの保護なしのホスト名 (または保護付きのホスト名) を、ドメイン ネーム システム (DNS) サーバーに設定されているドメイン名 (microsoft.com など) に変更する方法については、「アプリケーションの名前を変更する」を参照してください。

アプリケーションを構成するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、設定するアプリケーションをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [<アプリケーション> のプロパティ] ダイアログ ボックスの [全般] タブで、次の操作を行います。
    項目 | 操作
    [保護なしのホスト名] アプリケーションの保護なしのリンクで使用する DNS ドメイン名を入力します。

    注意

    • 80 以外のポート番号を使用している場合は、保護なしのホスト名の末尾にそのポート番号を追加する必要があります。たとえば、「www.microsoft.com:81」とします。現在使用中のポート番号は、[Web サーバー] タブの [TCP ポート] ボックスに表示されています。
    [IIS アプリケーション パス] | IIS アプリケーションのパスを入力します。
    [HTTPS を有効にする] | アプリケーションの保護付きの HTTP ホスト (SSL) へのリンクを有効にするには、このプロパティを選択します。
    [保護付きのホスト名] アプリケーションの保護付きのリンクで使用する DNS ドメイン名を入力します。

    注意

    • 443 以外のポート番号を使用している場合は、保護付きのホスト名の末尾にそのポート番号を追加する必要があります。たとえば、「www.microsoft.com:441」とします。現在使用中のポート番号は、[Web サーバー] タブの [SSL ポート] ボックスに表示されています。
    [自動 cookie] | 匿名ユーザー用の cookie を生成する場合には、このプロパティを選択します。このプロパティは、アンパッケージ時に設定されます。サイトに認証を設定する方法については、「CS 認証リソースの管理」を参照してください。
    [認証フィルタ] 使用する認証フィルタの種類をドロップダウン リストから選択します。次の種類があります。
    • [フィルタなし]

    • [Windows 認証]

    • [カスタム認証]

    サイトに認証を設定する方法については、「CS 認証リソースの管理」を参照してください。
    [アプリケーションに cookie のパスを設定] | サイト内のアプリケーション間で cookie を共有する場合には、このオプションを選択します。
    [共有ドメイン レベルの数] | cookie を共有する必要があるドメイン レベルのアプリケーションの数を指定します。たとえば、premier.microsoft.com と msn.microsoft.com で microsoft.com という cookie を共有する場合には、このオプションの値を 2 に設定します。

  4. [Web サーバー] タブの [値の同期] をクリックして、IIS から Commerce Server 管理データベースに次のプロパティをコピーします。

    重要

    • [値の同期] をクリックすると、アプリケーション レベルのプロパティと、そのアプリケーションの下にあるすべての Web サーバー オブジェクトのプロパティが同期します。アプリケーション レベルのプロパティ (TCP ポートと SSL ポート) については、最初の Web サーバーのプロパティの値が読み込まれます。Web サーバーはすべて同じ設定になっていると見なされます。Web ファームのサーバーはすべて同じ設定でなければ正常に動作しないからです。

    または、次の操作を行います。

    項目 | 操作
    [IIS Web サイト] | IIS Web サイトの名前 (Default Web Site など) を入力します。
    [TCP ポート] | 既定値は 80 です。80 以外の値にする場合は、[全般] タブの [保護なしのホスト名] ボックスに設定値を入力する必要があります。たとえば、「www.microsoft.com:81」と入力します。
    [SSL ポート] | 既定値は 443 です。443 以外の値にする場合は、[全般] タブの [保護付きのホスト名] ボックスに設定値を入力する必要があります。たとえば、「www.microsoft.com: 441」と入力します。
    [ローカル ドメイン] | ローカル ドメインの名前 (microsoft.com など) を入力します。

  5. [OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

管理に関する基本

Web サーバーを構成する

CS 認証リソースの管理

アプリケーションの名前を変更する


アプリケーションに Web サーバーを追加する

アプリケーションに Web サーバーを追加する場合、そのアプリケーションの .asp、.htm、.gif などのファイルを Web サーバー コンピュータに追加することになります。Web サーバー コンピュータには、インターネット インフォメーション サービス (IIS) 5.0 と Commerce Server がインストールされていなければなりません。

アプリケーションに Web サーバーを追加するには、Commerce Server サイト パッケージャを使います。Web サーバーをアプリケーションに追加すると、Commerce Server マネージャのアプリケーション ノードの下に、Commerce Web サーバー オブジェクトが表示されます。Web サーバー オブジェクトには、サーバー名、インターネット プロトコル (IP) アドレス、ログ ファイルのパス、ログ記録の間隔など、データ ウェアハウスにログ ファイルをインポートするために必要となるプロパティが含まれています。これらのプロパティは、Commerce Web サーバー オブジェクトをアプリケーションに追加するときに、IIS から自動的に読み込まれます。

新しい Web サーバーは、サイト パッケージャを使わずにアプリケーションに追加することもできます。サイト パッケージャの代わりに、Application Center Server を使って Commerce Server ファイルを Web サーバーに配置するか、手動で Commerce Server ファイルを Web サーバーにコピーします。詳細については、「サイト パッケージャを使わずに Web サーバーを追加する」を参照してください。

注

  • アンパッケージ先のコンピュータに対する権限を持っていることを確認してください。

  • 次の手順でアプリケーションに Web サーバーを追加するには、そのアプリケーションの ASP ファイルが含まれているパッケージ ファイルをあらかじめ作成しておくか、またはソリューション サイトを使います。パッケージ ファイルを作成する手順については、「サイト パッケージャを使う」を参照してください。

アプリケーションに Web サーバーを追加するには

  1. アプリケーションに追加する Web サーバー コンピュータで、[Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション] を展開し、Web サーバーを追加するアプリケーションの名前をクリックします。次に、アプリケーションをマウスの右ボタンでクリックします。[新規作成] をポイントし、[Web サーバーの追加] をクリックします。

    [Web サーバーの追加元] ダイアログ ボックスが表示され、Commerce Server サイト パッケージャ ファイル (拡張子が .pup のファイル) の一覧が示されます。

  3. [Web サーバーの追加元] ダイアログ ボックスで、アンパッケージのためのファイルが含まれるフォルダを開き、ファイルを選択して [開く] をクリックします。

    サイト パッケージャが起動します。

  4. [IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスで、IIS アプリケーションのパスと仮想ディレクトリが正しいことを確認し、[次へ] をクリックします。

    Web サーバー ファイルが Web サーバーに追加され、選択したアプリケーションに Commerce Web サーバー オブジェクトが追加されます。Commerce Server マネージャを開くと、アプリケーションの下に Commerce Web サーバー オブジェクトが表示されます。

  5. [アンパックが完了しました] ダイアログ ボックスで、作成された SQL データベースと IIS アプリケーションの一覧を確認します。Pup.log ファイルのイベントの一覧を参照するには、[ログ ファイルの表示.] をクリックします。

  6. サイト パッケージャを閉じるには、[終了] をクリックします。

関連項目

管理に関する基本

Web サーバーを構成する

別の Web サーバーを追加する


別の Web サーバーを追加する

アプリケーションにほかの Web サーバーを追加する場合、すべての Web サーバーが同じ構成である必要があるため、アンパッケージ処理時にアプリケーションの構成情報を変更することはできません。Commerce Server サイト パッケージャは、アプリケーションがインストールされるインターネット インフォメーション サービス (IIS) 5.0 Web サイトの名前と、各 Commerce アプリケーションの IIS アプリケーション パスを表示します。

管理データベースのサイトに既に存在するアプリケーションのアンパッケージを選択すると、Commerce Server サイト パッケージャはそのアプリケーションに Web サーバーを追加するものと見なします。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする

例 B: 非クラスタ構成の 3 台のコンピュータにインストールする

アプリケーションに Web サーバーを追加する


Web サーバーを構成する

Commerce Server マネージャに表示される Commerce Web サーバー オブジェクトには、データ ウェアハウスにログ ファイルをインポートするために必要となるプロパティが含まれています。Web サーバーをアプリケーションに追加すると、これらのプロパティは自動的にインターネット インフォメーション サービス (IIS) 5.0 から読み込まれ、管理データベースに格納されます。

Web サーバーを構成するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、構成する Web サーバーが含まれているアプリケーションを展開します。Web サーバー オブジェクトをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [プロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    サーバー名 | Web サーバーがインストールされているコンピュータの名前を入力します。サーバー名を変更した場合にだけ、この値を変更してください。
    IP アドレス | このボックスには、Web サーバーのインターネット プロトコル (IP) アドレスが表示されます。この値は、最初は IIS から読み込まれます。
    ログ ファイル パス | IIS Web サイトで発生したイベントが記録されるログ ファイルのパスを入力します。たとえば、「C:\Winnt\System32\LogFiles\Log1」とします。この値は、最初は IIS から読み込まれます。
    ログ ファイル出力期間 | ドロップダウン リストからログ ファイル出力期間を選択します。ログ ファイル出力期間とは、IIS Web サイトが同一のログ ファイルにデータを追記し続ける期間です。この期間を過ぎると、データは新規ファイルに書き込まれます。この値は、最初は IIS から読み込まれます。

  4. [OK] をクリックします。

関連項目

Web サーバー

アプリケーションを構成する

非 Commerce のアプリケーションと Web サーバーを追加する


アプリケーションの名前を変更する

アプリケーションの保護なしのホスト名 (または保護付きのホスト名) は、ドメイン ネーム システム (DNS) サーバーに設定されているドメイン名 (www.microsoft.com など) に変更しなければなりません。Commerce Server は、DNS サーバーからドメイン名を自動的に読み込みませんが、その代わりにコンピュータ名を既定のドメイン名として使います。次の手順で、Commerce Server にドメイン名を付与する必要があります。

アプリケーションの名前は、初めてサイトをアンパッケージしたときに、コンピュータ名 (Server1 など) と、アンパッケージ時に指定したインターネット インフォメーション サービス (IIS) 5.0 のアプリケーション パス (/msn など) をつなげた形で付けられます。したがって、アプリケーション名は Server1/msn のようになります。

サイトの各アプリケーションについて、アプリケーションの名前をドメイン名を基に変更する必要があります。www.microsoft.com/msn というアプリケーションの場合、ドメイン名が www.microsoft.com で、IIS アプリケーション パスが /msn です。

アプリケーションの名前を変更するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、名前を変更するアプリケーションをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [<サイト> のプロパティ] ダイアログ ボックスの [全般] タブで、次の操作を行います。
    項目 操作
    [保護なしのホスト名] ドメイン名を入力します。DNS サーバーに表示される名前と同じにします (たとえば、「www.microsoft.com」 などに変更します)。

    注意

    • 80 以外のポート番号を使用している場合は、保護なしのホスト名の末尾にそのポート番号を追加する必要があります。たとえば、「www.microsoft.com:81」とします。現在使用中のポート番号は、[Web サーバー] タブの [TCP ポート] ボックスに表示されています。
    [IIS アプリケーション パス] IIS アプリケーションのパスを入力します。たとえば、www.microsoft.com/msn というアプリケーションの場合、IIS アプリケーション パスは /msn になります。

    注意

    • このプロパティの値を変更した場合は、変更後の値に合わせて、Web サーバー上のファイルの場所を変更する必要があります。また、IIS の設定も、変更後のアプリケーションに合わせる必要があります。

  4. [OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、サイトの IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

管理に関する基本


メモリからアプリケーションをアンロードする

Commerce Server の各サイトは、インターネット インフォメーション サービス (IIS) 5.0 の下にあるアプリケーションです。Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、IIS アプリケーションを各 Web サーバーのメモリからアンロードする必要があります。Commerce Server の global.asa で作成されたキャッシュは解放されます。次回サイトへの訪問者があったときに、リソースのプロパティが再び読み込まれ、キャッシュにロードされます。

メモリからアプリケーションをアンロードすることと、IIS を再起動すること、または IISReset コマンドを使うこととは異なります。アプリケーションのアンロードは、Web サーバーを停止しなくても行うことができます。

次のタスクを実行した後は、アプリケーションをメモリからアンロードする必要があります。

  • グローバル リソースの構成

  • サイト リソースの構成

  • アプリケーション既定の構成の構成

  • アプリケーションの構成

  • アプリケーションの名前の変更

ただし、CS 認証リソースを変更した場合は、IIS を再起動する必要があります。詳細については、「IIS を再起動する」を参照してください。

メモリからアプリケーションをアンロードするには

  1. IIS スナップインで、IIS Web サイトのルート、またはアプリケーションの開始点となるディレクトリを選択します。

  2. ディレクトリ (既定の Web サイトなど) をマウスの右ボタンでクリックし、[プロパティ] をクリックします。次に、[ホーム ディレクトリ] タブをクリックします。

    注

    • [アンロード] ボタンが利用できない場合は、アプリケーションの開始点となるディレクトリが正しく選択されていないか、アプリケーションが既にアンロードされています。
  3. [アンロード] をクリックします。

    「このアプリケーションをアンロードすることでアプリケーション プールにあるすべてのアプリケーションをアンロードすることになります。続行しますか?」というメッセージが表示される場合があります。

  4. メッセージが表示された場合は、[はい] をクリックします。

メモリからアプリケーションがアンロードされます。次回サイトへの訪問者があったときに、アプリケーションがメモリにロードされ、新しいプロパティ値が読み込まれます。

関連項目

IIS を再起動する

グローバル リソースを構成する

サイト リソースを構成する

アプリケーション既定の構成リソースを構成する

アプリケーションを構成する

アプリケーションの名前を変更する


IIS を再起動する

CS 認証リソースが使用するプロパティに変更を加えたときは、インターネット インフォメーション サービス (IIS) 5.0 を停止して再起動する必要があります。CS 認証はグローバル リソースなので、CS 認証を使用しているサイトはすべてメモリからアンロードしなければなりません。

CS 認証リソースで次のいずれかのタスクを実行した場合は、IIS を再起動する必要があります。:

  • CS 認証リソースのプロパティの構成

  • ドメイン/アプリケーションで共有する cookie の有効化

  • 認証フィルタの有効化

  • 認証フィルタの無効化

注

  • IISReset コマンドを使って IIS を再起動しないでください。IISReset コマンドは IIS を停止して再起動しますが、特定の条件下ではInetinfo.exe (W3SVC サービス) を停止して再起動しません。たとえば、W3SVC サービスが自動ではなく手動で起動するように構成されている場合は、IISReset コマンドでは再起動できません。

IIS をリセットするには

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [名前] ボックスに「net stop iisadmin」と入力します。

  3. 「この操作を続行しますか?」というメッセージが表示されたら、「Y」を入力します。

    インターネット インフォメーション サービスが停止します。

  4. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  5. [名前] ボックスに「net start w3svc」と入力します。

    インターネット インフォメーション サービスが起動します。

関連項目

メモリからアプリケーションをアンロードする

CS 認証リソースのプロパティを設定する

ドメイン/アプリケーション間で cookie の共有を有効にする

Retail ソリューション サイトの認証フィルタを有効にする

Supplier ソリューション サイトで認証フィルタを有効にする

認証フィルタを無効にする


サイトからアプリケーションを削除する

サイトからアプリケーションを削除すると、管理データベースからそのアプリケーションのデータが削除されます。Web サーバーのファイルは削除されません。また、インターネット インフォメーション サービス (IIS) 5.0 の設定値も削除されません。

サイトからアプリケーションを削除する前に、そのアプリケーションに関連付けられた Commerce Web サーバーを削除しておく必要があります。Web サーバーを削除する手順については、「アプリケーションから Web サーバーを削除する」を参照してください。

サイトからアプリケーションを削除するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション] を展開し、削除するアプリケーションをクリックします。次に、そのアプリケーションをマウスの右ボタンでクリックし、[削除] をクリックします。

管理データベースからアプリケーションの構成データが削除されます。

関連項目

アプリケーションから Web サーバーを削除する

サイトからリソースを削除する

サイトを削除する


アプリケーションから Web サーバーを削除する

アプリケーションから Web サーバーを削除すると、管理データベースから Commerce Web サーバー オブジェクトが削除されます。インターネット インフォメーション サービス (IIS) 5.0 の設定値および Web サーバー ファイルは削除されません。

Commerce Server ビジネス デスクで使用されている Web サーバーを削除すると、ユーザーはその Web サーバー内のサイトを管理できなくなります。

アプリケーションから最後の Web サーバーを削除した後でも、そのアプリケーションは Commerce Server マネージャに引き続き表示されます。

アプリケーションから Web サーバーを削除するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション] を展開し、Commerce Web サーバー オブジェクトを削除するアプリケーションの名前を展開します。次に、目的の Web サーバー オブジェクトをマウスの右ボタンでクリックし、[削除] をクリックします。

アプリケーションから Commerce Web サーバー オブジェクトが削除され、Web サーバーがアプリケーションの下に表示されなくなります。必要に応じて、削除した Web サーバーや別の Web サーバーを、削除元のアプリケーションに追加できます。

関連項目

Web サーバー

アプリケーションに Web サーバーを追加する

Commerce Server をアンインストールする


Web サーバーを自動的に追加する

Web サーバーを新規に作成するには、Microsoft Application Center 2000 を使って Commerce Server ファイルを Web サーバーに配置するか、Commerce Server サイト パッケージャを使う代わりに手動で Commerce Server ファイルを Web サーバーにコピーします。Commerce Server ソリューション サイトには、global.asa のコードが含まれています。このコードを使うと、Web サーバーをアプリケーションに自動的に追加できます。

新規の Web サーバーで、ユーザーがその Web サーバーに接続したり負荷を平衡化したりすると、Commerce Server アプリケーションが初めて起動します。これにより global.asa が起動すると、この Web サーバーは管理データベースに自動的に追加されます。この Web サーバーは、サイトで必要なプロパティを管理データベースから読み込みます。

追加された Web サーバーは、Commerce Server マネージャに表示され、管理できるようになります。


非 Commerce のアプリケーションと Web サーバーを追加する

Commerce Server マネージャを使って、Commerce Server コンポーネントを使用しないアプリケーションと Web サーバーを追加できます。Commerce Server コンポーネントを使用しないアプリケーションと Web サーバーを追加する目的は、Web サーバーのログ ファイルをデータ ウェアハウスにインポートできるようにすることです。

サイトに非 Commerce のアプリケーションを追加するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション] をクリックし、[アプリケーション] をマウスの右ボタンでクリックします。次に、[Commerce アプリケーション以外を追加] をクリックします。

  3. [Commerce 以外のアプリケーションの新規作成] ダイアログ ボックスの [全般] タブで、次の操作を行います。
    項目 | 操作
    [このアプリケーションの Web サーバーは IIS を実行している] | Commerce 以外のアプリケーションのサーバーがインターネット インフォメーション サービス (IIS) 5.0 を実行している場合は、このチェック ボックスをオンにします。非 Commerce アプリケーションに、IIS および非 IIS の両方のサーバーを置くことはできません。
    [保護なしのホスト名] アプリケーションの保護なしのリンクで使用するドメイン ネーム システム (DNS) のドメイン名を入力します。

    注意

    • 80 以外のポート番号を使用している場合は、サーバー名の末尾にそのポート番号を追加する必要があります。たとえば、「www.microsoft.com:81」とします。現在使用中のポート番号は、[Web サーバー] タブの [TCP ポート] ボックスに表示されています。
    [IIS アプリケーション パス] または [アプリケーション パス] | アプリケーションのパスを入力します。
    [HTTPS を有効にする] | アプリケーションで保護付きのリンクが使用されている場合は、このプロパティを選択します。
    [保護付きのホスト名] アプリケーションの保護付きのリンクで使用する DNS ドメイン名を入力します。

    注意

    • 443 以外のポート番号を使用している場合は、サーバー名の末尾にそのポート番号を追加する必要があります。たとえば、「www.microsoft.com: 441」とします。現在使用中のポート番号は、[Web サーバー] タブの [SSL ポート] ボックスに表示されています。

  4. [Web サーバー] タブで、次の操作を行います。
    項目 | 操作
    [IIS Web サイト] | IIS Web サイトの名前 (Default Web Site など) を入力します。
    [TCP ポート] | 伝送制御プロトコル (TCP) ポート (通常は「80」) を入力します。80 以外の値にする場合は、[全般] タブの [保護なしのホスト名] ボックスに設定値を入力する必要があります。たとえば、「www.microsoft.com:81」と入力します。
    [SSL ポート] | Secure Sockets Layer (SSL) ポート (通常は「443」) を入力します。443 以外の値にする場合は、[全般] タブの [保護付きのホスト名] ボックスに設定値を入力する必要があります。たとえば、「www.microsoft.com:441」と入力します。
    [ローカル ドメイン] | ローカル ドメインの名前 (microsoft.com など) を入力します。

  5. [OK] をクリックします。

アプリケーションに非 Commerce の Web サーバーを追加するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトを展開します。

  2. [アプリケーション] を展開し、Web サーバーの追加先となる非 Commerce アプリケーションの名前をクリックします。次に、アプリケーション名をマウスの右ボタンでクリックして [新規作成] をポイントし、[Commerce Web サーバー以外を追加] をクリックします。

  3. [プロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    サーバー名 | 非 Commerce の Web サーバーが搭載されているコンピュータの名前を入力します。
    IP アドレス | 非 Commerce の Web サーバーのインターネット プロトコル (IP) アドレスを入力します。
    ログ ファイル パス | 非 Commerce の Web サーバーで発生したイベントが記録されるログ ファイルのパスを入力します。たとえば、「C:\Winnt\System32\LogFiles\Log1」とします。
    ログ ファイル出力期間 | ドロップダウン リストからログ ファイル出力期間を選択します。ログ ファイル出力期間とは、非 Commerce の Web サーバーが同一のログ ファイルにデータを追記し続ける期間です。この期間を過ぎると、データは新規ファイルに書き込まれます。

  4. [OK] をクリックします。

関連項目

CS 認証リソースの管理

cookie と認証


Commerce Server の保守

ここでは、次のトピックについて説明します。

  • Commerce Server をバックアップおよび復元する Commerce Server をバックアップする方法と復元する方法について説明します。

  • SQL データベースをバックアップおよび復元する バックアップと復元を効果的に行う方法と、バックアップ操作における制限事項について説明します。

  • ミッション クリティカルな環境でバックアップと復元にかかる時間を最小限に抑える バックアップと復元にかかる時間を最小限に抑える方法と、データベース バックアップを復元する方法について説明します。


Commerce Server をバックアップおよび復元する

Commerce Server の設定は、変更するたびにバックアップしておくことをお勧めします。バックアップしておくと、ハードウェアやソフトウェアに障害が発生しても、前の状態に簡単に戻すことができます。

Commerce Server をバックアップするには

  1. SQL Enterprise Manager を使って、SQL Server データベースをバックアップします。

  2. Microsoft Windows 2000 Backup Wizard を使って、インターネット インフォメーション サービス (IIS) 5.0 メタベースをバックアップします。

  3. Backup Wizard を使って、レジストリをバックアップします。

  4. Backup Wizard を使って、Commerce Server ファイルをバックアップします。

  5. Commerce Server サイト パッケージャを使って、Commerce Server サイトをパッケージ化します。

Commerce Server を復元するには

  1. Backup Wizard を使って、IIS メタベースを復元します。

  2. Windows 2000 Restore Wizard を使って、レジストリを復元します。

  3. Restore Wizard を使って、Commerce Server ファイルを復元します。

  4. Commerce Server サイト パッケージャを使って、Commerce Server サイトとリソースをアンパッケージします。

関連項目

サイト パッケージャを使う

サイトをバックアップする

SQL データベースをバックアップおよび復元する

ミッション クリティカルな環境でバックアップと復元にかかる時間を最小限に抑える


SQL データベースをバックアップおよび復元する

データベース バックアップを作成する場合、データベース内のデータだけがバックアップ ファイルにコピーされ、データベース内の未使用の領域はコピーされません。したがって、データベース バックアップは、データベース自体よりもサイズが小さくなるのが一般的です。データベース バックアップの見積りサイズは、sp_spaceused システム ストアド プロシージャを使って求めることができます。予約済みの値が見積りサイズです。

Microsoft SQL Server は、データベースのバックアップ時にトランザクション ログを切り捨てません。したがって、データベース バックアップを作成するときは、データベース内のチェックポイントごとにトランザクション ログが自動的に切り捨てられるようにすることをお勧めします。そのためには、trunc. log on chkpt. データベース オプションを True に設定します。この設定により、トランザクション ログの容量が不足することを避けることができます。容量不足になった場合には、手動でトランザクション ログを切り捨てる必要があります。

データベース バックアップだけを作成する場合は、バックアップの間隔を適切な長さに設定します。目安としては、バックアップ作業が生産性に影響を与えない程度に長く、しかも相当量のデータを損失しない程度に短くします。重要なデータがなく、データの変更頻度も少ないデータベースであれば、週に 1 度または隔週に 1 度のバックアップで十分です。重要なデータが多く、データの変更頻度も多いデータベースであれば、日に 1 度かそれ以上の頻度でバックアップすることをお勧めします。通常読み取り専用になっているデータベースであれば、定期的に新規データで更新した後にだけバックアップすることをお勧めします。

また、データベース バックアップは同じものを複数個作成しておいた方が賢明です。バックアップ専用のメディアをいくつか用意して、データベースの複数のバージョンを復元できるようにすることをお勧めします。これにより、しばらく検出されないような誤った変更をユーザーが加えた場合にも対処できます。また、最新のバックアップ メディアが損傷しても、それ以前のバックアップの状態に戻すことができます。

バックアップの制限事項

SQL Server では、データベースがオンラインで使用中のときでも、バックアップ操作を行うことができます。ただし、データベースをバックアップしている間は、次の操作を行うことができません。

  • データベース ファイルの作成と削除

  • インデックスの作成

  • ログに記録されない操作の実行

  • データベースまたはデータベース ファイルの自動または手動による縮小

上記のいずれかの操作を実行しているときは、バックアップの操作を始めようとしても直ちに終了します。バックアップの操作を実行しているときに上記のいずれかの操作を始めようとしても、その操作は失敗し、バックアップの操作が続けられます。

データベース バックアップを復元する

データベース バックアップを復元すると、データベースはそのバックアップが作成された時点の状態に戻ります。SQL Server は、データベースを復元するときに、データベースとそれに関連付けられたすべてのファイルを自動的に再作成します。その手順は次のとおりです。

  • バックアップのデータをすべてデータベースにコピーします。データベースの残りの部分は、空き領域として作成します。

  • データベース バックアップに未完了のトランザクション (バックアップ操作が完了した時点でまだ完了していなかったトランザクション) があれば、そのトランザクションをロールバックして (取り消して)、データベースの一貫性を保ちます。

この処理により、未完了のトランザクションがすべてロールバックされた点を除けば、復元されたデータベースはバックアップ操作が完了した時点のデータベースと同じものになります。このロールバックは、データベースの整合性を復元するために必要な操作です。

また、データベースを誤って上書きするのを避けるため、復元操作では安全確認を自動的に実行できます。復元操作が失敗するのは、次の場合です。

  • 復元操作で指定したデータベースがサーバー上に存在するのに、データベース名がバックアップ セットに記録されたデータベース名と一致しない。

  • 復元操作で指定したデータベースがサーバー上に存在するのに、そのデータベースがデータベース バックアップに収められたデータベースと同じものではない。たとえば、両者のデータベース名が同じでも、それぞれのデータベースが別個に作成された場合。

  • 復元操作で 1 つまたは複数のファイルを自動的に作成する必要がある (データベースが既に存在するかどうかにかかわらず) が、それらと同じ名前のファイルが既に存在する。

復元操作の目的が別のデータベースを上書きすることである場合、以上の安全確認を無効にすることができます。

中断したバックアップ操作と復元操作

バックアップ操作または復元操作が中断された場合 (サーバーの電源が切断された場合など) は、中断した時点からバックアップ操作または復元操作を再開できます。この機能は、大規模なデータベースを複数のサーバーに復元する処理を自動化している場合に役立ちます。自動化した処理が復元操作の終わり近くで失敗した場合 (電源障害が発生した場合など)、システム管理者は中断した所から復元操作を再開できます。データベース全体を最初から復元し直す必要はありません。

関連項目

ミッション クリティカルな環境でバックアップと復元にかかる時間を最小限に抑える

サイトをバックアップする


ミッション クリティカルな環境でバックアップと復元にかかる時間を最小限に抑える

ミッション クリティカルな環境では、多くの場合、データベースを絶えず使用できる状態にしておく必要があります。少なくとも、中断時間を最小限に抑えて使用可能な時間を長く保たなければなりません。したがって、データベースの復元を要するような不測の事態 (ハードウェア障害など) が発生した場合には、できる限り短い時間でその問題を解決する必要があります。また、ミッション クリティカルなデータベースは大規模になるのが一般的で、ほかのデータベースに比べてバックアップと復元にかかる時間が長くなります。Microsoft SQL Server には、バックアップ操作と復元操作の実行速度を上げるための方法がいくつか用意されています。どちらの操作でも、ユーザーへの影響を最小限に抑えることができます。

  • 複数のバックアップ デバイスを同時に使います。これにより、すべてのデバイスに同時にバックアップを書き込むことができます。同様に、複数のデバイスから同時にバックアップを復元できます。

  • データベース、差分データベース、トランザクション ログの各バックアップを組み合わせて使います。これにより、データベースを障害発生時の状態にするための必要なバックアップの数を最小限に抑えることができます。

  • ファイル、ファイル グループ、トランザクション ログの各バックアップを使います。これにより、操作対象のデータが含まれているファイルだけをバックアップまたは復元できます。データベース全体をバックアップする必要がありません。

SQL データベースのバックアップを作成するには

  1. SQL Server Enterprise Manager で、サーバー グループとサーバーを順に開きます。

  2. [データベース] を展開し、バックアップを作成するデータベースをマウスの右ボタンでクリックします。次に、[すべてのタスク] をポイントし、[データベースのバックアップ] をクリックします。

  3. [全般] タブの [名前] ボックスに、バックアップ セットの名前を入力します。

  4. 必要に応じて、[説明] ボックスに、バックアップ セットの説明を入力します。

  5. [バックアップ] で、[データベース- 全体] を選択します。

  6. [出力先] で、既存のバックアップ デバイスを追加したり、新規のバックアップ デバイスを作成する場合には、[追加] をクリックします。

    バックアップ デバイスの一覧から不要なバックアップ デバイスを削除する場合には、[削除] をクリックします。

  7. [SQL Server バックアップ] ダイアログ ボックスの [上書き] で、次の操作を行います。
    項目 | 操作
    [メディアに追加] | バックアップ デバイス上の既存のバックアップにバックアップを追加します。
    [既存のメディアに上書き] | バックアップ デバイス上の既存のバックアップを上書きします。
    [スケジュール] | 必要に応じて、[スケジュール] を選択してバックアップ操作のスケジュールを設定します。後で実行したり定期的に実行したりすることができます。

  8. 必要に応じて、[オプション] タブをクリックし、次のいずれかのバックアップ オプションを選択します。
    • [完了時にバックアップを検証] バックアップ完了時にバックアップの内容を確認します。

    • [バックアップ後にテープを取り出す] バックアップ操作が完了したらテープを取り出します。これは、テープ デバイスにのみ有効です。

    • [メディア名とバックアップ セットの有効期限を確認] 誤って上書きされるのを防ぐため、バックアップ メディアをチェックします。[メディア セット名] ボックスに、バックアップ操作に使用するメディアの名前を入力します。バックアップ セットの有効期限だけを指定するときは、空白のままにしておきます。
  9. 初めて使用するバックアップ メディアの場合、または既存のメディアのラベルを変更したい場合は、[メディア セット ラベル] の [メディアの初期化とラベルの設定] を選択し、メディア セットの名前とその説明を入力します。メディアを上書きする場合には、そのメディアを初期化してラベルを変更します。

関連項目

サイトをバックアップする


CS 認証リソースの管理

Microsoft Commerce Server 2000 サイトの認証方法を確立または変更するには、Commerce Server CS 認証リソースを使います。サイト開発者は、認証方法の確立、サイトのパッケージ化、およびパッケージ化されたサイトのアンパッケージを行うことができます。サイトのアンパッケージ後、CS 認証リソースを使って、その認証方法の設定を表示または変更できます。

ここでは、次のトピックについて説明します。

  • CS 認証リソースについて CS 認証リソースでサポートされているモードについて説明します。認証マネージャ (AuthManager) オブジェクト、および認証フィルタについて説明します。

  • CS 認証リソースのプロパティを設定する CS 認証リソースを設定する方法と、Commerce Server サイトで設定できるプロパティについて説明します。

  • Windows 認証を有効にする Windows 認証モードを有効にする方法について説明します。

  • カスタム認証を有効にする カスタム認証モードを有効にする方法について説明します。

  • 自動 cookie の生成を有効にする 自動 cookie モードを有効にする方法について説明します。

  • ドメイン/アプリケーション間で cookie の共有を有効にする ドメイン間で cookie の共有を有効にする方法、およびアプリケーション間で cookie の共有を有効にする方法について説明します。

  • ドメイン コントローラにセキュリティ モードを設定する ドメイン コントローラにセキュリティ モードを設定する方法について説明します。

  • 認証フィルタを無効にする CS Authentication リソースのフィルタなしモードと、認証フィルタを無効にする方法について説明します。

  • Retail ソリューション サイトの認証フィルタを有効にする Retail ソリューション サイトの認証フィルタを有効にする方法について説明します。

  • Supplier ソリューション サイトで認証フィルタを有効にする Supplier ソリューション サイトの認証フィルタを有効にする方法について説明します。

  • Retail ソリューション サイト用の Login.asp のコード Retail ソリューション サイト向けの Login.asp のコードを掲載します。

  • Supplier ソリューション サイト用の Login.asp のコード Supplier ソリューション サイト向けの Login.asp のコードを掲載します。

  • Web ファームでプロキシ アカウントをサポートする Windows 認証を使う Login.asp コードを変更して、Web ファームでプロキシ アカウントをサポートする方法について説明します。

  • 新しい暗号化キーを生成する cookie データの暗号化および復号化に使用する新しい暗号化キーを生成する方法について説明します。


CS 認証リソースについて

CS 認証リソースは、グローバル レベルのプロパティを持つ Commerce Server リソースで、Commerce Server マネージャで管理されます。CS 認証リソースを使って、認証の方法を設定したり、cookie の実装方法を指定します。たとえば、CS 認証リソースを使って、自動 cookie 生成の有効化、同じサイトのアプリケーション間での cookie の共有の設定、または固定 cookie の有効期間の決定などを行うことができます。

CS 認証リソースは、次の 2 つの場所で設定します。

  • グローバル レベルで、CS 認証グローバル リソースのプロパティを設定します。これらのプロパティは、すべての Commerce Server サイトで使われます。

  • アプリケーション レベルでは (Commerce Server マネージャのアプリケーションをマウスの右ボタンでクリックします)、特定のアプリケーションだけで使われる認証プロパティを設定します。

各サイトの CS 認証にはグローバル リソース ポインタが含まれます。プロパティはサイト レベルで設定されていません。2 つ以上のサイトで、同じグローバル CS 認証リソースを共有できます。

Commerce Server ソリューション サイトを使ってサイトを開発している場合は、アプリケーション既定の構成リソースの認証プロパティも設定します。これらのプロパティは、CS 認証で使われます。アプリケーション既定の構成プロパティを設定する方法については、「アプリケーション既定の構成リソースを構成する」を参照してください。

認証コンポーネント

認証モード

複数ドメインでのシングル ログイン機能

認証コンポーネント

Commerce Server には、ユーザーの認証と識別を管理するための 2 つのツールが用意されています。認証マネージャ (AuthManager) オブジェクトと認証フィルタ (AuthFilter) です。

  • 認証マネージャ (AuthManager) ユーザーを識別するメソッドと、動的コンテンツへのアクセスを制御するメソッドを公開する Component Object Model (COM) オブジェクトです。たとえば、サイト開発者は、認証マネージャ (AuthManager) オブジェクトの GetUserID メソッドを呼び出して、cookie やクエリ文字列に基づいてユーザーを識別します。詳細については、「CS 認証リソースのプロパティを設定する」を参照してください。

  • 認証フィルタ IIS の Commerce Server アプリケーション レベルで使用される ISAPI フィルタです。認証フィルタは、アプリケーションを訪れているすべてのユーザーに適用できます。認証フィルタの設定は、アプリケーション レベルで行います。詳細については、「アプリケーションを構成する」を参照してください。

認証モード

認証フィルタを使うときに、次の認証モードを選択できます。

  • フィルタなしモード 認証フィルタは有効になりません。

  • Windows 認証 認証フィルタは、Windows 認証を使ってサイトへのアクセスを制御します。Active Directory (またはローカルの Security Access Manager アカウント) に照合して、ユーザーのログインとパスワードを確認します。Windows 認証を使うときに、指定した特定の Active Server Pages (ASP) ページやディレクトリにだけ、ログイン アクセスを要求できます。Windows 認証の使い方については、「Windows 認証を有効にする」を参照してください。

  • カスタム認証 SQL Server データベースやほかの種類のデータベースに照合して、ユーザーのログインとパスワード (MSCSAuth チケット) を確認します。Commerce Server サイトのすべての ASP ページおよびディレクトリで、ログイン アクセスが要求されます。認証フィルタは、Commerce Server サイトの仮想ディレクトリを照合し、Commerce Server 管理データベースを照合して、サイトでカスタム認証が有効であるかどうかを決定します。MSCSAuth チケットが有効でない場合、認証フィルタはユーザーにログイン情報を入力するよう要求します。

    カスタム認証を使う場合、Commerce Server サイトのすべての ASP ページおよびディレクトリで、ログイン アクセスが要求されます。カスタム認証の使い方については、「カスタム認証を有効にする」を参照してください。

  • 自動 cookie モード ゲスト ユーザー用のチケットが含まれている cookie を自動的に生成できます (匿名ユーザーが MSCSProfile チケットを取得すると、ユーザーはゲスト ユーザーになります)。MSCSProfile チケットを使うと、ゲスト ユーザーの行動やサイトの使用に関するプロファイル データを収集できます。

    自動 cookie モードおよびフィルタなしモードを選択した場合、登録済みユーザーは存在しません。

    自動 cookie と、Windows 認証モードまたはカスタム認証モードのいずれかを選択している場合 (混合モード) は、ゲスト ユーザーが登録するときに固定 cookie を更新できます。したがって、ユーザーがゲストである間に収集されたプロファイル データが失われることはありません。自動 cookie モードを使うには、「自動 cookie の生成を有効にする」を参照してください。

混合モードを有効にする場合、認証フィルタは次のチケットを生成します。

  • ユーザーがサイトに最初にログインするときに、MSCSProfile チケットを生成します。

  • ユーザーが認証された場合は、MSCSAuth チケットが生成されます。このチケットには、ユーザー ID が含まれます。MSCSAuth チケットを使ってアクセス制御を行うことができます。

  • ユーザーが認証されなかった (MSCSAuth チケットがない) 場合、MSCSProfile チケットはそのユーザーが匿名であるとみなします。

複数ドメインでのシングル ログイン機能

CS 認証リソースでは、複数ドメインでのシングル ログイン機能が提供されます。複数ドメインでのシングル ログイン機能を提供するには、ドメイン間で cookie を共有する必要があります。cookie の共有は、ドメインのサブ ドメイン名が共通である場合にだけ機能します。たとえば、premier.microsoft.com と msn.microsoft.com は、microsoft.com のドメイン名で cookie を共有できます。

しかし、microsoft.com と microsoft.uk などの 2 つのドメインでは、シングル ログイン機能はサポートされません。サブドメイン名が異なるため cookie を共有できません。この場合、ユーザーはドメインを切り替えるときに再度ログインを要求されます。パスポート統合の詳細については、「Passport と統合する」を参照してください。

複数ドメインでのシングル ログイン機能を使うには、2 つの認証プロパティをサイト レベルで設定します。アプリケーションに cookie のパスを設定、および共有ドメイン レベルの数の 2 つのプロパティです。共有ドメイン レベルの数を 2 以上に設定し、同じトップ レベルの名前を共有するドメインを使う必要があります。たとえば、msn.microsoft.com と premier.microsoft.com などを使います。これらの認証プロパティの設定方法については、「アプリケーションを構成する」を参照してください。

関連項目

セキュリティの計画

サイト セキュリティとフィルタを使用する

Windows 認証を有効にする

カスタム認証を有効にする

自動 cookie の生成を有効にする

サイト セキュリティ オブジェクト

AuthManager オブジェクト


CS 認証リソースのプロパティを設定する

グローバルな CS 認証リソースのプロパティを表示および編集できます。

注

  • 認証プロパティの多くは、サイト レベルで設定します。サイト レベルの認証プロパティを設定する方法については、「アプリケーションを構成する」を参照してください。

  • 次の認証プロパティは、アプリケーション既定の構成リソースで設定されています (サイト チケット オプション、サイト プライバシ オプション、フォーム ログイン オプション、および認証マネージャの認証チケットのタイムアウト)。これらのプロパティは、Commerce Server ソリューション サイトを使ってサイトを開発している場合に適用されます。これらのアプリケーション既定の構成プロパティを設定する方法については、「アプリケーション既定の構成リソースを構成する」を参照してください。

CS 認証リソースのプロパティを設定するには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。

  2. [CS Authentication] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [プロパティ] ボックスで、値を設定するプロパティを選択します。

  4. [選択したプロパティ値] ボックスに設定値を入力し、[OK] をクリックします。

次の表は、Commerce Server サイト向けにグローバル リソース レベルで設定できる CS Authentication リソースのプロパティの一覧です。

プロパティ | 説明
ログイン フォーム ユーザーのログインに使用するフォームの名前です。次の値のいずれかを指定できます。
  • Login.asp ページへの相対パス http://<サーバー> と認証フィルタ ヘルパ フォルダが使用されます。

  • Login.asp ページへの絶対パス

Secure Sockets Layer (SSL) を使う場合は、Login.asp ページへの絶対パスを指定する必要があります。

たとえば、http://www.microsoft.com/authfilter/login.asp とします。
ログイン再試行回数 | ユーザー名とパスワードを再入力できる回数。この回数を超えると、ユーザーは顧客サービス担当者に連絡するように求められます。
パスワード キャッシュ サイズ | 認証フィルタのユーザー パスワード キャッシュにユーザーの資格情報を保存できるユーザーの最大数。このプロパティは、Windows 認証モードでのみ使用できます。
パスワード キャッシュ TTL | 認証資格情報がパスワード キャッシュに保存される時間です (分単位)。このプロパティは、Windows 認証モードでのみ使用できます。
チケットの有効時間 | AuthManager オブジェクトが生成した資格情報の既定の有効期間です。
認証プロファイル名 | プロファイル システムのデータ ソースをパーティション化するときに使用するプロファイル オブジェクトの名前です。既定のスキーマを使う場合、この値は Profile Definitions.UserObject である必要があります。
認証フィルタ ヘルパ フォルダ | 認証フィルタがヘルパ ファイルの格納先として使用するフォルダの名前です。認証フィルタ関連のファイルはすべて、このフォルダにまとめて保存しておく必要があります。既定のサブフォルダは、\AuthFiles です。すべての認証フィルタ ファイルについて、匿名アクセスを有効にしておく必要があります。
エラー フォーム アクセス拒否エラーの発生時に使用するフォームの名前です。次の値のいずれかを指定できます。
  • フォームの相対パス http://<サーバー> と認証フィルタ ヘルパ フォルダが使用されます。

  • フォームの絶対パス
ヘルプ フォーム ログインのヘルプ情報を掲載するフォームの名前です。次の値のいずれかを指定できます。
  • フォームの相対パス http://<サーバー> と認証フィルタ ヘルパ フォルダが使用されます。

  • フォームの絶対パス
内部エラー フォーム 内部エラーの発生時に表示するエラー フォームの名前です。次の値のいずれかを指定できます。
  • フォームの相対パス http://<サーバー> と認証フィルタ ヘルパ フォルダが使用されます。

  • フォームの絶対パス
cookie を使用しないフォーム ブラウザで cookie が有効になっていない場合、または cookie がサポートされいない場合に表示するフォームの名前です。次の値のいずれかを指定できます。
  • フォームの相対パス http://<サーバー> と認証フィルタ ヘルパ フォルダが使用されます。

  • フォームの絶対パス
自動 ookie フォーム 自動 cookie が有効になっているときにリダイレクトされるフォームの名前です。次の値のいずれかを指定できます。
  • フォームの相対パス http://<サーバー> と認証フィルタ ヘルパ フォルダが使用されます。

  • フォームの絶対パス
プロファイル cookie の有効期限 | cookie の有効期限が切れる日付です。
暗号化を有効にする | cookie データの暗号化を有効にし、このプロパティを Commerce サイト レベルで設定します。手順については、「アプリケーションを構成する」を参照してください。
cookie データの暗号化キー | cookie データの暗号化または復号化に使用する暗号化キーです。新しい暗号化キーを生成するには、「新しい暗号化キーを生成する」を参照してください。

注

  • 認証フィルタに関連のあるファイルはすべて、認証フィルタ ヘルパ フォルダ プロパティで指定したフォルダにまとめる必要があります。既定のサブフォルダは、\AuthFiles です。すべての認証フィルタ ファイルについて、匿名アクセスを有効にしておく必要があります。

  • グローバル CS 認証プロパティを変更した後、認証フィルタを使っている場合は、インターネット インフォメーション サービス (IIS) 5.0 を再起動する必要があります。操作手順については、「IIS を再起動する」を参照してください。

  • 認証プロパティをアプリケーション レベルで変更した後、認証マネージャ (AuthManager) を使っている場合は、Refresh() を使うか IIS を再起動して、プロパティ値を更新する必要があります。

関連項目

サイト セキュリティとフィルタを使用する

アプリケーション既定の構成リソースを構成する

サイト セキュリティ オブジェクト

AuthManager オブジェクト


Windows 認証を有効にする

Windows 認証モードを選択すると、認証フィルタは、Active Directory 内のユーザーのアクセス権を照合します。このモードで運営されているサイトにユーザーがログインすると、認証フィルタは、ユーザー名とパスワードをハイパーテキスト転送プロトコル (HTTP) 要求から取得してキャッシュに格納します。また、ユーザー セッションの間だけ有効になる cookie を設定します。この cookie は、ユーザーがユーザー セッションの間に訪れたほかのページでもチェックできます。Windows 認証モードでは、アクセス制御リスト (ACL) によって、Web サイトのリソースに対するアクセスが決定されます。

Windows 認証は、シングル ログインでの Web ファーム シナリオをサポートしています。また、代理人アカウントにも対応しています。シングル ログインの詳細については、「cookie と認証」を参照してください。

注

  • 次の手順では、ローカルにログインするというセキュリティ モードをドメイン コントローラに設定していることを前提としています。この設定方法については、「ドメイン コントローラにセキュリティ モードを設定する」を参照してください。

Windows 認証モードを有効にするには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、操作対象のアプリケーションの名前をマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [プロパティ] ダイアログ ボックスの [全般] タブの [認証フィルタ] ボックスで、[Windows 認証] をクリックし、[OK] をクリックします。

認証フィルタは、資格証明をインターネット インフォメーション サービス (IIS) 5.0 に渡します。IIS は、Active Directory データ ストアに照合して、ユーザーのログインとパスワードの有効性を確認します。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、Web サーバーごとにメモリからアプリケーションをアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

サイト セキュリティとフィルタを使用する

カスタム認証を有効にする

自動 cookie の生成を有効にする

ドメイン/アプリケーション間で cookie の共有を有効にする

サイト セキュリティ オブジェクト

AuthManager オブジェクト


カスタム認証を有効にする

カスタム認証を実装しなければならない場合にも、認証フィルタでカスタム認証をサイトに組み込むことができます。カスタム認証を選択した場合、認証フィルタは有効な MSCSAuth チケットを確認します。有効な MSCSAuth チケットが見つからない場合、ユーザーはログイン ページにリダイレクトされます。このページでは、資格情報を検証し、成功時に MSCSAuth チケットを設定することで、独自のカスタム認証を行うことができます。

たとえば、プロファイル システムを使って、ユーザーのログイン時にユーザー プロファイルからアクセス権を取得できます。プロファイル システムには、データ ソースからユーザー情報を取得するという機能があります。このデータ ソースには、Microsoft SQL Server データベース、Windows 2000 Active Directory のほか、OLE DB 準拠のデータ ソースまたは有効な LDAP バージョン 3 ストアを使用できます。

カスタム認証モードを有効にするには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、操作対象のアプリケーションの名前をマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [プロパティ] ダイアログ ボックスの [全般] タブの [認証フィルタ] ボックスで、[カスタム認証] をクリックし、[OK] をクリックします。

認証フィルタはユーザーの要求を Login.asp ページにリダイレクトし、SQL Server データベースまたはその他のデータ ストアに照合して、ユーザーのログインとパスワードの有効性を確認します。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、Web サーバーごとにメモリからアプリケーションをアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

サイト セキュリティとフィルタを使用する

ドメイン/アプリケーション間で cookie の共有を有効にする

Windows 認証を有効にする

自動 cookie の生成を有効にする

サイト セキュリティ オブジェクト

AuthManager オブジェクト


自動 cookie の生成を有効にする

自動 cookie モードを有効にすると、自動フィルタは固定 cookie (MSCSProfile チケット) を自動的に生成し、ユーザーを匿名ユーザーとして処理します。自動 cookie モードを選択すると、ブラウザにこの匿名 cookie があるかどうかが、認証フィルタで必ずチェックされます。ブラウザに匿名 cookie がない場合、ユーザーは自動 cookie フォームにリダイレクトされます。

自動 cookie モードにより、Commerce Server 2000 は匿名ユーザーの動向を追跡できます。匿名 cookie を持つユーザーが登録した場合でも、そのユーザーの固定 cookie は、Commerce Server で更新できます。したがって、ユーザーが匿名である間に収集されたプロファイル データが失われることはありません。ただし、Commerce Server が固定 cookie を更新するかどうかは、アプリケーションの開発方法に依存します。

自動 cookie モードを有効にするには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、操作対象のアプリケーションの名前をマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [プロパティ] ダイアログボックスの [全般] タブで、[自動 cookie] を選択し、[OK] をクリックします。

匿名ユーザーの固定 cookie が、自動フィルタによって自動的に生成されます。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、Web サーバーごとにメモリからアプリケーションをアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

サイト セキュリティとフィルタを使用する

Windows 認証を有効にする

カスタム認証を有効にする

ドメイン/アプリケーション間で cookie の共有を有効にする

サイト セキュリティ オブジェクト

AuthManager オブジェクト


ドメイン/アプリケーション間で cookie の共有を有効にする

cookie は、ドメイン間で共有できます。cookie を共有するには、ドメインに共通のサブドメイン名が必要です。たとえば、msdn.microsoft.com と premier.microsoft.com は、.microsoft.com に設定されたドメイン プロパティで cookie を共有できます。ドメインを .com には設定できません。

ドメイン間で cookie を共有したくない場合は、アプリケーション間で cookie を共有できます。アプリケーション間で cookie を共有するには、cookie のパス プロパティをアプリケーションに設定します。たとえば、Retail サイトのすべてのアプリケーションで cookie を共有するには、パスを /retail に設定します。同じ仮想ディレクトリを持たないアプリケーション間で cookie を共有するには、パスをルート (/) に設定する必要があります。

ドメイン間で cookie の共有を有効にするには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、設定するアプリケーションをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [共有ドメイン レベルの数] ボックスに、cookie を共有する必要があるドメイン レベルを指定します。たとえば、premier.microsoft.com と msn.microsoft.com で microsoft.com という cookie を共有する場合には、このオプションの値を 2 に設定します。

  4. [OK] をクリックします。

  5. IIS を再起動します。操作手順については、「IIS を再起動する」を参照してください。

注

  • 暗号化を使っている場合は、両方のドメインで暗号化キーが同じであることを確認します。新しい暗号化キーの生成については、「新しい暗号化キーを生成する」を参照してください。

同じサイトのアプリケーション間で cookie の共有を有効にするには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、設定するアプリケーションをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [アプリケーションに cookie のパスを設定] ボックスをオフにして、[OK] をクリックします。

  4. IIS を再起動します。操作手順については、「IIS を再起動する」を参照してください。

関連項目

cookie と認証

サイト セキュリティとフィルタを使用する

アプリケーションを構成する

サイト セキュリティ オブジェクト

AuthManager オブジェクト


ドメイン コントローラにセキュリティ モードを設定する

Commerce Server サイトで Windows 認証モードを使うには、Domain\Users を有効にする必要があります。(統合認証ではなく) 基本認証を使用する Supplier ソリューション サイトでも、Domain\Users を有効にする必要があります。

ドメイン コントローラにセキュリティ モードを設定するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[ドメイン コントローラ セキュリティ ポリシー] をクリックします。

  2. [セキュリティの設定] タブで、[ローカル ポリシー]、[ユーザー権利の割り当て]、[ローカル ログオン] を順にクリックします。

  3. [セキュリティ] ダイアログ ボックスで、このポリシーに Domain\Users を追加し、[OK] をクリックします。

関連項目

Supplier ソリューション サイトで認証フィルタを有効にする


認証フィルタを無効にする

認証フィルタをサイトに適用しないようにするには、アプリケーションの [一般のプロパティ] タブの [Commerce 認証フィルタ] セクションでフィルタなしモードを選択し、サイト レベルでフィルタなしモードを選択します。また、サイトの自動 cookie 生成を削除する必要もあります。

CS 認証リソースに対してフィルタなしモードを選択すると、認証フィルタはサイトに適用されません。ただし、フィルタなしモードを選択して自動 cookie 生成を有効にした場合、認証フィルタはサイトに適用されます。

フィルタなしモードでは、サイト開発者は、AuthManager オブジェクトが公開しているメソッドを呼び出すことで、個々の Active Server Pages (ASP) ページに認証を適用できます。AuthManager オブジェクトは、ユーザーを識別するメソッドと、動的コンテンツへのアクセスを制御するメソッドを公開する Component Object Model (COM) オブジェクトです。たとえば、サイト開発者は、AuthManager オブジェクトの GetUserID メソッドを呼び出して、cookie やクエリ文字列に基づいてユーザーを識別します。

Commerce Server 2000 のソリューション サイトは、既定でフィルタなしモードを使い、認証マネージャに基づく認証方式を実装しています。ベータ版のソリューション サイトで認証フィルタを使うには、そのサイトの Login.asp ページとほかのヘルパ ページに変更を加える必要があります。詳細については、「Retail ソリューション サイトの認証フィルタを有効にする」と「Supplier ソリューション サイトで認証フィルタを有効にする」を参照してください。

認証フィルタを無効にするには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、設定するアプリケーションをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. [プロパティ] ダイアログ ボックスの [全般] タブの [認証フィルタ] ボックスで、[フィルタなし] をクリックします。

  4. [自動 cookie] チェック ボックスをオフにし、[OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、インターネット インフォメーション サービス (IIS) 5.0 を再起動する必要があります。操作手順については、「IIS を再起動する」を参照してください。

  • フィルタなしモードを選択してサイトの認証フィルタを無効にする場合、サイトに必要なセキュリティ設定を手動で設定する必要があります。セキュリティ設定を手動で設定するには、IIS を使って、サイトに設定するセキュリティ設定を選択します。次に IIS を再起動します。操作手順については、「IIS を再起動する」を参照してください。

関連項目

サイト セキュリティとフィルタを使用する

Retail ソリューション サイトの認証フィルタを有効にする

Supplier ソリューション サイトで認証フィルタを有効にする

メモリからアプリケーションをアンロードする


Retail ソリューション サイトの認証フィルタを有効にする

次の手順では、Retail ソリューション サイトで認証フィルタを有効にする方法について説明します。

Retail ソリューション サイトで認証フィルタを有効にするには

認証フィルタを使う際の重要な情報

Retail ソリューション サイトで認証フィルタを有効にするには

  1. Commerce Server サイト パッケージャを使って、Retail ソリューション サイトをアンパッケージします。

  2. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  3. [アプリケーション] を展開し、操作対象のアプリケーションの名前をマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  4. [プロパティ] ダイアログ ボックスの [全般] タブの [認証フィルタ] ボックスで、[Windows 認証] または [カスタム認証] をクリックし、[OK] をクリックします。

  5. テキスト エディタを使って、Retail サイトの Authfiles\Login.asp を開きます。

  6. Login.asp で、Retail\Login\Login.asp でインクルードされるファイルが存在し、コードが例と一致していることを確認します。例のコードを確認するには、「Retail ソリューション サイト用の Login.asp のコード」を参照してください。

  7. 更新した Login.asp ページを保存して閉じます。

  8. Commerce Server ビジネス デスクのユーザー モジュールを使って、Retail サイトの新規ユーザーを作成します。詳細については、「ユーザーを追加する」を参照してください。

  9. Internet Explorer を使って、http://<コンピュータ名>/Retail に移動します。

登録済みユーザーであれば、ログイン ページでユーザー名とパスワードを入力します。まだ登録していない場合は、ページ下部のリンクをクリックして登録を済ませてから、この手順を実行してください。

Login.asp ページは、登録済みユーザーの MSCSAuth チケットを設定し、ユーザーのプロファイルを取得します。さらに、取得したプロファイル情報を使って、Web ページを読み込みます。

ユーザー プロファイルが見つからない場合は、Login.asp ページがもう一度表示されます。このページには、エラーメッセージと、前述したログイン用の 2 つのオプションが表示されています。ユーザー名またはパスワードが無効な場合は、Login.asp ページがもう一度表示されます。ただし、エラー メッセージは表示されません。認証フィルタを使って Web サイトに登録または新規ユーザー ページを追加するには、Login.asp ページの手順に従います。

注

  • Active Directory にアカウントを作成するための独自の登録ページを追加する必要があります。

  • 認証フィルタを無効にした後、もう一度有効にする場合は、Internet Services Manager (IIS) 5.0 のセキュリティ設定を手動でリセットする必要があります。

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、Web サーバーごとにメモリからアプリケーションをアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

認証フィルタを使う際の重要な情報

  • 認証フィルタを有効にして IIS の仮想ディレクトリにサイトをアンパッケージの場合、アプリケーション レベル プロパティの [アプリケーションに cookie のパスを設定] チェック ボックスをオフにする必要があります。このプロパティは、cookie に設定されるパス プロパティを表しています。既定では、このフラグが有効になっており、パス プロパティがサイトの仮想ディレクトリに設定されています (たとえば、/retail)。ボックスをオフにすると、cookie のパス プロパティとしてルート (/) が設定されます。このプロパティを更新した後に、IIS を再起動する必要があります。操作手順については、「IIS を再起動する」を参照してください。

  • Login.asp で使用される、インクルード ファイル、.gif ファイル、またはヘルパ ファイルへのアクセスには匿名アクセスを使っていることを確認してください。

  • Windows 認証の場合、既定のログイン ページでは Login-Submit に GET アクションを使います。Login.asp では、POST アクションもサポートされています。POST アクションのサポートについては、Login.asp のコメントを参照し、操作手順に従ってください。

  • Login.asp で GET アクションを使っている場合は、既知のセキュリティ問題があります。ログオフ後にブラウザの履歴が自動的に消去されるようにブラウザを設定するか、ブラウザの履歴を手動でクリアするように、サイトを訪れるユーザーに通知することをお勧めします。

  • Windows 認証では、次のサーバー変数が設定されません。AUTH_USER および AUTH_TYPE 変数です。サーバー変数 LOGON_USER の値は、ログインに使用するユーザー ID になります。

  • Secure Sockets Layer (SSL) を使うには、CS Authentication リソースの s_Login_Form プロパティにフル パスを設定する必要があります。操作手順については、「CS 認証リソースのプロパティを設定する」を参照してください。

関連項目

サイト セキュリティとフィルタを使用する

ユーザーを追加する

Retail ソリューション サイト用の Login.asp のコード

Supplier ソリューション サイト用の Login.asp のコード

メモリからアプリケーションをアンロードする

CS 認証リソースのプロパティを設定する


Supplier ソリューション サイトで認証フィルタを有効にする

次の手順では、Supplier ソリューション サイトの認証フィルタを有効にする方法について説明します。

Supplier ソリューション サイトの場合、および Windows 認証モードで認証フィルタを使う場合は、ローカルにログインするというセキュリティ モードをドメイン コントローラに設定する必要があります。この設定方法については、「ドメイン コントローラにセキュリティ モードを設定する」を参照してください。

Supplier ソリューション サイトでは、基本認証だけを有効にしてください。ほかのセキュリティ設定は変更しないでください。

AuthFiles サブフォルダと、そのフォルダにあるすべてのページでは、匿名アクセスを有効にします。

ドメイン コントローラおよび Web サーバーが、同じドメインで異なるコンピュータにインストールされている場合、プロファイルとユーザーに対してログイン ページで ProfileService.GetUserProfileByKey() メソッドの実行を成功させるには、認証フィルタには Web サーバーの匿名アカウントが必要です。

既定では、匿名ユーザー アカウントは IUSR_<サーバー名> です。Internet Services Manager では、IUSR_<サーバー名> にはメソッドを実行するために必要なアクセス権がありません。また、Web サーバーがドメイン コントローラ サーバーと異なる場合、ドメインのユーザー アカウントを匿名アカウントとして追加する必要があります。この操作を行うには、まずドメインで、ユーザー プロファイルを読み取るアクセス権を持つユーザー アカウントを、Active Directory から作成します。次に、Web サーバーで IIS マネージャを使って、AuthFiles サブフォルダとそのサブフォルダ内のすべてのファイルに対して、同じユーザー アカウントを匿名アカウントとして設定します。

Supplier ソリューション サイトで認証フィルタを有効にするには

認証フィルタを使う際の重要な情報

Supplier ソリューション サイトで認証フィルタを有効にするには

  1. Commerce Server サイト パッケージャを使って、Supplier ソリューション サイトをアンパッケージします。

  2. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  3. [アプリケーション] を展開し、操作対象のアプリケーションの名前をマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  4. [プロパティ] ダイアログ ボックスの [全般] タブの [認証フィルタ] ボックスで、[Windows 認証] または [カスタム認証] をクリックし、[OK] をクリックします。

  5. [インターネット インフォメーション サービス] を展開し、Supplier サイトをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  6. [プロパティ] ダイアログ ボックスの [ディレクトリ セキュリティ] タブの [匿名アクセスおよび認証コントロール] セクションで、[編集] をクリックします。

  7. [認証方法] ダイアログ ボックスで、[統合 Windows 認証] チェック ボックスをオフにします。

    注

    • Supplier ソリューション サイトでは、基本認証だけを有効にしてください。ほかのセキュリティ設定は変更しないでください。
  8. テキスト エディタを使って、Supplier サイトの Authfiles\Login.asp を開きます。

  9. Web ファームを使っている場合、またはプロキシ アカウントのサポートが必要な場合は、「Supplier ソリューション サイト用の Login.asp のコード」に示すコードに一致するように、Login.asp のコードを更新します。

    重要

    • プロキシ アカウントのサポートを必要としない単一のサーバーの場合、Login.asp を更新する必要はありません。
  10. Windows 認証では、\SupplierAD\include\Std_access_lib.asp の GetUserInfo() メソッドを次のように変更します。
Sub GetUserInfo()
Dim sAuthUser, mscsUser
Dim aName

If dictConfig.i_DelegatedAdminOptions = DELEGATED_ADMIN_SUPPORTED Then
sAuthUser = LoginName(Request.ServerVariables("LOGON_USER"))
End If
Rem Integrated Windows and basic auth take precedence over HTML form auth
If sAuthUser <> "" Then
m_UserAccessType = IIS_AUTH ' BASIC_AUTH
m_UserType = AUTH_USER
Set mscsUser = GetUserProfileByLoginName(sAuthUser)
If mscsUser Is Nothing Then
m_UserID = ""
Else
m_UserID = mscsUser.Fields(GetQualifiedName(GENERAL_INFO_GROUP, USER_ID)).Value
End If
Else
If mscsAuthMgr.IsAuthenticated() Then
sAuthUser = mscsAuthMgr.GetUserID(AUTH_TICKET)
Set mscsUser = GetUserProfileByLoginName(sAuthUser)
If mscsUser Is Nothing Then
m_UserID = ""
Else
m_UserID = mscsUser.Fields(GetQualifiedName(GENERAL_INFO_GROUP, USER_ID)).Value
End If
m_UserAccessType = TICKET_AUTH
m_UserType = AUTH_USER
Else
If Not IsNull(mscsAuthMgr.GetUserID(GUEST_TICKET)) Then
m_UserID = mscsAuthMgr.GetUserID(GUEST_TICKET)
m_UserAccessType = GUEST_VISIT
m_UserType = GUEST_USER
Else
m_UserID = ""
m_UserAccessType = ANON_VISIT
m_UserType = ANON_USER
End If
End If
End If
End Sub

Function LoginName(ByVal sUserName)
Dim aName

If (sUserName = "") Then
Exit Function
End IF
aName = Split (sUserName, "\")
LoginName = aName(UBound(aName))
End Function
  11. Windows 認証の場合、\SupplierAD\template\menu.asp の PrepareLoginSection メソッドで、"AUTH_USER" サーバー変数を参照している Request.ServerVariables 文字列のコードを、"LOGON_USER" サーバー変数を参照するように変更します。次に例を示します。

    Incorrect:sAuthUser = Request.ServerVariables("AUTH_USER")

    Correct:sAuthUser = Request.ServerVariables("LOGON_USER")

  12. 更新した Login.asp ページと menu.asp ページを保存して閉じます。

  13. ビジネス デスクを使って、Supplier サイトの新規ユーザーを作成します。

    重要

    • ユーザーを追加する前、または新規ユーザーを作成する前に、組織を作成します。
  14. Internet Explorer を使って、http://<コンピュータ名>/SupplierAD に移動します。

  15. ログイン ページで、DomainName\userID またはユーザー プリンシパル名 (UPN) 形式を使ってユーザー名を入力します (Login.asp にロジックを追加して、これらを userID/name に追加できます)。登録済みユーザーの場合はパスワードを入力します。それ以外のユーザーは、ページ下部のリンクをクリックして登録を選択します。つまり、Active Directory にアカウントを作成するための独自の登録ページを追加する必要があります。

Login.asp ページは、登録済みユーザーの MSCSAuth チケットを設定し、ユーザーのプロファイルを取得します。必要な場合は資格情報を確認し、取得したプロファイル情報を使って既定の Web ページを読み込むよう要求します。

ユーザー名またはパスワードが無効な場合、あるいはユーザー プロファイルが見つからない場合、Login.asp ページがもう一度表示されます。このページには、エラーメッセージと、前述したログイン用の 2 つのオプションが表示されています。

認証フィルタを使う際の重要な情報

  • 認証フィルタを有効にして IIS の仮想ディレクトリにサイトをアンパッケージの場合、アプリケーション レベル プロパティの [アプリケーションに cookie のパスを設定] チェック ボックスをオフにする必要があります。このプロパティは、cookie に設定されるパス プロパティを表しています。既定では、このフラグが有効になっており、パス プロパティがサイトの仮想ディレクトリに設定されています (たとえば、/retail)。ボックスをオフにすると、cookie のパス プロパティとしてルート (/) が設定されます。このプロパティを更新した後に、IIS を再起動する必要があります。操作手順については、「IIS を再起動する」を参照してください。

  • インクルード ファイル、.gif ファイル、またはヘルパ ファイルのうち、Login.asp で使用されているファイルへのアクセスには匿名アクセスを使っていることを確認してください。

  • Windows 認証の場合、既定のログイン ページでは Login-Submit に GET アクションを使います。Login.asp では、POST アクションもサポートされています。POST アクションのサポートについては、Login.asp のコメントを参照し、操作手順に従ってください。

  • Login.asp で GET アクションを使っている場合は、既知のセキュリティ問題があります。ログオフ後にブラウザの履歴が自動的に消去されるようにブラウザを設定するか、ブラウザの履歴を手動でクリアするように、サイトを訪れるユーザーに通知することをお勧めします。

  • Windows 認証では、次のサーバー変数が設定されません。AUTH_USER および AUTH_TYPE 変数です。サーバー変数 LOGON_USER の値は、ログインに使用するユーザー ID になります。

  • Secure Sockets Layer (SSL) を使うには、CS Authentication リソースの s_Login_Form プロパティにフル パスを設定する必要があります。操作手順については、「CS 認証リソースのプロパティを設定する」を参照してください。

関連項目

サイト セキュリティとフィルタを使用する

Supplier ソリューション サイト用の Login.asp のコード


Retail ソリューション サイト用の Login.asp のコード

ここでは、Retail ソリューション サイトで使用される Login.asp のコードを掲載します。Retail サイトで認証フィルタを使うには、サイトの Login.asp でこのコードを使う必要があります。詳細については、「Retail ソリューション サイトの認証フィルタを有効にする」を参照してください。

<!-- #INCLUDE FILE="../include/header.asp" -->
<!-- #INCLUDE FILE="../include/const.asp" -->
<!-- #INCLUDE FILE="../include/html_lib.asp" -->
<!-- #INCLUDE FILE="../include/form_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_access_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_cookie_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_url_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_util_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_profile_lib.asp" -->
<!-- #INCLUDE FILE="../include/setupenv.asp" -->
<!-- #INCLUDE FILE="../template/no_menu.asp" -->

<%
REM sample file for using with AuthFilter
REM This file handles Login for user
%>

<%

   Sub Main()
   End Sub

   Dim strSelect, strUsername, strPassword, strPWD, retAsp
   dim objAuth
   Dim strAuthErr, strSiteName, sUserID

   set objAuth = Server.CreateObject("Commerce.AuthManager")
   strSiteName = CStr(Application("MSCSCommerceSiteName"))
   objAuth.Initialize(strSiteName)

   'Get the hidden variable to determine if this is the first run of the page
   strSelect = Request.Querystring("realSubmit")

   'If users pressed the submit button
   if strSelect = "fromButton" then
      'authenticate the user
      strUsername = Request.Querystring("txtUsername")
      strPassword = Request.Querystring("txtPassword")

         if (strUsername = "") or (strPassword = "") then
            Response.Redirect "Login.asp"
         end If

         Set mscsUserProfile = GetUserProfileByLoginName(strUsername)
         if (mscsUserProfile is nothing) then
            Response.Redirect "Login.asp"
         end if

         if (mscsUserProfile.Fields("GeneralInfo.user_security_password").Value = strPassword) then
            sUserID = mscsUserProfile.Fields(GetQualifiedName(GENERAL_INFO_GROUP, FIELD_USER_ID)).Value
            ' for Custom/NT Auth
            objAuth.SetAuthTicket sUserID, 1, 90

            ' Go to the Original requested ASP which is stored in cookie MSCSFirstRequestedURL"
            retAsp = Request.Cookies("MSCSFirstRequestedURL")
            if (retAsp = "" Or IsNUll(retAsp)) then
            retAsp = objAuth.GetURL("default.asp", True, False)
            end if
            Response.Redirect retAsp
         else
            Response.Redirect "Login.asp"
         end if
   else
      PrintLogin
   End if
%>

<%Sub PrintLogin() %>
<HTML>
<HEAD>
<TITLE>Login</TITLE>
</HEAD>
<BODY>
<FORM NAME="frmLogin" ACTION="Login.asp" METHOD="GET">
<br>
<br>
<br>
<H2 ID=L_LoginForm_HTMLText>CS2K-LoginForm</H2><ID Id=L_EnterCredential_ErrorMessage>
To access authenticated content, please enter your UserID & Password</ID>
<br>
<br>
<br>

<H3 ID=L_UserName_HTMLText>Username:<INPUT TYPE="text" NAME="txtUsername" SIZE=32 MAXLENGTH=32><br><ID ID=L_UserPassword_HTMLText>
Password :</ID><INPUT TYPE="password" NAME="txtPassword" SIZE=32 MAXLENGTH=32></H3><br>
<br>

<INPUT type=HIDDEN name="realSubmit" value="fromButton">
<p align="left">
   <input type="submit" name="action" id=L_Submit_Button value="Submit">
   <input type="reset" name="action" id=L_Reset_Button value="Reset">
</p>
</FORM>

<H4>
<br>
<br>
<%
REM SOLUTION SITES: Retail
REM    need to add own registration file under '\AuthFiles\' sub-Dir Or Copy ..\Retail\login\newuser.asp to '\AuthFiles\newuser.asp'
REM    in global.asa update: dictPages.NewUser = "AuthFiles/newuser.asp"
REM
%>
<A HRef="newuser.asp" ID=L_RegisterIf_HTMLText>Register if you are a new user
   (solution sites: need to add own registration file under '\AuthFiles\' sub-Dir Or Copy ..\Retail\login\newuser.asp & update NewUser-File in Global.asa)</A>
<br>
</H4>

</BODY>
</HTML>
<%end sub%>

関連項目

サイト セキュリティとフィルタを使用する

Retail ソリューション サイトの認証フィルタを有効にする


Supplier ソリューション サイト用の Login.asp のコード

ここでは、Supplier ソリューション サイトで使用される Login.asp のコードを掲載します。Supplier サイトで認証フィルタを使うには、サイトの Login.asp でこのコードを使う必要があります。詳細については、「Supplier ソリューション サイトで認証フィルタを有効にする」を参照してください。

<!-- #INCLUDE FILE="../include/header.asp" -->
<!-- #INCLUDE FILE="../include/const.asp" -->
<!-- #INCLUDE FILE="../include/html_lib.asp" -->
<!-- #INCLUDE FILE="../include/form_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_access_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_cookie_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_url_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_util_lib.asp" -->
<!-- #INCLUDE FILE="../include/std_profile_lib.asp" -->
<!-- #INCLUDE FILE="../include/setupenv.asp" -->
<!-- #INCLUDE FILE="../template/no_menu.asp" -->

<%
REM sample file for using with AuthFilter
REM This file handles Login for user
%>

<%

   Sub Main()
   End Sub

   Dim strSelect, strUserName, strPassword, strPasswordTest, strPWD, strRetAsp, sAuthUser
   dim objAuth, objMSCSProfileObj
   Dim strAuthErr, strSiteName, sUserID

   ' AuthManager : Create & Initialize
   set objAuth = Server.CreateObject("Commerce.AuthManager")
   strSiteName = CStr(Application("MSCSCommerceSiteName"))  ' Get SiteName
   objAuth.Initialize(strSiteName)

   'Get the hidden variable to determine if this is the first run of the page
   strSelect = Request.Querystring("realSubmit")

   'If users pressed the submit button
   if strSelect = "fromButton" then

      'authenticate the user
      strUserName = Request.Querystring("txtUsername")
      strPassword = Request.Querystring("txtPassword")

         if (strUserName = "") or (strPassword = "") then
            Response.Redirect "Login.asp"
         end If

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' $PROXY-ACCOUNT: start
         '   To get Proxy-Account
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' For Proxy-Account usage: you may need to update 'strUserName' && 'strPassword', which you may get from Profile
         '   Or some other similar way ...
         ' if password-available:   if (objMSCSProfileObj.Fields("GeneralInfo.user_security_password").Value = strPassword) then
         ' sUserID = objMSCSProfileObj.Fields(GetQualifiedName(GENERAL_INFO_GROUP, FIELD_USER_ID)).Value
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' $PROXY-ACCOUNT: end
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' $PASSWORD: start
         '   To get Clear-Text-Password:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         sAuthUser = LoginName(strUserName)   ' as per profile-schema we need to filter DomainName here. 'strUserName' is in format: Domain\UserLoginID
         Set objMSCSProfileObj = GetUserProfileByLoginName(sAuthUser)
         if (objMSCSProfileObj is nothing) then
            Response.Redirect "Login.asp"
         end if
         ' if password-available: in clear-text for Proxy-Account
         ' strPasswordTest = objMSCSProfileObj.Fields.Item("GeneralInfo").Value.Item("user_security_password") ' objMSCSProfileObj.Fields("GeneralInfo.user_security_password").Value
         Set objMSCSProfileObj = Nothing

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' End Of getting Clear-Text password
         ' $PASSWORD: End
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' for Custom/NT Auth
            ' if password-available: in clear-text for Proxy-Account
            ' if (strPasswordTest = strPassword) then
            objAuth.SetAuthTicket strUserName, 1, 90
            ' Else
            '   Response.Redirect "Login.asp"
            ' EndIF

            ' Go to the Original requested ASP which is stored in cookie "MSCSFirstRequestedURL" & the following is required for a POST in Login instead of GET(by default)
            strRetAsp = Request.Cookies("MSCSFirstRequestedURL")   'retAsp = "..\default.asp"    '  (or) use: Request.Cookies("MSCSFirstRequestedURL") &  First requested URL (even if there is no QueryString this URL ciontains '?' at the end
            strRetAsp = strRetAsp + "&proxyuser="               ' make sure the QS-separator '?' is added by filter
            strRetAsp = strRetAsp + strUserName
            strRetAsp = strRetAsp + "&proxypwd="            ' Password
            strRetAsp = strRetAsp + strPassword

            if (strRetAsp = "" Or IsNUll(strRetAsp)) then
               strRetAsp = objAuth.GetURL("default.asp", True, False, Array("proxyuser", "proxypwd"), Array(strUserName, strPassword))
            end if

            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' Distributed-Denial-Of-Service Attack (DDoS)
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' this is to avoid DDos Attacks with known User login ID
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' Set objGenID =  Server.CreateObject("Commerce.GenID") '$PERF: store one in Application scope in GLOBAL.ASA, Application("MSCSAuthGenID")
            ' strGUID = objGenID.GenGUIDString
            '
            ' objAuth.SetProperty 2, "guid", strGUID ' after setting Ticket
            ' strRetAsp = strRetAsp + "&guid="
            ' strRetAsp = strRetAsp + strGUID
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

            Response.Redirect strRetAsp
   else
      if objAuth.IsAuthenticated(30) Then      ' for Web-Farm scenario <valid-Auth-Ticket Exist, but not cached in Filter>
         strUserName = objAuth.GetUserID(2)   ' Get LoginID <only in case of AD-Site>
         if (strUserName = "") or (IsNull(strUserName)) then
            Response.Redirect "Login.asp"
         end If
         sAuthUser = LoginName(strUserName)   ' as per profile-schema we need to filter DomainName here. 'strUserName' is in format: Domain\UserLoginID

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' $PROXY-ACCOUNT: start
         '   To get Proxy-Account
         ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' For Proxy-Account usage: you may need to update 'strUserName' && 'strPassword', which you may get from Profile
         '   Or some other similar way ...
         ' if password-available:   if (objMSCSProfileObj.Fields("GeneralInfo.user_security_password").Value = strPassword) then
         ' sUserID = objMSCSProfileObj.Fields(GetQualifiedName(GENERAL_INFO_GROUP, FIELD_USER_ID)).Value
 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' $PROXY-ACCOUNT: end
         ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' $PASSWORD: start
         '   To get Clear-Text-Password:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         Set objMSCSProfileObj = GetUserProfileByLoginName(sAuthUser)   ' Helper method from SupplierAD solution-site
         if (objMSCSProfileObj is nothing) then
            Response.Redirect "Login.asp"
         end if
         ' if password-available: in clear-text <same for proxy-account-scenario>
         strPassword = objMSCSProfileObj.Fields.Item("GeneralInfo").Value.Item("user_security_password") ' objMSCSProfileObj.Fields("GeneralInfo.user_security_password").Value
         'strPassword = "password"   ' if PWD not avalable & for test purposes only
         Set objMSCSProfileObj = Nothing
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
         ' End Of getting Clear-Text password
         ' $PASSWORD: End
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

         strRetAsp = Request.Cookies("MSCSFirstRequestedURL") '  (or) use: "../default.asp"
         strRetAsp = strRetAsp + "&proxyuser="               ' make sure the QS-separator '?' is added by filter
         strRetAsp = strRetAsp + strUserName
         strRetAsp = strRetAsp + "&proxypwd="               ' Password
         strRetAsp = strRetAsp + strPassword

            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' Distributed-Denial-Of-Service Attack (DDoS)
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' this is to avoid DDos Attacks with known User login ID
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' strGUID = objAuth.GetProperty(2, "guid")   ' if this exists, you need to pass this also on Query string
            '
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            ' If Not IsNull(strGUID) Then
            '    strRetAsp = strRetAsp + "&guid="
            '    strRetAsp = strRetAsp + strGUID
            ' End If
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

         Response.Redirect strRetAsp
      Else
         PrintLogin
      End If
   End if

   Set objAuth = Nothing
%>

<%Sub PrintLogin() %>
<HTML>
<HEAD>
<TITLE>Login</TITLE>
</HEAD>
<BODY>
<FORM NAME="frmLogin" ACTION="Login.asp" METHOD="GET">
<br>
<br>
<br>
<H2 ID=L_LoginForm_HTMLText>CS2K-LoginForm</H2><ID Id=L_EnterCredential_ErrorMessage>
To access authenticated content, please enter your UserID & Password</ID>
<br>
<br>
<br>

<H3 ID=L_UserName_HTMLText>Username:<INPUT TYPE="text" NAME="txtUsername" SIZE=32 MAXLENGTH=32><br><ID ID=L_UserPassword_HTMLText>
Password :</ID><INPUT TYPE="password" NAME="txtPassword" SIZE=32 MAXLENGTH=32></H3><br>
<br>

<INPUT type=HIDDEN name="realSubmit" value="fromButton">
<p align="left">
   <input type="submit" name="action" id=L_Submit_Button value="Submit">
   <input type="reset" name="action" id=L_Reset_Button value="Reset">
</p>
</FORM>

<H2>
<br>
<br>
<A HRef="register.asp" ID=L_RegisterIf_HTMLText>Register if you are a new user (need to add this registration file)</A>
<br>
</H2>

</BODY>
</HTML>
<%end sub%>

関連項目

サイト セキュリティとフィルタを使用する

Supplier ソリューション サイトで認証フィルタを有効にする


Web ファームでプロキシ アカウントをサポートする Windows 認証を使う

Web ファーム シナリオで Supplier ソリューション サイトに認証フィルタと Windows 認証を使用できます。「Supplier ソリューション サイト用の Login.asp のコード」のサービス拒否 (DDoS) 攻撃に関する説明のように、GUID プロパティを使う必要があります。

最初のログイン パスおよび Web ファーム ログイン パスでも、GUID プロパティを使う必要があります。次のサンプルの太字で示されているコードは、Login.asp ファイルで変更が必要な箇所を示しています。

' after setting AuthTicket
     objAuth.SetAuthTicket strUserID, True, 90
   objAuth.SetProperty 2, "guid", strGUID

' at the redirect in both the FirstTime and WebFarm paths:
      strRetAsp = Request.Cookies("MSCSFirstRequestedURL")
      strRetAsp = strRetAsp + "proxyuser="
      strRetAsp = strRetAsp + "MyDomain\User1"
      strRetAsp = strRetAsp + "&proxypwd="
      strRetAsp = strRetAsp + "password"
   strRetAsp = strRetAsp + "&guid="
   strRetAsp = strRetAsp + strGUID

strGUID 変数は (たとえば、GUIDGen オブジェクトによって) 生成された GUID/UniqueID であるか、プロファイルの GUID です。

関連項目

サイト セキュリティとフィルタを使用する


新しい暗号化キーを生成する

CS 認証リソースは、暗号化キーを使って cookie データを暗号化または復号化します。既定では、サイトをアンパッケージの場合に、パッケージの暗号化キーが (存在する場合は) 使われます。暗号化キーは、パッケージの AuthSetup.ini ファイルに格納されます。キーがない場合は、Commerce Server サイト パッケージャによって、IAuthManager::GenerateEncryptionKey() を使って新しいキーが生成されます。

サイトをアンパッケージのたびに、新しいキーが作成されます。CS 認証リソースで独自の暗号化キーをパッケージ化した場合、そのカスタム パッケージのアンパッケージのときは常に同じキーになります。サイトをアンパッケージのたびに新しいキーまたは異なるキーが必要な場合は、サイトをアンパッケージした後に、Commerce Server マネージャの [新しい暗号化キーの作成] ボタンを使う必要があります。

サイトがアクティブな間は、暗号化キーを変更しないでください。サイトがアクティブな間に暗号化キーを更新すると、既存の MSCSAuth チケットが無効になり、ユーザーはもう一度ログオンする必要があります。特定のキーで暗号化されたチケットは、同じキーを使わなければ復号化できません。

注

  • 既存の暗号化キーを更新する前に、暗号化キーのバックアップを作成する必要があります。Commerce Server は、バックアップを作成しません。新しいキーを作成した後に、以前のキーを取り出すことはできません。

新しい暗号化キーを生成するには

  1. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、管理するサイトをクリックします。

  2. [アプリケーション] を展開し、設定するアプリケーションをマウスの右ボタンでクリックします。次に、[プロパティ] をクリックします。

  3. ダイアログ ボックス下部の [新しい暗号化キーの作成] をクリックします。

  4. 確認用のダイアログ ボックスで [OK] をクリックします。

関連項目

サイト セキュリティとフィルタを使用する


データ ウェアハウスの実行

Web サイト データをインポート、変換、および格納するには、Commerce Server データ ウェアハウスを使います。Web ログ ファイル、Commerce Server データベース、およびその他の指定したデータ ソースからデータ ウェアハウスにデータをインポートします。データをインポートすると、Commerce Server ビジネス デスクからレポートを実行したり、ユーザーのセグメントを表示することによって、データを解析できます。

データ ウェアハウス データベースは、サイトのアンパッケージ時に SQL Server に追加されます。データのインポートや管理を行うには、Commerce Server データ変換サービス (DTS) タスクと、SQL Server パッケージを使います。

ここでは、次のトピックについて説明します。

  • データをインポートするためのワークフロー データの読み込みや変換を行うためのワークフローについて説明します。

  • データ ウェアハウスについて データ ウェアハウスと、含まれるデータの種類について説明します。

  • データ ウェアハウス コンポーネント データ ウェアハウスのコンポーネントについて説明します。

  • データ ウェアハウス リソースを構成する データ ウェアハウス リソースを構成する方法について説明します。

  • インポート用の Web ログ ファイルを構成する 既定の Web サイト プロパティをインポート用に構成する方法について説明します。

  • サイト構成をデータ ウェアハウスと同期させる Commerce Server アプリケーションに加えたすべての変更がデータ ウェアハウスにも適用されるように、サイト構成をデータ ウェアハウスと同期する方法について説明します。

  • Web ログ ファイル インポート プロパティを構成する Web ログ ファイル データをデータ ウェアハウスにインポートする方法と、制御およびカスタマイズする方法について説明します。

  • データ ウェアハウスにデータをインポートする Web ログ ファイル、カタログ、キャンペーン、トランザクション、およびユーザー プロファイル データをデータ ウェアハウスにインポートする方法について説明します。

  • インターネット プロトコル解決を実行する インターネット プロトコル (IP) アドレスの解決方法と、IP 解決の実行時に発生する処理について説明します。

  • レポートの作成を準備する レポート準備タスクの使い方と、レポートに使用するデータを OLAP キューブにロードする場合にこのタスクが果たす役割について説明します。

  • データ ウェアハウスからデータを削除する Web ログ ファイルからインポートしたデータを、データ ウェアハウスから削除する方法について説明します。

  • データ ウェアハウスを拡張する データ ウェアハウスを拡張するためのリソースの一覧を示します。


データをインポートするためのワークフロー

次の図は、データをデータ ウェアハウスにインポートするためのサンプルのシナリオを示します。

Web ログ ファイル トランザクション ユーザー プロファイル 商品カタログ キャンペーン
データのインポート
分析に利用可能
なデータ
レポート準備
Web ログ
ファイルの構成
サイト構成とデータ
ウェアハウス
の同期


データ ウェアハウスについて

Web サイト データをインポート、変換、および格納するには、Commerce Server データ ウェアハウスを使います。データ ウェアハウスに格納されたデータを使って、Web サイトにおけるユーザーの利用状況を分析します。Commerce Server 2000 には、Commerce Server ビジネス デスクのレポートなど、複数のビジネス分析機能が用意されています。これらのレポートでは、データ ウェアハウスからのデータが、Web サイトに関するビジネス上の特定の疑問に対してさまざまな形式で表示されます。

データ ウェアハウスを使って、次のタスクを実行できます。

  • Commerce Server 2000 サイトから、Web ログ ファイル、ユーザー プロファイル、トランザクション、キャンペーン、カタログの各データをインポートする。非 Commerce Web サーバーなどの、ほかのデータ ストアからデータをインポートすることもできます。

  • サイトに接続したクライアント ホストのインターネット プロトコル (IP) アドレスを解決する。

  • オンライン分析処理 (OLAP) キューブを生成することによって、分析を行うためにデータをデータ ウェアハウスに準備する。OLAP キューブは、レポートの実行中に取り出すデータを整理します。

  • インポートされたログ ファイル データを削除して、Commerce Server で必要な SQL Server データベースの記憶容量を削減する。

  • データ ウェアハウスからすべてのデータを削除して、既存のテスト データまたはアーカイブ済みデータを削除する。

SQL Server パッケージ

Commerce Server とデータ ウェアハウス

SQL Server パッケージ

Commerce Server Data Transformation Services (DTS) タスクを使用できます。DTS タスクは、SQL Server の DTSパッケージを使ってサイトのアンパッケージのときに SQL Server にロードされ、データ ウェアハウスを対象にデータのインポート、変換、および格納を行います。データ ウェアハウスは、SQL Server 内、または Commerce Server マネージャ内で直接操作できます。

データ ウェアハウスの操作は、SQL Server DTS パッケージに Commerce Server DTS タスクを追加し、パッケージを実行することにより行います。パッケージを開いてタスクを追加し、パッケージを実行することにより、一度に 1 つのデータ ウェアハウス タスクを実行できます。パッケージに複数のタスクを追加したり、タスクを実行する順序に関するワークフローの指示を追加した後でパッケージを実行し、すべてのタスクを同じプロセスで、指示した順序で実行することもできます。

また、パッケージをタスクおよびワークフローの指示と一緒に保存して、実行するときにパッケージを利用することもできます。SQL Server スケジューラと共に実行するように、パッケージをスケジュールできます。DTS パッケージ、タスク、および SQL Server スケジューラの詳細については、SQL Server Books Online を参照してください。

Commerce Server とデータ ウェアハウス

Commerce Server は、データ ウェアハウスのデータを次の方法で使います。

  • ビジネス デスクの分析モジュールを使って、データ ウェアハウスのデータを分析して Web サイトに関するビジネス上の疑問に答えるレポートを実行できます。予測リソースを使って作成されたセグメント モデルをセグメント ビューアで表示できます。レポートを実行したり、分析モジュールのセグメント モデルを表示したりする方法の詳細については、｢ビジネス デスク分析｣を参照してください。

  • Commerce Server マネージャの予測リソースを使って、データ ウェアハウスのデータから、ユーザーの操作を予測する予測モデルや、ユーザーの操作を分析するセグメント モデルを作成します。予測リソースの詳細については、｢予測リソースの実行｣を参照してください。

  • ビジネス デスクのリスト マネージャ モジュールを使って、データ ウェアハウスのデータで分析レポートおよびセグメント モデルから作成するリストを管理します。

  • キャンペーンおよびリスト マネージャ モジュールの詳細については、｢ビジネス デスク キャンペーン｣を参照してください。

  • Commerce Server マネージャのプロファイル リソースを使って、Web サイトがユーザーから収集するデータを定義し、データ ウェアハウスにインポートする情報を選択します。プロファイル リソースの詳細については、｢プロファイル リソースの実行｣を参照してください。

  • ビジネス デスクのユーザー モジュールを使うことにより、Web サイトで収集したユーザー情報の更新、Web サイトでユーザーから収集するデータの定義、およびデータ ウェアハウスにインポートする情報の選択を行うことができます。ユーザー モジュールの詳細については、｢ビジネス デスクユーザー｣を参照してください。

関連項目

データ ウェアハウスにデータをインポートする


データ ウェアハウス コンポーネント

データ ウェアハウスは、データ変換サービス (DTS) タスク、インポート処理、およびオンライン分析処理 (OLAP) キューブを使って、サイトのデータをインポート、変換、および格納します。

ここでは、次のトピックについて説明します。

  • DTS タスク

  • インポート プロセス

  • データ ウェアハウス記憶エンジン

  • OLAP キューブ


DTS タスク

データ ウェアハウスのデータをインポートおよび変換するには、Commerce Server データ変換サービス (DTS) タスクを使います。Commerce Server タスクは、サイトのアンパッケージのときに SQL Server に読み込まれます。Commerce Server タスクを SQL Server パッケージに追加し、そのパッケージを実行すると、データ ウェアハウスに変更が加えられます。

Commerce Server では、データ ウェアハウスに関して以下のタスクが提供されます。

Web サーバー ログ インポート Web ログ ファイルを定義およびインポートします。このタスクを使って、Web ログ ファイルからインポートするデータ、および個々のユーザーと訪問を特色付ける方法を指定する、Web ログ ファイルのプロパティを設定します。

データ削除 詳細ログ ファイル データおよび要約データをデータ ウェアハウスから削除します。ログ ファイル データを削除すると、データ ウェアハウスのサイズが削減されます。テスト データをインポートしていて、有効なデータをインポートする前にデータ ウェアハウスを空にする場合は、詳細データと要約データのすべてを削除します。

IP 解決 インポートしたユーザー データからインターネット プロトコル (IP) アドレスを解決します。IP 解決では、ログ ファイルからインポートした IP アドレスをドメイン名に変換します。たとえば、198.105.232.4 は www.microsoft.com になります。このように変換することによって、レポートを読む場合にデータを理解しやすくなります。

キャンペーン データ インポート キャンペーンに関するデータをインポートします。キャンペーン データを使って、キャンペーンの成功度を分析します。Commerce Server ビジネス デスクのキャンペーン リソースを使って、キャンペーンを設定します。ビジネス デスクでキャンペーン モジュールを使用する方法の詳細については、｢キャンペーンについて｣を参照してください。レポートを実行して、キャンペーン ユーザー データを分析することもできます。レポートの詳細については、｢広告のレポート｣を参照してください。

トランザクション データ インポート トランザクション データを定義およびインポートします。トランザクション データは、Web サイトでユーザーがバスケットの品目を追加および削除したとき、または購入を行ったときに作成されます。レポートを実行して、トランザクション データを分析できます。レポートの詳細については、｢商品売上レポート｣を参照してください。

ユーザー プロファイル データ インポート データ ウェアハウスにユーザー プロファイルをインポートします。Commerce Server は、ユーザーが Web サイトを訪れたときにユーザー プロファイルを収集します。Commerce Server は、ユーザーがサイトでユーザー オブジェクトのプロファイル定義に個人情報を入力したときに、登録されたユーザーに関するプロファイル データを収集します。

また、Commerce Server は、ゲスト ユーザー (Web サイトに登録されていないユーザー) のアクションに関する情報も収集します。ゲスト ユーザーのプロファイル データには、ゲスト ユーザーのグローバル一意識別子 (GUID) と、ユーザー操作のデータが含まれます。

ユーザー オブジェクトのプロファイル定義は、Commerce Server マネージャのプロファイル リソース、およびビジネス デスクのプロファイル デザイナ モジュールで変更できます。ビジネス デスクのユーザー モジュールを使って、ユーザー プロファイル データを変更できます。

プロファイル リソースのプロファイル定義を処理する方法の詳細については、｢プロファイル リソースの実行｣を参照してください。ビジネスデスクのプロファイル デザイナおよびユーザー モジュールの操作の詳細については、｢ビジネス デスクユーザー｣を参照してください。レポートを実行して、ユーザー ユーザー データを分析することもできます。レポートの詳細については、｢ユーザーのレポート｣を参照してください。

レポート準備 インポート データで OLAP キューブを生成し、レポート生成用のデータを準備します。また削除後にはキューブの更新を行います。このタスクは、それぞれのインポート タスクと削除タスクの後に実行する必要があります。

商品カタログ インポート カタログから商品データをインポートします。商品データをインポートすると、トランザクション レポートには、トランザクション データで利用できる情報よりも詳細な商品情報が記載されます。レポートを実行して、商品の売り上げを分析することもできます。レポートの詳細については、｢商品売上レポート｣を参照してください。

構成の同期 構成設定の変更後に、データ ウェアハウスを Commerce Server アプリケーションと同期します。オンライン サイト構成を変更した場合は、ほかのタスクの前にこのタスクを実行します。

関連項目

インポート用の Web ログ ファイルを構成する

Web ログ ファイル インポート プロパティを構成する

非 Commerce のアプリケーションと Web サーバーを追加する


インポート プロセス

Commerce Server には、データ ウェアハウスのデータをインポートおよび変換するために、5 つのインポート プロセスが用意されています。

  • Web ログ ファイル データのインポート プロセス

  • トランザクション データのインポート プロセス

  • ユーザー データのインポート プロセス

  • キャンペーン データのインポート プロセス

  • 商品カタログ データのインポート プロセス

Web ログ ファイル データのインポート プロセス

このプロセスでは、Web サーバーで生成された Web ログ ファイル データをインポートします。Web ログ ファイルは、World Wide Web Consortium (W3C) の拡張 Web ログ ファイル形式に準拠する必要があります。W3C 拡張 Web ログ ファイル形式で Web ログ ファイルを構成する方法の詳細については、「インポート用の Web ログ ファイルを構成する」を参照してください。

Web サーバー ログのインポート タスクを使って、インポートするログ ファイル名と、その場所に関する情報を提供します。Web ログ ファイルのインポート プロセスは、指定の場所からログ ファイルを検索し、それらのログ ファイルを解析して、[詳細 Web ログ インポート プロパティ] ダイアログ ボックスで設定したプロパティを適用します。

サイトに複数の Web サーバーがある場合、Web ログ ファイルのインポート プロセスは、それぞれの Web サーバーのログ ファイルをメモリ内で結合し、ログ ファイル データを時間順に整理します。Web ログ ファイルのインポート プロセスは、設定されたインポート プロパティを使って Web ログ ファイル データをフィルタ処理します。このインポート プロセスでは、ユーザー訪問推論アルゴリズムを適用して、クリック データを一意のユーザー数と訪問数に変換します。

また、Web サイトに関連付けられたクエリ文字列をインポートするように選択した場合は、Web ログ ファイルのインポート プロセスで、それらのクエリ文字列がインポートされます。Web ログ ファイルの構成方法については、「Web ログ ファイル インポート プロパティを構成する」を参照してください。

Commerce Server は、インターネット インフォメーション サービス (IIS) 5.0 を実行せず、W3C ログ ファイル形式のログ ファイルを作成できる Commerce Server コンポーネントを持たない Web サーバーにも対応しています。データ ウェアハウスでは、このような Web サーバーのログ ファイルをインポートできます。Commerce Server コンポーネントを使わないアプリケーションおよび Web サーバーを追加する方法の詳細については、｢非 Commerce のアプリケーションと Web サーバーを追加する｣を参照してください。

注

  • Web ログ ファイルのインポート プロセスでは、IIS がアクティブにログ ファイルに書き込んでいる間は、ログ ファイルをインポートしません。ログ ファイルは、Web サイトから直接にはインポートしないでください。代わりに、サーバーがログ ファイルにアクセスしていないことを確認し、ほかの場所にコピーしてください。続いて、選択した場所からログ ファイルをインポートできます。

トランザクション データのインポート プロセス

このプロセスでは、トランザクション データ インポート タスクを実行し、トランザクション データをインポートします。トランザクション データとは、注文や注文番号などの、格納される注文データです。インポートされたトランザクション データでレポートを実行することにより、商品ごとの販売状況や売り上げ金額、または顧客ごとの購入金額を分析できます。Commerce Server データベースからすべてのトランザクション データのフル インポートを実行することも、データ ウェアハウスにまだインポートしていないトランザクション データの増分インポートを実行することもできます。

ユーザー データのインポート プロセス

このプロセスでは、ユーザー プロファイル データ インポート タスクを実行し、ユーザー プロファイル データをインポートします。ユーザー データは、Web サイトでユーザー オブジェクトのプロファイル定義を使って収集します。ビジネス デスクのプロファイル デザイナ モジュールを使って、どのユーザー プロファイル プロパティをデータ ウェアハウスにインポートするかを指定します (このタスクは、Commerce Server マネージャのプロファイル リソースを使っても実行できます)。データ ウェアハウスにインポートするユーザー データを指定する方法については、「プロファイル定義」を参照してください。

インポートされたユーザー データに基づいたレポートを実行することにより、リピーターが増えているかどうか、また、ゲスト ユーザーから登録済みユーザーへの変換がどの程度行われているかを分析できます。ユーザー データのインポート プロセスでは、データベース テーブルのロックを防止するために、ユーザー データをデータ ウェアハウスにインポートする間隔を指定できます。たとえば、10,000 人のユーザー データをインポートする場合、サーバーへの負荷を回避するために 15 分間隔でユーザー データをインポートするように選択できます。

Commerce Server データベースからすべてのユーザー データのフル インポートを実行することも、データ ウェアハウスにまだインポートしていないユーザー データの増分インポートを実行することもできます。

キャンペーン データのインポート プロセス

このプロセスでは、キャンペーン データ インポート タスクを実行し、キャンペーン データをインポートします。キャンペーン データには、広告主、広告キャンペーン、キャンペーン項目情報などがあります。キャンペーン インポート プロセスでは、Commerce Server データベースからキャンペーン データをインポートします。インポートされたキャンペーンデータに基づいたレポートを実行することにより、広告の成功度を分析できます。

商品カタログ データのインポート プロセス

このプロセスでは、商品カタログ インポート タスクを実行し、カタログの商品データをインポートします。商品カタログ データには、名前、説明、色、サイズなど、カタログ商品に関する多様な情報が含まれます。カタログ データのインポート プロセスでは、Commerce Server データベースからカタログ データをインポートします。商品や売り上げ分析に関するレポートを正常に表示するには、カタログ データをインポートする必要があります。カタログ データをデータ ウェアハウスにインポートしない場合、レポート内で商品を識別する方法は、在庫保管単位 (SKU) の数値だけになります。

関連項目

インポート用の Web ログ ファイルを構成する

Web ログ ファイル インポート プロパティを構成する

非 Commerce のアプリケーションと Web サーバーを追加する

プロファイル定義にプロパティを追加する


データ ウェアハウス記憶エンジン

データ ウェアハウス記憶エンジンでは、データ ウェアハウスにデータを読み込むための、3 つの記憶プロセスが提供されます。

  • 要約

  • スキーマ管理

  • データの読み込み

要約

要約を使うことにより、Web サーバー ログ インポート タスクおよびレポート準備タスクの実行時に、Commerce Server データベースからのユーザー データ、トランザクション データ、およびカタログ データを要約できます。要約では、Commerce Server データベース内の未加工データを、Web サイトでのユーザーの利用状況を分析するために使用するデータ ウェアハウス内の情報に変換します。この変換は、関連する未加工データを合計およびカウントすることで行います。

たとえば、特定のページで 1,000 レコード分のヒット があった場合、1,000 ヒットを有するページの情報として要約されます。この情報を使うことにより、Web サイトへのトラフィックを増やすための計画を立てることができます。

スキーマ管理

インポート プロセス中に、必要に応じてデータ ウェアハウス スキーマを変更するには、スキーマ管理を使います。たとえば、ユーザー オブジェクト プロファイル定義に新しいプロパティを追加し、それをエクスポートとしてマークすると、このプロパティを含むユーザー プロファイル データのインポート時に、ユーザー プロファイル プロセスによってデータ ウェアハウス スキーマに新しい列が追加されます。

次の表は、インポート プロセスの一覧と、データ ウェアハウスに対するデータ ウェアハウス記憶エンジンのスキーマ変更の説明を示します。

インポート プロセス | データ ウェアハウスのスキーマ変更
Web ログ ファイル | クエリ文字列がスキーマに追加されます。
ユーザー | ユーザー プロファイル プロパティがスキーマに追加されるか、またはスキーマから削除されます。
商品カタログ | 商品カタログ ディメンションがスキーマに追加されるか、またはスキーマから削除されます。

データの読み込み

パラレルでの読み取りおよび書き込みによって、大容量データのデータ ウェアハウスへの読み込みをサポートします。

関連項目

インポート用の Web ログ ファイルを構成する

Web ログ ファイル インポート プロパティを構成する

非 Commerce のアプリケーションと Web サーバーを追加する


OLAP キューブ

オンライン分析処理 (OLAP) キューブは、インポートするデータを含むためにデータ ウェアハウスで使用するデータ構造です。このキューブは、共有ディメンションで定義されるサブセットにデータを分割します。

ディメンションは、メジャーの説明的な属性です。たとえば、ディメンションがユーザーの購入数を表す場合があります。この場合、購入数がメジャーです。ユーザーと購入商品はディメンションです。次の図は、ディメンジョンとメジャーの関係を示します。OLAP キューブの詳細については、SQL Server Books Online を参照してください。

Units
Time
Product
Time
Product
ディメンション
テーブル
Geographic
Geographic
ディメンション
メジャー

Commerce Server が使用する OLAP キューブは、アンパッケージ プロセス中に作成されます。また、レポート準備タスクの実行時にデータが生成されて、データ取得用に処理されます。キューブにデータを格納すると、ビジネス デスクで Web サイト分析レポートを実行するときに、データ取得の速度が向上します。次の表は、Commerce Server キューブとディメンションの一覧を示します。

キューブ | ディメンション
Weekly User Trends | Date Site Week of Year
Campaign | Advertiser Campaign DateHour Events Page Group Site UserType URI
Sales | CustomerOrders Date Products Site UserType
Basket Events | DateHour Events Products RegisteredUser Site UserType
OrderEvents | DateHour Day of Week Events Hour of Day Site UserType Week of Year
Buyer Visits | BuyerType Site UserType
Bandwidth | DateHour Day of Week Hour of Day Site
Users | Date Site UserType
Entry Pages | Date Site URI
Exit Pages | Date Site URI
Web Usage | Date DateHour Day of Week Hour by Day Referrer RegisteredUser SiteUserType Week of Year
Page Usage | Date HTTP Status Is Request Level Directory Site URI Win32Status

関連項目

インポート用の Web ログ ファイルを構成する

Web ログ ファイル インポート プロパティを構成する

非 Commerce のアプリケーションと Web サーバーを追加する


データ ウェアハウス リソースを構成する

データ ウェアハウスが Microsoft SQL Server と連携するように、データ ウェアハウス リソースを構成する必要があります。また、インポートされる時刻データにデータ ウェアハウスが適用するタイム ゾーンや開始曜日も構成できます。

データ ウェアハウスを SQL Server に接続するには、インストール処理中に接続文字列を設定します。Commerce Server マネージャを使うと、接続文字列のユーザー ID とパスワードをグローバル リソース レベルで変更できます。データ ウェアハウスは、ユーザー ID とパスワードを使って SQL Server にログインします。

注

  • 変更できるのは、データ ウェアハウス接続文字列のユーザー ID とパスワードだけです。接続文字列全体を変更するには、サイトをもう一度アンパッケージの必要があります。サイトをアンパッケージの方法の詳細については、｢サイトをアンパッケージする」および「例 B: 非クラスタ構成の 3 台のコンピュータにインストールする｣を参照してください。

接続文字列をグローバル リソース レベルで変更するには

タイム ゾーンと開始曜日を変更するには

接続文字列をグローバル リソース レベルで変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース] の順に展開し、[データ ウェアハウス] をマウスの右ボタンでクリックして [プロパティ] をクリックします。

  2. [データ ウェアハウスのプロパティ] ダイアログ ボックスの [接続] タブで、次の操作を行います。
    項目 | 操作
    ユーザー ID | ログインする際の認証に使用するユーザー ID を入力します。
    [パスワード] | ログインする際の認証に使用するパスワードを入力します。

  3. 変更を保存するには、[OK] をクリックします。

タイム ゾーンと開始曜日を変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース] の順に展開し、[データ ウェアハウス] をマウスの右ボタンでクリックして [プロパティ] をクリックします。

  2. [データ ウェアハウスのプロパティ] ダイアログ ボックスの [時刻] タブで、次の操作を行います。
    項目 | 操作
    [適用するタイム ゾーン] | ドロップダウン リストからタイム ゾーンを選択します。
    [開始する曜日] | ドロップダウン リストから開始する曜日を選択します。

  3. 変更を保存するには、[OK] をクリックします。

注

  • SQL Server の開始する曜日はレポートで使用されます。[データ ウェアハウスのプロパティ] ダイアログ ボックスで設定した開始する曜日は、Web ログ ファイルから 1 週間ごとにインポートされるデータを集計するために使われます。

データ ウェアハウスのリソースが設定されます。データをデータ ウェアハウスにインポートする前に、インポートする Web ログ ファイルを設定し、サイト構成をデータ ウェアハウスと同期させる必要があります。

関連項目

Commerce Server をインストールする

サイトをアンパッケージする

Web サーバーを構成する


インポート用の Web ログ ファイルを構成する

データ ウェアハウスに Web ログ ファイルをインポートするには、World Wide Web Consortium (W3C) ログ ファイル形式を使用するために Web ログ ファイル プロパティを構成する必要があります。Web ログ ファイル プロパティを構成するには、インターネット サービス マネージャを使います。

既定の Web サイト プロパティをインポート用に構成するには

データ ウェアハウスに対してログ ファイルの場所を指定するには

既定の Web サイト プロパティをインポート用に構成するには

  1. [インターネット インフォメーション サービス] およびサイトをアンパッケージしたサーバーを順に展開します。既定の Web サイトをマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [既定の Web サイトのプロパティ] ダイアログ ボックスの [Web サイト] タブで、次の操作を行います。
    項目 | 操作
    [ログ収集を有効にする] | ログを有効にして Web サイトの利用状況を記録する場合に、このチェック ボックスをオンにします。
    [アクティブ ログ形式] | ドロップダウン リストの [W3C 拡張ログファイル形式] をクリックします。

  3. [プロパティ] をクリックします。

  4. [拡張ログ プロパティ] ダイアログ ボックスの [拡張プロパティ] タブで、次の操作を行います。
    選択項目 | インポート対象
    [日付] | Web サイトが利用された日付。
    [時間] | 利用された時間。
    [クライアント IP アドレス] | サーバーにアクセスしたクライアントの IP アドレス。
    [ユーザー名] | サーバーにアクセスしたユーザーの名前。
    [サーバー IP アドレス] | ログ エントリが生成されたサーバーの IP アドレス。
    [サーバー ポート] | クライアントの接続先のポート番号。
    [メソッド] | クライアントが実行したアクション (Web ページの表示など)。
    [URI Stem] | アクセスしたリソース (HTML ページなど) の統一リソース識別子 (URI) 。
    [URI クエリ] | クライアントが実行したクエリ (存在する場合)。たとえば、クライアントが検索した検索文字列などです。
    [プロトコルの状態] | HTTP に関連したアクションのステータス。
    [Win32 の状態] | Microsoft Windows によって使用されたアクションのステータス。
    [送信バイト数] | サーバーによって送信されたバイト数。
    [受信バイト数] | サーバーによって受信されたバイト数。
    [ユーザー エージェント] | クライアントで使用されるブラウザ。
    [Cookie] | 送受信された cookie の内容。
    [履歴] | ユーザーが直前に表示していたサイト。

    重要

    • Web ログ ファイルが正常にインポートされるように、[クライアント IP アドレス]、[URI Stem]、および [時間] を選択する必要があります。日付のレポートを正確にするために日付プロパティを含めます。Web サーバー プロパティを設定する方法については、「Web サーバーを構成する」を参照してください。
  5. [OK] をクリックして [拡張ログ プロパティ] ダイアログ ボックスを閉じ、[OK] をクリックして [既定の Web サイトのプロパティ] ダイアログ ボックスを閉じます。

Web ログ ファイル プロパティが、W3C ログ ファイル形式で設定されます。

データ ウェアハウスに対してログ ファイルの場所を指定するには

  1. [インターネット インフォメーション サービス] および該当するサーバー名を順に展開します。[既定の Web サイト] をマウスの右ボタンでクリックして、[プロパティ] をクリックします。

  2. [既定の Web サイトのプロパティ] ダイアログ ボックスの [プロパティ] をクリックします。

  3. [拡張ログ プロパティ] ダイアログ ボックスの [全般] タブで、[ログ ファイル ディレクトリ] ボックスにログ ファイル ディレクトリのパスを入力します。

  4. [OK] をクリックして [拡張ログ プロパティ] ダイアログ ボックスを閉じ、[OK] をクリックして [既定の Web サイトのプロパティ] を閉じます。

データ ウェアハウスは、Web サイトでログ ファイルを検索します。既定の Web サイトのプロパティをデータ ウェアハウスへのインポート用に設定した後、Commerce Server マネージャの IIS プロパティを IIS メタベースおよびデータ ウェアハウスのプロパティと同期する必要があります。IIS とデータ ウェアハウスを同期する方法については「サイト構成をデータ ウェアハウスと同期させる」を参照してください。

関連項目

Web サーバーを構成する

アプリケーションを構成する

非 Commerce のアプリケーションと Web サーバーを追加する

サイト構成をデータ ウェアハウスと同期させる


サイト構成をデータ ウェアハウスと同期させる

サイトの構成に加えたすべての変更がデータ ウェアハウスにも適用されるように、サイトの構成をデータ ウェアハウスと同期させるには、構成同期タスクを使います。インポート タスクや削除タスクを実行する前に、同期タスクを実行する必要があります。

サイト構成をデータ ウェアハウスと同期させるには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [構成の同期 (Commerce Server)] をクリックします。

  4. [DW プロパティの同期] ダイアログ ボックスで次の操作を行います。
    項目 | 操作
    [説明] | 同期タスクの説明を入力します。
    [サイト名] | ドロップダウン リストから、データ ウェアハウスと同期するサイトを選択します。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    同期の進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。処理が完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  7. [OK] をクリックし、次に [終了] をクリックします。

データ ウェアハウスが、Commerce Server のサイト構成と同期されます。Web ログ ファイル インポート プロパティを設定し、データ ウェアハウスにデータをインポートできます。

関連項目

インポート用の Web ログ ファイルを構成する

Web サーバーを構成する

アプリケーションを構成する

非 Commerce のアプリケーションと Web サーバーを追加する


Web ログ ファイル インポート プロパティを構成する

Web ログ ファイルからデータ ウェアハウスにインポートするデータの制御とカスタマイズを行うために、5 つのプロパティ セットを設定できます。これらのプロパティで選択する設定によって、インポート プロセスを高速化したりデータ ウェアハウスの管理を容易にするだけでなく、より詳しいデータ分析が可能になります。

注

  • 特に指定しない場合、これらの設定はサイト内のすべてのアプリケーションに適用されます。

次のプロパティは、Web ログ ファイルからデータ ウェアハウスにインポートするデータを制御します。

  • 既定のファイル リダイレクトや複数の URL がある場合にも、サイトの既定のページへの一意な訪問者のヒット数が正確であるようにします。

  • 除外 次のデータが、データ ウェアハウスにインポートされないようにします。特定のホストからのヒット数、特定のファイル形式またはファイル式の要求、およびクローラによるヒット数。

  • 推論 インポート中に設定したユーザー数と訪問数の推論を、組織の分析ニーズに合うようにカスタマイズします。

  • ログ ファイル ログ ファイル間で時間が重複していた場合の処置をカスタマイズします。

  • クエリ文字列 Web サイトのクエリ文字列をインポートして、そのクエリ文字列に関連するデータを分析できるようにします。

関連項目

データ ウェアハウス コンポーネント

サイト構成をデータ ウェアハウスと同期させる

データ ウェアハウスにデータをインポートする

レポートの作成を準備する


既定のファイル

既定のファイルとは、ディレクトリ インデックス ファイルまたはホーム ページとしても知られ、ユーザーがブラウザの [アドレス] ボックスに特定のファイル名を含めずにサイトの URL を入力した場合に表示される Web ページです。たとえば、「www.microsoft.com」または「www.microsoft.com/default.htm」のどちらを入力しても www.microsoft/default.htm ページを表示できます。ただし、Web ログ ファイルでは、これら 2 つの URL を 2 つの異なるページへのヒットとしてカウントします。

Commerce Server 2000 の [既定のファイル] オプションを設定すると、複数の URL が同じページへのヒットとしてカウントされるように指定できます。このオプションを使えば、全体的なサイト ユーザー統計情報の正確性を損なうことなく、サイトへのリダイレクトおよび複数のパスを作成できます。

さらに、ファイルをインポートする前に、最上位ディレクトリを付けずにファイル名を表示するように選択することもできます。この機能によって、レポートに表示する必要のないサブディレクトリにサイト ディレクトリが格納されている場合に、ファイル操作が容易になります。

インターネット インフォメーション サービス (IIS) 5.0 の場合、この設定は、IIS 内に一覧で表示される既定のドキュメントと、セットアップ時に自動的に同期されます。

注

  • 非 IIS サーバーの場合、既定の設定は Index.html、Index.htm、および Default.htm です。これらの設定がサイトには不適切な場合は、要求カウントが正確になるように変更してください。

ディレクトリ インデックス ファイルを設定するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [既定のファイル] タブで、次の操作を行います。
    項目 | 操作
    [ファイル システムのパスから最上位ディレクトリを切り捨てる] | 最上位ディレクトリを付けずにファイル名を表示するには、このチェック ボックスをオンにします。
    [ディレクトリ インデックス ファイル] | ディレクトリ インデックス ファイルとして指定するファイルの名前を入力します。
    [追加] | 既定のファイル一覧に新しいディレクトリ インデックス ファイルを追加するときにクリックします。

  6. [適用] をクリックし、[OK] をクリックします。

ディレクトリ インデックス ファイルが、Web ログ ファイル インポート プロセスに対して設定されます。Web ログ ファイル インポートの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

関連項目

データ ウェアハウス コンポーネント

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウスにデータをインポートする


除外

特定の種類のデータをインポートから除外できます。特定のデータを除外することで、データ ウェアハウスを管理しやすいサイズに保つことができ、ページ要求がより正確にレポートに定義されます。除外できるデータの種類は次のとおりです。

  • ホスト 特定のホストから送信したユーザーからのデータを除外できます (たとえば、従業員やソフトウェア テスト要員)。この機能は、通常、内部ホストを除外するために使われます。ただし、任意のホストを除外指定できます。

    データ ウェアハウスは、除外するホストに関連付けられたヒットをインポートしません。ただし、ヒット カウントの要約や帯域幅データなどの一部の集計専用レポートには、除外するホストに関連付けられたヒットも含められます。

    除外するホスト名を入力するときには、Commerce Server 2000 がログ ファイルの検索に使用できる文字列を入力する必要があります。たとえば、「www.microsoft.com」を入力すると、ホストが www.microsoft.com であるユーザーからの情報を除外します。入力する名前には、スペースを使わないでください。

  • ファイルの種類 Web サイトのあるページに複数のファイルが含まれる場合でも、そのページ内の各ファイルへのヒットではなく、1 つのページ要求のみがカウントされるようにします。たとえば、あるページに複数のグラフィックスが含まれ、それぞれが独立したファイルに格納されていて、それらのグラフィックが論理的にページの一部になっているときは、ヒット カウントが正確になるように、それらのグラフィックス ファイルをインポートから除外します。Excludes プロパティでファイルを除外するように設定するには、除外するファイルの種類の拡張子を指定します。

    特に指定しない限り、.gif、.jpg、.jpeg、.css、.cdf の各拡張子が付いたファイルが Commerce Server のインポートから除外されます。除外一覧から拡張子を削除することもできます。入力する名前は、Commerce Server がログ ファイル内を検索する文字列です。拡張子は正確に入力する必要があります。

  • ファイル式 インポートから除外するファイルを拡張子で指定するほかに、ファイル パスで指定することもできます。これには、ファイルごとに完全なファイル式を指定する方法と、ワイルドカード文字を使って、式の中に類似した文字列を共有する複数のファイルを除外する方法があります。

    ファイル式では、大文字と小文字は区別されません。アンダースコア (_) とスペースは使用できません。除外する文字列は、正確に入力する必要があります。

    次の表は、ファイル式に使用できるワイルドカード文字の一覧を示します。

    文字 説明 例
    * 文字列内の任意の文字数に一致します。 t* は、Test、total、および Terrific に一致します。
    ? 任意の 1 文字の英数字に一致します。 Te?t は、Test と text に一致します。

  • クローラ 検索エンジンは、World Wide Web での特定のコンテンツ、タイトル、キーワードなどのチェックをクローラに依存しています。特に指定しない限り、インターネット検索エンジン、ロボット、およびその他のユーザー エージェントによるヒットがデータ ウェアハウスにインポートされないようにするため、クローラはインポートから除外されます。ただし、これらのヒットはヒット カウントの要約や帯域幅データなどのレポートには含まれます。

    特に指定しない限り除外されるクローラの一覧は、Commerce Server ルート ディレクトリの Crawler.ini にあります。この一覧には、主要な Web 監査組織で除外される主なクローラが含まれています。除外一覧に新しいクローラを追加したり、インポートに使用するクローラを復元することができます。ただし、クローラを復元すると、システム全体のパフォーマンスが低下する場合があります。

[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [除外] タブには、操作するデータの種類を選択できるドロップダウン リストがあります。除外するすべての項目の一覧を表示する場合は、ドロップダウン リストの [すべて] を選択します。

特に指定しない限り、インポートからデータを除外すると、サイトで稼働するすべてのアプリケーションの同じデータも除外されます。また、サイトで稼動するアプリケーションのうち、特定のアプリケーションからのデータは除外し、その他のアプリケーションからの類似データをインポートすることもできます。

たとえば、2 つのサイト アプリケーション Application1 と Application2 があり、どちらのアプリケーションにも /Examples というディレクトリが含まれているとします。この場合、両方のアプリケーションの /Examples ディレクトリの内容を除外するように選択できます。また、Application1 の /Examples ディレクトリに含まれるデータのみを除外するよう指定することもできます。このとき、Application2 の /Examples ディレクトリの内容は、引き続きインポートされることになります。

インポートの除外を追加するには

インポートの除外を削除するには

インポートの除外を追加するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [除外] タブで、次の操作を行います。
    項目 | 操作
    [除外条件に既定のクローラ一覧を含む] | 既定のクローラ一覧にあるクローラをインポートしないようにするには、このチェック ボックスをオンにします。
    [追加] | [除外] ダイアログ ボックスを開いて新しい除外項目を作成するときにクリックします。

  6. [除外] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [除外カテゴリの選択] | 追加する除外の種類をドロップダウン リストから選択します。
    [名前] | Commerce Server がログ ファイルで検索する文字列を入力します。たとえば、「*.gif」と入力すると、グラフィックス ファイルが除外されます。Commerce Server は、入力した文字列に一致する項目をインポートしません。スペースを含めることはできません。
    [サイト内のすべてのアプリケーション] | サイト内のすべてのアプリケーションからの項目を除外する場合に、このオプションを選択します。
    [サイト内の選択されたアプリケーション] | 項目を除外するアプリケーションを指定する場合に、このオプションを選択します。
    [すべて選択] | ボタンの上の一覧に表示されているすべてのアプリケーションからのデータを除外するには、このオプションを選択します。
    [すべて選択解除] | ボタンの上の一覧に表示されたすべてのアプリケーションの選択を取り消すには、このオプションを選択します。

  7. [OK] をクリックして [除外] ダイアログ ボックスを閉じ、[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [除外] タブに戻ります。

  8. 続けて除外を追加します。除外の追加が終了したら、[適用] をクリックします。次に、[OK] をクリックして追加を保存し、ダイアログ ボックスを閉じます。

インポートの除外を削除するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [除外] タブで、次の操作を行います。
    項目 | 操作
    [除外の種類] | 削除する除外項目を選択します。
    [削除] | 除外項目を削除します。

  6. [適用] をクリックし、[OK] をクリックしてダイアログ ボックスを閉じます。

インポートの除外が、Web ログ ファイル インポート プロセスに対して設定されます。Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

関連項目

データ ウェアハウス コンポーネント

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウスにデータをインポートする


推論

Commerce Server 2000 は、ユーザーによる訪問を基にして、Web サイト トラフィックについての情報を得ます。1 回の訪問は、指定した期間内に同一ユーザーが行った要求のセットとして定義できます。ただし、Web のクライアント コンピュータから Web サーバー コンピュータに送信される情報には限りがあるため、完全にユーザーを識別することはできません。Commerce Server は、Web ログ ファイルのプロパティに基づいてユーザーを識別しようとします。推論とは、Web ログ ファイルのデータに基づいて、一意のユーザーを識別する処理です。データ ウェアハウスにユーザーおよび訪問の推論を設定し、インポート中に行われるユーザーおよび訪問に関する仮定を、組織の分析のニーズに最も合うようにカスタマイズできます。

ユーザー

訪問

ユーザー

参照パターンや購入パターンを特定するために、サイトに訪れるユーザーを識別することができます。

Commerce Server には、ユーザーを識別するための 3 つのオプションが備わっています。

  • [推論に Commerce Server 識別 cookie を使用] 暗号化した cookie が自動的に発行されるように Commerce Server を設定します。この cookie は、一意のユーザーを識別し、Commerce Server データベース内のユーザー プロファイルと関連付けます。

  • [推論にユーザー名を使用] ユーザーがサイトに登録する場合、登録したユーザー名でユーザーを識別できます。

  • [カスタム cookie 識別子を使用] カスタム cookie 識別子を追加できます。

注

  • Microsoft Site Server 3.0 Commerce Edition (SSCE) をお使いになっていた場合、Site Server で使われていた cookie はカスタム cookie として処理されます。これらの cookie は、[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [推論] タブの、[新しいカスタム cookie 識別子の入力] ボックスの下にあるカスタム cookie の一覧に表示されます。

特に指定しない限り、3 つの方法すべてが Commerce Server で有効です。3 つのいずれかの方法、または複数の方法を無効にしていない限り、Commerce Server 識別 cookie、cookie 識別子、およびユーザー名の順で、ユーザーを識別します。これらの方法が無効または利用できない場合、ユーザーは IP アドレスおよびクライアント エージェントで識別されます。

ユーザーの推論を設定するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [推論] タブで、次の操作を行います。
    項目 | 操作
    [推論に Commerce Server 識別 cookie を使用] | ユーザーの推論に Commerce Server cookie を使う場合は、このチェック ボックスをオンにします。
    [推論にユーザー名を使用] | 推論に一意のユーザー名を使う場合は、このチェック ボックスをオンにします。
    [カスタム cookie 識別子を使用] | 推論にカスタム cookie 識別子を使う場合は、このチェック ボックスをオンにします。
    [新しいカスタム cookie 識別子の入力] | このボックスにカスタム cookie 識別子を入力します。
    [追加] | 新しいカスタム cookie 識別子を追加するときにクリックします。
    [削除] | 選択したカスタム cookie 識別子を削除するときにクリックします。
    1 つ上に移動 | 選択したカスタム cookie 識別子を一覧の上方向に移動するときにクリックします。cookie は、この一覧に表示された順に実行されます。
    1 つ下に移動 | 選択したカスタム cookie 識別子を一覧の下方向に移動するときにクリックします。cookie は、この一覧に表示された順に実行されます。

  6. [適用] をクリックし、[OK] をクリックします。

ユーザーの推論が、Web ログ ファイル インポートに対して設定されます。Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

訪問

Web サイトへの訪問とは、一意のユーザーがその Web サイト上で過ごした時間の長さです。通常、ユーザーがサイトへのリンクをクリックするか、またはブラウザの [アドレス] ボックスにサイトの URL を入力することによってサイトにアクセスすると、訪問が開始されます。訪問がいつ終了したかを判断するのは、さらに難しくなります。ユーザーがセッションの途中でブラウザを終了したり、ブラウザを最小化したり、ブラウザの [アドレス] ボックスに新しい URL を入力した場合、訪問の終了を示すログ エントリは存在しないためです。

訪問の終了が明確に通知されないことを補うため、Commerce Server では、既定の訪問タイムアウトが設定されます。これは、ユーザーの利用状況がない状態が 30 分間続くと、訪問が終了したと判断します。Web サイトのニーズに合わせて、訪問タイムアウトの長さを変更することもできます。訪問タイムアウトが経過して訪問が終了した後、しばらくしてユーザーがサイトに戻った場合、レポートには 2 回の訪問として記録されます。

注

  • サーバーがユーザーの訪問活動を時間順にログに記録しないことがあります。このような場合、訪問に関するデータは時間順にインポートされないことがあります。データ ウェアハウスは、データが訪問のタイムアウトの長さの範囲に収まるように調整できます。ただし、訪問のタイムアウトを超過するデータの場合、正確性は損なわれます。

訪問の推論を設定するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [推論] タブで、[訪問の推論] ボックスに、訪問終了とみなすまでのアイドル時間を分単位で入力します。

  6. [適用] をクリックし、[OK] をクリックします。

訪問の推論が、Web ログ ファイル インポート プロセスに対して設定されます。Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

関連項目

データ ウェアハウス コンポーネント

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウスにデータをインポートする


ログ ファイル

時間重複プロパティを使うと、ログ ファイルに時間が重複する要求がある場合に冗長データが発生しないようにすることができます。交換プロパティを使うと、サイズの肥大化を防ぐ目的でログ ファイルをサーバー間で交換する場合に、冗長データやデータの欠落をなくすことができます。

時間重複とログファイル交換を設定しない場合、利用状況データを失わずにログ ファイルをデータ ウェアハウスにインポートすることはできません。ログ ファイルはサイトが稼働する限り、継続的に作成されるためです。ログ ファイルを複数のサーバーで実行する場合、単一のサーバーでログ生成の中断と再開が発生する場合、ログ ファイルを誤って再インポートする場合、またはログ ファイルを結合する場合は、期間が重複したデータがファイルに含まれることがあります。

時間重複

交換

時間重複

時間重複が発生するのは、1 つのサイトに複数のサーバーが関連付けられている場合、単一のサーバーでログ生成の中断と再開が発生する場合、ログ ファイルを誤って再インポートする場合、またはログ ファイルを結合する場合です。ファイルの結合は、時間重複の追跡がきわめて困難になるため、避けることをお勧めします。特に指定しない限り、Commerce Server の時間重複の期間は 30 分です。

特に指定しない限り、インポート中に時間重複が検出されると、重複した要求は破棄され、残りの要求がインポートされます。時間重複の期間と、重複が検出されたときに実行するアクションの両方について変更できます。

誤ってインポートしたログ ファイルは、データ削除タスクを使って削除できます。ログ ファイルの削除については、「データ ウェアハウスからデータを削除する」を参照してください。

次の図は、重複が検出されたときに 2 番目と 3 番目のログ ファイルで維持される部分について、4 つの重複アクション ([レコードを廃棄して続行する]、[すべてのレコードをインポートする]、[インポートを中止する]、および [すべてのインポートを中止する]) がどのように影響を与えるかを示します。

Web ログ ファイルの重複
ログ ファイルでインポートされない部分
ログ ファイルでインポートされる部分
ログ ファイル
ログ ファイル 3
ログ ファイル 2
ログ ファイル 1
[レコードを廃棄して続行する]
[すべてのレコード
をインポートする]
[インポートを
中止する]
[すべてのインポートを
中止する]

Web ログ ファイルの時間重複を構成するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [ログ ファイル] タブで、次の操作を行います。
    項目 | 操作
    [レコードが重複していると判定するまでの経過時間 (分)] | レコードが重複していると判定するまでの経過時間を分で入力します。
    [重複が検出されたとき:] 重複が検出された場合にとるアクションを選択します。
    • [レコードを廃棄して続行する] (既定の設定) 重複している要求をすべて破棄し、残りの要求をインポートします。

    • [すべてのレコードをインポートする] 重複している要求を含め、すべての要求をインポートします。

    • [インポートを中止する] 重複している要求を含むログ ファイルをインポートしません。ほかのログ ファイルはすべてインポートされます。

    • [すべてのインポートを中止する] ログ ファイルのインポートをすべて中止します。重複する要求が検出されるまでにインポートされたデータが不要であれば、インポート済みのログ ファイルは削除する必要があります。

    注

    • インポートで発生した問題のトラブルシューティングを行うには、[インポートを中止する] または [すべてのインポートを中止する] を選択します。
  6. [適用] をクリックし、[OK] をクリックします。

時間重複プロパティが、Web ログ ファイル インポート プロセスに対して設定されました。Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

交換

交換を行うと、ログ ファイル内のデータが任意の場所で分割されます。いくつかの訪問のデータが、あるログ ファイルの末尾と次のログ ファイルの先頭に分かれるためです。分割されたオープン訪問は、インポート プロセスの最後に、保存、コミット、または破棄するように選択できます。

交換を設定するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [ログ ファイル] タブで、次の操作を行います。
    項目 操作
    [インポートの完了時] インポート プロセス終了時のオープン訪問についてとるアクションを選択します。
    • [次回のインポート時にオープン訪問を保存する] (既定の設定) 1 つの継ぎ目のないログ ファイルのように実際の訪問を再構築します。このオプションは、新しいインポートのたびにキャッシュからオープン訪問を呼び出す必要があるため、若干時間がかかります。このオプションが正しく機能するには、ログ ファイルを時間順にインポートする必要があります。

    • [データベースにオープン訪問をコミットする] ログ ファイル出力期間の最初と最後は、両方の期間にまたがる訪問が 2 回カウントされるため、訪問数が多くなります。

    • [オープン訪問を廃棄する] ログ ファイル出力期間の終了時は、終了していない訪問が削除されるため、訪問数が少なくなります。

  6. [適用] をクリックし、[OK] をクリックします。

交換プロパティが、Web ログ ファイル インポート プロセスに対して設定されました。Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

関連項目

データ ウェアハウス コンポーネント

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウスにデータをインポートする


クエリ文字列

サイトでクエリ文字列を使用する場合、クエリ文字列をログ ファイルに記録して、データ ウェアハウスにインポートできます。クエリ文字列は、サイト内で実行可能ファイルの検索や実行に使用できます。サイトで使用するクエリ文字列の一覧がある場合は、それらのクエリ文字列に関連付けられたコンテンツについてのレポートを生成できます。

特に指定しない限り、クエリ文字列は統一リソース識別子 (URI) を使ってデータ ウェアハウスに保存されます。クエリ文字列を使うと、サイトでクエリ文字列を使用するページに対して HTML タイトル検索を実行できます。ただし、ログ ファイル内のクエリ文字列に、多くの種類のパラメータ名と値の組み合わせがある場合、インポートされる要求数がきわめて増加し、システム パフォーマンスが低下する可能性があります。このような場合は、URI を使用したクエリ文字列の保存を中止することをお勧めします。

注

  • データ ウェアハウスには、最大で 256 の単一の値および複数値のクエリ文字列を組み合わせてインポートできます。

  • インポートされたクエリ文字列は、最大で 150 の単一の値のクエリ文字列、または最大で 256 の複数値のクエリ文字列を組み合わせて構成できます。インポートするクエリ文字列が多すぎると、Web ログ インポート プロセスが失敗します。

  • データ ウェアハウスでは、インポートされる複数値の文字列 (クエリ文字列を含む) の長さは、512 文字までに制限されています。512 文字を超える複数値のクエリ文字列は、インポートによって 512 文字に切り捨てられます。

インポートするクエリ文字列を設定するには

インポートからクエリ文字列を削除するには

クエリ文字列構成のプロパティを表示するには

インポートするクエリ文字列を設定するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [クエリ文字列] タブで、次の操作を行います。
    項目 | 操作
    [クエリ文字列を URL と共に保存] | クエリ文字列とそれに関連付けられた URI をデータ ウェアハウスに保存する場合は、このチェック ボックスをオンにします。
    [追加] | [クエリ文字列] ダイアログ ボックスを開くときにクリックします。

  6. [クエリ文字列] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] ログ ファイルに表示されるクエリ文字列の名前を正確に入力します。

    この名前には、既定のデータ ウェアハウス列と同じ名前を使用できません。また、Commerce Server クエリ文字列用に予約されているため、"CEVT" という文字列を含めることもできません。さらに、この名前には、空白または次の文字を含めることもできません。'、"、+、&、^、'、"、{、}、<、>、または =。

    [サイト内のすべてのアプリケーション] | サイト内のすべてのアプリケーションからクエリ文字列をインポートするには、このオプションを選択します。
    [サイト内の選択されたアプリケーション] | クエリ文字列をインポートするアプリケーションを選択するには、このオプションを選択します。
    [データ型の選択] ドロップダウン リストからクエリ文字列のデータ型を選択します。使用できるデータ型は、整数、文字列、日付/時間、および実数の 4 つです。

    データ型文字列に許可される最大文字数は 255 です。
    [複数値データ型] | クエリ文字列で複数値データ型を使う場合に、このチェック ボックスをオンにします。

  7. [OK] をクリックして [クエリ文字列] ダイアログ ボックスを閉じます。

  8. [適用] をクリックし、[OK] をクリックします。

クエリ文字列が、Web ログ ファイル インポート プロセスに対して設定されます。Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

インポートからクエリ文字列を削除するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [クエリ文字列] タブで、削除するクエリ文字列を選択し、[削除] をクリックします。

  6. [適用] をクリックし、[OK] をクリックします。

クエリ文字列が、Web ログ ファイル インポート プロセスから削除されます。Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

クエリ文字列構成のプロパティを表示するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスの [拡張] をクリックします。

  5. [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [クエリ文字列] タブで、[プロパティ] をクリックして [クエリ文字列] ダイアログ ボックスを開きます。ただし、表示されるプロパティは変更できません。

    注

    • プロパティを変更するには、まずインポートするクエリ文字列を削除してから、新しいプロパティを設定して再度そのクエリ文字列を追加します。
  6. [OK] をクリックし、もう一度 [OK] をクリックします。

Web ログ ファイル インポート プロパティの設定の続行、またはデータ ウェアハウスへのデータのインポートを行うことができます。データをデータ ウェアハウスにインポートする前に、サイト構成をデータ ウェアハウスと同期させる必要があります。

関連項目

データ ウェアハウス コンポーネント

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウスにデータをインポートする


データ ウェアハウスにデータをインポートする

データ ウェアハウスにデータをインポートするには、Commerce Server インポート タスクを使います。

ここでは、次のトピックについて説明します。

  • Web ログ ファイル データをインポートする

  • カタログ データをインポートする

  • キャンペーン データをインポートする

  • トランザクション データをインポートする

  • ユーザー プロファイル データをインポートする


Web ログ ファイル データをインポートする

サイトから Web ログ ファイル データをインポートするには、Web サーバー ログ インポート タスクを使います。データをインポートする頻度を決定するには、サイトのトラフィックを分析します。Web サイトのトラフィックが多いほど、Web ログ ファイル データのインポートを頻繁に実行する必要があります。

インターネット インフォメーション サービス (IIS) 5.0 を実行していない、または Commerce Server コンポーネントを含んでいない Web サイトからも、ログ ファイルをインポートできます。Commerce Server コンポーネントを使わないアプリケーションおよび Web サーバーを追加する方法の詳細については、｢非 Commerce のアプリケーションと Web サーバーを追加する｣を参照してください。

Web ログ ファイル データをインポートする前に、構成同期タスクを実行して、サイト構成をデータウェアハウスと同期させる必要があります。Web ログ ファイル データのインポート後、レポート準備タスクを実行する必要があります。これにより、インポートされたデータは指定のオンライン分析処理 (OLAP) キューブに集約されます。

Web ログ ファイルをデータ ウェアハウスにインポートするには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  4. [Web サーバー ログのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [説明] | インポート タスクの説明を入力します。
    [サイト名] | インポートする Web サーバー ログを含む Web サイト名を、ドロップダウン リストから選択します。
    [アプリケーション] | ログ ファイルの一覧をアプリケーションによって並べ替えるときにクリックします。
    [マシン] | ログ ファイルの一覧をコンピュータによって並べ替えるときにクリックします。
    [IIS Web サイト] | ログ ファイルの一覧を IIS Web サイトによって並べ替えるときにクリックします。
    [ログ ファイル パス] | ログ ファイルの一覧をログ ファイルのパスによって並べ替えるときにクリックします。
    [ログ ファイル パス] | インポートする Web ログ ファイルのパスを入力します。または、省略記号 [...] ボタンをクリックして、ログ ファイルのパスを参照します。
    [ログ ファイルの表示] | [Web サーバー ログ ファイル] ダイアログ ボックスを開くときにクリックします。[Web サーバー ログ ファイル] ボックスの一覧から、インポートする Web ログ ファイルを選択します。[OK] をクリックすると [Web サーバー ログのインポート] ダイアログ ボックスに戻ります。
    [前回以降のすべてのログ ファイルのインポート] | 前回のインポート以降に作成されたファイルをすべて指定するには、このオプションを選択します。
    [日付/時刻の期間を指定したログ ファイルのインポート] | [開始日/時刻] から [終了日/時刻] までの間に作成されたログ ファイルのみをインポートするように指定するには、このオプションを選択します。
    [開始日/時刻] | ログ ファイルをインポートする範囲の最初の日付と時刻を入力します。このオプションは、[日付/時刻の期間を指定したログ ファイルのインポート] オプションを選択している場合にのみ利用できます。
    [終了日/時刻] | ログ ファイルをインポートする範囲の最後の日付と時刻を入力します。このオプションは、[日付/時刻の期間を指定したログ ファイルのインポート] オプションを選択している場合にのみ利用できます。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

    注

    • Web ログ ファイルのインポート プロセスが失敗した場合は、データ削除タスクを実行して Web ログ ファイル関連のデータを削除してから、レポート準備タスクを実行して OLAP キューブを更新してください。
  7. [OK] をクリックし、次に [終了] をクリックします。

Web ログ ファイルのデータが、データ ウェアハウスにインポートされます。レポート準備タスクを実行して、インポートされたデータを指定の OLAP キューブに集約する必要があります。

注

  • 1 つのパッケージに複数のデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを実行できます。

  • さまざまな Web ログ ファイル インポートの拡張プロパティを設定することによって、インポート プロセスを詳細に設定できます。Web ログ ファイル インポート プロパティの構成方法については、「Web ログ ファイル インポート プロパティを構成する」を参照してください。Web サーバー プロパティを設定する方法については、「Web サーバーを構成する」を参照してください。

関連項目

データ ウェアハウス コンポーネント

Web ログ ファイル インポート プロパティを構成する

サイト構成をデータ ウェアハウスと同期させる

レポートの作成を準備する

データ ウェアハウスからデータを削除する


カタログ データをインポートする

カタログ データをインポートするには、商品カタログ インポート タスクを使います。カタログ データをインポートする前に、構成同期タスクを実行して、サイト構成をデータウェアハウスと同期させる必要があります。カタログ データのインポート後、レポート準備 DTS タスクを実行する必要があります。これにより、インポートされたデータは指定のオンライン分析処理 (OLAP) キューブに集約されます。

注

  • カタログ データを最初にデータ ウェアハウスにインポートするときに、[すべて読み込み] オプションを使って、フル インポートを実行する必要があります。カタログ データをインポートした後は、[増分の読み込み] オプションを使って、最後のカタログ データのインポート以降に作成された、新しいデータのみをインポートします。

カタログ データをデータ ウェアハウスにインポートするには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [商品カタログ インポート (Commerce Server)] をクリックします。

  4. [カタログ インポート プロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [説明] | このインポート タスクの説明を入力します。
    [サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。
    [増分の読み込み] | 前回のインポートに基づいて新規カタログ データのみをインポートするには、このオプションを選択します。
    [すべて読み込み] | すべてのカタログ データをインポートするには、このオプションを選択します。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  7. [OK] をクリックし、次に [終了] をクリックします。

データ ウェアハウスにカタログ データがインポートされます。レポート準備タスクを実行して、インポートされたデータを指定の OLAP キューブに集約する必要があります。

注

  • 1 つのパッケージに複数のデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを実行できます。

関連項目

データ ウェアハウス コンポーネント

データ ウェアハウスにデータをインポートする

サイト構成をデータ ウェアハウスと同期させる

レポートの作成を準備する


キャンペーン データをインポートする

キャンペーン データをインポートするには、キャンペーン データ インポート タスクを使います。キャンペーン データをインポートする前に、構成同期タスクを実行して、サイト構成をデータウェアハウスと同期させる必要があります。キャンペーン データのインポート後、レポート準備 DTS タスクを実行する必要があります。これにより、インポートされたデータは指定のオンライン分析処理 (OLAP) キューブに集約されます。

キャンペーン データをデータ ウェアハウスにインポートするには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [キャンペーン データ インポート (Commerce Server)] をクリックします。

  4. [キャンペーン インポート プロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [説明] | このインポート タスクの説明を入力します。
    [サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  7. [OK] をクリックし、次に [終了] をクリックします。

データ ウェアハウスにキャンペーン データがインポートされます。レポート準備タスクを実行して、インポートされたデータを指定の OLAP キューブに集約する必要があります。

注

  • 1 つのパッケージに複数のデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを実行できます。

関連項目

データ ウェアハウス コンポーネント

データ ウェアハウスにデータをインポートする

サイト構成をデータ ウェアハウスと同期させる

レポートの作成を準備する


トランザクション データをインポートする

トランザクション データをインポートするには、トランザクション データ インポート タスクを使います。トランザクション データをインポートする前に、構成同期タスクを実行して、サイト構成をデータウェアハウスと同期させる必要があります。トランザクション データのインポート後、レポート準備 DTS タスクを実行する必要があります。これにより、インポートされたデータは指定のオンライン分析処理 (OLAP) キューブに集約されます。

注

  • トランザクション データを最初にデータ ウェアハウスにインポートするときに、[すべて読み込み] オプションを使って、フル インポートを実行する必要があります。トランザクション データをインポートした後は、[増分の読み込み] オプションを使って、最後のトランザクション データのインポート以降に作成された、新しいデータのみをインポートします。

トランザクション データをデータ ウェアハウスにインポートするには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [トランザクション データ インポート (Commerce Server)] をクリックします。

  4. [トランザクション インポート プロパティ] ダイアログ ボックスの [全般] タブで、次の操作を行います。
    項目 | 操作
    [説明] | このインポート タスクの説明を入力します。
    [サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。
    [増分の読み込み] | 前回のインポートに基づいて新規トランザクション データのみをインポートするには、このオプションを選択します。
    [すべて読み込み] | すべてのトランザクション データをインポートするには、このオプションを選択します。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  7. [OK] をクリックし、次に [終了] をクリックします。

データ ウェアハウスにトランザクション データがインポートされます。レポート準備タスクを実行して、インポートされたデータを指定の OLAP キューブに集約する必要があります。

注

  • 1 つのパッケージに複数のデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを実行できます。

関連項目

データ ウェアハウス コンポーネント

データ ウェアハウスにデータをインポートする

サイト構成をデータ ウェアハウスと同期させる

レポートの作成を準備する


ユーザー プロファイル データをインポートする

ユーザー プロファイル データをインポートするには、ユーザー プロファイル データ インポート タスクを使います。ユーザー プロファイル データは、ユーザー オブジェクトのプロファイル定義によって Web サイトで収集されるユーザー データです。プロファイル定義の作成については、「プロファイル リソースの実行」を参照してください。

ユーザー データをインポートする前に、構成同期タスクを実行して、サイト構成をデータウェアハウスと同期させる必要があります。ユーザー データのインポート後、レポート準備タスクを実行する必要があります。これにより、インポートされたデータは指定のオンライン分析処理 (OLAP) キューブに集約されます。データ ウェアハウスにインポートするユーザー データを指定する方法については、「プロファイル定義にプロパティを追加する」を参照してください。

注

  • ユーザー プロファイル データを最初にデータ ウェアハウスにインポートするときに、[すべて読み込み] オプションを使って、フル インポートを実行する必要があります。ユーザー プロファイル データをインポートした後は、[増分の読み込み] オプションを使って、最後のユーザー プロファイル データのインポート以降に作成された、新しいデータのみをインポートします。

ユーザー データをデータ ウェアハウスにインポートするには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [ユーザー プロファイル データ インポート (Commerce Server)] をクリックします。

  4. [ユーザー インポート プロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [説明] | このインポート タスクの説明を入力します。
    [サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。
    [クエリ間隔 (分)] インポートの間隔を入力します。データベース テーブルのロックを防止するため、一定の間隔でユーザー データをインポートします。たとえば、10,000 人のユーザーがいる Web サイトでは、15 分間隔でユーザー データをインポートします。

    小さい値を設定するほど、テーブルをロックする時間は短くなりますが、テーブルに対するクエリの数が増加し、タスクの実行に時間がかかります。値を 0 に設定すると、1 つのクエリを実行して、インポートが完全に終了するまでテーブルをロックし続けますが、サイトのパフォーマンスが低下する場合があります。
    [インポート開始日] | ドロップダウン カレンダーからインポートを開始する日付を選択します。
    [増分の読み込み] | 前回のインポートに基づいて新規ユーザーのみをインポートするには、このオプションを選択します。
    [すべて読み込み] | すべてのユーザー データをインポートするには、このオプションを選択します。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  7. [OK] をクリックし、次に [終了] をクリックします。

データ ウェアハウスにユーザー プロファイル データがインポートされます。レポート準備タスクを実行して、インポートされたデータを指定の OLAP キューブに集約する必要があります。

注

  • 1 つのパッケージに複数のデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを実行できます。

関連項目

データ ウェアハウス コンポーネント

データ ウェアハウスにデータをインポートする

サイト構成をデータ ウェアハウスと同期させる

レポートの作成を準備する

プロファイル定義にプロパティを追加する


インターネット プロトコル解決を実行する

IP 解決タスクは、インターネット プロトコル (IP) アドレスを解決する場合に定期的に使います。これにより、データ ウェアハウス内のデータの有意性を維持できます。

IP 解決タスクを開始すると、新しい IP アドレスを解決しようとして、解決済み IP アドレスのキャッシュがチェックされます。キャッシュのチェック後に未解決の IP アドレスが残った場合は、ドメイン ネーム システム (DNS) サーバーがチェックされます。IP 解決の成功率は、通常 60 ～ 75% です。IP アドレスはバッチ ファイル内で解決されます。このファイルによって、DNS サーバーとの接続を最適化します。

IP 解決タスクを開始すると、特に指定しない限り、ドメイン名を持たない IP アドレスだけが解決されます。すべてのドメイン名の変更を取得する場合は、すべての IP アドレスを解決することを選択できます。このオプションを使うと、既にデータ ウェアハウスに含まれているドメイン名も更新されます。

注

  • データ ウェアハウスで最初に IP アドレスを解決するときに、全検索オプションを使う必要があります。全検索を実行した後は、増分 IP 解決を実行して、新しい IP アドレスのみを検索できます。

IP アドレスを解決するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [IP 解決 (Commerce Server)] をクリックします。

  4. [IP 解決 DTS プロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [説明] | このタスクの説明を入力します。
    [サイト名] | ドロップダウン リストから、IP 解決を実行するデータを含むサイトを選択します。
    [増分検索] | まだ解決されていない IP アドレスのみを解決するには、このオプションを選択します。
    [全検索] | すべての IP アドレスを解決するには、このオプションを選択します。
    [ローカル ドメイン名] | IP アドレスを解決するために使用するプライマリ サーバーである、ドメイン ネーム サーバー (DNS) のローカル ドメイン名を入力します。
    [検索結果をキャッシュする日数] | 解決した IP アドレスをキャッシュする日数を入力します。既定値は 30 日です。既定値より大きい値を指定すると、IP 解決がより高速になります。ただし、ドメイン名の変更は取得できない場合があります。
    [タイムアウトまでの秒数:] | IP アドレスが解決できなかったとみなされるまでに DNS サーバーが検索される時間 (秒) を入力します。既定値は 60 秒です。既定値以上に設定すると、解決できる IP アドレスの数は増えますが、IP 解決にかかる時間も長くなります。
    [バッチに保持する検索要求の数] | 検索要求の数を入力します。DNS サーバーに一括転送される IP アドレスの数を指定します。既定値は 500 です。10 ～ 99,999 の範囲で設定できます。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  7. [OK] をクリックし、次に [終了] をクリックします。

IP 解決が実行されます。レポート準備タスクを実行して、インポートされたデータを指定の OLAP キューブに集約する必要があります。レポート準備タスクの実行方法については、「レポートの作成を準備する」を参照してください。

注

  • 1 つのパッケージに複数のデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを一度に実行できます。

関連項目

データ ウェアハウスについて

Web ログ ファイル インポート プロパティを構成する

レポートの作成を準備する


レポートの作成を準備する

レポート準備タスクを使って、データ ウェアハウスのデータからオンライン分析処理 (OLAP) キューブを生成します。Commerce Server 2000 では、分析モジュールで実行されるレポートが短時間で完了するように、OLAP キューブを使ってデータ ウェアハウスのデータを要約します。データ ウェアハウスでデータがインポートまたは削除されるたびに、レポート準備タスクを実行する必要があります。OLAP キューブについては、SQL Server Books Online を参照してください。

注

  • データ ウェアハウスの OLAP キューブにデータを生成するとき、レポート準備タスクを初めて実行する場合は、完全なキューブ処理を実行する必要があります。レポート準備タスクの実行後は、増分キューブ処理を実行して、新しいデータだけを OLAP キューブに読み込むことができます。

  • データ ウェアハウスからすべてのデータを削除した後にも、すべてのキューブ処理を選択する必要があります。データ ウェアハウスからデータを削除する方法については、「データ ウェアハウスからデータを削除する」を参照してください。

OLAP キューブにデータを生成するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [レポート準備 (Commerce Server)] をクリックします。

  4. [レポートの準備のプロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [説明] | レポート準備タスクの説明を入力します。
    [サイト名] | OLAP キューブを生成するサイトを選択します。
    [増分] | OLAP キューブの増分のみを処理する場合に選択します。
    [すべて] | OLAP キューブの全体を処理する場合に選択します。

  5. [OK] をクリックします。

  6. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  7. [OK] をクリックし、次に [終了] をクリックします。

データが OLAP キューブに読み込まれます。Commerce Server レポートを含む、Commerce Server ビジネス分析システムを使って、データ ウェアハウスのデータを分析できます。レポートを実行する方法の詳細については、「ビジネス デスク分析 」を参照してください。

注

  • 開いているパッケージに複数のデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを一度に実行できます。

関連項目

データ ウェアハウス コンポーネント

サイト構成をデータ ウェアハウスと同期させる

データ ウェアハウスにデータをインポートする


データ ウェアハウスからデータを削除する

データ ウェアハウスからデータを削除するには、データ削除タスクを使います。データ ウェアハウスには 2 種類のデータが格納されています。1 つは詳細ログ ファイル データ、もう 1 つは要約データです。データ ウェアハウスでは、指定された情報をデータのインポート時に追跡することによって、これらのデータを作成します。Web ログ ファイルのインポートに失敗した場合、データ削除タスクを使って、データ ウェアハウスからそのログ ファイルを削除します。データ削除タスクを使って、データ ウェアハウスからすべてのデータを削除することもできます。

パフォーマンスが低下したり、データ ウェアハウス内のメモリ容量が制限されることのないように、古いログ ファイル データを頻繁に削除することが重要です。Commerce Server サイトの履歴データを維持する場合は、保存するデータをレポートに抽出します。

注

  • 個々の Web ログ ファイルからデータを削除するには、データ ウェアハウス データベースに一時的な領域が必要です。データ削除タスクに失敗した場合は、データ ウェアハウス データベースの領域を解放して、削除プロセスを繰り返します。

データ ウェアハウスからデータを削除した後で、レポート準備タスクを実行してオンライン分析処理 (OLAP) キューブを更新する必要があります。データ ウェアハウスからデータを削除した後は、すべてのキューブ処理を選択する必要があります。

注

  • 個々の Web ログ ファイルからインポートした詳細データを削除しても、Commerce Server ビジネス デスクの分析モジュールのレポートによってアクセスされるログ ファイル データは同じままです。詳細データの削除によって影響を受けるのは、エントリ画面の分析レポートだけです。レポートの基になるデータを削除するには、Web ログ ファイルからインポートされたデータをすべて削除する必要があります。

ログ ファイル データを削除するには

  1. [Microsoft SQL Server] を展開し、[SQL Server グループ] を展開します。次に、データ ウェアハウスがインストールされているサーバーを展開します。

  2. [データ変換サービス] をマウスの右ボタンでクリックし、[新規パッケージ] をクリックします。

    既存のパッケージを変更する場合は、[データ変換サービス] をマウスの右ボタンでクリックし、[パッケージを開く] を選択します。次に、変更するパッケージを選択し、[開く] をクリックします。

  3. [タスク] メニューの [データ削除 (Commerce Server)] をクリックします。

  4. [タスクの削除] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [説明] | タスクの説明を入力します。
    [サイト名] | ドロップダウン リストから、削除するログ ファイルを含むサイトを選択します。
    [削除の種類の選択] ドロップダウン リストの [Web ログのインポート] をクリックします。

    注

    • 異なるデータ ウェアハウスを使用している 2 つのサイトがある場合に [すべて] を選択すると、現在選択されたサイトのデータ ウェアハウスのデータだけが削除されます。両方のデータ ウェアハウスからデータを削除することはできません。
    [詳細データの削除] | 削除する Web ログ ファイルに関する詳細データを削除するには、このオプションを選択します。

  5. 削除する Web ログ ファイルの横のチェック ボックスをオンにします。

  6. [OK] をクリックします。

  7. [パッケージ] メニューの [実行] をクリックします。

    インポートの進行状況を示す [パッケージ実行中] ダイアログ ボックスが表示されます。インポート プロセスが完了すると、正常に終了したことを示す [パッケージ実行結果] ダイアログ ボックスが表示されます。

  8. [OK] をクリックし、次に [終了] をクリックします。

選択した Web ログ ファイルの詳細データが、データ ウェアハウスから削除されます。レポート準備タスクを実行して、インポートされたデータを更新する必要があります。

注

  • 開いているパッケージにほかのデータ変換サービス (DTS) を追加し、シーケンス情報やワークフロー情報を追加して、パッケージ内のすべてのタスクを一度に実行できます。

関連項目

データ ウェアハウスについて

データ ウェアハウス コンポーネント

Web サーバーを構成する

レポートの作成を準備する

データ ウェアハウスにデータをインポートする


データ ウェアハウスを拡張する

データ ウェアハウスの論理スキーマと機能は拡張できます。データ ウェアハウスの論理スキーマを拡張する方法、およびカスタム データをデータ ウェアハウスにインポートする方法については、「データ ウェアハウスを操作する」を参照してください。新しいデータ変換サービス (DTS) タスクの作成については、SQL Server Books Online を参照してください。

関連項目

データ ウェアハウスを操作する

データ ウェアハウスのメタモデル


ダイレクト メーラーの実行

Commerce Server ダイレクト メーラーは、多数の受信者のグループ宛に Web ページからパーソナライズされた電子メール メッセージを送信したり、フラット テキスト ファイルかパーソナライズされていないメールを送信するために使います。ダイレクト メーラーは、スタンドアロン プロセスとして使うことも、Commerce Server ビジネス デスクのキャンペーン モジュールに統合することもできます。

ダイレクト メーラーは、集中型の設計になっているので、簡単に管理できます。ダイレクト メーラは、Commerce Server のグローバル リソース レベルで動作します。各サイトは、使用するダイレクト メーラーの特定のグループ インスタンスを参照します。これにより、ダイレクト メーラーの使用をサイト単位に分け、負荷分散できます。

ダイレクト メーラーでは、コマンド ライン インターフェイスを使って、ダイレクト メーラー ジョブの作成、実行、監視、および削除を行ったり、ジョブの開始と回復を行います。ダイレクト メーラーに関するプロパティを構成するには、Commerce Server マネージャを使います。

ダイレクト メーラーは、インストール時に Commerce Server のほかの機能と自動的に統合されます。ただし、Commerce Server のその他のコンポーネントを使わずに、スタンドアロン製品として使用することもできます。ダイレクト メーラーをスタンドアロン製品として使うには、ダイレクト メーラーのコマンドライン インターフェイスを使います。

ここでは、次のトピックについて説明します。

  • ダイレクト メーラーのワークフロー ダイレクト メーラー ジョブのワークフローについて図を使って説明します。

  • ダイレクト メーラーについて ダイレクト メーラーに必要なソフトウェアと依存関係について説明します。ダイレクト メーラー パイプラインの概要を含む、ダイレクト メーラーのコンポーネントについて、および脱退リストとその機能について説明します。

  • ダイレクト メール リストを作成および管理する ビジネス デスクのリスト マネージャでリストを使用する方法と、ダイレクト メーラー リストの作成と処理を行う方法について説明します。

  • ダイレクト メール キャンペーンを設定する ダイレクト メール キャンペーンの設定に必要な手順について説明します。

  • ダイレクト メールのコンテンツを作成する ダイレクト メール メッセージ本文用のパーソナライズされたコンテンツを作成する方法について説明します。

  • ダイレクト メーラーを構成する ダイレクト メーラーが電子メール メッセージを送信する時間単位の量を変更する方法と、複数の配信場所を使用する方法について説明します。

  • ダイレクト メーラー ジョブの状態を表示する ダイレクト メーラー ジョブの状態を調べる方法について説明します。

  • ダイレクト メーラー ジョブを一時停止、停止、および削除する ダイレクト メーラー ジョブの停止と削除を行う方法について説明します。

  • ダイレクト メーラー ジョブを再開する 処理が完了する前に停止したダイレクト メーラー ジョブを再開する方法について説明します。

  • ダイレクト メーラーをスタンドアロン モードで実行する ダイレクト メーラーをスタンドアロン製品として実行する方法について説明します。


ダイレクト メーラーのワークフロー

次の図は、ダイレクト メーラー ジョブのワークフローを示します。

Commerce Server
ビジネス デスク
リスト マネージャ
キャンペーン マネージャ
ダイレクト メール
キャンペーン
データ ウェアハウス
ユーザー
SQL Server
Web ログ
レポート
IIS イベント
プロセッサ
キャンペーン データベース
(Retail_Commerce)
CDO
パイプライン
DML Run
ダイレクト メール
NT サービス
SQL Server エージェント
SQL Server ダイレクト メール データベース
データベースに関する
すべてのジョブの追跡
ダイレクト メール
ユーザー インターフェイス
スタンドアロン
モード
Web サーバーのパーソナライズされた
メール ページ


ダイレクト メーラーについて

ダイレクト メーラーは、Commerce Server の完全インストールの一部として、またはカスタム インストールのオプションとしてインストールされる Windows 2000 サービスです。動作可能なダイレクト メーラーのインスタンスは、1 台のサーバーにつき 1 つだけです。ただし、複数のダイレクト メーラー リソースをグローバル リソース レベルで保有することもできます。

ダイレクト メーラーでは、次の作業を行います。

  • ダイレクト メーラー ジョブの管理。

  • パーソナライズされているメッセージ本文、またはパーソナライズされていないメッセージ本文の作成。

  • 電子メール メッセージ ヘッダーの書式設定。

  • コード ページ値 (言語) の設定と、メッセージ本文の正しい形式 (MIME Encapsulation of Aggregate HTML Documents (MHTML)、Multipurpose Internet Mail Extensions、またはテキスト) への変換。

  • 受信者への電子メール メッセージの送信。

Commerce Server ビジネス デスクのリスト マネージャ モジュールを使うと、ダイレクト メーラーに受信者のリストを提供できます。また、スタンドアロン モードでダイレクト メーラーを実行しているときコマンド ラインから、使用するリストをファイル名または SQL Server クエリで指定することもできます。受信者リストを提供した場合、ダイレクト メーラーはリスト マネージャ オブジェクトを使って、受信者ごとに同じ処理手順を実行します。

ダイレクト メーラーでは、Web ページまたは静的ファイルからメッセージ本文を作成できます。また、SQL Server テンプレートなどのほかのソースからメッセージを作成するように、機能を拡張することもできます。この機能拡張を行うには、ダイレクト メーラー パイプラインにカスタム コンポーネントを追加します。ダイレクト メーラー パイプラインにカスタム コンポーネントを追加する方法の詳細については、「ダイレクト メーラー パイプラインの使い方」を参照してください。

ダイレクト メーラーでは、パーソナライズされた電子メール メッセージを Web ページから、またはパーソナライズされていないメーリングをフラット テキスト ファイルから多数の受信者のグループ宛てに送信できます。

ダイレクト メーラーの要件

ダイレクト メーラー データベース

ダイレクト メーラ パイプライン

脱退リスト

ダイレクト メーラーの要件

ダイレクト メーラーの要件は、次のとおりです。

  • 必要なソフトウェアと依存関係

  • メーリング リストの形式

  • メッセージ形式

  • メッセージ ソース

必要なソフトウェアと依存関係

ダイレクト メーラーでは、データベースとして SQL Server 7.0 または SQL Server 2000 を使います。メーリングを繰り返し発生させるには、SQL Server エージェントをインストールし、実行しておくことが必要です。ダイレクト メーラーのインストール先は、ダイレクト メーラー データベースと同じコンピュータでなければなりません。ダイレクト メーラーを実行するには、SQL Server が実行中でなければなりません。

SQL Server の詳細については、SQL Server Books Online を参照してください。

Microsoft Windows 2000 に付属する機能のうち、ダイレクト メーラーが依存するコンポーネントは次のとおりです。

  • Microsoft ActiveX Data Objects (ADO)ADO を使うことで、ダイレクト メーラーはデータベースにアクセスし、データを操作できます。1 つまたは複数の SQL Server 上のデータにアクセスするには、OLE DB Provider for Microsoft SQL Server を使います。

  • Microsoft Windows Collaboration Data Objects (CDO) ダイレクト メーラーは、CDO に用意されている COM インターフェイスを介して動作します。主に使用するインターフェイスは、IMessage と IConfiguration です。これらを使うと、Simple Mail Transfer Protocol (SMTP) メッセージを作成および書式設定して、ネットワーク経由で、またはローカルに送信できます。

メーリング リストの形式

ダイレクト メーラーは、次のメーリング リスト ソースをサポートしています。

  • カンマ区切り値 (.csv) ファイルなどのテキスト ファイル

  • SQL Server クエリ

  • 分析レポート

  • セグメント リスト

ダイレクト メール リストとは、受信者のデータを記載したものです。1 行につき 1 人の受信者について記載し、各行には次の要素をカンマ区切り形式で並べます。

パラメータ | 説明
電子メール アドレス | 必須。名前または <名前@ドメイン>。
GUID | 省略可。パーソナライズされたメール メッセージにコンテンツを提供するときに使用する一意のユーザー ID です。
メッセージ形式 | 省略可。CDO が結果をどのメッセージ形式に変換するかを制御します。たとえば、テキスト、MHTML、または MIME を指定します。
言語 | 省略可。メール メッセージのコード ページ値です。
URL | 省略可。ユーザーごとに個々の URL を CDO に渡すことができます。

注

  • 省略可能なパラメータを省略する場合、後続のパラメータを指定するには、区切り文字を入力する必要があります。

メッセージ形式

ダイレクト メーラーは、次のメッセージ形式をサポートしています。

  • テキスト

  • Multipurpose Internet Mail Extensions

  • MIME Encapsulation of Aggregate HTML Documents (MHTML)

メッセージ ソース

ダイレクト メーラーでは、URL またはファイル パスをメッセージ ソースとして使用できます。ファイルを使う場合は、ダイレクト メーラーがアクセス可能なディレクトリにそのファイルが存在することを確認してください。

良好なパフォーマンスを得るため、ダイレクト メーラーはファイルの内容をメモリにあらかじめ読み込んでおきます。ただし、メモリに読み込めるファイルのサイズは制限されます。ファイル自体のサイズに制限はありませんが、メモリに読み込めるのは、ASCII 文字なら先頭の 200 万文字、Unicode 文字なら先頭の 100 万文字だけです。

ダイレクト メーラー データベース

ダイレクト メーラーは、SQL Server 7.0 または SQL Server 2000 のいずれかと、SQL Server エージェントを幅広い用途で使います。ダイレクト メーラー データベースは、Commerce Server のインストール時に、SQL Server に自動的に作成されます。ダイレクト メーラー ジョブの詳細を表示するには、SQL Server エージェント (常に実行状態) を使います。SQL Server エージェントでは、ダイレクト メーラー ジョブの状態、最後に実行された日付と時刻、および次の実行予定時刻を確認できます。

ダイレクト メーラーは、Commerce Server の統合コンポーネントとして実行されているとき、次のデータベースを使います。

  • ダイレクト メーラー データベース ダイレクト メーラー ジョブに関する詳細と情報が登録されています。

  • キャンペーン データベース ダイレクト メール キャンペーン項目に関する詳細と情報が登録されています。

次の図は、SQL Server エージェントに一覧表示されたダイレクト メーラー ジョブとその詳細を示します。

ダイレクト メーラー ジョブの状態

図をクリックすると、拡大または縮小します。

SQL Server エージェントでダイレクト メーラー ジョブを開始するには

  1. ノードを展開して \Microsoft SQL Server\SQL Server グループ\<SQL Server 名>\管理\SQL Server エージェントを開きます。

  2. [ジョブ] をクリックします。SQL Server Enterprise Manager の右側のウィンドウに、ダイレクト メーラー ジョブが表示されます。

  3. ダイレクト メーラー ジョブをマウスの右ボタンでクリックし、[ジョブの開始] をクリックします。

注

  • ダイレクト メーラー ジョブのスケジュールを設定し直すには、Commerce Server ビジネス デスクのキャンペーン マネージャ モジュールを使います。ダイレクト メーラー ジョブのスケジュールの設定については、「ダイレクト メール キャンペーンのスケジュールを設定する」を参照してください。

関連項目

Direct Mailer Pipeline

ダイレクト メーラー パイプライン

ダイレクト メーラー パイプラインは、受信者リストを処理するときに使います。パイプラインに新しいコンポーネントを追加したり、コンポーネントを基幹業務システムに統合したり、そのコンポーネントをサード パーティが供給するコンポーネントと交換することができます。

次の表は、Commerce Server に用意されているダイレクト メーラー パイプラインのステージの一覧を示します。各ステージには、0 個以上のコンポーネントが含まれています。

ステージ | 説明
スロットル | ダイレクト メーラーの実行速度を 1 時間あたりのメッセージ数で制限します。これは、メール サーバーの処理がオーバーフローしないようにするのに役立ちます。
受信者の前処理 | 受信者のデータの妥当性を検査します。
受信者のフィルタ | このステージ向けのカスタム コンポーネントの追加または作成を行い、既存のパイプラインを拡張するためのモデルとして使います。たとえば、受信者を脱退させるときに使います。
cookies 作成 | サイト ユーザーになりすまして Web サーバーからパーソナライズされたコンテンツを取得するために必要な cookie を作成します。
電子メール作成 | メッセージ本文の作成と書式設定を行います。Collaboration Data Objects (CDO) for Microsoft Windows 2000 が、電子メール メッセージを送信します。
電子メール送信 | あらかじめ作成しておいた電子メール メッセージを送信します。
受信者の後処理 | このステージ向けのカスタム コンポーネントの追加または作成を行い、既存のパイプラインを拡張するためのモデルとして使います。たとえば、ダイレクト メーラー データベースを更新して送信済みのメッセージにマークを付けたり、必要に応じて適切なエラー コードを作成します。

次の図は、ダイレクト メーラー パイプラインと、各パイプライン ステージに含まれるコンポーネントを示します。

ダイレクト メーラー パイプライン

図をクリックすると、拡大または縮小します。

ダイレクト メーラー パイプラインに対してコンポーネントの追加と削除を行う方法の詳細については、「ダイレクト メーラー パイプラインの使い方」を参照してください。

関連項目

ダイレクト メーラーの要件

ダイレクト メーラー データベース

ダイレクト メール キャンペーンを設定する

ダイレクト メーラー パイプラインの使い方

脱退リスト

ダイレクト メーラーでは、脱退リストと照合してダイレクト メール リストを脱退 ("フィルタ処理") できます。キャンペーン項目の一部として実行するダイレクト メーラー ジョブの場合は、各受信者がダイレクト メール キャンペーン項目から脱退できます。これには、ソリューション サイトに付属する脱退用 Active Server Page (ASP) ページを使います。

ダイレクト メーラー ジョブ向けの ASP ページを Web サーバーで作成する開発者であれば、Opt-out.asp ページへのリンクを配置できます。これにより、受信者は、該当するリンクをクリックすることで、サイトまたはダイレクト メール キャンペーン項目から脱退できるようになります。キャンペーン項目の一部として実行されるダイレクト メーラー ジョブが実行されると、ダイレクト メーラーはサイト レベルの脱退リストとキャンペーン項目レベルの脱退リストが存在するかどうかを調べます。両方の脱退リストが存在していれば、これらの脱退リストが元のダイレクト メール リストから削除され、削除後のリストが新しいダイレクト メール リストとして機能します。

コマンド ライン インターフェイスから脱退リストをサポートするには、Windows.ini ファイル形式に準拠したジョブ ファイルで、OptoutListType、OptoutListLocation、OptoutListSQL の各パラメータを使います。コマンド ライン インターフェイスを使用して脱退する方法の詳細については、「Job Data セクション」を参照してください。

関連項目

Job Data セクション


ダイレクト メール リストを作成および管理する

ダイレクト メールの受信者のリストを作成および管理するには、リスト マネージャを使います。リストには、汎用リストとメーリング リストの 2 種類があります。汎用リストは、レポート モジュール、セグメント ビューア モジュール、SQL Server テーブル、または ASCII 形式のテキスト ファイルからリスト マネージャにインポートされたリストです。汎用リストに電子メール アドレスの行が含まれていると、リスト マネージャはその汎用リストを自動的にメーリング リストに変換しようとします。メーリング リストは、リストから選ばれた受信者に対してダイレクト メーラーがメールの作成と送信を行うときに使われます。汎用リストに電子メール アドレスが含まれていない場合、形式の要件が満たされていれば、その汎用リストはユーザー リストとしてインポートされます。メーリング リスト形式の詳細については、「メーリング リストの形式」を参照してください。

リスト マネージャにインポートされたリストを使ってダイレクト メーラー ジョブを実行すると、対象となるユーザーをより的確に指定できます。たとえば、ユーザーの特性や過去の行動を示すレポートを実行し、そのユーザーを広告や商品の対象とするダイレクト メール キャンペーンを作成できます。

また、リスト マネージャを使って、ファイルまたは SQL Server データベースへのリストのエクスポート、リストの追加や削除、リストのコピー、リストの抽出、およびリストの一部を取り去ることもできます。

受信者リストを作成する

受信者リストを処理する

受信者リストを作成する

ダイレクト メール キャンペーン用の受信者リストを作成するには、キャンペーンのリスト マネージャ モジュールを使います。リストを作成するには、Microsoft SQL Server (SQL テーブルを作成する場合)、メモ帳 (ASCII 形式のテキスト ファイルを作成する場合)、Microsoft Excel (スプレッドシートを作成する場合)、Microsoft Outlook (メッセージ、予定、連絡先などの Outlook アイテムが含まれる .pst ファイルを作成する場合) などのアプリケーションで作成したリストをリスト マネージャにインポートします。

受信者リストは、分析レポート、セグメント ビューア、または外部データベースから作成できます。作成したリストは、リスト マネージャにインポートできます。リスト マネージャにリストをインポートする方法については、「リストをインポートおよびエクスポートする」を参照してください。

受信者リストを処理する

受信者リストを処理するには、まず、ダイレクト メーラーで受信者リストをリスト マネージャからジョブ テーブルに読み込みます。次に、各受信者をユーザー リストに問い合わせて、それぞれのデータをダイレクト メーラー パイプライン経由で送信します。

関連項目

ダイレクト メーラー パイプライン


ダイレクト メール キャンペーンを設定する

キャンペーン マネージャ モジュールは、ダイレクト メール キャンペーンを作成するためのインターフェイスとなります。キャンペーン マネージャを使うと、ダイレクト メール キャンペーンごとにダイレクト メーラー ジョブを管理できます。ダイレクト メール キャンペーンの新規作成、メッセージのパーソナライズ、およびプロパティの変更が可能です。ダイレクト メール キャンペーンにアタッチメントを追加したり、ダイレクト メール キャンペーンの実行スケジュールを設定することができます。また、ダイレクト メール キャンペーンは、運用サイトに送信する前に、テスト用のメーリング リストを使ってテストすることもできます。

ダイレクト メール キャンペーンを設定して実行する手順の概要を次に示します。

  1. 受信者に配信するメッセージ本文を作成します。たとえば、パーソナライズされたメッセージ本文を配信する場合には、そのメッセージ本文をダイレクト メーラーに提供する機能を備えている、パーソナライズされた Active Server Page (ASP) ページを作成します。

  2. 受信者のデータが含まれているデータ ソースを指定し、必要な設定を行います。
    • データ ウェアハウスのデータから受信者リストを生成するには、Commerce Server ビジネス デスクのレポート モジュールを使います。使用する静的レポートを表示するには、目的のレポートを選択し、作成されたリストをリスト マネージャにエクスポートします。リスト マネージャでリストのインポートとエクスポートを行う方法の詳細については、「リストをインポートおよびエクスポートする」を参照してください。

    • ファイルから受信者リストを生成するには、そのファイルのパスが必要です。

    • SQL Server データベースから受信者リストを生成するには、そのデータベースへの接続文字列と SQL Server クエリ文字列が必要です。
  3. ダイレクト メール キャンペーンを作成し、そのスケジュールを設定します。キャンペーン マネージャ モジュールを使って、次の情報を指定します。
    • キャンペーンと顧客の名前

    • 受信者リストの名前

    • ダイレクト メール キャンペーンの開始日と開始時刻

    • ダイレクト メーラーでパーソナライズされたメッセージ本文を取得することになる Uniform Resource Locator (URL) または静的ファイル

注

  • パーソナライズされたメッセージ本文の URL には、HTML コンテンツの種類として有効な拡張子 (.htm や .asp) が含まれている必要があります。無効な拡張子 (.xml など) が含まれている場合は、Collaboration Data Objects (CDO) エラーが発生し、メッセージは送信されません。

スケジュールが設定された時刻になると、ダイレクト メール キャンペーンが実行されます。運用環境に送信する前にダイレクト メール リストをテストする方法については、「ダイレクト メール キャンペーンをテストする」を参照してください。

関連項目

キャンペーンについて

キャンペーンを作成する

ダイレクト メール キャンペーン項目を追加する

ユーザー レコード リストを管理する


ダイレクト メールのコンテンツを作成する

ダイレクト メーラーでは、Web ページまたは静的ファイルからメッセージ本文を作成できます。また、SQL Server テンプレートなどのソースからメッセージを作成できるように機能を拡張することもできます。そのためには、ダイレクト メーラー パイプラインにカスタム コンポーネントを追加します。ダイレクト メーラー パイプラインにカスタム コンポーネントを追加する方法の詳細については、「ダイレクト メーラー パイプラインの使い方」を参照してください。

良好なパフォーマンスを得るため、ダイレクト メーラーは静的ファイルの内容をメモリにあらかじめ読み込んでおきます。ファイル サイズは、ASCII 文字の場合は 200 万文字、Unicode 文字の場合は 100 万文字に制限されます。ファイルの残りの文字は無視され、メッセージには送信されません。

パーソナライズされたメールを送信する場合は、Web ページを使うことが唯一の方法になります。パーソナライズされたメッセージ本文を配信するには、パーソナライズされた Web ページを作成しておく必要があります。

注

  • ダイレクト メーラーから MIME Encapsulation of Aggregate HTML Documents (MHTML) 形式でメールを送信する場合、テキスト アタッチメントを指定すると、Microsoft Outlook ではパーソナライズされた Web ページがアタッチメントとして表示されます。これは、Outlook にのみ発生する問題です。Microsoft Outlook Express では発生しません。


ダイレクト メーラーを構成する

ダイレクト メーラーを実行する前に、ジョブの実行方法を制御するプロパティを確認したり、変更することができます。次の図は、ダイレクト メーラーのプロパティを示します。ダイレクト メーラーは、グローバル リソース レベルで動作します。

図をクリックすると、拡大または縮小します。

ダイレクト メーラーのプロパティを変更するには

  1. [Commerce Server マネージャ] を展開し、管理する Commerce グループを開きます。次に、[グローバル リソース] をクリックします。

  2. [Direct Mail on <マシン名>] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [Direct Mail on <プロパティ>] ダイアログ ボックスで、次の操作を行います。
項目 (プロパティ) | 操作 (選択されたプロパティ値)
[配信場所] | 配信場所を入力します。 少なくとも 1 つのエントリを指定する必要があります。ローカル配信の場合は、ドロップ ディレクトリが表示されます。リモート配信の場合は、SMTP サーバー アドレスが表示されます。
[配信方法] | メーリングを配信するかどうかを決定する値を入力します。 1 - リモートに配信します。 2 - ドロップ ディレクトリにローカルに配信します。
[ログ フォルダ パス] | ダイレクト メーラー操作ログ ファイルの場所を入力します。
[最大のエラー パーセンテージ] | ジョブ 1 つあたりの致命的ではないエラーの最大比率を入力します。
[最大スレッド カウント] | ジョブ 1 つあたりのスレッドの最大数を入力します。
[1 時間あたりのメッセージ数] | このサーバーが 1 時間あたりに作成できるメッセージの数を入力します。 0 に設定した場合、ダイレクト メーラーはできる限り迅速にメッセージを処理します。
[パフォーマンス更新間隔] | パフォーマンスの更新間隔を秒単位で入力します。
[パイプライン構成ファイル] | パイプライン構成ファイル DMLPipe.pcf の場所を入力します。
[プロキシの非経由] | プロキシのチェックが不要なローカル コンピュータを入力するか、またはすべてのローカル コンピュータを表す値を入力します。
[プロキシ サーバー] | 使用するプロキシ サーバーの名前を入力します。
[DirectMailer データベース] | ダイレクト メーラー SQL Server データベースへの接続文字列を入力します。

注

  • "ログ フォルダ パス"、"1 時間あたりのメッセージ数"、"プロキシの非経由"、"プロキシ サーバー"、"DirectMailer データベース" の各プロパティは、サービス インスタンスごとの値になります。つまり、これらのプロパティの値を変更した場合には、ダイレクト メーラーを再起動する必要があります。その他のプロパティは、ジョブ インスタンスごとの値になるので、ダイレクト メーラーを再起動する必要はありません。

ダイレクト メーラーを再起動する

ダイレクト メーラーは、コマンド ライン インターフェイスまたは管理ツールを使って再起動できます。

コマンド ライン インターフェイスからダイレクト メーラーを再起動するには

  1. コマンド ラインで、「net stop dmlservice」と入力します。

  2. サービスが停止したら、「net start dmlservice」と入力します。

サービスを使ってダイレクト メーラーを再起動するには

  1. [スタート] メニューから [サービス] を開きます。[スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[サービス] をクリックします。

  2. [サービス] 画面の右側のウィンドウで、[Commerce Server Direct Mailer] をマウスの右ボタンでクリックし、[再開] をクリックします。

関連項目

ダイレクト メーラーの処理速度を変更する

複数の配信場所を使う


ダイレクト メーラーの処理速度を変更する

ジョブが原因で運用環境のメール サーバーに過剰な負荷がかからないように、ダイレクト メーラーは 1 時間あたりに処理できるメッセージ数を制限できるように設計されています。この制限を設定するには、"1 時間あたりのメッセージ数" プロパティを変更します。このプロパティ値によって、ダイレクト メーラーが 1 時間あたりに処理するメッセージ数が決定されます。"1 時間あたりのメッセージ数" プロパティを 0 に設定した場合、ダイレクト メーラーはできる限り迅速にメッセージを処理します。

ダイレクト メーラーの処理速度を変更するには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。次に、[Direct Mail on <SQL Server 名>] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [プロパティ] ダイアログボックスの [1 時間あたりのメッセージ数] をクリックします。次に、[選択したプロパティ値] ボックスに、ダイレクト メーラーで 1 時間あたりに送信するメッセージ数を入力します。

    [選択したプロパティ値] ボックスを 0 に設定した場合、ダイレクト メーラーはできる限り迅速にメッセージを処理します。

  3. [OK] をクリックします。

  4. ダイレクト メーラーを再起動します。ダイレクト メーラーを再起動する方法については、「ダイレクト メーラーを再起動する」を参照してください。

新しい設定がすべてのダイレクト メーラー ジョブに直ちに適用されます。

"1 時間あたりのメッセージ数" プロパティ以外にも、ダイレクト メーラーのメッセージ処理速度を決定する要因があります。たとえば、次のような要因があります。

  • ダイレクト メーラーのパフォーマンスは、Collaboration Data Objects (CDO) for Microsoft Windows 2000 に依存します。

  • ダイレクト メーラーは、全体のパフォーマンスとスロットル設定に基づいて、パイプライン サイクルごとに遅延値を計算します。

  • ダイレクト メーラーのパフォーマンスは、Simple Mail Transfer Protocol (SMTP) サーバーのパフォーマンスとスロットル要件に密接に関係しています。


複数の配信場所を使う

複数の配信場所を使うようにダイレクト メーラーを構成すると、配信場所がドロップ ディレクトリであるか Simple Mail Transfer Protocol (SMTP) サーバーであるかに関係なく、ダイレクト メーラーはどのジョブの実行にも同じリストを使います。ダイレクト メーラーは、Global Configuration Dictionary から配信場所リストを読み込みます。Global Configuration Dictionary には、すべてのサイトで実行中のすべてのジョブで共有されるグローバルな構成パラメータが収められています。ダイレクト メーラーでは、Global Configuration Dictionary の並べ替えや重複エントリのチェックは行いません。

"配信方法" プロパティをローカル (2) に設定した場合、ダイレクト メーラーはリスト内の各エントリを SMTP サーバーのピックアップ ディレクトリへの絶対パスとして扱います。"配信方法" プロパティをリモート (1) に設定した場合、ダイレクト メーラーはリスト内の各エントリを次の形式で使います。

<SMTP サーバー アドレス>[: ポート]

ポートの指定は省略可能ですが、指定しなかった場合、ダイレクト メーラーはポート 25 を使います。

ダイレクト メーラー ジョブを開始すると、ダイレクト メール リスト内の最初の受信者に対して最初の配信場所が使われます。次の受信者に対しては、その次の配信場所が使われます。新しい配信場所がなくなるまで、この配信処理が繰り返されます。新しい配信場所がなくなると、最初の配信場所に戻ります。

メーリングに障害が発生した場合、ダイレクト メーラーは別の配信場所で再試行することはありません。また、タイムアウトや可用性のチェックも行いません。このため、どの受信者も、割り当てられた配信場所だけが使われます。

複数の配信場所を使うには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。次に、[Direct Mail on <マシン名>] をマウスの右ボタンでクリックし、[プロパティ] タブをクリックします。[プロパティ] ダイアログ ボックスの [配信場所] をクリックします。次に、[選択したプロパティ値] ボックスに、ドロップ ディレクトリへの絶対パスまたは SMTP サーバーを入力します。汎用名前付け規則 (UNC) パスは、サポートされません。

複数の配信場所を指定する場合は、カンマまたはセミコロンでそれぞれの配信場所を区切ります。パスの区切り文字として使用できるのは、カンマとセミコロンだけです。

  2. [配信方法] を選択します。[選択したプロパティ値] ボックスに、ローカル配信を使う場合には「2」を、リモート配信を使う場合には「1」を入力します。

  3. [OK] をクリックします。

新しい設定がすべてのダイレクト メーラー ジョブに直ちに適用されます。


ダイレクト メーラー ジョブの状態を表示する

ダイレクト メーラー ジョブの状態をチェックして、ジョブが実行中であるかどうか、中断または終了しているかどうか、あるいは正常に完了しているかどうかを確認できます。ダイレクト メーラー ジョブの状態を表示するには、コマンド ライン インターフェイスを使います。

コマンド ライン インターフェイスを使って、ダイレクト メーラー ジョブの状態を表示するには

  • コマンド ラインで「DmlRun /list」と入力して、すべてのダイレクト メーラー ジョブを表示します。

ダイレクト メーラー ジョブの一覧が表示されます。

ダイレクト メーラー ジョブごとに、次の情報が表示されます。

  • ジョブ ID

  • ジョブの状態

  • ジョブの説明

  • サイト名

  • キャンペーン項目 ID

  • キャンペーン項目名

注

  • サイト名、キャンペーン項目 ID、およびキャンペーン項目名は、ダイレクト メーラー ジョブに存在する場合にのみ表示されます。

次の表は、ジョブの状態コードの一覧を示します。

コード | 説明
0 | ジョブは作成済みですが、初期化されていません。
1 | ジョブは定義済みですが、まだ実行されていないか (非アクティブ)、または終了しました。
2 | ジョブは完了しました。
3 | ジョブは実行中です (アクティブ)。
4 | ジョブは実行中ですが、現在は中断しています (一時停止していますが、まだアクティブです)。
-2 | ジョブはダイレクト メーラーによって停止されました。深刻な問題が発生したか、またはエラーのしきい値が制限を超えました。
-3 | ジョブは css_site として定義されましたが、実行時に一部のデータが利用できませんでした。


ダイレクト メーラー ジョブを一時停止、停止、および削除する

ダイレクト メーラー ジョブは、いつでも一時停止できます。ダイレクト メーラー ジョブを一時停止すると、ダイレクト メーラーは受信者リストの処理を停止しますが、後で再開できます。ダイレクト メーラーは、次に処理すべき受信者を記録します。したがって、コンピュータのシャットダウンやハード ドライブのクラッシュなどによってジョブが一時停止しても、中断したところ付近から再開できます。電源を切断する 1 ～ 1.5 秒前に処理された受信者は、電子メールを受信できない場合があります。

実行中のダイレクト メーラー ジョブを停止 (終了) することもできます。ダイレクト メーラー ジョブを停止した場合、停止したところから再開することはできません。ダイレクト メーラー ジョブをもう一度実行する必要があります。このとき、そのジョブは受信者リストの先頭から処理を始めます。

停止、完了、または失敗したダイレクト メーラー ジョブは削除できます。実行中のダイレクト メーラー ジョブは削除できません。ダイレクト メーラー ジョブを削除すると、そのジョブに関するすべての情報がダイレクト メーラーから削除されます。削除したジョブをもう一度実行するには、そのジョブを作成し直す必要があります。

注

  • ダイレクト メーラー ジョブの一時停止、停止、および削除は、コマンド ライン インターフェイスでのみ行えます。ビジネス デスクのキャンペーン マネージャ モジュールでは、ダイレクト メーラー ジョブの一時停止、停止、および削除は行えません。

コマンド ライン インターフェイスからダイレクト メーラー ジョブを一時停止するには

  1. コマンド ラインで「DmlRun /list」と入力して、すべてのダイレクト メーラー ジョブを表示します。

  2. 一時停止するダイレクト メーラー ジョブのジョブ ID を確認し、次のように入力します。

    DmlRun /pause:<ジョブ ID>

    該当するダイレクト メーラー ジョブが一時停止します。

コマンド ライン インターフェイスからダイレクト メーラー ジョブを停止するには

  1. コマンド ラインで「DmlRun /list」と入力して、すべてのダイレクト メーラー ジョブを表示します。

  2. 停止するダイレクト メーラー ジョブのジョブ ID を確認し、次のように入力します。

    DmlRun /term:<ジョブ ID>

    該当するダイレクト メーラー ジョブが停止します。

コマンド ライン インターフェイスからダイレクト メーラー ジョブを削除するには

  1. コマンド ラインで「DmlRun /list」と入力して、すべてのダイレクト メーラー ジョブを表示します。

  2. 削除するダイレクト メーラー ジョブのジョブ ID を確認し、次のように入力します。

    DmlRun /delete:<ジョブ ID>

該当するダイレクト メーラー ジョブが削除されます。

関連項目

キャンペーン項目を削除および復元する

ダイレクト メーラー ジョブをコマンド ラインから管理および制御する

ダイレクト メーラー ジョブを再開する


ダイレクト メーラー ジョブを再開する

処理が完了する前にダイレクト メーラー ジョブが停止した場合、ダイレクト メーラーはジョブの状態を更新します。これにより、ジョブが停止し、正常に完了しなかったことがわかります。ダイレクト メーラー ジョブを表示するには、コマンド ライン インターフェイスで DmlRun /list コマンドを使います。コンソールにジョブの状態を自動的に返すには、/wait オプションを使います。ダイレクト メーラー ジョブの状態を表示する方法については、「ダイレクト メーラー ジョブの状態を表示する」を参照してください。

ハード ドライブのクラッシュなどによってダイレクト メーラー コンピュータが停止した場合、そのコンピュータで実行中のすべてのダイレクト メーラー ジョブは停止します。処理が完了する前にダイレクト メーラー ジョブが停止した場合は、そのジョブを手動で再開する必要があります。

ダイレクト メーラー ジョブを再開するには

  1. コマンド ラインで「DmlRun /list」と入力して、すべてのダイレクト メーラー ジョブを表示します。

  2. 再開するダイレクト メーラー ジョブのジョブ ID を確認し、次のように入力します。

    DmlRun /run:<ジョブ ID>

該当するダイレクト メーラー ジョブが再開されます。

関連項目

ダイレクト メーラー ジョブをコマンド ラインから管理および制御する


ダイレクト メーラーをスタンドアロン モードで実行する

ダイレクト メーラーをスタンドアロン モードで実行すると、ダイレクト メーラーは基幹業務システムに容易に統合できるプラットフォーム コンポーネントとして機能します。たとえば、広告主に Commerce Server の分析レポートをメールで送る場合を考えてください。この用途では、アプリケーションからダイレクト メーラーへの情報のやり取りを無視します。たとえば、ダイレクト メーラーは、広告の利用状況レポートを含むファイルを広告主の一覧にメールで送信できます。この場合のジョブ情報は、コマンド ライン パラメータと構成ファイルから取得されます。

コマンド ライン インターフェイスからダイレクト メーラーを実行するには、コマンド ライン オプションと共に実行可能ファイル DmlRun を使います。コマンド ライン オプションを使うと、ダイレクト メーラー ジョブの作成、実行、監視、削除など、複数の作業を実行できます。

注

  • ダイレクト メール キャンペーンのスケジュールを設定するには、ビジネス デスクのキャンペーン マネージャ モジュールを使うか、または Windows のタスク スケジューラを使います。Windows のタスク スケジューラでは、コマンド ライン インターフェイスを使用するバッチ ファイルを実行できます。

次に、ダイレクト メーラーをスタンドアロン モードに設定して実行する手順の概要を示します。

  1. 受信者に配信するコンテンツを作成します。必要に応じて、パーソナライズされたメッセージ本文を提供する Web ページまたは静的ファイルを作成します。

  2. 受信者リストのデータ ソースを指定します。

  3. ダイレクト メーラー ジョブ ファイルを作成します。

  4. コマンド ライン インターフェイスから /create オプションを使ってダイレクト メーラー ジョブを作成および実行します。

  5. ダイレクト メーラー ジョブをコマンド ラインから管理および制御します。


ダイレクト メーラー ジョブ ファイルを作成する

スタンドアロンのダイレクト メーラー ジョブを作成する場合は、そのジョブに関する情報を指定したダイレクト メーラー ジョブ ファイルをあらかじめ作成しておく必要があります。指定する情報は、パーソナライズされたメッセージ本文を配信するかどうか、メール メッセージ ヘッダーの形式、受信者リストの場所などです。

ジョブ ファイルは、どのテキスト エディタでも作成できます。ジョブ ファイルは、Microsoft Windows .ini ファイル形式に準拠したテキスト ファイルでなければなりません。

ジョブ ファイルには、次のセクションを追加します。

  • Job Data セクション ジョブに関する主要なパラメータを指定します。たとえば、コンテンツのデータ ソース、受信者リスト、メッセージ形式の種類、件名、脱退リストなどです。

  • Job Attachments セクション このセクションは省略可能です。アタッチメントの数とソースを指定します。

ダイレクト メーラーを実行すると、Results セクションがジョブ ファイルに書き込まれます。Results セクションのパラメータは、JobID、ErrorCode、および ErrorString です。ジョブが正常に終了した場合は、JobID の値と ErrorCode=0 が書き込まれます。ジョブが正常に終了しなかった場合は、JobID、ErrorCode、ErrorString の各値が書き込まれます。

Job Data セクション

次の表は、ジョブ ファイルのジョブ データに定義できるパラメータの一覧を示します。

パラメータ | 型 | 説明
JobDesc | 文字列 (最大 128 文字) | 省略可。ジョブの説明を入力します。
TemplateURL | 文字列 (最大 2084 文字) | 省略可。メール テンプレートのソースを Uniform Resource Locator (URL) 形式で指定します (http:// または file://)。フラット ファイルをメール テンプレートとして使う場合は、サーバー セントリックの完全なローカル パス名を入力します。汎用名前付け規則 (UNC) パスはサポートされています。
MailFrom | 文字列 (最大 256 文字) | 必須。電子メールの From フィールド (差出人) を指定します。
MailSubject | 文字列 (最大 256 文字) | 省略可。電子メール アドレスの Subject (件名) フィールドを指定します。
MailReplyTo | 文字列 (最大 256 文字) | 省略可。返信の受け取り先となる電子メール アドレスを指定します。
DefaultFmt 整数 省略可。送信されるコンテンツの既定のメッセージ形式を指定します。

1 = テキスト
2 = MIME Encapsulation of Aggregate HTML Documents (MIME)
3 = MIME Encapsulation of Aggregate HTML Documents (MHTML)
JobLocale | 文字列 (最大 255 文字) | 省略可。ジョブの既定のロケールを指定します。
MailPersonalize 整数 省略可。パーソナライズされたコンテンツを配信する場合には 1 を、パーソナライズされたコンテンツを配信しない場合には 0 を指定します。

注

  • 整数以外の値 (文字値) を指定した場合は、「MailPersonalize=0」と入力することと同じ結果になります。

  • 0 以外の整数を指定した場合は、「MailPersonalize=1」と入力することと同じ結果になります。
MailingListType 整数 必須。メーリング リストの種類を指定します。

1 = フラット ファイル
2 = リスト マネージャ リスト
3 = SQL Server クエリ
MailingListLocation 文字列 (最大 256 文字) 必須。メーリング リストの場所を指定します。

フラット ファイルの場合は、サーバー セントリックの完全なローカル パス名を指定します。file:// などのスキーマ プレフィックスを含めないでください。

SQL Server クエリの場合は、接続文字列を指定します。

リスト マネージャ リストの場合は、リストの識別番号を指定します。

UNC パス名はサポートされています。
MailingListSQL | 文字列 (最大 256 文字) | メール送信を実行する SQL ステートメントを指定します。MailingListType = 3 の場合、この値は必須です。それ以外の場合、この値は無視されます。
OptoutListType 整数 省略可。脱退リストの種類を指定します。

1 = フラット ファイル
2 = リスト マネージャ リスト
3 = SQL Server クエリ
OptoutListLocation 文字列 (最大 256 文字) 省略可。OptoutListType パラメータを使う場合にのみ必要です。脱退リストの場所を指定します。

フラット ファイルの場合は、サーバー セントリックの完全なローカル パス名を指定します。file:// などのスキーマ プレフィックスを含めないでください。

SQL Server クエリの場合は、接続文字列を指定します。

リスト マネージャ リストの場合は、リストの識別番号を指定します。

UNC パス名はサポートされています。
OptoutListSQL | 文字列 (最大 256 文字) | 脱退を実行する SQL ステートメントを指定します。OptoutListType = 3 の場合、この値は必須です。それ以外の場合、この値は無視されます。
UserFlags | 整数 | 省略可。ジョブに関連付けられたユーザー定義のフラグを指定します。

Job Attachments セクション

次の表は、ジョブのアタッチメントに定義できるパラメータの一覧を示します。ジョブ ファイルのこのセクションは省略可能です。

パラメータ | 型 | 説明
AttachmentCount | 整数 | アタッチメントの数を指定します (1 以上)。
Attachment_<N> | 文字列 (最大 2084 文字) | <N> アタッチメントの URL、またはファイル システムのパスを指定します。N は、1 から AttachmentCount までの数字です。この URL にスキーマ プレフィックス (http://、file:// など) が含まれていることを確認します。 ファイル アタッチメントの場合は、サーバー セントリックの完全なパス名を含めます。UNC パス名はサポートされています。

Results セクション

ダイレクト メーラーを実行すると、Results セクションがジョブ ファイルに書き込まれます。次の表は、ダイレクト メーラーが Results セクションに書き込むパラメータの一覧を示します。

パラメータ | 型 | 説明
ErrorCode | HRESULT | 0 = 操作 (作成、開始、削除など) が正常に実行されました。操作が正常に終了しなかった場合は、エラー コードが書き込まれます。
ErrorString | 文字列 (最大 256 文字) | ジョブが正常に終了しなかったことを ErrorCode が示している場合、この値はエラーの説明文になります。それ以外の場合、このフィールドは空白になります。
JobID | GUID | このパラメータは、ジョブの開始、停止、または処理に使用できる新しいジョブ ID を指定します。

関連項目

脱退リスト


ダイレクト メーラー ジョブを作成および実行する

ジョブ ファイルを作成したら、スタンドアロンのダイレクト メーラー ジョブを設定できます。このジョブを作成するには、コマンド ライン インターフェイスから /create オプションを使います。

スタンドアロンのダイレクト メーラー ジョブを作成するには

  1. コマンド ラインで、次のように入力します。

    DmlRun /create:filename=<ジョブ ファイル名>

    ジョブ ファイルのフル パス名を入力します。ディレクトリが指定されていない場合、ダイレクト メーラーはカレント ディレクトリで目的のジョブ ファイルを探します。

    ジョブ データ ファイルのパラメータが間違っている場合、ダイレクト メーラーはエラー コードとエラーの説明をジョブ ファイルの Results セクションに書き込みます。

該当するダイレクト メーラー ジョブが作成されます。

  1. ジョブ ID を取得するには、次のように入力します。

    DmlRun /list

  2. ジョブを実行するには、次のように入力します。

    DmlRun /run:<ジョブ ID>

該当するダイレクト メーラー ジョブが開始されます。

  1. ジョブを作成し開始するには、次のように入力します。

    DmlRun /create:filename=<ジョブ ファイル名> /execute

該当するダイレクト メーラー ジョブが作成され、開始されます。

関連項目

ダイレクト メーラー ジョブ ファイルを作成する

ダイレクト メーラー ジョブをコマンド ラインから管理および制御する


ダイレクト メーラー ジョブをコマンド ラインから管理および制御する

Win32 コンソール アプリケーションである DmlRun を使うと、コマンド ライン インターフェイスからダイレクト メーラー ジョブを管理できます。ダイレクト メーラーには、DmlRun と共に使用するコマンド ライン オプションがいくつか用意されています。これらのオプションを指定すると、ダイレクト メーラー ジョブの作成、実行、監視、および削除ができます。

たとえば、すべてのダイレクト メーラー ジョブの一覧を表示してジョブ ID を確認するには、「DmlRun /list」と入力します。ダイレクト メーラーで処理中の特定のジョブを停止するには、そのジョブ番号が 1456 の場合は、「DmlRun /term:1456」と入力します。

次の表は、DmlRun と共に使用できるコマンド ライン オプションの一覧を示します。

オプション | 説明
/run:<ジョブ ID> | ジョブを開始します。一時停止していたジョブの場合は、処理を再開します。
/term:<ジョブ ID> | 実行中のジョブを停止します。
/pause:<ジョブ ID> | ジョブを停止するのではなく中断します。すべてのリソースは割り当てられたままです。このオプションは、Simple Mail Transfer Protocol (SMTP) サーバーの負荷を分散するときに使います。
/create:<パラメータ文字列> | ジョブ ファイル内のデータに基づいて、新規のダイレクト メーラー ジョブを作成します。ジョブを作成したら、/run オプションを使って実行します。
/delete:<ジョブ ID> | ダイレクト メーラー ジョブを削除します。
/list | すべてのダイレクト メーラー ジョブの一覧を表示します。
/list:[css_site=<サイト ID>;] [filename=<ファイル名>;] css_site キーワードを指定した場合は、対応する Commerce Server サイトのジョブをすべて列挙します。css_site キーワードを省略した場合は、すべてのサイトのジョブをすべて列挙します。filename キーワードを指定した場合は、出力結果を指定のファイルに書き込みます。ディレクトリを指定しなかった場合は、指定された名前のファイルを WINNT ディレクトリに作成します。

ジョブ リスト ファイル形式の例については、「/list オプションを使う」を参照してください。
/del_old:<age> | 完了したジョブのうち、"age" 日以上経過した完了ジョブを完全に削除します。
/wait 省略可。このオプションは、/run、/term、/create、/execute の各オプションと共に使用できます。/run オプションと組み合わせると、DmlRun はジョブが完了するまで待機し、ジョブの状態をコンソールに返します。また、/wait オプションを /create /execute オプションと組み合わせたときにも、同じ結果が得られます。

/term /wait オプションを使うと、DmlRun はジョブが終了するまで待機します。

注

  • /wait オプションは、ほかのオプションと組み合わせて使う必要があります。単独で使うことはできません。

  • /wait /term オプションを使うと、次のようなエラー ステートメントが返されます。"エラー : ジョブ {7f2c6324-6b72-402d-853d-8b1c654ae842} は状態コード 1 で存在しました。"
/execute 省略可。/create /execute オプションを使うと、DmlRun はジョブを作成して実行します。

/execute オプションを指定する場合は、同じコマンド ライン上に /create オプションを含める必要があります。

/server:<サーバー名> | 省略可。ほかのどのオプションとも併用できます。このオプションを指定すると、DmlRun は指定のサーバー上でジョブをリモート管理します。
/? 、/help、または /h | コマンド ライン オプションとその使い方に関するヘルプを表示します。ほかのオプションと共に使うことはできません。

次のオプションは、同じコマンド ライン上に指定できません。

  • /create

  • /delete

  • /del_old

  • /list

  • /pause

  • /run

  • /term

/list オプションを使う

ジョブ リスト ファイルは、DmlRun /list:<ファイル名> コマンドで作成できます。このファイルは、.ini ファイル形式に準拠したテキスト ファイルです。ジョブごとに独自のセクション "Job #" が記載されます。"#" には、1 からジョブの総数までの連番が入ります。ジョブ リスト ファイルの例を次に示します。

[General]
JobCount=2

[Job 1]
JobID number=<ジョブの job_id>
Description=<ジョブの説明文>
Status=<整数; ジョブの状態コード>
LastRunTime=<ジョブが最後に実行された日付と時刻。ジョブが実行されなかった場合は空白です。>
FinishedTime=<ジョブが完了した日付と時刻。ジョブが完了しなかった場合は空白です。>
CampaignItem=<キャンペーン項目 ID。キャンペーンの一部の場合にのみ記載されます。>
DMLItem=<ダイレクト メーラー項目 ID。キャンペーンの一部の場合にのみ記載されます。>
CommerceSite=<css_site ID。サイトの一部でない場合は空白です。>

[Job 2]

関連項目

ダイレクト メーラー ジョブ ファイルを作成する

ダイレクト メーラー ジョブを作成および実行する


予測リソースの実行

Commerce Server の予測リソースを使うと、Web サイトに予測機能を追加できます。たとえば、あるユーザーと同じ特徴を持つユーザーが過去に購入した製品を分析して、そのユーザーが今後購入すると思われる製品を予測できます。予測リソースを設定および管理するには、Commerce Server マネージャを使います。

ここでは、次のトピックについて説明します。

  • 予測リソースのワークフロー モデルを構築および管理するためのワークフローについて説明します。

  • 予測リソースについて 予測リソースでサポートされている予測機能について説明します。また、予測リソース コンポーネントについても取り上げます。

  • 予測リソースを配置する 予測リソースを最大限に活用するための配置方法とその理由について説明します。

  • 予測リソースのプロパティを設定する Commerce Server データ ウェアハウス以外のデータベースと統合して使う場合の予測リソースの構成方法について説明します。

  • 予測リソースを開始および停止する 予測リソースを開始および停止する方法について説明します。

  • 新しい分析モデルを構築する モデル構成に基づいて、新しい分析モデルを構築する方法について説明します。

  • 分析モデルを配置する 分析モデルを配置する方法について説明します。

  • 分析モデル構成テーブルを表示する 分析モデル構成テーブルを表示する方法について説明します。

  • 分析モデルを表示する 構築した分析モデルを表示する方法について説明します。分析モデルを表示するには、Commerce Server マネージャの予測モデル ビューア、または Commerce Server ビジネス デスクのセグメント ビューアを使います。

  • 依存関係ネットワーク ビューを使う 予測モデル ビューアを使って依存関係ネットワークを表示する方法について説明します。

  • 判断ツリー ビューを使う 予測モデル ビューアを使って判断ツリーを表示する方法について説明します。

  • 分析モデルを再構築する 分析モデルを再構築する方法について説明します。

  • 分析モデルの名前を変更する 分析モデルの名前を変更する方法について説明します。

  • 分析モデルを削除する 分析モデルを削除する方法について説明します。

  • 予測リソースを監視する エラー処理のために予測リソースを監視する方法について説明します。


予測リソースのワークフロー

次の図は、分析モデルの構築、表示、分析、配置のワークフローを示します。

トランザクション
新しい構成モデル
(サイト開発者が作成)
予測モデル
セグメント モデル
分析モデルの選択 :
構成モデルの選択 :
PredictorClient API
呼び出しを使った
Web サーバーへのモデルの配置
セグメント ビューアを使った
セグメント モデルの表示と分析
(ビジネス デスク)
予測モデル ビューアを使った
予測モデルの表示と分析
(Commerce Server マネージャ)
分析モデルの構築
データ ウェアハウス
へのデータの
インポート

  1. Commerce Server データ ウェアハウスにデータをインポートします。

  2. [モデル構築のプロパティ] ダイアログ ボックスで構成モデルを選択します。

    または、新しいモデル構成を作成します。

  3. [モデル構築のプロパティ] ダイアログ ボックスで分析モデルの種類を選択します。

  4. 分析モデルを構築します。

  5. 予測モデルを表示および分析するには、予測モデル ビューアを使います。

  6. セグメント モデルを表示および分析するには、ビジネス デスクのセグメント ビューアを使います。

  7. 分析モデルを Web サーバーに配置するには、PredictorClient API 呼び出しを使います。

注

  • 予測モデルは、セグメント モデルよりも的確な推奨を提示します。サイトで推奨項目を提示するには、予測モデルを使います。


予測リソースについて

予測リソースは、Commerce Server 2000 の完全インストールまたはカスタム インストールでインストール可能な Microsoft Windows 2000 サービスです。予測リソースを使うと、Web サイトに予測機能を備えることができます。予測対象のテーブルの列または属性を予測リソースで指定すると、複雑な分析モデルを構築できます。たとえば、ユーザーが関心を持つコンテンツ、広告、およびクロスセルの種類を調べることができます。予測リソースを使って分析モデルを構築したら、Active Server Pages (ASP) ページに予測クライアント オブジェクトを追加できます。このオブジェクトは、サイトにインテリジェントなクロスセル、推奨商品、およびプロパティ予測を追加するものです。

予測リソースのインスタンスは、Commerce サイト単位では複数存在できますが、コンピュータ単位では 1 つしか存在できません。予測リソースは、Commerce Server データ ウェアハウスが格納されているコンピュータごとにインストールすることも、専用のコンピュータにインストールしてシステム メモリを保持することもできます。予測リソースを別のコンピュータで実行すると、予測リソースとデータ ウェアハウスを同じコンピュータで実行する場合よりも、ネットワーク帯域幅の使用量が大きくなります。予測リソースを使う場合は、データベースとして Microsoft SQL Server を使う必要があります。

分析モデルの構築はメモリを多く消費します。分析モデルを一度構築し、それを各 Web サーバーにコピーすれば、Web サーバー上のリソースへのヒットを節約できます。コピーには、予測クライアント オブジェクトで IPredictorClient::LoadModelFromDB メソッドを使います。各 Web サーバーでは、予測機能が異なる複数の分析モデルを提供できます。

分析モデルを構築したら、それを表示できます。予測モデルを表示するには、Commerce Server マネージャの予測モデル ビューアを使います。セグメント モデルを表示するには、Commerce Server ビジネス デスクのセグメント ビューア モジュールを使います。

注

  • 予測リソースのインスタンスは、コンピュータごとに 1 つしか存在できません。

予測リソースには、分析モデルと分析モデル構成が含まれます。また、予測モデル ビューアが用意されており、分析モデルの分析と表示ができます。

ここでは、次のトピックについて説明します。

  • 分析モデル

  • 分析モデル構成

  • 予測モデル ビューア

  • 予測の最適な使用

  • 分析モデルの効果


分析モデル

分析モデルは、過去のサイト ユーザーの観測、購入履歴、クリック履歴などを統計的に関連付けたものです。分析モデルには、サイトを訪れたユーザーの種類に関する情報は含まれますが、特定のユーザーに関する情報は含まれません。分析モデルを構築するための詳細な情報は、Commerce Server データ ウェアハウスに格納されます。

どのモデルも、データ ウェアハウス データベースの [PredictorModels] テーブルの [データ] 列にバイナリ データとして格納されます。

1 つのサイトで複数の分析モデルを実行できます。また、各モデルを異なるデータベースのデータに基づいて構築できます。分析モデルは、特定のサイト向けに構築されるわけではないので、複数のサイトで共有できます。サイトまたはサーバーごとに使用できる分析モデルの数に制限はありません。

予測モデルとセグメント モデル

ケース

高密度テーブル

低密度テーブル

予測モデルとセグメント モデル

構築できる分析モデルには、予測モデルとセグメント モデルの 2 種類があります。予測モデルを表示するには、Commerce Server マネージャの予測モデル ビューアを使います。セグメント モデルを表示するには、Commerce Server ビジネス デスクのセグメント ビューア モジュールを使います。

予測モデルは、いくつかの判断ツリー、および依存関係ネットワークと呼ばれる要約ネットワークから構成されています。依存関係ネットワークとは、判断ツリーによって表される依存関係 (予測の関連付け) を要約したものです。予測モデルから得られる予測は、セグメント化やメモリ ベースのアルゴリズムから得られる予測よりも正確です。依存関係ネットワークおよび各判断ツリーの両方を表示するには、予測モデル ビューアを使います。

セグメント モデルは、類似したユーザー プロパティに基づいて、ユーザーのグループをセグメントに分割したものです。類似したセグメントはセグメントの集まりにグループ化され、セグメント階層を形成します。セグメント モデルを表示するには、ビジネス デスクのセグメント ビューア モジュールを使います。

分析モデルを構築する前に、その作業で使うデータがデータ ウェアハウスで利用可能であることを確認する必要があります。また、既定のトランザクション モデル構成を使わない場合は、独自の構成を作成する必要があります。

分析モデルはケースを基に作成します。ケースはデータ ウェアハウスのデータを基に作成します。ケースの作成に使うデータは、あらかじめデータ ウェアハウスにインポートしておく必要があります。データ ウェアハウスにデータをインポートする方法については、「データ ウェアハウスにデータをインポートする」を参照してください。

ケース

ケースは、特定のサイト ユーザーに関する既知の情報の集合です。この情報は、属性と値の対で構成されます。ケースとなる情報には、ユーザー プロファイル データ、購入履歴、クリック履歴、またはその組み合わせなどがあります。一般的な分析モデルでは、10,000 ～ 50,000 個のケースが使われます。その場合のサイズは、10 ～ 100 キロバイト (KB) になります。モデル構成のケース数は、そのモデル構成を使用する分析モデルの精度に影響します。通常、分析モデルで使用できるケースが多いほど、予測の精度は上がります。ただし、ある程度の数 (約 50,000 ケース) を超えると、それ以上ケースを追加しても精度はほとんど上がらなくなります。一方、分析モデルの構築に要する時間は、モデル構成のケース数が増えれば増えるほど長くなります。

ケースは、データ ウェアハウス データベースに格納されているデータを基に作成します。データ ウェアハウス データベースのデータのうち、Web ビジネスに有用な情報を提供するのは特定の種類のデータ テーブルだけです。たとえば、特定のユーザーが購入する可能性のある商品を予測するには、ユーザー プロファイル、購入履歴、クリック履歴などのユーザー情報が格納されているデータ テーブルまたはビュー (1 つまたは複数のテーブルのデータを別の方法で表す仮想テーブル) を使います。

モデル構成の構築に最もよく使われるデータは、ユーザー プロファイル データとトランザクション履歴ログの 2 つです。前者は高密度テーブルに格納され、後者は低密度テーブルに格納されます。低密度テーブルのトランザクションの分析には、既定のトランザクション モデル構成を使いますが、独自のモデル構成を作成することもできますたとえば、1 つの高密度テーブルをユーザー統計情報で分析する構成や、1 つの高密度テーブルと、トランザクションを格納する 1 つ以上の低密度テーブルを分析する構成を作成できます。

注

  • 1 つの高密度テーブルと 1 つまたは複数の低密度テーブルの両方が使われる場合は、高密度テーブルに格納されているユーザーに対応するデータだけが処理されます。高密度テーブル内に対応する情報がないユーザーの低密度データを使う場合は、高密度テーブルに、そのユーザーのレコードを作成する必要があります。このとき、未知の値はすべて NULL に設定します。独自の構成を設定する手順については、「予測スキーマ」を参照してください。

高密度テーブル

高密度テーブル (またはビュー) では、ケースの属性が単一行の列の値として表されます。年齢、性別、給与などから構成される顧客統計データは、高密度テーブルで表すのが最善です。この種類の高密度テーブルでは、ユーザーごとに 1 行、属性ごとに 1 列が割り当てられます。

高密度テーブルの一般的なデータ ソースは、ユーザーが登録フォームに記入したプロファイル情報です。Web サイトのユーザー データを収集するためのプロファイル定義の作成については、「プロファイル リソースの実行」を参照してください。

次の図は、一般的な高密度テーブルのレイアウトを示しています。

図をクリックすると、拡大または縮小します。

低密度テーブル

低密度テーブル (またはビュー) では、ケースは複数行で表されます。各行は、属性と値の対になります。たとえば、商品購入データのスキーマは、(CustomerID, ProductID, Quantity) となります。この種の低密度テーブルでは、ユーザーが購入する商品ごとに 1 行を割り当てます。通常、低密度テーブルでは、トランザクションごとに 1 行が割り当てられます。たとえば、注文した項目ごと、または訪問したページごとに 1 行割り当てられます。また、サイトを訪れたユーザーごとに複数の行を割り当てることもできます。1 人のユーザーが複数の項目を注文したり、複数のページを訪れる場合があるからです。1 人のユーザーに関連付けられた各行は、1 つのケースになります。ケース ID は、通常、一意のユーザー名またはログイン名などのユーザー ID です。プロパティは、予測対象の項目で、値はそのプロパティの数量です。

低密度データ テーブルに必要なデータが、データ ソースの 2 つ以上のテーブルに格納されている場合もあります。その場合、分析モデル構成で必要な列が含まれているビューを SQL Server Enterprise Manager を使って作成する必要があります。たとえば、購入されたほかの商品に基づいて購入を予測する場合、ユーザー ID、商品 SKU、および購入数量の列が必要です。これらの列が 2 つまたは 3 つのリンク テーブル (Customers、Orders、および Order Details、または Requisition および POLineItems など) に収められている場合があります。これは、データベースの構造によって決まります。

次の図は、一般的な低密度テーブルのレイアウトを示しています。

図をクリックすると、拡大または縮小します。

高密度テーブルと低密度テーブルの構築、および分析モデル構成の作成については、「予測スキーマ」を参照してください。


分析モデル構成

分析モデル構成には、予測モデルとセグメント モデルの構築に使われる情報が記述されています。予測リソースは、分析モデル構成を使って Commerce Server データ ウェアハウス データベースのデータをケースにマップします。ケースは、特定のユーザーに関する既知の情報です。この情報は、属性と値の対のセットで構成されます。ケースは分析モデルの構築に使われます。構築されたモデルは、予測クライアント オブジェクトで使われ、ユーザーの将来の動向を予測します。

分析モデル構成には、次の情報が定義されています。

  • モデル化するデータが格納されたデータ ウェアハウス内のテーブル、ビュー、またはその両方の集まり。

  • 分析モデルの属性。属性とはユーザーを区別するための情報であり、たとえば、ユーザーの年齢、ユーザーが特定の商品を購入したかどうか、ユーザーが特定の広告をクリックしたかどうかなどの情報があります。

Commerce Server 2000 には、トランザクション モデル構成が用意されています。これを使って、データ ウェアハウスのトランザクション ユーザー データを分析する予測モデルやセグメント モデルを構築できます。ほかの種類のデータを基に予測モデルまたはセグメント モデルを構築する場合は、予測スキーマを使って新しいモデル構成を作成する必要があります。新しい分析モデル構成を構築する方法については、「予測スキーマ」を参照してください。

次の場合、独自の分析モデル構成を手動で構築します。

  • テーブル (またはビュー) のフィールド名が組み込みのテーブルのフィールド名と異なる場合

  • Commerce Server に組み込みのデータ テーブルを使わない場合

  • 用意されているモデル構成が業務のニーズに合わない場合

Commerce Server 2000 に用意されているトランザクション モデル構成は、データ ウェアハウス内の次の 4 つのテーブルで管理します。4 番目のテーブルは省略可能です。

  • PredictorModelCfgs 既存のモデル構成の一覧です。Commerce Server マネージャでは、[モデル構成] の下に表示されます。

  • PredictorDataTables モデル化するデータが格納されたテーブルの一覧と説明です。

  • PredictorModels 実際の分析モデルと、その構築に使用されたパラメータが格納されています。

  • PredictorAttributes <構成名> 分析モデルの構築に使用するプロパティと、予測対象のプロパティを示します。このテーブルは省略可能で、属性の分布の自動割り当てを無効にするために使われます。

Microsoft SQL Server を使ってモデル構成テーブルを表示する方法については、｢分析モデル構成テーブルを表示する」を参照してください。


予測モデル ビューア

予測モデル ビューアを使うと、予測モデルを表示できます。予測モデル ビューアには、予測モデルの分析用に、依存関係ネットワーク ビューと判断ツリー ビューの 2 種類のビューが用意されています。

依存関係ネットワーク ビュー

判断ツリー ビュー

依存関係ネットワーク ビュー

依存関係ネットワーク ビューは、分析モデルの属性の統計的な依存関係の分析に使います。依存関係ネットワーク ビューは、予測モデル ビューアで予測モデルを開いたときに最初に表示されるビューです。このビューは、ノードと弧で表される予測モデルのグラフです。ノードは属性に対応し、弧は属性間の統計的な依存関係に対応しています。

図をクリックすると、拡大または縮小します。

ノードは、テキスト付きの楕円として表示されます。ノード上にマウスを置くと、属性のフルネームがヒントとして表示されます。どのノードも選択していない場合は、すべてのノードが緑色で表示されます。

予測モデルを依存関係ネットワーク ビューで開くと、ノードが見やすい形で自動的に表示されます。ノードは、Commerce Server によるレイアウト変更に伴い、絶えず移動します。変更処理を中止し、再開することもできます。ノードをクリックすると、そのノードとグラフ内のほかのノードとの直接的な関連付けが強調表示されます。ノードを手動でドラッグしてレイアウトを変更することもできます。モデルのレイアウトの変更作業については、「依存関係ネットワーク ビューのレイアウトを変更する」を参照してください。ノードの色には、次の意味があります。

  • 緑 ノードが選択されています。

  • 赤 選択したノードはこのノードの予測に役立ちます。

  • 青 このノードは選択したノードの予測に役立ちます。

  • 紫 予測の依存関係が両方向に存在します。

依存関係ネットワーク ビューの左側に沿って表示されているスライダを使うと、関連付けの強さに基づいて表示される関連付けの数を制御できます。スライダを下げると、弧が削除されます。つまり、最も弱い依存関係に対応する弧から順に削除され、最終的には最も強い依存関係だけが表示されます。

スライダが役立つのは、数十の特性と数百の関連付けがある予測モデルを参照するときです。このような場合にスライダを使うと、最も関心のある依存関係に焦点を合わせることができます。

判断ツリー ビュー

予測リソースの判断ツリー ビューを使うと、予測モデル内のツリーのコンポーネントを分析できます。判断ツリー ビューを表示するには、依存関係ネットワーク ビューでノードをダブルクリックします。判断ツリーとは、次の形式の確率ルールを簡単に図にまとめたものです。

もし X の値が～で、かつ Y の値が～のとき、ターゲットの値は p の確率で～である。

特定のルールの "IF" 句の条件は、判断ツリーの左から右へのトラバースに対応しています。特に、各内部ノードには属性名、外向きの矢印線にはその属性の値がそれぞれ注釈として付けられます。

ノードは紫色の楕円形で表示されます。対応する予測の確率を表示するリーフ ノードは、灰色の四角形で表示されます。

図をクリックすると、拡大または縮小します。

各リーフ ノードには、対象の属性の確率分布が格納されます。確率分布とは確率の集まりで、対象に指定できる有効な値ごとに 1 つ作成されます。対象の属性がカテゴリ属性で、その値の数が 8 個未満の場合、各値の確率がヒストグラムとしてリーフ ノードに描写されます。カテゴリ属性が 2 進数の場合、つまり値の有無を示すだけの場合は、値が存在する属性の確率だけが緑色のバーの比率として表示されます (前の図を参照)。カテゴリ属性の値の数が 8 個を超える場合、各リーフ ノードには最も可能性の高い値が注釈として付けられます。対象の属性が連続している場合、各リーフ ノードには有効な範囲が注釈として付けられます。

また、内部ノードをダブルクリックすると、そのノードへのパスがわかりやすく表示されます。

ツリー内の移動は、ダイアログ ボックスを閉じずに続けることができます。ダイアログ ボックスには、現在選択されているノードのパスが表示されます。

判断ツリーの内容と依存関係ネットワークの内容との間には有益な対応関係があることに注意してください。つまり、依存関係ネットワークの属性 A から属性 B に弧が描かれます。ただし、属性 A が属性 B の判断ツリーのノードである場合に限ります。どちらのビューも同じ内容を表しています。つまり、属性 A を理解すると、属性 B を予測できるようになります。

関連項目

依存関係ネットワーク ビューを使う


予測の最適な使用

予測リソースのパフォーマンスは、次の方法で向上させることができます。

  • 分析モデルの構築に使われるサンプル サイズを制御します。

  • 分析モデルに含まれる属性の数を制御します。

  • データ ウェアハウスが格納されているのと同じコンピュータ上でモデルを構築します。

サンプル サイズを変更すると、分析モデルの相対的な精度、および分析モデルの構築にかかる時間を制御できます。サンプル サイズを大きくすると、分析モデルの精度が上がりますが、分析モデルの構築にかかる時間は長くなります。ただし、ケースの数が 30,000 ～ 50,000 を超えると、分析モデルの精度はそれほど向上しなくなります。分析モデルの構築に使われるケースの数を制御するには、[モデル構築のプロパティ] ダイアログ ボックスの [ケースの数] の値を変更します。また、ビューまたはテーブルを使ってデータをあらかじめサンプリングし、そのサンプルからモデルを構築することもできます。その場合、ケースを順番に選択するのではなく、無作為にサンプリングしてください。

分析モデルの精度を予測するための入力となる属性比率、および分析モデルの構築にかかる時間を制御できます。属性比率を高くすれば、それだけ分析モデルの精度が上がりますが、分析モデルの構築にかかる時間は長くなります。分析モデルに含まれる属性の数を制御するには、[モデル構築のプロパティ] ダイアログ ボックスの [入力属性分数] および [出力属性分数] の値を変更します。値を 1.0 に設定すると、予測リソースはモデル構築用のすべての属性を使います。データベースに含まれる属性の数が多い場合 (商品カタログに掲載されている商品が何万または何十万点にも及ぶ場合など) は、使用する属性の数を減らします。特に理由がなければ、入力比率と出力比率は同じ値に設定します。

予測モデルの結果を向上させる場合は、データ サイズと制限事項、および予測リソースのパフォーマンス基準を検討します。

また、Commerce Server データ ウェアハウスが格納されているのと同じコンピュータ上で分析モデルを構築することをお勧めします。

データ サイズと制限事項

パフォーマンス基準

データ サイズと制限事項

次の表は、予測リソースのデータ サイズの平均値と最大値を示します。

パラメータ | 平均値 | 最大値
商品カタログの商品数 | 50,000 | 500,000
モデル構築用のケースの数 | 30,000 | 利用可能なメモリ容量以外による制限はありません。
ユーザー 1 人あたりのトランザクションの数 | 20 | 属性の総数
計算モデルのサイズ | 100 KB | データベースの制限事項によって制限されます。
1 つの呼び出しで予測される属性の最大数 | 10 | 属性の総数

パフォーマンス基準

次の表は、予測リソースのパフォーマンス基準を示します。この基準は、「データ サイズと制限事項」に定義されている平均値に基づいています。

値の測定では、サービスを提供するコンピュータとして、512 MB の RAM を搭載した 400 MHz Pentium II が使用されています。クライアント コンピュータとして、128 MB の RAM を搭載した 400 MHz Pentium II が使用されています。

基準 | コンポーネント | 最小値 | 最大値 | 平均値
予測を行うための待機時間 | クライアント | 0 ミリ秒 | 予測呼び出しごとに 200 ミリ秒 | 予測呼び出しごとに 100 ミリ秒
予測要求のスループット | クライアント | CPU ごとに毎秒 30 予測 | 適用せず | CPU ごとに毎秒 50 予測
新しいモデルの構築時間 | サービス | 適用せず | 8 時間 | 1.5 時間
データベースからのモデルの読み込み | クライアント | 適用せず | 30 秒 | 10 秒
サービス開始時間 | サービス | 適用せず | 45 秒 | 10 秒

関連項目

分析モデルの効果


分析モデルの効果

分析モデルは、新しいデータの予測に使うことでその効果をテストできます。予測リソースには、新しいデータに対する予測の精度を測定する "スコア" が用意されています。このスコアを使うと、サンプル サイズ、入力属性分数、出力属性分数の各パラメータの値を調整しながら、分析モデルの効果を測定できます。テストに使用するケースの数を設定するには、測定精度サンプル比率のパラメータ値を使います。

予測リソースには、2 つのスコアがあります。1 つは、推奨スコアです。このスコアは、クロスセル向けに商品を推奨するときに使用される分析モデルの品質を測定します。分析モデルから返された推奨のランク リストの品質を測定します。もう 1 つは、データ フィット スコアです。このスコアは、未入手のユーザー プロパティなど、未入手のデータを挿入する場合に、分析モデルによる予測の品質を測定します。これらのスコアは、Commerce Server マネージャで Models ノードの下に表示されます。スコアは、Commerce Server データ ウェアハウスの PredictorModels テーブルの DataFitScore 列および Recommendation Score 列に格納されます。

推奨スコアは、次のように動作します。新しい (テスト) データ内の各ケースが一度に 1 つずつ分析モデルに送られ、トランザクションの 1 つ (無作為に選択されたもの) が削除されます。分析モデルが推奨リストを返します。推奨の数は、最高で測定精度最大予測数パラメータの値になります。削除されたトランザクションがリストに掲載されていると、そのモデルは正常に動作したと見なされます。スコアは、分析モデルが正常に処理したケースの比率です。測定精度最大予測数パラメータはモデルの構築時に設定されます。この値は、ユーザーに表示される推奨の数に一致します。

データ フィット スコアは、分析モデルがテスト データ内の分析対象に割り当てる確率の幾何平均です。これは、周辺分析モデルがその分析対象に割り当てる確率で除算されます。周辺分析モデルとは、すべての属性が互いに独立していると想定しているモデルで、あくまでも仮想的なモデルです。

どちらのスコアも、テスト データのケースに対する分析モデルの予測能力を評価しているにすぎません。したがって、いずれかのスコアを分析モデルの実際のパフォーマンスに対する意味のある指標にするには、テスト データを実際的なケース分布に近づける必要があります。さらに、テスト データは、分析モデルの構築に使われるデータと重複しないものにすることが重要です。スコアリングのためにサンプリングしたテスト データによってスコアが大きく変わる (たとえば、[測定精度サンプル比率] オプションを若干変更しただけでスコアが大きく変わるなど) 場合は、テスト データが適切でない可能性が高くなります。また、入力ケースまたは "トレーニング" ケースの数が不十分な場合も、大きな変動が見られることがあります。

セグメント モデルのデータ フィット スコアが負になる

セグメント化処理では、特定のセグメント内のケース同士が、ほかのセグメント内のケースよりも類似性が高くなるようにケースをグループ化します。セグメントの説明は、セグメント内のケースを要約したものです。説明は、確率で示されます。たとえば、各ケースがユーザーを表し、Commerce Server データ ウェアハウスにそのユーザーの給与と、商品 X、Y、Z を購入したかどうかが格納されているとします。この例のセグメントの説明は、特定のセグメントのユーザー (ケース) について、平均給与 (および給与の標準偏差)、商品 X が購入された確率、商品 Y が購入された確率、商品 Z が購入された確率を測定することによって決定されます。セグメント モデルは、各セグメントの説明で構成されます。

セグメント モデルとセグメントの説明は、入力ケースまたは "トレーニング" ケースだけを使って計算されます。このため、トレーニング ケースに存在しない情報を含む "テスト" ケースがある場合、推奨スコアの値が小さくなるか、データ フィット スコアが負の値になることがあります。トレーニング ケースとテスト ケースには、類似した情報が含まれているのが理想的です。推奨スコアの値が小さくなるか、データ フィット スコアの値が負になった場合は、サンプル サイズ パラメータの値を大きくするか、または測定精度サンプル比率パラメータの値を小さくすると問題が解決することがあります。サンプル サイズ パラメータを大きくすると、セグメント モデルの構築時間が長くなる場合があるので注意してください。また、測定精度サンプル比率パラメータを小さくすると、テスト ケースの数を減らすことになるので注意してください。通常は、テスト ケースの数は多くすることをお勧めします。

推奨スコアとデータ フィット スコアは、セグメント モデルをその予測能力だけで評価しているにすぎません。セグメント モデルの推奨スコアの値が小さい場合、またはデータ フィット スコアの値が負である場合は、モデルがその特定のテスト ケースに対してのみ的確な予測ができない可能性があることを示しています。セグメント モデルによって作成されたセグメントがほかの目的には有用である可能性もあります。また、Commerce Server ビジネス デスクのセグメント ビューアを使った評価もできます。

関連項目

分析モデル

分析モデル構成

新しい分析モデルを構築する

分析モデルを表示する

分析モデル構成テーブルを表示する

PredictorClient Object

PredictorClient Object


予測リソースを配置する

分析モデルの構築は、CPU を多く消費する処理です。予測リソースは、Commerce Server データ ウェアハウスを格納しているコンピュータで実行することも、別のホストに配置することもできます。予測リソースをデータ ウェアハウスと同じコンピュータで実行する場合、ネットワーク間でデータを転送する必要がないためモデルの構築時間は短くなります。ただし、この処理によってデータ ウェアハウスのパフォーマンスが低下する可能性があります。データ ウェアハウスの利用が少ない時間に分析モデルを構築すれば、データ ウェアハウスのパフォーマンス低下は問題ではなくなります。

予測リソースを別のコンピュータ (データ ウェアハウスを格納していないコンピュータ) に配置するかどうかは、構築する分析モデルのサイズと数に左右されます。構築に 1、2 分しかかからない小さいモデルを構築する場合は、予測リソースをデータ ウェアハウスと同じコンピュータに配置することをお勧めします。非常に大きい分析モデルを構築する場合、たとえば、カタログに記載している商品数が 1,000,000 点あり、それらすべてを定期的に販売している場合は、予測リソースを専用のホストに配置することをお勧めします。

注

  • オンライン分析処理 (OLAP) サーバー、データ ウェアハウス、予測リソースを同じコンピュータで実行すると、サイズの大きい分析レポートの実行に時間がかかります。

関連項目

サイトの配置


予測リソースのプロパティを構成する

予測の推奨は、Commerce Server データ ウェアハウスと共に使う予測リソースでは、既定で有効になっています。既定の推奨を無効にする場合は、Active Server Pages (ASP) コードを変更するか、ASP コードが既定の推奨としてロードする分析モデルの名前を変更する必要があります。

ここでは、最初の 2 つの手順で、予測リソースが Commerce Server データ ウェアハウス以外のデータベースのモデルとモデル構成を一覧表示するように、予測リソースのプロパティを構成する方法を説明します。

注

  • Commerce Server データ ウェアハウス データベース以外のデータベースを使う場合は、外部データベースの使用のプロパティを再構成し、[データ リンク プロパティ] ダイアログ ボックスを使って外部データベースの接続文字列を入力する必要があります。

外部データベースの分析モデルとモデル構成を一覧表示するには

外部データベースの接続文字列を設定するには

Commerce Server データ ウェアハウスのモデルとモデル構成だけを一覧表示するには

外部データベースの分析モデルとモデル構成を一覧表示するには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。次に、[Predictor on <サーバー名>] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [Predictor on <サーバー名> のプロパティ] ダイアログ ボックスの [プロパティ] タブで、[プロパティ] ボックスの [外部データベースの使用] をクリックします。

  3. [選択したプロパティ値] ボックスで、プロパティを「-1」 (True) に設定します。

予測リソースは、Commerce Server マネージャ コンソールに、データ ウェアハウスだけでなく外部データベースのモデルおよびモデル構成も一覧表示します (Commerce Server データ ウェアハウスのモデルとモデル構成は常に表示されます)。

このプロパティを設定した後で、外部データベースの接続を設定する必要があります。

外部データベースへの接続文字列を設定するには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。次に、[Predictor on <サーバー名>] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [Predictor on <サーバー名> のプロパティ] ダイアログ ボックスの [接続文字列] タブで、[外部データベース] を選択し、[変更] をクリックします。

  3. [データ リンク プロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [サーバー名を入力または選択します] | ドロップダウン リストからサーバー名を選択するか、またはアクセスするデータベースがある場所を入力します。
    [Windows NT 統合セキュリティを使用する] | Microsoft Windows NT 上で実行している SQL Server へのセキュリティが設定された (信頼できる) 接続をプロバイダが要求するように指定するときにクリックします。
    [特定のユーザー名とパスワードを使用する] | データ ソースへのログイン情報の認証に、入力されたユーザー名とパスワードを使うときにクリックします。
    [ユーザー名] | データ ソースにログオンする際の認証に使うユーザー ID を入力します。
    [パスワード] | データ ソースにログオンする際の認証に使うパスワードを入力します。
    [パスワードを空にする] | 接続文字列で空のパスワードを返すにはこのオプションを選択します。
    [パスワードを保存する] | パスワードを接続文字列と共に保存できるようにするには、このオプションを選択します。
    [サーバー上のデータベースを選択する] | アクセスするデータベース名を入力します。

    注

    • [データ リンク プロパティ] ダイアログ ボックスの使用の詳細については、そのダイアログ ボックスの [ヘルプ] をクリックしてください。
  4. [接続テスト] をクリックして、入力したサーバーとデータベースの情報が正しいことを確認します。次に、[OK] をクリックして、接続メッセージを閉じます。

  5. [OK] をクリックして、[データ リンク プロパティ] ダイアログ ボックスを閉じます。

    [Predictor on <サーバー名> のプロパティ] ダイアログ ボックスの [接続文字列] タブで、外部接続文字列の値が [このリソース内の接続文字列] ボックスに表示されます。

  6. [OK] をクリックして、[Predictor on <サーバー名> のプロパティ] ダイアログ ボックスを閉じます。

外部接続文字列の値を無視し、データ ウェアハウスのモデルおよび構成ファイルだけを予測リソースの詳細画面に表示する場合は、外部データベースの使用のプロパティを「0」 (False) に設定する必要があります。

Commerce Server データ ウェアハウスのモデルとモデル構成だけを一覧表示するには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。次に、[Predictor on <サーバー名>] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [Predictor on <サーバー名> のプロパティ] ダイアログ ボックスの [プロパティ] タブで、[プロパティ] ボックスの [外部データベースの使用] をクリックします。

  3. [選択したプロパティ値] ボックスで、プロパティを「0」 (False) に設定します。

  4. [適用] をクリックして、変更を適用し [Predictor on <サーバー名> のプロパティ] ダイアログ ボックスを閉じます。

データ ウェアハウスの分析モデルと分析モデル構成だけが予測リソースの詳細画面に表示されます。


予測リソースを開始および停止する

予測リソースは、Commerce Server マネージャを使って開始および停止します。Microsoft Windows 2000 の管理ツールを使って予測リソースを停止することもできますが、Commerce Server マネージャを使うと予測リソースのユーザー インターフェイスを適切に更新できるので、こちらの使用をお勧めします。予測リソースを開始または停止すると、対応するイベントがローカル コンピュータのイベント ログの記録に記録されます。

Commerce Server マネージャを使って予測リソースを開始するには

Commerce Server マネージャを使って予測リソースを停止するには

Commerce Server マネージャを使って、予測リソースのモデル構築を停止するには

Commerce Server マネージャを使って、予測リソースのモデル構築を一時停止および再開するには

Commerce Server マネージャを使って予測リソースを開始するには

  • [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、[Predictor on <サーバー名>] をマウスの右ボタンでクリックし、[開始] をクリックします。

予測リソースが開始されます。

Commerce Server マネージャを使って予測リソースを停止するには

  • [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、[Predictor on <サーバー名>] をマウスの右ボタンでクリックし、[停止] をクリックします。

    注

    • 予測リソースを停止できるのは、それが実行されている場合だけです。

予測リソースが停止し、イベントがローカル コンピュータのイベント ログの記録に記録されます。

Commerce Server マネージャを使って、予測リソースのモデル構築を停止するには

  • 分析モデルの構築時にその分析モデルの名前をマウスの右ボタンでクリックし、[停止] をクリックします。

    注

    • モデル構築を停止できるのは、モデルの状況が "実行中" である場合だけです

エラー ダイアログ ボックスが表示され、分析モデルの構築に失敗して操作が異常終了したことを通知します。予測リソースが停止し、イベントがローカル コンピュータのイベント ログの記録に記録されます。構築状況が "アイドル" に戻ります。

Commerce Server マネージャを使って、予測リソースのモデル構築を一時停止および再開するには

  1. 分析モデルの構築時にその分析モデルの名前をマウスの右ボタンでクリックし、[一時停止] をクリックします。

    構築状況が "一時停止" に変わります。

  2. モデルの構築を再開するには、その分析モデルの名前をマウスの右ボタンでクリックし、[再開] をクリックします。

    構築状況が "実行中" に変わります。


新しい分析モデルを構築する

サイトごとに複数の分析モデルを構築できます。モデルの構築にはリソースを多く消費するので、コンピュータへの影響が最小限であるときにだけ分析モデルを構築することをお勧めします。

分析モデルの構築に要する時間は、入力データのサイズ (ケースの総数)、サンプル サイズ、データ内の属性の数、およびサーバーのハードウェアとトポロジによって異なります。

新しい分析モデルを構築するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル構成] をクリックします。

  2. 詳細画面で、分析モデルの構築に使用するモデル構成をマウスの右ボタンでクリックし、[構築] をクリックします。

  3. [モデル構築のプロパティ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 分析モデルの名前を入力します。
    [構築の優先度] | 構築の優先度を選択します。既定値は [標準] で、特定の構築スレッドの優先度になります。
    [モデルの種類] | このモデルの種類として、ドロップダウン リストの [予測] または [セグメント] をクリックします。

  4. [次へ] をクリックします。

  5. [モデル構築のプロパティ] ダイアログ ボックスの 2 つ目の画面で、次の操作を行います。
    項目 | 操作
    [サンプル サイズ] | 分析モデルの構築に使われるケース数を入力します。必要に応じて、既定値を変更できます。たとえば、200,000 行の巨大なテーブルの場合、このうちの 20,000 行だけを分析モデルの構築に使うように指定することもできます。既定は、-1 (全データ) または 20,000 のどちらか小さい方です。
    [測定精度サンプル比率] | モデルの精度について自動的にスコアを付けるために使うサンプル データの比率として、0.0 ～ 1.0 の数字を入力します。たとえば、[測定精度サンプル比率] オプションの値として「0.0」と入力すると、モデルにスコアは付けられません。「0.4」と入力すると、サンプル データの 40% を使ってモデルのスコアが付けられます。残りの 60% はモデルの構築に使われます。
    [測定精度最大予測数] | サイトに掲載する推奨の最大数を入力します。この数は、推奨スコアの計算に使われます。既定の属性数は 10 です。
    [入力属性分数] | 予測の入力として使われる属性の比率を、0.0 ～ 1.0 の数字で入力します。たとえば、入力属性分数 0.05 を指定すると、入力属性のうち、最も有意な 5% を選択します。既定値は 1.0 で、この場合すべての属性が予測の入力属性とされます。商品数が 1,000 を超えるカタログの推奨商品のように、属性数が非常に多い場合は、1.0 未満の値を指定することをお勧めします。
    [出力属性分数] | 予測される属性の比率を 0.0 ～ 1.0 の数字で入力します。たとえば、出力属性比率として 0.05 を指定すると、最も有意な属性の 5% の判断ツリーが構築されます。出力属性が商品の場合は、最も人気の高い商品の 5% を含むツリーが返されます。既定値は 1.0 で、この場合はすべての属性を含むツリーが構築されます。商品数が 1,000 を超えるカタログの推奨商品のように、属性数が非常に多い場合は、1.0 未満の値を指定することをお勧めします。
    [セグメント数] | ユーザーの分割先となるセグメントの最大数を入力します。これは、アルゴリズムの初期ヒントとなります。実際のセグメント数はこの値よりも少なくなることがあります。この値は、セグメント モデルを構築する場合にのみ利用できます。
    [バッファ サイズ] | セグメント化を行うときにケースの読み込みに使われるバッファのサイズを入力します。既定値は 1,000,000 バイトです。バッファ サイズは、モデルの構築時間および品質に影響を与えます。たとえば、モデルに多数の属性が含まれている場合は、設定するバッファ サイズを大きくする必要があります。バッファ サイズの制限は、予測リソースを実行しているコンピュータのシステム リソースによって異なります。この値は、セグメント モデルを構築する場合にのみ利用できます。

  6. [完了] をクリックします。

構築状況が詳細画面に表示されます。

構築が行われている間、状況は "構築中" になります。構築が完了すると、状況は "アイドル" になります。構築処理が正常に終了しなかった場合、発生した問題を説明するメッセージが表示されます。Commerce Server 2000 アプリケーション ログにも同じメッセージが書き込まれます。このアプリケーション ログを表示するには、イベント ビューアを使います。

注

  • 独自の予測モデル構成を構築すると、入力と出力に使う属性をリストに明記できます。その場合、手順 5 で説明した属性比率がこれらのリストに適用されます。たとえば、入力リストに 5 つの属性を記載し、入力属性比率の値に 0.8 を指定した場合、このリストのうち情報性の高い 4 つの属性だけが分析モデルの構築時に入力属性として使用されます。

関連項目

分析モデル構成テーブルを表示する

予測の最適な使用

分析モデルを配置する


分析モデルを配置する

分析モデルを Web サーバーに配置するには、サイト開発者に Global.asa ファイルを変更して LoadModelFromDB メソッドの呼び出しを追加します。この呼び出しは、アプリケーションの起動時に Commerce Server データ ウェアハウスから Web サーバーに予測モデルをロードします。このメソッドは、データ ウェアハウスが常に利用できることを前提としています。データ ウェアハウスが常に利用できるとは限らない場合は、次のメソッドを使います。

モデルのロード元であるデータ ウェアハウスが常に利用できるかどうかわからない場合、またはサイトの再初期化にかかる時間を最小限に抑える場合は、分析モデルをプログラム的に配置できます。ただし、この方法では、サイト開発者の負担が増えることに注意してください。

サイト開発者に依頼して、データ ウェアハウスからモデルをロードし (LoadModelFromDB)、それを予測リソースを含むコンピュータのファイルに保存し (SaveModelToFile)、そのファイルを各 Web サーバーにコピーするスクリプトを書いてもらいます。

モデルの構築後に、サイト開発者は、モデルが保存されているファイルから各サーバーにモデルをロード (LoadModelFromFile) するために、各 Web サーバー上の ASP ファイルを変更する必要があります。次に、いずれかの予測メソッド (Predict、PredictMostLikelySegment、またはPredictAllSegments) を適切なパラメータを指定して呼び出す必要があります。

注

  • サイト開発者がこの予測メソッドを使ってセグメント モデルと予測モデルの両方を作成することは可能ですが、このセグメント モデルはリアルタイムの推奨の提示には使わないでください。このセグメント モデルはそのような目的で最適化されておらず、また予測モデルほど的確な推奨を作成できないためです。サイトに関するリアルタイムの推奨には、必ず予測モデルを構築、使用してください。また、同じモデル構成を使って、同じデータに基づいた別のセグメント モデルを構築し、それをCommerce Server ビジネス デスクのセグメント ビューアで表示することもできます。予測メソッドの使用については、「予測オブジェクト」を参照してください。

関連項目

予測リソースを配置する

サイトの配置


分析モデル構成テーブルを表示する

分析モデル構成テーブルと列を表示するには、Microsoft SQL Server Enterprise Manager を使います。

分析モデル構成テーブルを表示するには

  1. [Microsoft SQL Server]、[SQL Server グループ]、表示するデータベースが格納されているサーバー、[データベース]、表示するテーブルが含まれているデータベースの順に展開します。次に、[テーブル] をクリックします。

    選択したデータベース内のすべてのテーブルの一覧が詳細画面に表示されます。

  2. 詳細画面で、表示する列が含まれているテーブルの名前をダブルクリックします。モデル構成テーブルの名前は、[PredictorModelCfgs]、[PredictorDataTables]、および [PredictorModels] です。

[テーブルのプロパティ - <テーブル名>] ダイアログ ボックスが開き、列名とそれに対応する属性の一覧が表示されます。

関連項目

分析モデル構成

分析モデル

分析モデルを表示する

PredictorModels テーブル


分析モデルを表示する

Commerce Server 2000 で構築した予測モデルを表示するには、Commerce Server マネージャからアクセスする予測モデル ビューアを使います。予測モデル ビューアには、依存関係ネットワーク ビューおよび判断ツリー ビューの 2 つのビューがあります。

セグメント モデルの表示方法については、「セグメント モデルを表示する」を参照してください。

予測モデルを表示するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

予測モデル ビューアが開き、依存関係ネットワーク ビューで選択したモデルが表示されます。これは、既定の動作です。

関連項目

依存関係ネットワーク ビューを使う

判断ツリー ビューを使う

セグメント モデルを表示する


依存関係ネットワーク ビューを使う

依存関係ネットワーク ビューを使うと、予測モデルをグラフで表示できます。

ここでは、次のトピックについて説明します。

  • 依存関係ネットワーク ビューに表示可能なノードをすべて検索する

  • 依存関係ネットワーク ビューでスライダを使う

  • 依存関係ネットワーク ビューのレイアウトを変更する

  • 依存関係ネットワーク ビューで拡大および縮小する

  • 依存関係ネットワーク ビューのノードを展開および縮小する

  • 依存関係ネットワーク ビューで [ページに合わせる] を使う

  • 依存関係ネットワーク ビューで判断ツリーの詳細を表示する


依存関係ネットワーク ビューに表示可能なノードをすべて検索する

依存関係ネットワーク ビューに表示可能なすべてのノードを表示するには、ツール バーの [検索] を使います。このオプションが役立つのは、モデルに数百のノードが含まれているときです。このような場合にこのオプションを使うと、特定のノードに簡単にアクセスできます。

ノードを検索するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. [編集] メニューで、ツールバーの 検索 をクリックします。[ノード検索] ダイアログ ボックスが表示されます。

  4. [ノード検索] ダイアログ ボックスの [ノード名] ボックスに、検索するノードの名前の一部または全部を入力します。
[ノード検索] ダイアログ ボックス

図をクリックすると、拡大または縮小します。

  1. 必要に応じて、次のオプションを選択します。両方選択することも選択しないことも可能です。
    • 非表示のノードをすべて表示するには、[非表示のノードを表示] チェック ボックスをオンにします。

    • 検索するノードに接続されているノードをすべて表示するには、[リンクしたノードの追加] チェック ボックスをオンにします。
  2. [ノードにジャンプ] をクリックします。

検索しているノードのみ、または検索しているノードとそれに接続されているすべてのノードが依存関係ネットワーク ビューに表示されます。どちらの表示になるかは、前の手順で選択したオプションによって決まります。

注

  • 検索したノードを判断ツリー ビューに表示するには、[ノード検索] ダイアログ ボックスの [ツリーの表示] をクリックします。


依存関係ネットワーク ビューでスライダを使う

依存関係ネットワーク ビューのスライダを使うと、モデル内の最も弱い依存関係を非表示にすることができます。

スライダを使うには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. スライダの上部をポイントし、マウスの左ボタンを押しながら、表示する停止位置までスライダをドラッグします。


依存関係ネットワーク ビューのレイアウトを変更する

依存関係ネットワーク ビュー内のモデルの既定のレイアウトを変更できます。表示する依存関係が見にくい場合は、レイアウトを変更することをお勧めします。

レイアウトを変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. ツール バーの レイアウトの向上 をクリックして、レイアウトの変更処理を中止し、1 つまたは複数のノードをドラッグして、画面の見やすい位置に移動します。

    注

    • レイアウトの変更処理を開始して、ノードの自動レイアウトに戻すには、ツール バーの レイアウトの向上 をクリックして、すべてのノードを自動的に再度レイアウトします。

すべての接続ノードと弧が新しい位置に移動します。


依存関係ネットワーク ビューで拡大および縮小する

予測モデルが予測モデル ビューアに表示されるように、モデルのサイズを拡大または縮小できます。モデルのサイズを拡大または縮小しないと、そのモデルの特定の領域の詳細を表示できない場合があります。

拡大するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. ツール バーの 拡大 をクリックします。

予測モデル ビューアのモデルが 10% 拡大されます。

縮小するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. ツール バーの 縮小 をクリックします。

予測モデル ビューアのモデルが 10% 縮小されます。


依存関係ネットワーク ビューのノードを展開および縮小する

予測モデル内のノードは、依存関係ネットワーク ビューでモデル自体のサイズを変えることなく、展開または縮小できます。

ノードを展開するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. ツール バーの レイアウトの向上 をクリックしてレイアウトの変更を停止します。次に、ノードをクリックし、ツール バーの ノードの展開 をクリックします。

ノードが展開します。ツール バーの レイアウトの向上 をクリックして、レイアウトの変更を続けます。レイアウト処理では、そのノードのサイズの釣り合いが悪い場合、サイズが調整されます。

ノードを縮小するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. ツール バーの レイアウトの向上 をクリックしてレイアウトの変更を停止します。次に、ノードをクリックし、ツール バーの ノードの縮小 をクリックします。

ノードが縮小します。ツール バーの レイアウトの向上 をクリックして、レイアウトの変更を続けます。レイアウト処理では、そのノードのサイズの釣り合いが悪い場合、サイズが調整されます。


依存関係ネットワーク ビューで [ページに合わせる] を使う

予測モデルが予測モデル ビューアの表示領域に収まるように予測モデルのサイズを調整するには、[ページに合わせる] オプションを使います。

予測モデル ビューアの表示領域に収まるようにモデルのサイズを調整するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. ツール バーの ページに合わせる をクリックします。

予測モデル ビューアの表示領域の境界内に収まるようにモデルのサイズが調整されます。


依存関係ネットワーク ビューで判断ツリーの詳細を表示する

予測モデルの判断ツリーの詳細を依存関係ネットワーク ビューから表示できます。

依存関係ネットワーク ビューから判断ツリーの詳細を表示するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているノードをダブルクリックします。

予測モデル ビューアが判断ツリー ビューに変わり、そのノードの判断ツリーが表示されます。

判断ツリーの詳細を表示した後、依存関係ネットワーク ビューに戻るには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示される予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているモデルのノードをダブルクリックします。

  4. 判断ツリー ビューを終了し、依存関係ネットワーク ビューに戻るには、ツール バーの [戻る] ボタン をクリックします。

判断ツリー ビューが依存関係ネットワーク ビューに変わります。


判断ツリー ビューを使う

予測リソースの判断ツリーを使って、分析モデルを分析できます。

ここでは、次のトピックについて説明します。

  • 判断ツリー ビューで拡大および縮小する

  • 判断ツリー ビューのノードを展開および縮小する

  • 判断ツリー ビューで [ページに合わせる] を使う

  • 判断ツリー ビューで [グラフに戻る] を使う


判断ツリー ビューで拡大および縮小する

判断ツリー ビューに表示される予測モデルのサイズを拡大または縮小できます。これにより、モデルの特定の領域の詳細を表示したり、モデル全体を表示することができます。

拡大するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているモデルのノードをダブルクリックします。

  4. ツール バーの 拡大 をクリックします。

予測モデル ビューアのモデルの判断ツリー ビューが 10% 拡大されます。

縮小するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているモデルのノードをダブルクリックします。

  4. ツール バーの 縮小 をクリックします。

予測モデル ビューアのモデルの判断ツリー ビューが 10% 縮小されます。


判断ツリー ビューのノードを展開および縮小する

予測モデル内のノードは、モデル自体のサイズを変えることなく、展開または縮小できます。

ノードを展開するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているモデルのノードをダブルクリックします。

  4. 展開するノードを選択し、ツール バーの ノードの展開 をクリックします。

ノードを縮小するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているモデルのノードをダブルクリックします。

  4. 縮小するノードを選択し、ツール バーの ノードの縮小 をクリックします。


判断ツリー ビューで [ページに合わせる] を使う

予測モデルが予測モデル ビューアの表示領域に収まるように予測モデルのサイズを調整するには、[ページに合わせる] オプションを使います。

予測モデル ビューアの表示領域に収まるようにモデルのサイズを調整するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているモデルのノードをダブルクリックします。

  4. ツール バーの ページに合わせる をクリックします。

予測モデル ビューアの表示領域の境界内に収まるようにモデルのサイズが調整されます。


判断ツリー ビューで [グラフに戻る] を使う

判断ツリー ビューを終了して依存関係ネットワーク ビューに戻るには、[グラフに戻る] を使います。

判断ツリー ビューを終了して依存関係ネットワーク ビューに戻るには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、表示する予測モデルをマウスの右ボタンでクリックし、[モデルの表示] をクリックします。

  3. 表示する判断ツリーの詳細が含まれているモデルのノードをダブルクリックします。

  4. ツール バーの グラフに戻る をクリックします。

判断ツリー ビューが閉じて、依存関係ネットワーク ビューが開きます。


分析モデルを再構築する

分析モデルの再構築が必要になるのは、現在のモデル データ ファイルが破損した場合、またはモデルの構築に使用したデータが最後にそのモデルを構築してから大幅に変更された場合です。

分析モデルを再構築するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、再構築する分析モデルをマウスの右ボタンでクリックし、[再構築] をクリックします。

  3. [モデル構築のプロパティ] ダイアログ ボックスで、[次へ] をクリックして、以前に入力したモデル情報をそのまま使います。

  4. [モデル構築のプロパティ] ダイアログ ボックスで、[完了] をクリックして、以前に入力したモデル情報をそのまま使います。

分析モデルの構築が始まり、詳細画面に構築状況が "実行中" と示されます。モデルが構築されると、構築状況は "アイドル" に変わります。

関連項目

新しい分析モデルを構築する

分析モデルを表示する


分析モデルの名前を変更する

分析モデルの名前を変更する場合、そのモデルを使用する Web サイトも更新されること、およびそのモデルを古い名前で使用しているサイトがほかにないことを確認します。

分析モデルの名前を変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、名前を変更する分析モデルをマウスの右ボタンでクリックし、[名前の変更] をクリックします。

  3. 分析モデルの新しい名前を入力し、Enter キーを押します。

  4. <モデル名> の変更を確認するダイアログ ボックスで、[はい] をクリックして変更を確定します。

関連項目

新しい分析モデルを構築する

分析モデルを表示する


分析モデルを削除する

分析モデルを削除する前に、Web サイトでそのモデルが現在使用されていないことを確認します。

分析モデルを削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Predictor on <サーバー名>] の順に展開します。次に、2 つ目の [<サーバー名> 上の予測] を展開し、[モデル] をクリックします。

  2. 詳細画面で、削除する分析モデルをマウスの右ボタンでクリックし、[削除] をクリックします。

  3. <モデル名> の削除を確認するダイアログ ボックスで、[はい] をクリックします。

使用可能なモデルの一覧からモデルが削除されます。

注意

  • 一度削除したモデルは復元できません。新しいモデルを作成する必要があります。


予測リソースを監視する

分析モデルの状況は、Commerce Server マネージャで監視できます。また、パフォーマンス カウンタを使うと、予測時間、モデルのロード時間、モデルのロード回数、予測の総数について予測リソースのパフォーマンスを監視するのに役立ちます。

分析モデルの現在の状況を表示すると、次の情報が詳細画面に表示されます。

  • モデル名

  • モデルの種類

  • 最後に生成されたモデルのサイズ

  • 最後にモデルが生成された日付と時刻

  • 最後のモデルの構築に要した時間

  • サービスの状況 (モデル構築中、アイドル、データの読み込み中、実行中、一時停止のいずれか)

  • ソースの構成

  • 推奨スコア

  • データ フィット スコア

構築に失敗したことを示すメッセージが表示された場合は、イベント ビューアを開いてイベント ログの記録を表示します。発生した障害の種類によっては、該当するパラメータを調整してモデルを再構築できます。

予測リソースには、4 つのパフォーマンス カウンタがあります。1 つは予測の実行速度を測定するカウンタ (Client Avg Prediction Time カウンタ) で、ほかの 3 つは予測クライアント オブジェクトが呼び出されるときに特定の処理が発生する頻度を測定するカウンタです。

予測パフォーマンス カウンタの詳細については、「予測リソースを監視する」を参照してください。

関連項目

予測の最適な使用

分析モデルの効果


プロファイル リソースの実行

Web サイトでのデータの収集を管理するには、Commerce Server プロファイル リソースを使います。Commerce Server プロファイル リソースを使うと、たとえば、Web サイトのユーザーから収集したデータを制御するプロファイル定義を作成したり、プロファイル定義で収集されるデータを定義して、特定のデータを Commerce Server データ ウェアハウスにエクスポートするかどうかを指定したり、収集したデータの格納先を制御するデータ ソースを作成したり、または、データ収集のために用意された質問にユーザーがサイトで答えるときの選択肢 (好きな色を選ぶときに使用する色の一覧など) を提供するサイト用語を作成することができます。

ここでは、次のトピックについて説明します。

  • プロファイルのワークフロー プロファイルを管理するためのワークフローについて説明します。

  • プロファイル リソースについて プロファイル リソースの特徴と機能を説明します。

  • プロファイル リソースを設定する プロファイル リソースの接続文字列を変更する方法を説明します。

  • 新しいデータ ソースを追加する 新しいデータ ソースを追加し、パーティションに分割する方法を説明します。追加したデータ ソースを使って、Web サイトで収集した情報を収集データの格納に使用するデータベース (または LDAP ソース) にマップすることができます。

  • 新しいデータ オブジェクトを追加する 新しいデータ オブジェクトを追加して、データベース テーブル (または LDAP クラス) をプロファイル リソースに公開する方法を説明します。

  • 新しいデータ メンバを追加する プロファイル プロパティをデータベース テーブルの指定した列または LDAP クラスの指定した属性にマップするために使用する新しいデータ メンバを追加する方法を説明します。

  • 新しいプロファイル定義を追加する プロファイル定義を追加し、それをデータ オブジェクトにマップする方法を説明します。

  • プロファイル定義にプロパティを追加する プロファイル プロパティ、およびプロファイル プロパティのカスタム属性を追加する方法を説明します。

  • プロファイル定義を評価する 1 つまたはすべてのプロファイル定義を評価して、プロファイル プロパティがデータ ストアに正しくマップされていることを確認する方法を説明します。

  • プロファイル定義にプロファイル定義を追加する あるプロファイル定義のプロパティが別のプロファイル定義を参照し、それら 2 つのプロファイルがリンクするように設定する方法を説明します。たとえば、ユーザー プロファイルをそのユーザーの住所プロファイルとリンクさせることができます。

  • サイト用語を追加する サイト用語の作成方法を説明します。

  • プロファイル定義にサイト用語を追加する ユーザーがプロパティの値としてサイト用語から値を選択できるように、プロファイル プロパティにサイト用語を追加する方法を説明します。

  • 例:2 つのデータ ソースを持つプロファイル定義を作成する Microsoft SQL Server データベースと Microsoft Active Directory データベースの両方にデータを格納するユーザー プロファイル定義を作成する方法を説明します。

  • データ ソースを管理する データ ソース、データ オブジェクト、およびデータ メンバを変更および削除する方法を説明します。

  • プロファイル定義を管理する プロファイル定義を変更および削除する方法を説明します。

  • プロファイル プロパティを管理する プロファイル プロパティ、およびプロパティのカスタム属性を変更および削除する方法を説明します。

  • サイト用語を管理する サイト用語とサイト用語の値を変更および削除する方法を説明します。


プロファイルのワークフロー

次の図は、データ ソースならびにプロファイル定義作成のワークフローを示します。

プロファイル定義
への
プロパティの追加
サイト用語
の追加
プロファイル定義
の追加
データ メンバ
の追加
データ オブジェクト
の追加
データ ソースの作成
ユーザー データのデータベースの作成

  1. 新しいデータ ソースを作成し、データベースおよび LDAP ソースをプロファイル リソースに公開します。

  2. 新しいデータ オブジェクトを作成し、データベース テーブル (または LDAP クラス) をプロファイル リソースに公開します。

  3. 新しいデータ メンバを作成し、データベース テーブルの列 (または LDAP クラスの属性) をプロファイル リソースに公開します。

  4. 作成したデータ オブジェクトをデータベースにマップするのに使用する新しいプロファイル定義を作成します。

  5. プロファイル リソースのプロファイル デザイナ画面を使って、新しいプロパティをプロファイル定義に追加し、それをデータ メンバに割り当てます。

  6. プロファイル定義が既存のデータ ストアにマップされていることを確認します。

  7. プロファイル リソースのサイト用語エディタ画面を使って、Web サイトで入力されるデータを制限するためのサイト用語を作成します。

  8. プロファイル デザイナ画面を使って、プロファイル定義またはサイト用語をプロファイル定義にリンクします。


プロファイル リソースについて

プロファイル リソースは、データ ソース、プロファイル定義、サイト用語の作成に使われます。プロファイル定義は、Commerce Server 2000 の Web サイトからユーザー データとビジネス データを収集するために使います。データ ソースは、プロファイル定義で収集したデータを、その格納場所であるデータベースの列およびテーブル (または Lightweight Directory Access Protocol (LDAP) ソースの属性とクラス) にマップするために使います。サイト用語は、Web サイトでユーザーが個人の嗜好などの情報を入力するときの選択肢を作成するために使います。

ここでは、次のトピックについて説明します。

  • データ ソース

  • データ ソースのパーティション

  • プロファイル定義

  • サイト用語

  • サンプル データ ソース

  • サンプルのプロファイル定義

  • サンプルのサイト用語


データ ソース

データ ストアをプロファイル リソースに公開するには、データ ソースを使います。データ ソースを使うと、プロファイル定義によって Web サイトで収集されたデータをデータ ストアに格納できるようになります。Commerce Server 2000 では、OLE DB データベースと Lightweight Directory Access Protocol (LDAP) ソースがサポートされています。

データ ソースには、次の構成要素が含まれます。

  • データ オブジェクト OLE DB データベースのテーブルまたは LDAP ソースのクラスをプロファイル定義に表示します。データ オブジェクトを作成する過程では、データベースの新しいテーブルや LDAP ソースの新しいクラスは作成されません。代わりに、データ オブジェクトを作成すると、プロファイル リソースに対して、テーブルまたは LDAP クラスが表示されるようになります。テーブルまたはクラスは、それらに表示するデータ オブジェクトが作成される前に存在していなければなりません。

  • データ メンバ OLE DB データベースのテーブルの列、または LDAP ソースのクラスの属性をプロファイル プロパティに表示します。たとえば、ユーザーのWeb サイトに登録時に、プロファイル定義を使って情報を収集するとします。ユーザー情報 (姓、名、電子メール アドレスなど) は、プロファイル プロパティによって収集されます。各プロパティは、データ メンバに関連付けられています。データ メンバは、収集された情報を格納先のデータベース列または LDAP 属性にマップ (または移動) します。

    データ メンバを作成しても、データベース テーブルに新しい列が作成されたり、LDAP ソースのクラスに新しい属性が作成されることはありません。代わりに、列または LDAP 属性がプロファイル リソースに表示されるようになります。列または属性は、表示するデータ メンバが作成される前に存在していなければなりません。

次の図は、データ記憶域の物理スキーマ、データ ソース、プロファイル定義の各部分がどのように関連しているかを示します。

データ ソース
データ オブジェクト
データ
メンバ
データ
メンバ
データ オブジェクト
列
属性
テーブル
Class
OLE DB
データベース
LDAP ソース
データ ソース
プロパティ
プロパティ
プロファイル
定義

関連項目

データ ソースのパーティション

サンプル データ ソース

プロファイル定義

新しいデータ ソースを追加する

データ ソースを管理する


データ ソースのパーティション

プロファイル リソースを使うと、パーティションに分割されたデータ ソースを作成できます。Commerce Server 2000 では、1,000 万ユーザーを超えるサイト トラフィックに対応できるように、データ ソースのパーティション分割がサポートされています。パーティションに分割すると、多数のユーザーに伴うデータベース トランザクションの負荷を、効果的に見積もって管理できます。データ ソースの各パーティションは、データベース、または Lightweight Directory Access Protocol (LDAP) ソースに接続できます。データ ソースをパーティションに分割しておくと、プロファイル定義で収集されたデータすべてを 1 つのデータベースに格納する場合よりも、個々のデータベースのパフォーマンスが向上し、応答時間が短縮されます。

複数のデータベースにマップする

カスタム属性

パーティションを変更する

ハッシュ キー

複数のデータベースにマップする

パーティションに分割されたデータ ソースを使ってプロファイル定義を複数の OLE DB データベースまたは LDAP ソースにマップする場合は、それぞれのデータ記憶デバイス (OLE DB データベースまたは LDAP ソース) に同じスキーマが必要です。たとえば、パーティションに分割され、プロファイル定義を 3 つのデータベースにマップするデータ ソースを作成した場合、3 つのデータベースのテーブル定義はすべて同じであることが必要です。Commerce Server データ ソースでは、最大で128 のパーティションがサポートされています。

カスタム属性

データ ソースのパーティションにはカスタム属性を追加できます。カスタム属性は、アプリケーション固有の属性です。通常、すべてのプロファイル定義、またはデータ ソースに共通する属性は、ClassDef または SourceDef テーブルに格納されます。しかし、選択された特定のデータ ソース オブジェクトにだけ適用される属性もあります。たとえば、データ ソースのソート順やデータ ソース内のパーティションを管理したり、メンバ定義やソース定義オブジェクトなどのほかのオブジェクトとの一貫性を保つために、カスタム属性を作成することもできます。データ ソースのカスタム属性は、プロファイル リソース内でのみ利用できます。

パーティションを変更する

一度データ ソースに追加したパーティションは、変更できますが、削除はできません。データ ソースのパーティションを削除する場合は、新しいデータ ソースを定義して、古いデータ ソースを削除する必要があります。データ ソースをパーティションに分割する場合は、パーティションの 1 つを既定のパーティションに指定する必要があります。

ハッシュ キー

ハッシュ キーは、物理的には複数のデータベースに格納されていますが、1 つのソース (この場合はプロファイル定義) からのデータを一元管理するために使われる一意のキーです。データ ソースは、ハッシュ キーを使って、複数のデータベースに及ぶデータをパーティションに分割します。プロファイル定義でハッシュ キーにするプロファイル プロパティを選択するには、プロファイル リソース (または Commerce Server ビジネス デスクのプロファイル デザイナ モジュール) を使います。

プロファイル プロパティをハッシュ キーとして定義しない場合は、プロファイル定義で収集されたすべてのデータは、既定のパーティションに割り当てられているデータベースに格納されます。一度ハッシュ キーを定義すると、後で再定義することはできません。ハッシュ キーの定義については、「プロファイル定義にプロパティを追加する」を参照してください。

関連項目

サンプル データ ソース

プロファイル定義

新しいデータ ソースを追加する

データ ソースを管理する


プロファイル定義

新しいプロファイル定義を作成するには、プロファイル リソースを使います。プロファイルとは、プロファイル定義の 1 つのインスタンスです。プロファイルには、プロファイル定義に従って収集されたデータが収められます。たとえば、ユーザーが Web サイトでユーザー プロファイル定義にデータを入力すると、Commerce Server 2000 では、そのユーザーのプロファイルが作成されます。ビジネス マネージャは Commerce Server ビジネス デスクでそのプロファイルにアクセスできます。

プロファイル リソースを使うと、プロファイル定義が収集するデータの種類を指定するプロパティをプロファイル定義に追加したり、プロファイル定義のプロパティの属性を指定することができます。ビジネス マネージャは、ビジネス デスクのプロファイル デザイナ モジュールを使って同じ処理を実行することもできます。

プロファイルをほかのプロファイルに関連付ける

プロファイル プロパティを格納場所にマップする

プロファイル定義のコンポーネント

プロファイルをほかのプロファイルに関連付ける

プロファイルをほかのプロファイルに関連付けるには、プロファイル リソースを使用します。プロファイルどうしを関連付けると、プロファイル定義に従って収集したデータを拡張できます。たとえば、Web サイトで商品を購入するユーザーから、請求先や送付先など複数の住所を収集する場合があります。この場合は、収集する住所ごとに、プロパティ (姓、名、住所欄、市町村、都道府県名、郵便番号など) をユーザー オブジェクト プロファイル定義に追加する方法で対応することは可能です。

しかし、複数の住所を収集する場合は、住所ごとのユーザー オブジェクト プロファイル定義に 1 つのプロパティを追加し、そのプロパティを使って住所プロファイルをユーザー プロファイルに関連付ける方法をお勧めします。たとえば、ユーザー オブジェクト プロファイルを定義に、"請求先" という名前のプロパティを 1 つ追加します。"請求先" のプロパティ型を "プロファイル" に定義します。次に、"請求先" プロパティの型参照として、住所プロファイル定義を選択します。

Web サイトでユーザーが入力した請求先は住所プロファイルに保存されます。住所プロファイルは、一意の名前で保存されます。この住所プロファイルの名前は、ユーザー プロファイルの "請求先" プロパティに文字列として収集されます。ユーザー プロファイルには、その住所プロファイルの一意の名前が保存されるので、ユーザー プロファイルと住所プロファイルのデータは、Web サイトやレポートに一緒に表示できます。プロファイル定義を関連付ける手順については、「プロファイル定義にプロファイル定義を追加する」を参照してください。

プロファイル プロパティを格納場所にマップする

Web サイトでユーザーが入力したデータを適切な場所にマップするには、プロファイル プロパティのデータ メンバを使います。たとえば、ユーザーがユーザー オブジェクト プロファイル定義の "名" プロパティに入力した名は、"名" プロパティのデータメンバで指定されたデータベース列に格納されます。

プロファイル リソースでプロファイル定義を作成しておくと、ビジネス マネージャがビジネス デスクを使って、プロファイル定義内のプロパティを変更したり、個々のユーザー プロファイルで利用できるデータを管理することができるようになります。

プロファイル定義のコンポーネント

プロファイル定義には、プロパティ、プロパティ グループ、属性が含まれます。

プロパティ

プロパティ定義によって収集される実際のデータはプロパティによって定義されます。たとえば、"名" は 住所プロファイル定義のプロパティです。プロファイル プロパティは、次の表に示す型として定義できます。

プロパティ型 | 説明
[文字列] | Unicode 文字で最大 4,000 文字を保存できます。文字列型のプロパティは、String 型のデータ メンバにマップされます。
[長い文字列] | Unicode 文字で、最大 2 の 17 乗 (2^17) の文字を保存できます。長い文字列型のプロパティは、String 型のデータ メンバにマップされます。
[数値] | 整数を保存できます。保存できる最大の長さは、データ ストアによって決まります。Number 型のプロパティは、数値型のデータ メンバにマップされます。
[10 進] | 浮動小数点数を保存できます。保存できる最大の長さは、データ ストアによって決まります。10 進型のプロパティは、Number 型のデータ メンバにマップされます。
[ブール値] | 2 つの値 (True/False、Yes/No、1/0 など) のどちらか一方だけを保存できます。ブール型のプロパティは、Boolean 型のデータ メンバにマップされます。
[バイナリ] | 最大 4KB のバイナリ コンテンツを保存できます。主にプログラムで使われます。バイナリ型のプロパティは、Binary 型のデータ メンバにマップされます。
[ロング バイナリ] | 最大 128KB のコンテンツ (スプレッドシート、ドキュメント、イメージ、オーディオ クリップなど) を保存できます。ロング バイナリ型のプロパティは、Binary 型のデータ メンバにマップされます。
[日付/時刻] | 日付と時刻を組み合わせた値を保存できます。形式と最大の長さは、データ ストアによって決まります。日付/時刻型のプロパティは、Date/Time 型のデータ メンバにマップされます。
[日付] | 日付の値を保存できます。形式と最大の長さは、データ ストアによって決まります。日付型のプロパティは、Date/Time 型のデータ メンバにマップされます。
[時刻] | 時、分、秒、ミリ秒の値を保存できます。形式と最大の長さは、データ ストアによって決まります。時刻型のプロパティは、Date/Time 型のデータ メンバにマップされます。
[通貨] | 通貨の形式の数値を保存できます。形式と最大の長さは、データ ストアによって決まります。通貨型のプロパティは、Currency 型のデータ メンバにマップされます。
[パスワード] | テキストを保存できます。プロファイル リソースでは、パスワード型のプロパティは文字列型プロパティと同じように扱われます。ビジネス デスクでは、パスワード型のプロパティに保存されている値はアスタリスク (*) で表示されます。パスワード型のプロパティは String 型のデータ メンバにマップされ、保存できる最大の長さは Unicode 文字で 255 文字です。
[サイト用語] | 対応するサイト用語に関連付けられた用語の名前の一覧から有効な値を保存できます。サイト用語型のプロパティは String 型のデータ メンバにマップされ、保存できる最大の長さは Unicode 文字で 255 文字です。
[プロファイル] | 関連付けられたプロファイル固有のインスタンスのプライマリ キーの値に対応している値を保存できます。プロファイル型のプロパティは String 型のデータ メンバにマップされ、保存できる最大の長さは Unicode 文字で 255 文字です。

プロパティ型は、そのマップに使われるデータ メンバのデータ型と一致する必要があります。たとえば、文字列型プロパティは、String 型データ メンバを使ってデータ ストアの文字列を格納するデータ型の列にマップします。各プロパティには、プロパティの特性を定義する属性があります。

プロパティ グループ

プロパティ グループは、プロファイル プロパティの論理的分類です。プロパティ グループは、プロファイル デザイナ画面で、関連するプロパティをグループとして整理するときに使います。

属性

属性とは、プロパティまたはプロパティ グループに対して指定された特性です。たとえば、[名] プロパティには、[名前]、[表示名]、[説明]、[型] の各プロファイル プロパティ属性があります。また、属性には、次の 2 つの特殊な型があります。

  • 詳細属性 アプリケーションによるプロファイル プロパティの使い方を変更するには、次の表で説明する詳細属性を使います。たとえば、[データ ウェアハウスにエクスポート] 属性は、プロパティを Commerce Server データ ウェアハウスにインポートするかどうかを決定します。
    属性 | 説明
    [アクティブ] | このプロパティがビジネス デスクに表示されるかどうかを示します。
    [データへのマップ] | データベースの列 (または LDAP 属性) へのマップの際に、このプロパティが使用するデータ メンバを指定します。
    [キーの種類] 各プロファイル定義には、プライマリ キーとなるプロパティおよび結合キーとなるプロパティ、または 2 重のキー (プライマリ キーと結合キーの両方) となるプロパティが必要です。4 種類のキー タイプを割り当てることができます。
    • 一意キー このプロパティの値はすべてのメンバに対して一意になります。一意キーとして割り当てられるプロパティは、[プロパティ] 一覧で名前の横に [U(キーマーク)] が表示されます。

    • プライマリ キー プロファイルを識別します。このプロパティの値は、プロファイルごとに一意でなければなりません。プライマリ キーとして指定したプロパティは、データベースまたは LDAP ソースの一意のフィールドにマップします。プライマリ キーとして割り当てられるプロパティには、[プロパティ] 一覧で名前の横に [P(キーマーク)] が表示されます。

    • 結合キー プロファイル定義を複数のデータ オブジェクトに関連付けます。このキーは、プロファイル定義のプロパティを別のデータ オブジェクトのデータ メンバにマップするときに使います。プロファイル定義を複数のデータ オブジェクトにマップする場合は、結合キーを各データ オブジェクトのデータ メンバにマップする必要があります。これで、(結合キーとして割り当てられている) プロファイル定義によって収集されたデータが、各データ メンバによって示される格納場所に保持されます。結合キーとして割り当てられるプロパティには、[プロパティ] 一覧で名前の横に [J(キーマーク)] が表示されます。

    • 2 重の (プライマリおよび結合) キー プロファイルを一意に識別し、プロファイル定義を複数のデータ オブジェクトにマップします。2 重のキーとして割り当てられるプロパティには、[プロパティ] 一覧で名前の横に [D(キーマーク)] が表示されます。
    [必須] | このプロパティが Web サイトとビジネス デスクで必須であるかどうかを指定します。ただし、この属性は、プロファイル リソースでは無効です。キー の種類を選択した場合、この属性は読み取り専用になります。
    [データ ウェアハウスにエクスポート] | このプロパティがデータ ウェアハウスにインポートされるかどうかを指定します。エクスポートできるのは、マップされたプロパティだけです。複数値でブール型のプロパティ、またはバイナリ型、長い文字列型、パスワード型のプロパティはエクスポートできません。
    [キャッシュ読み込みの遅延] | このプロパティが、プロファイルを取得したときには読み込まれず、このプロパティそのものに対してアクセスが行われたときに読み込まれるように指定します。
    [複数値] | このプロパティに関連付けられている複数の値の収集を可能にします。ただし、すべてのデータ型およびデータ ストアが複数値をサポートしているわけではありません。
    [検索可能] | 基になるデータ ストア内でこのプロパティにインデックスを付けて、[検索条件] の項目として、このプロパティを検索に利用できるようにします。検索可能な属性は、データベースまたは LDAP ソースのインデックス付きフィールドにマップします。
    [RDN] | ディレクトリ ストアの相対識別名 (RDN) を特定します。プロパティのマップ先が、基になるストア内の LDAP クラスの RDN 属性である場合には、この値を設定します。
    [ハッシュ キー] | 複数のデータ ソース パーティションにプロファイルのインスタンスを配布するときに、このプロパティが使われます。パーティションに分割されていないデータ ソースでは、このプロパティは読み取り専用です。このプロファイルを取得するには、このキーに対するクエリを実行する必要があります。

  • カスタム属性 プロファイル プロパティのカスタム属性は、アプリケーション固有のカスタム情報を保存するプレースホルダです。これらの属性と値の対は、文字列型でなければなりません。属性名または値の最大文字数は、Unicode 文字で 127 文字です。たとえば、Web サイト ページ上でのプロパティの表示方法を制御するカスタム属性を作成できます。

    ソリューション サイトのアンパッケージの場合、Commerce Server では以下の表に示すカスタム属性が追加されます。

    属性 | 説明
    [sAnonymousAccess] | 顧客サービスのプロパティへのユーザー アクセス レベルを指定します。この属性は、Commerce Server には実装されていません。
    [sUserAccess] | Web サイトの顧客サービスのプロパティへの登録済みユーザーのアクセス レベルを指定します。登録済みユーザーに対してプロパティが表示されないようにするには、属性値を "0" に設定します。登録済みユーザーに対してプロパティが表示されるようにするには、属性値を "1" に設定します。登録済みユーザーに対してプロパティを表示し、かつプロパティを編集できるようにするには、属性値を "2" に設定します。
    [sDelegatedAdminAccess] | 顧客サービスおよび取引先サービスのプロパティへの代理管理者のアクセス レベルを指定します。代理管理者に対してプロパティが表示されないようにするには、属性値を "0" に設定します。代理管理者に対してプロパティが表示されるようにするには、属性値を "1" に設定します。代理管理者に対してプロパティを表示し、かつプロパティを編集できるようにするには、属性値を "2" に設定します。
    [sSiteAdminAccess] | ビジネス デスクのプロパティへのサイト開発者のアクセス レベルを指定します。この属性は、Commerce Server 2000 には実装されていません。
    [SearchOptions] | 顧客サービスおよび取引先サービスでプロファイル プロパティが検索可能かどうかを指定します。標準および拡張検索モードの両方でプロパティを検索可能にするには、属性値を "ALL" に設定します。拡張検索モードだけでプロパティを検索可能にするには、属性値を "ADVANCED" に設定します。プロパティを検索から除外するには、属性値に "NONE" に設定します。
    [ShowInList] | 取引先サービスのユーザー検索結果の一覧にプロパティを表示するかどうかを指定します。プロパティを表示するには、属性値を "1" に設定します。プロパティを表示しないときは、属性値を "0" に設定します。
    [sFeatureID] | サイトがどのような設定の場合に顧客サービスおよび取引先サービスでプロパティを表示するかを指定します。サイトが代理管理者オプションをサポートしている場合のみプロパティを表示するには、属性値に "2" を設定します。サイトが Active Directory を使っている場合のみプロパティを表示するには、属性値に "3" を設定します。どんな場合でも常にプロパティを表示するには、属性値を "0" に設定します。
    [DWMembername] | プロパティにマップされるデータ ウェアハウスのデータ メンバの名前を指定します。

プロファイル デザイナは、プロファイル リソースおよびビジネス デスクの両方で利用できます。ビジネス デスクのプロファイル デザイナ モジュールの使い方については、「ビジネス デスクユーザー」を参照してください。

関連項目

サンプルのプロファイル定義

新しいデータ ソースを追加する

新しいデータ オブジェクトを追加する

新しいプロファイル定義を追加する

プロファイル定義にプロパティを追加する


サイト用語

サイト用語は、ユーザーが入力できる値を一覧内の特定の値に限定させる場合に使います。サイト用語の作成および管理には、プロファイル リソースのサイト用語エディタ画面を使います。ビジネス マネージャは、Commerce Server ビジネス デスクのサイト用語エディタ モジュールを使って、同じ処理を実行できます。

プロファイル プロパティをサイト用語として定義すると、そのプロパティに対するユーザー入力を、サイト用語に一覧表示されている値に限定できます。たとえば、サイト用語型の "好きな色" というプロパティを定義します。次に、"青"、"緑"、"白"、"紫" の各値を持つ "好きな色"というサイト用語を作成します。ユーザーが Web サイトに登録したときに好きな色を質問した場合、ユーザーは "好きな色" プロパティのサイト用語に設定された色から色を選択することになります。この方法でユーザーが選択できる値を限定すると、好きな色が同じユーザーを簡単に対象化できるようになります。サイト用語については、「プロファイル」を参照してください。ビジネス デスクのサイト用語エディタ モジュールの使用法については、「サイト用語エディタ」を参照してください。

関連項目

プロファイル

サイト用語エディタ

サンプルのサイト用語

サイト用語を追加する

サイト用語を管理する


サンプル データ ソース

ソリューション サイトのアンパッケージでは、プロファイル サービスの SQL ソースというサンプル データ ソースがプロファイル リソースに追加されます。プロファイル サービスの SQL ソース データ ソースは、サンプル データ オブジェクトとして "住所"、"一括注文数"、"組織オブジェクト"、"ユーザー オブジェクト" が提供されています。

住所

一括注文数

組織オブジェクト

ユーザー オブジェクト

住所

次の表は、[住所] データ オブジェクトで利用できるデータ メンバの一覧を示します。

名前 | データ型
g_address_id | String
g_id | String
i_address_type | Number
u_address_name | String
u_last_name | String
u_first_name | String
u_description | String
u_address_line1 | String
u_address_line2 | String
u_city | String
u_region_name | String
u_region_code | String
u_postal_code | String
u_country_name | String
u_country_code | String
u_tel_number | String
u_tel_extension | String
i_locale | Number
u_user_id_changed by | String
d_date_last_changed | Date/Time
d_date_created | Date/Time

一括注文数

次の表は、[一括注文数] データ オブジェクトで利用できるデータ メンバの一覧を示します。

名前 | データ型
g_org_id | String
g_po_id | String
u_po_number | String
u_description | String
g_user_id_changed_by | String
d_date_last_changed | Date/Time
d_date_created | Date/Time

組織オブジェクト

次の表は、[組織オブジェクト] データ オブジェクトで利用できるデータ メンバの一覧を示します。

名前 | データ型
g_org_id | String
u_name | String
u_trading_partner_number | String
g_user_id_admin_contact | String
g_user_id_receiver | String
u_org_catalog_set | String
g_user_id_changed_by | String
g_user_purchasing_manager | String
d_date_last_changed | Date/Time
d_date_created | Date/Time

ユーザー オブジェクト

次の表は、[ユーザー オブジェクト] データ オブジェクトで利用できるデータ メンバの一覧を示します。

名前 | データ型
u_logon_name | String
g_org_id | String
g_user_id | String
u_user_title | String
i_user_type | Number
u_last_name | String
u_first_name | String
u_email_address | String
u_tel_number | String
u_tel_extension | String
u_fax_number | String
u_fax_extension | String
u_user_security_password | String
g_user_id_changed_by | String
i_account_status | Number
u_user_catalog_set | String
d_date_registered | Date/Time
u_campaign_history | String
i_partner_desk_role | Number
d_date_last_changed | Date/Time
d_date_created | Date/Time
u_pref1 | String
u_pref2 | String
u_pref3 | String
u_pref4 | String
u_pref5 | String

注

  • "u_pref" データ メンバは、データベースを拡張しなくてもユーザー オブジェクト プロファイル定義にプロパティを追加できるように用意されています。これらのデータ メンバはカスタマイズ可能です。

プロファイル サービスの SQL ソース データ ソースは、既定でプロファイル リソースおよび Commerce Server ビジネス デスクに追加されるサンプルのプロファイル定義 にマップされます。サンプルのプロファイル定義については、「サンプルのプロファイル定義」を参照してください。

関連項目

プロファイル定義

サンプルのプロファイル定義

新しいデータ ソースを追加する

新しいデータ オブジェクトを追加する

新しいデータ メンバを追加する

データ ソースを管理する


サンプルのプロファイル定義

ソリューション サイトのアンパッケージの場合、Commerce Server 2000 では、"住所"、"一括注文数"、"組織"、"ユーザー オブジェクト"、"対象とするコンテキスト" のサンプル プロファイル定義が追加されます。

住所

一括注文数

組織

ユーザー オブジェクト

対象とするコンテキスト

住所

次の表は、[住所] プロファイル定義で利用できるプロパティと、それがマップされる [住所] データ オブジェクトのデータ メンバの一覧を示します。

プロパティ | データ メンバ
[住所 ID] | g_address_id
[ID] | g_id
[姓] | u_last_name
[名] | u_first_name
[住所名] | u_address_name
[住所の種類] | i_address_type
[説明] | u_description
[住所欄 1] | u_address_line1
[住所欄 2] | u_address_line2
[市町村] | u_city
[地域コード] | u_region_code
[都道府県名] | u_region_name
[郵便番号] | u_postal_code
[国/地域コード] | u_country_code
[国/地域名] | u_country_name
[電話番号] | u_tel_number
[内線番号] | u_tel_extension
[ロケール ID] | i_locale
[変更者] | u_user_id_changed_by
[最終変更日時] | d_date_last_changed
[作成日時] | d_date_created

一括注文数

次の表は、[一括注文数] プロファイル定義で利用できるプロパティと、それがマップされる [一括注文数] データ オブジェクトのデータ メンバの一覧を示します。

プロパティ | データ メンバ
[注文書 ID] | g_po_id
[組織 ID] | g_org_id
[注文書番号] | u_po_number
[説明] | u_description
[変更者] | g_user_id_changed_by
[最終変更日時] | d_date_last_changed
[作成日時] | d_date_created

組織

次の表は、[組織] プロファイル定義で利用できるプロパティと、それがマップされる [組織オブジェクト] データ オブジェクトのデータ メンバの一覧を示します。

プロパティ | データ メンバ
[組織 ID] | g_org_id
[名前] | u_name
[取引先番号] | u_trading_partner_number
[管理連絡先] | u_user_id_admin_contact
[受取人] | g_user_id_receiver
[組織カタログ セット] | u_org_catalog_set
[変更者] | g_user_id_changed_by
[購買マネージャ] | g_user_id_purchasing_manager
[最終変更日時] | d_date_last_changed
[作成日時] | d_date_created

ユーザー オブジェクト

次の表は、[ユーザー オブジェクト] プロファイル定義で利用できるプロパティと、それがマップされる [ユーザー オブジェクト] データ オブジェクトのデータ メンバの一覧を示します。

プロパティ | データ メンバ
[ユーザー ID] | g_user_id
[ログオン名] | u_logon_name
[ユーザー パスワード] | u_user_security_password
[電子メール] | u_email_address
[ユーザーの種類] | i_user_type
[ユーザー タイトル] | u_user_title
[姓] | u_last_name
[名] | u_first_name
[電話番号] | u_tel_number
[内線番号] | u_tel_extension
[FAX 番号] | u_fax_number
[FAX 内線番号] | u_fax_extension
[変更者] | g_user_id_changed_by
[組織 ID] | g_org_id
[アカウントの状態] | i_account_status
[ユーザー カタログ セット] | u_user_catalog_set
[登録日] | d_date_registered
[キャンペーン履歴] | u_campaign_history
[取引先サービス ロール フラグ] | i_partner_desk_role
[最終変更日時] | d_date_last_changed
[作成日時] | d_date_created

対象とするコンテキスト

[対象とするコンテキスト] プロファイル定義には、[ページ グループ] プロパティだけが含まれます。これはマップされません。

関連項目

データ ソース

新しいデータ ソースを追加する

新しいデータ オブジェクトを追加する

新しいプロファイル定義を追加する

プロファイル定義にプロパティを追加する

プロファイル定義を管理する


サンプルのサイト用語

Retail ソリューション サイトがアンパッケージされると、Commerce Server 2000 では、5 つのサンプル サイト用語がプロファイル リソースに追加されます。これらのサイト用語の削除または編集はできません。次の表は、Retail ソリューション サイトをアンパッケージしたときに利用できるサイト用語の一覧を示します。

サイト用語 | 用語
[アカウントの状態] | アクティブなアカウント 非アクティブなアカウント
[曜日] | 日曜日 月曜日 火曜日 水曜日 木曜日 金曜日 土曜日
[月] | 1 月 2 月 3 月 4 月 5 月 6 月 7 月 8 月 9 月 10 月 11 月 12 月
[ユーザー ロール] | 管理者 標準ユーザー
[ユーザーの種類] | ゲスト ユーザー 登録済みユーザー

関連項目

サイト用語を追加する

サイト用語を管理する


プロファイル リソースを設定する

Commerce Server マネージャを使うと、プロファイル リソースの接続文字列を変更できます。プロファイル リソースの接続文字列は、アンパッケージ処理中に設定されます。

プロファイル リソースの接続文字列を変更するには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。次に、[Profiles] を右クリックし、[プロパティ] をクリックします。

  2. [Profiles (<サイト名>) のプロパティ] ダイアログ ボックスの [接続文字列] タブで変更する文字列をクリックし、[変更] をクリックします。

  3. [データ リンク プロパティ] ダイアログ ボックスの [接続] タブで次の操作を行います。
    項目 | 操作
    [サーバー名を選択または入力します] | ドロップダウン リストからサーバー名を選択するか、またはアクセスするデータベースがある場所を入力します。
    [更新] | サーバーの一覧を更新するときにクリックします。
    [Windows NT の統合セキュリティを使用する] | このオプションは使わないでください。Commerce Server では Windows NT 認証はサポートされていません。
    [特定のユーザ-名とパスワードを使用する] | データ ソースへのログイン情報を認証するためのユーザー名とパスワードの指定には、このオプションを選択します。
    [ユーザー名] | データ ソースにログオンする際の認証に使用するユーザー ID を入力します。
    [パスワード] | データ ソースにログオンする際の認証に使用するパスワードを入力します。
    [パスワードを空にする] | 指定されたプロバイダが接続文字列で空のパスワードを返せるようにするには、このオプションを選択します。
    [パスワードを保存する] | パスワードを接続文字列と共に保存できるようにするには、このオプションを選択します。パスワードが接続文字列に含まれるかどうかは、呼び出し側のアプリケーションの機能によって異なります。パスワードはマスクも暗号化もされずに返され、保存されます。
    [サーバー上のデータベースを選択する] | データ ソースをマップするデータベース名を入力するか、またはドロップダウン リストからデータベース名を選択するには、このオプションを選択します。
    [データベース ファイルをデータベース名として添付する] | このオプションは使わないでください。Commerce Server では、SQL Server 6.5 またはそれ以前のバージョンはサポートされていません。
    [ファイル名を使用する] | このオプションは使わないでください。Commerce Server では、SQL Server 6.5 またはそれ以前のバージョンはサポートされていません。
    [接続のテスト] | 指定したデータ ソースに接続するときにクリックします。接続に失敗した場合は、正しく設定されているかどうかを確認してください。スペル ミスや大文字と小文字の違いが接続失敗の原因になる場合があります。

  4. [OK] をクリックして、[Profiles (<サイト名>) のプロパティ] ダイアログ ボックスに戻ります。

  5. [適用] をクリックして、変更を適用します。

接続文字列の変更がプロファイル リソースに適用されます。

注

  • いずれかの文字列が変更されると、プロファイル リソース内のすべての接続文字列が更新されます。

関連項目

プロファイル リソースについて


新しいデータ ソースを追加する

プロファイル データの格納用に新しいデータ ソースを追加するには、プロファイル リソースを使います。プロファイル データをデータ ストアにマップするには、プロファイル データ ソースを使います。データ ストアは、OLE DB データベースと LDAP ソースのいずれかになります。

プロファイル定義をデータベースまたは LDAP ソースにマップするには、データ ソースを使います。プロファイル定義を複数のデータ ストアにマップするには、データ ソースをパーティションに分割します。データベースまたは LDAP ソースは、データ ソースを作成する前に、作成する必要があります。プロファイル リソースは、基になるデータ ストアは変更しません。したがって、スキーマの変更は直接データベースまたは LDAP ストアに対して行う必要があります。

重要

  • [データ リンク プロパティ] ダイアログ ボックスに表示される OLE DB ドライバには、プロファイル リソースでの使用に適さないものがあります。次のドライバは使わないでください。
    • Microsoft OLE DB Provider for DTS Packages

    • Microsoft OLE DB Provider for Indexing Service

    • Microsoft OLE DB Provider for Internet Publishing

    • Microsoft OLE DB Simple Packages

    • Microsoft OLE DB Provider for Microsoft Site Server Search

    • Microsoft OLE DB Provider for Commerce Server

    これらのいずれかのドライバを [データ リンク プロパティ] ダイアログ ボックスで選択すると、プロバイダが利用できなくなったことを通知する Microsoft Data Link エラー メッセージが表示されることがあります。

新しい SQL Server データ ソースを追加するには

新しい LDAPv3 準拠ソースのデータ ソースを追加するには

データ ソースのパーティションにカスタム属性を追加するには

新しい SQL Server データ ソースを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[データ ソース] を右クリックし、[新規データ ソース] をクリックします。

  2. [新しいデータ ソース] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | データ ソースのプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | データ ソースに対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | データ ソースの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [次へ] をクリックします。

  4. [データ ソース] ダイアログ ボックスで、[ソースの種類] ボックスの [OLEDB-ANSI プロバイダ] をクリックし、[次へ] をクリックします。

  5. データ ソースをパーティションに分割するには、[パーティション] ダイアログ ボックスで [パーティションに分割されたデータ ソース] チェック ボックスをオンにし、[追加] をクリックします。

  6. [パーティション] ダイアログ ボックスで [編集] をクリックします。

  7. [データ リンク プロパティ] ダイアログ ボックスの [プロバイダ] タブで、データ ソースのプロバイダとして [Microsoft OLE DB Provider for SQL Server] をクリックし、[次へ] をクリックします。

  8. [データ リンク プロパティ] ダイアログ ボックスの [接続] タブで次の操作を行います。
    項目 | 操作
    [サーバー名を選択または入力します。] | ドロップダウン リストからサーバー名を選択するか、またはアクセスするデータベースがある場所を入力します。
    [更新] | サーバーの一覧を更新するときにクリックします。
    [Windows NT の統合セキュリティを使用する] | このオプションは使わないでください。Commerce Server では Windows NT 認証はサポートされていません。
    [特定のユーザー名とパスワードを使用する] | データ ソースへのログイン情報を認証するためのユーザー名とパスワードの指定には、このオプションを選択します。
    [ユーザー名] | データ ソースにログオンする際の認証に使用するユーザー ID を入力します。
    [パスワード] | データ ソースにログオンする際の認証に使用するパスワードを入力します。
    [パスワードを空にする] | 指定されたプロバイダが接続文字列で空のパスワードを返せるようにするには、このオプションを選択します。
    [パスワードを保存する] | パスワードを接続文字列と共に保存できるようにするには、このオプションを選択します。パスワードが接続文字列に含まれるかどうかは、呼び出し側のアプリケーションの機能によって異なります。パスワードはマスクも暗号化もされずに返され、保存されます。
    [サーバー上のデータベースを選択する] | データ ソースをマップするデータベース名を入力するか、またはドロップダウン リストからデータベース名を選択するには、このオプションを選択します。
    [データベースファイルをデータベース名として添付する] | このオプションは使わないでください。Commerce Server では、SQL Server 6.5 またはそれ以前のバージョンはサポートされていません。
    [ファイル名を使用する] | このオプションは使わないでください。Commerce Server では、SQL Server 6.5 またはそれ以前のバージョンはサポートされていません。
    [接続のテスト] | 指定されたデータ ソースに接続するときにクリックします。接続に失敗した場合は、正しく設定されているかどうかを確認してください。スペル ミスや大文字と小文字の違いが接続失敗の原因になる場合があります。

  9. [OK] をクリックして [パーティション] ダイアログ ボックスに戻ります。

  10. [完了] をクリックして、データ ソースを保存し Commerce Server マネージャに戻ります。

これで、データ ソースが保存されます。このデータ ソースに、パーティション、カスタム属性、データ オブジェクトを追加できます。

新しい LDAPv3 準拠ソースのデータ ソースを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[データ ソース] を右クリックし、[新規データ ソース] をクリックします。

  2. [新しいデータ ソース] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | データ ソースのプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | データ ソースに対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | データ ソースの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [次へ] をクリックします。

  4. [データ ソース] ダイアログ ボックスで、[ソースの種類] ボックスの [LDAPv3 準拠のソース] をクリックし、[次へ] をクリックします。

  5. データ ソースをパーティションに分割するには、[パーティション] ダイアログ ボックスで [パーティションに分割されたデータ ソース] チェック ボックスをオンにし、[追加] をクリックします。

  6. [パーティション] ダイアログ ボックスで [編集] をクリックします。

  7. [LDAP 接続文字列] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [サーバー] | LDAP ソースのあるサーバー名を入力します。
    [ポート] | ポート名を入力します。既定のポートは 389 です。

  8. [OK] をクリックして [パーティション] ダイアログ ボックスに戻ります。

  9. [パーティション] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [既定のパーティション] | このパーティションを既定のパーティションに指定するときに選択します。
    [ユーザー名] | LDAP ソースへのアクセスに使用するユーザー名を入力します。Active Directory サーバーを使っている場合は、「ドメイン\ユーザー名」の形式でユーザー名を入力します。
    [パスワード] | LDAP ソースへのアクセスに使用するパスワードを入力します。

  10. [次へ] をクリックして [システム属性] ダイアログ ボックスを開きます。

  11. [システム属性] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [親 URL] | LDAP ディレクトリ ツリーの中でデータを格納する場所を入力します。
    [すべてのユーザーに同じ資格情報を使用] | LDAP ソースにバインドするときに、プロファイル リソースが常に同じ資格情報を使うように指定するには、このオプションを選択します。このオプションが選択されていない場合、プロファイル リソースは現在のユーザーの資格情報を使います。
    [簡易結合の許可] | パスワードをクリア テキストで送信するには、このオプションを選択します。このオプションを選択するとセキュリティが低下しますが、一部のディレクトリ サービスではこの設定が必要です。
    [動的コンテナ] | Internet Locator Service (ILS) などの動的ストアに接続するには、このオプションを選択します。
    [1 つのレベル] | 既定の検索範囲をカレント ディレクトリに設定するには、このオプションを選択します。
    [サブツリー] | 既定の検索範囲をカレント ディレクトリとサブディレクトリに設定するには、このオプションを選択します。
    [ドメイン名] | Active Directory を使っている場合は、サーバーのドメイン名を入力します。
    [参照] | ドメイン名を検索するときにクリックします。

  12. [次へ] をクリックします。

  13. [OK] をクリックして [パーティション] ダイアログ ボックスに戻ります。

  14. [完了] をクリックして、データ ソースを保存し Commerce Server マネージャに戻ります。

これで、データ ソースが保存されます。このデータ ソースに、パーティション、カスタム属性、データ オブジェクトを追加できます。

データ ソースのパーティションにカスタム属性を追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開します。次に、カスタム属性を追加するパーティションを含むデータ ソースを右クリックし、[プロパティ] をクリックします。

  2. [<データ ソース名> のプロパティ] ダイアログ ボックスの [パーティション] タブで、カスタム属性を追加するパーティションをクリックし、[編集] をクリックします。

  3. [プロパティ] ダイアログ ボックスの [カスタム属性] タブで、[新規] をクリックしてデータ ソースに属性を追加ます。

  4. [カスタム属性] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 属性のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 属性に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 属性の説明を入力します。説明には Unicode 文字で最大 127 文字できます。
    [値] | 属性の値を入力します。

  5. [OK] をクリックして、属性を保存します。

  6. [OK] をクリックして、パーティション情報を保存します。

  7. [OK] をクリックして、[Commerce Server マネージャ] に戻ります。

カスタム属性と共にデータ ソースが保存されます。

関連項目

プロファイル リソースについて

新しいデータ オブジェクトを追加する

新しいデータ メンバを追加する

データ ソースを管理する


新しいデータ オブジェクトを追加する

データ ソースにデータ オブジェクトを追加するには、プロファイル リソースを使います。プロファイル定義のプロパティについて収集されるデータを保存する列を含むデータベースのテーブル (または LDAP ソースのクラス) を選択します。

プロファイル リソースを使ってデータ オブジェクトを作成する前に、データ ソースを作成する必要があります。プロファイル リソースでは、基になるデータ ストアは変更されません。したがって、変更は直接データベースまたは LDAP ストアに対して行う必要があります。

新しいデータ オブジェクトを作成するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、データ オブジェクトを追加するデータ ソースを展開します。次に、[データ オブジェクト] を右クリックし、[新規データ オブジェクト] をクリックします。

  2. [新しいデータ オブジェクト] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [オブジェクト名] | 対象となるデータ ストアのテーブルまたは LDAP クラスの名前であるデータ オブジェクトを、ドロップダウン リストから選択します。
    [表示名] | データ オブジェクトに対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | データ オブジェクトの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [OK] をクリックします。

データ オブジェクトが保存されます。これで、このオブジェクトにデータ メンバを追加できます。また、このオブジェクトを使ってプロファイル定義をデータベース列 (または LDAP クラス) にマップできます。そのためには、プロファイル プロパティのマップに使用するデータ メンバも追加する必要があります。

関連項目

プロファイル リソースについて

新しいデータ ソースを追加する

新しいデータ メンバを追加する

データ ソースを管理する


新しいデータ メンバを追加する

データ メンバをデータ オブジェクトに追加するには、プロファイル リソースを使います。具体的には、プロファイル定義のプロパティについて収集されたデータを格納する場所として、データベース内で表示されるテーブル内の列 (または LDAP ソースで表示されるクラス内の属性) を選択します。

プロファイル定義でプロパティを定義するときには、プロパティで表示されているデータベース テーブルの列 (または LDAP クラスの属性) にプロパティをマップします。Web サイトでユーザーがプロファイル定義のプロパティのデータを入力すると、そのデータは指定されたデータベース列または LDAP 属性に格納されます。プロファイル リソースでは、基になるデータ ストアは変更されません。したがって、変更は直接データベースまたは LDAP ストアに対して行う必要があります。

データ メンバを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、データ メンバを追加するデータ オブジェクトを含むデータ ソースを展開します。次に、[データ オブジェクト] を展開し、データ メンバを追加するデータ オブジェクトを右クリックし、[新規データ メンバ] をクリックします。

  2. [新しいデータメンバ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [メンバ名] 一覧から利用可能なデータメンバを選択します。既にデータ オブジェクトに追加されているデータ メンバは淡色表示され利用できません。一覧内のデータ メンバは、マップ先であり、基になるデータストアの列または LDAP 属性と同じ名前になります。

    新しくデータ メンバを追加する場合 (または一覧に利用できるデータメンバがない場合) は、基になるデータ ストアに新しい列または属性を作成する必要があります。名前は、そのデータ メンバがマップされる列または属性の名前と一致していなければなりません。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | アプリケーションでデータ メンバに表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | データ メンバの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。
    [種類] データ メンバのデータ型を選択します。データ型は、そのデータ メンバでマップするプロパティと同じでなければなりません。次のデータ型がサポートされています。
    • Binary (バイナリ)

    • Boolean (ブール値)

    • Currency (通貨)

    • Date/Time (日付/時刻)

    • Number (数値)

    • String (文字列)
    [複数値] | データ メンバに関連付けられた複数値のコレクションを有効にするには、このオプションを選択します。
    [必須] | このプロパティが Web サイトとビジネス デスクで必須であるかどうかを指定します。ただし、この属性は、プロファイル リソースでは無効です。
    [インデックス付き] | このデータ メンバのデータにインデックスを付けるには、このオプションを選択します。
    [プライマリ キー] | このデータ メンバをプライマリ キーとして指定するには、このオプションを選択します。各データ オブジェクトに 1 つずつ、プライマリ キーになるデータ メンバを選択する必要があります。

  3. [追加] をクリックします。データ メンバが [新しいデータ メンバ] ダイアログ ボックスのデータ メンバ一覧に表示されます。

  4. [終了] をクリックします。

データ メンバ画面にデータ メンバが表示されます。

関連項目

プロファイル リソースについて

プロファイル リソースを設定する

新しいプロファイル定義を追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


新しいプロファイル定義を追加する

新しいプロファイル定義を作成するには、プロファイル リソースを使います。たとえば、Web サイトや Commerce Server ビジネス デスクから追加データを利用できるようにするために、ビジネス マネージャから新しいプロファイル定義の作成を求められる場合があります。このような場合は、データ オブジェクトに自動的にマップされるプロファイル定義を作成できます。また、データ オブジェクトにマップされないプロファイル定義を作成することもできます。プロファイル定義を使うことにより、Web サイトを訪問するユーザーについての収集データを定義できます。

プロファイル定義には、カスタム属性を作成できます。たとえば、基になる LDAP ストアでプロファイルを格納する場所を制御するカスタム属性 "defaultParentURL" を追加できます。プロファイル プロパティのカスタム属性は、アプリケーション固有の情報を保存するプレースホルダです。これらの属性と値の対は、文字列型でなければなりません。プロファイル定義のカスタム属性は、プロファイル リソース内でのみ利用できます。

データ オブジェクトにマップされる新しいプロファイル定義を追加するには

データ オブジェクトにマップされないプロファイル定義を追加するには

プロファイル定義にカスタム属性を追加するには

データ オブジェクトにマップされる新しいプロファイル定義を追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、新しいプロファイル定義をマップするデータ オブジェクトを含むデータ ソースを展開します。次に、[データ オブジェクト] を展開し、新しいプロファイル定義をマップするデータ オブジェクトを右クリックします。次に、[新規作成] をクリックし、[新規プロファイル] をクリックします。

  2. [新しいプロファイル定義] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 新しいプロファイル定義のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 新しいプロファイル定義に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 新しいプロファイル定義の説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [次へ] をクリックします。

  4. [完了] をクリックします。

Commerce Server マネージャの利用可能なプロファイル定義の一覧に、新しいプロファイル定義が表示されます。新しいプロファイル定義には、プロパティが含まれます。これは、プロファイル定義を構築したときに基にしたデータ オブジェクトのデータ メンバにマップされます。

データ オブジェクトにマップされないプロファイル定義を追加するには

  1. [Commerce Server マネージャ]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を右クリックし、[新規プロファイル] をクリックします。

  2. [新しいプロファイル定義] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 新しいプロファイル定義のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 新しいプロファイル定義に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 新しいプロファイル定義の説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [OK] をクリックして、ダイアログ ボックスを閉じます。

  4. [完了] をクリックします。

Commerce Server マネージャの利用可能なプロファイル定義の一覧に、新しいプロファイル定義が表示されます。新しいプロファイル定義にはプロパティが含まれていないので、データ ソースにマップされません。したがって、新しいプロファイル定義にプロパティを追加する必要があります。

プロファイル定義にカスタム属性を追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[プロファイル定義] の順に展開します。次に、カスタム属性を追加するプロファイル定義を右クリックし、[プロパティ] をクリックします。

  2. [<プロファイル定義名> のプロパティ] ダイアログ ボックスの [カスタム属性] タブで [新規] をクリックして [カスタム属性] ダイアログ ボックスを表示します。

  3. [カスタム属性] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 新しい属性のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 属性に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 属性の説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。
    [値] | 属性の値を入力します。

  4. [OK] をクリックします。

  5. [OK] をクリックして、[Commerce Server マネージャ] に戻ります。

新しいカスタム属性と共にプロファイル定義が保存されます。

関連項目

プロファイル リソースについて

新しいデータ ソースを追加する

プロファイル定義にプロパティを追加する

サイト用語を追加する

プロファイル定義を管理する


プロファイル定義にプロパティを追加する

プロファイル定義にプロパティを追加するには、プロファイル リソースを使います。プロファイル定義で収集されるデータは、プロパティによって決まります。たとえば、"住所" プロファイル定義を作成する場合、"市町村" というプロパティをプロファイル定義に追加します (Commerce Server ビジネス デスクのプロファイル デザイナ モジュールを使って、プロファイル定義にプロパティを追加することもできます。プロファイル デザイナ モジュールの使用の詳細については、「ビジネス デスクユーザー」を参照してください)。

プロパティ グループを作成して、プロパティを整理することもできます。たとえば、"ライフスタイル"、"意見"、"学歴"、"嗜好"という 4 種類のカテゴリに関連するユーザー プロファイル定義に、50 個のプロパティを追加する場合は、4 つのプロパティ グループを作成します。カテゴリごとに 1 つのプロパティ グループを作成し、各カテゴリに属するプロパティを適切なプロパティ グループとして整理できます。プロファイル リソースでは、各プロパティ グループのプロパティを表示するかどうかを選択することもできます。

プロファイル リソースでは、各プロパティに、プロパティ名 (例 : "市町村" ) やプロパティ型 (例 : "文字列") などのプロパティの特性を格納する属性が提供されています。プロファイル リソースによって提供されるプロパティ属性のほかに、プロパティにカスタム属性を定義することもできます。たとえば、Web サイトでのプロパティの使用方法を制御するカスタム属性を作成できます。

プロファイル定義に新しいプロパティを追加するには

プロファイル定義に新しいプロパティ グループを追加するには

プロパティにカスタム属性を追加するには

プロファイル定義に新しいプロパティを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、プロパティを追加するプロファイル定義をクリックします。

  2. プロファイル デザイナ画面の [プロパティ] 一覧から、追加するプロパティを関連付けるプロパティ グループをクリックし、[追加] をクリックします。

  3. [追加 -- Web ページ ダイアログ] ダイアログ ボックスで、[プロパティの新規追加] をクリックし、[OK] をクリックします。

  4. プロファイル デザイナ画面の [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | プロパティのプログラム序の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | ビジネス デスクに表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | プロパティの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。
    [型] | ドロップダウン リストで、プロパティ型を選択します。既定のプロパティ型は文字列です。
    [型参照] | プロパティ型が "サイト用語" と "プロファイル" の場合には必須です。プロパティ定義に追加するサイト用語またはプロファイルを選択するには、省略記号 [...] ボタンをクリックします。この機能は、プロパティ型にサイト用語またはプロファイルを選択した場合にのみ利用できます。

  5. プロファイル デザイナ画面の [詳細属性] セクションで [アクティブ] チェック ボックスをオンにして、このプロパティをビジネス デスクで利用できるようにします。非アクティブなプロパティはビジネス デスクに表示されません。

  6. [データへのマップ] ボックスの省略記号ボタン [...] をクリックし、[データ ソースの選択] ダイアログ ボックスを開きます。

  7. [データ ソースの選択] ダイアログ ボックスで、プロパティをマップするデータ メンバを含むデータ オブジェクトを含むデータ ソースを展開します。

  8. プロパティのマップに使用するデータ メンバを含むデータ オブジェクトを展開し、そのデータ メンバをクリックして、[OK] をクリックします。

  9. プロファイル デザイナ画面の [詳細属性] セクションで、次の操作を行います。
    項目 | 操作
    [キーの種類] | ドロップダウン リストからキーの種類を選択します。各プロファイル定義には、プライマリ キーとなるプロパティと結合キーとなるプロパティ、または2 重のキー (プライマリ キーと結合キーの両方) となるプロパティが必要です。
    [必須] | このプロパティが Web サイトとビジネス デスクで必須であることかどうかを指定します。ただし、この属性は、プロファイル リソースでは無効です。キーの種類を選択した場合、この属性は読み取り専用です。
    [データ ウェアハウスにエクスポート] | このプロパティをデータ ウェアハウスにインポートするように指定するには、このオプションを選択します。エクスポートできるのは、マップされたプロパティだけです。複数値でブール型のプロパティ、またはバイナリ型、長い文字列型、パスワード型のプロパティはエクスポートできません。
    [キャッシュ読み込みの遅延] | このプロパティが、プロファイルを取得したときには読み込まれず、このプロパティそのものに対してアクセスが行われたときに読み込まれるようにするには、このオプションを選択します。
    [複数値] | このプロパティに関連付けられた複数値のコレクションを有効にするには、このオプションを選択します。プロパティのキーの種類を選択した場合、この値は選択できせん。
    [検索可能] | 基になるデータ ストア内でこのプロパティにインデックスを付けて、[検索条件] の項目として、このプロパティを検索できるようにするには、このオプションを選択します。
    [RDN] | ディレクトリ ストアの 相対識別名 (RDN) を入力します。プロパティのマップ先が、基になるストア内の LDAP クラスの RDN 属性である場合には、この値を設定します。
    [ハッシュ キー] | この値は読み取り専用です。このプロパティが、複数のパーティションにプロファイルのインスタンスを配布するために使われることかどうかを指定します。

  10. [適用] をクリックします。

  11. プロファイル定義を保存するには、ツールバーの [image] をクリックします。

新しいプロパティと共にプロファイル定義が保存されます。

プロファイル定義に新しいプロパティ グループを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、プロパティ グループを追加するプロファイル定義をクリックします。

  2. プロファイル デザイナ画面で、[追加] をクリックします。

  3. [追加 -- Web ページ ダイアログ] ダイアログ ボックスで、[グループの新規追加] をクリックし、[OK] をクリックします。

  4. プロファイル デザイナ画面の [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | プロパティ グループのプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | ビジネス デスクに表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | プロパティの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  5. [適用] をクリックします。

  6. プロファイル定義を保存するには、ツールバーの [image] をクリックします。

新しいプロパティ グループと共にプロファイル定義が保存されます。このグループには、プロパティを移動したり、新しいプロパティを追加することができます。

プロパティにカスタム属性を追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、カスタム属性を追加するプロパティを含むプロファイル定義をクリックします。

  2. プロファイル デザイナ画面の [プロパティ] の一覧で、カスタム属性を追加するプロパティをクリックします。

  3. プロファイル デザイナ画面の [カスタム属性] セクションで、[新規] をクリックします。

  4. プロファイル デザイナ画面の [カスタム属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | カスタム属性のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 属性に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 属性の説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。
    [値] | 属性の値を入力します。

  5. [確認] をクリックし、次に [適用] をクリックします。

  6. プロファイル定義を保存するには、ツールバーの プロファイルの保存 をクリックします。

カスタム属性と共にプロファイル定義が保存されます。

関連項目

プロファイル定義

新しいデータ メンバを追加する

新しいプロファイル定義を追加する

プロファイル定義にプロファイル定義を追加する

サイト用語を追加する


プロファイル定義を評価する

プロファイル定義のマップに使用するデータ メンバの有効性を確認するには、プロファイル リソースを使います。プロファイル定義を評価すると、その定義によって Web サイトで収集されるデータが既存のデータベース列 (または LDAP 属性) に格納されることを確認できます。

注

  • 評価ルーチンでは、プロファイル定義内の各プロパティ データの書き込み、および書き込んだデータの読み取りが順に実行されます。基になるデータ ストアに制限があっても、このルーチンには影響しません。したがって、これらのルーチンが、制限に違反するデータを書き込もうとする可能性があります。この場合は、評価についての警告メッセージが表示されます。警告の説明を注意深く確認し、プロファイルの有効性を判断してください。

プロファイル定義を評価するには

サイトのすべてのプロファイル定義を検証するには

プロファイル定義を評価するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[プロファイル定義] の順に展開します。次に、評価するプロファイル定義を右クリックし、[プロファイルを評価] を右クリックします。

    プロファイル定義が有効である場合は、[有効なプロファイル] ダイアログ ボックスが表示されます。[OK] をクリックします。

    プロファイル定義が有効でない場合は、[無効なプロファイルです] ダイアログ ボックスが表示されます。

  2. 評価を続ける場合は、[はい] 、[OK] の順にクリックして、[無効なプロファイルです] ダイアログ ボックスを閉じます。

    評価を中止する場合は、[いいえ] 、[OK] の順にクリックして、[無効なプロファイルです] ダイアログ ボックスを閉じます。

サイトのすべてのプロファイル定義を検証するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を右クリックします。

  2. [すべてのプロファイルを評価] をクリックします。

    すべてのプロファイル定義が有効である場合は、[有効なプロファイル] ダイアログ ボックスが表示されます。[OK] をクリックします。

    プロファイル定義が有効でない場合は、[無効なプロファイルです] ダイアログ ボックスが表示されます。

  3. (無効なプロファイル定義をスキップして) 評価を続ける場合は、[はい] 、[OK] の順にクリックして、[無効なプロファイルです] ダイアログ ボックスを閉じます。

    評価を中止する場合は、[いいえ] 、[OK] の順にクリックして、[無効なプロファイルです] ダイアログ ボックスを閉じます。

関連項目

新しいプロファイル定義を追加する

新しいデータ メンバを追加する

プロファイル定義にプロパティを追加する

プロファイル定義を管理する

プロファイル プロパティを管理する


プロファイル定義にプロファイル定義を追加する

プロファイルの関連付けには、プロファイル リソースを使用します。Commerce Server ビジネス デスクのプロファイル デザイナ モジュールを使って、同じタスクを実行することもできます。詳細については、「プロファイル定義にほかのプロファイル定義を追加する」を参照してください。

たとえば、"ユーザー オブジェクト" プロファイル定義に 3 つのプロパティを追加し、それを使って "住所" プロファイル定義の 3 つのインスタンス (たとえば、"請求先"、"送付先"、"自宅") を参照することができます。このようにすると、"住所" プロファイル定義を使ってWeb サイトのユーザーの住所情報を収集できます。ユーザーの "住所" プロファイルの名前はユーザー プロファイルに格納されるので、プロファイル内のデータを一緒に Web サイトやレポートに表示できます。

プロファイル定義にプロファイル定義を追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、プロファイル定義を追加するプロファイル定義をクリックします。

  2. プロファイル デザイナ画面の [プロパティ] の一覧で、新しいプロパティを追加するプロパティ グループを展開し、[追加] をクリックします。

  3. [追加 -- Web ページ ダイアログ] ダイアログ ボックスで、[プロパティの新規追加] をクリックし、[OK] をクリックします。

  4. プロファイル デザイナ画面の [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | プロパティのプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | ビジネス デスクに表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | プロパティの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。
    [型] | [型] ボックスの [プロファイル] をクリックします。
    [型参照] | 省略記号 [...] ボタンをクリックすると、[プロファイルの選択] ダイアログ ボックスが開きます。[プロファイルの選択] 一覧で、[プロファイル カタログ] を展開し、プロパティに追加するプロファイル定義を選択します。

  5. [OK] をクリックし、[適用] をクリックします。

    プロファイル定義がプロパティに割り当てられます。

  6. プロファイル定義を保存するには、ツールバーの プロファイルの保存 をクリックします。

プロパティの変更と共にプロファイル定義が保存されます。

関連項目

プロファイル定義

プロファイル定義にプロパティを追加する

サイト用語を追加する

プロファイル オブジェクト

プロファイル スキーマ


サイト用語を追加する

Commerce Server 2000 に新しいサイト用語を追加するには、プロファイル リソースを使います。Commerce Server ビジネス デスクのサイト用語エディタ モジュールでも同じ作業を実行できます。詳細については、「サイト用語を追加する」を参照してください。

Commerce Server に新しいサイト用語を追加する場合は、そのサイト用語に値 (用語) を定義します。プロファイル プロパティに対して特定の値を設定するには、サイト用語を使います。サイト用語を作成したら、それをプロファイル プロパティの値として割り当てることができます。たとえば、"青"、"緑"、"紫"の各値を持つ、"好きな色"というサイト用語を作成します。次に、サイト用語型の "好きな色" プロファイル プロパティを定義し、それに "好きな色" サイト用語を割り当てます。ユーザーが "好きな色" プロパティの色を選択する場合、選択肢は "好きな色" サイト用語に設定されている色に限定されます。新しいサイト用語の追加には、プロファイル リソースのサイト用語エディタ画面を使います。

サイト用語の変更を保存するには、Profiles フォルダ内のログ ファイルのアクセス権が必要です。ビジネス マネージャがサイト用語エディタ モジュールで行った変更を保存する場合も、Profiles フォルダ内のログ ファイルへのアクセス権が必要です。

サイト用語エディタ画面でサイト用語を整理するには、サイト用語グループを作成します。たとえば、"好きな色" のほかに、次のようなサイト用語およびそれに対応する値を作成し、ユーザーの嗜好をまとめたサイト用語グループを作ることができます。

  • ブランド (有名ブランド、その他)

  • 品質 (最低価格、最高品質)

  • 購入 (オンライン、カタログ、店頭)

サイト用語を追加するには

サイト用語グループを追加するには

サイト用語を追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[サイト用語] をクリックします。

  2. サイト用語エディタ画面の [サイト用語の構成] 一覧で、新しいサイト用語を作成するサイト用語グループをクリックし、[追加] をクリックします。

  3. [追加 -- Web ページ ダイアログ] ダイアログ ボックスの [新しいサイト用語の追加] をクリックし、[OK] をクリックします。

  4. サイト用語エディタ画面の [サイト用語の属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | サイト用語のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | サイト用語に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | サイト用語の説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  5. サイト用語に値を追加するには、[用語] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [用語の名前] | 1 つ目の用語のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 用語に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。

  6. 用語を確定するには、[確認] をクリックします。

  7. サイト用語にほかの用語を追加するには、[新規] をクリックし、新規用語の用語名と表示名を入力します。次に、[確認] をクリックし、[適用] をクリックします。

  8. サイト用語を保存するには、ツールバーの プロファイルの保存 をクリックします。

作成した新しいサイト用語で用語が保存されます。

サイト用語グループを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[サイト用語] をクリックします。

  2. サイト用語エディタ画面の [サイト用語の構成] 一覧で、[追加] をクリックします。

  3. [追加 -- Web ページ ダイアログ] ダイアログ ボックスで、[グループの新規追加] をクリックし、[OK] をクリックします。

  4. サイト用語エディタ画面の [サイトの用語の属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | サイト用語グループのプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | サイト用語グループに対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | サイト用語グループの説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  5. [適用] をクリックします。

  6. サイト用語グループを保存するには、ツールバーの プロファイルの保存 をクリックします。

関連項目

プロファイル リソースについて

プロファイル定義にサイト用語を追加する

サイト用語を管理する


プロファイル定義にサイト用語を追加する

プロファイル定義にサイト用語を追加するには、プロファイル リソースを使います。Commerce Server ビジネス デスクのプロファイル デザイナ モジュールを使って、同じタスクを実行することもできます。詳細については、「プロファイル定義にサイト用語を追加する」を参照してください。

サイト用語をプロファイル プロパティに割り当てると、Web サイト上のユーザーに対して、そのプロパティのサイト用語の値はドロップダウン リストで表示されます。Web サイトでユーザーがサイト用語のドロップダウン リストから選んだ用語は、そのユーザーのプロファイルに文字列型 (String) として格納されます。

プロファイル定義にサイト用語を追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、サイト用語を追加するプロファイル定義をクリックします。

  2. プロファイル デザイナ画面の [プロパティ] 一覧で、サイト用語を割り当てるプロパティが含まれているプロパティ グループを展開し、サイト用語を追加するプロパティをクリックします。

  3. プロファイル デザイナ画面の [属性] セクションで、[型] ボックスの [サイト用語] をクリックします。

  4. [型参照] ボックスの省略記号 [...] ボタンをクリックします。

  5. [サイト用語の選択] ダイアログ ボックスの [サイト用語の選択] 一覧で、プロパティに割り当てるサイト用語が含まれているサイト用語グループを展開し、そのサイト用語をクリックします。

  6. [OK] をクリックし、[適用] をクリックします。

    サイト用語がプロパティに割り当てられます。

  7. プロファイル定義を保存するには、ツールバーの プロファイルの保存 をクリックします。

プロパティの変更と共にプロファイル定義が保存されます。

関連項目

プロファイル リソースについて

プロファイル定義にプロパティを追加する

サイト用語を追加する

サイト用語を管理する


例:2 つのデータ ソースを持つプロファイル定義を作成する

Active Directory を使ってユーザー プロファイル データを保存することの利点の一つとして、ユーザー認証をより安全にかつ柔軟に実行できるという点が挙げられます。Active Directory には不揮発性のデータだけを保存し、頻繁に更新されるデータは SQL Server に保存することが最善の方法です。

以下の例では、SQL Serverデータベースと Active Directory データベースの両方にデータを格納するユーザー プロファイル定義を作成します。これは、単にプロセスを説明するための例です。実際の使用をお勧めするプロファイルの説明ではありません。それぞれのビジネス要件に基づいたプロファイル定義をデザインしてください。

この例では、Commerce Server 2000 に Active Directory ドメイン コントローラがインストールおよび構成されていると仮定しています。

Active Directory の計画については、「Active Directory 統合の計画」を参照してください。

ここでは、次のトピックについて説明します。

  • 手順 1 : "ProfileService_ADSource" データ ソースを作成する

  • 手順 2 : "AD User Object" を追加する

  • 手順 3 : "AD User Object" データ メンバを追加する

  • 手順 4 : "AD-SQL User" プロファイル定義を作成する

  • 手順 5 : "AD-SQL User" にプロパティ グループを追加する

  • 手順 6 : "SQL Server" プロパティを "AD-SQL User" に追加する


手順 1 : "ProfileService_ADSource" データ ソースを作成する

新しい LDAPv3 準拠ソースのデータ ソースを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[データ ソース] を右クリックし、[新規データ ソース] をクリックします。

  2. [新しいデータ ソース] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 「UPM_ADSource」と入力します。
    [表示名] | 「ProfileService_ADSource」と入力します。
    [説明] | 「Active Directory data source｣と入力します。

    次の図は、[新しいデータ ソース] ダイアログ ボックスを示します。

    [新しいデータ ソース] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  3. [次へ] をクリックします。

  4. [データ ソース] ダイアログ ボックスで、[ソースの種類] ボックスの [LDAPv3 準拠のソース] をクリックし、[次へ] をクリックします。

  5. [パーティション] ダイアログ ボックスで、[パーティションに分割されたデータ ソース] チェック ボックスがオフになっていることを確認し、[追加]をクリックします。

  6. [パーティション] ダイアログ ボックスで [編集] をクリックします。

  7. [LDAP 接続文字列] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [サーバー] | Active Directory ドメイン コントローラの名前を入力します。この例では、名前は "MSCS01" です。
    [ポート] | 389 以外の値を使う場合を除き、空白のままにしておきます。

  8. [OK] をクリックします。

  9. [パーティション] ダイアログ ボックスの [既定のパーティション] チェック ボックスがオフになっていることを確認します。次の図は、[パーティション] ダイアログ ボックスを示します。
    [パーティション] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  10. [パーティション] ダイアログ ボックスで次の操作を行います。
    項目 | 操作
    [ユーザー名] | Microsoft Windows ドメイン、および Active Directory ドメインのユーザー名を入力します。「ドメイン\ユーザー名」の形式で入力してください。
    [パスワード] | Windows ドメインのパスワードを入力します。

  11. [次へ] をクリックします。

  12. [システム属性] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [親 URL] | Active Directory サーバー内で Active Directory データを格納する場所をルートに対する相対的な場所として入力します。
    [ドメイン名] | Active Directory サーバーのドメイン名を入力します。

注

  • このダイアログ ボックス内のほかのオプションは、既定の設定のままにしてください。

  • ただし、[すべてのユーザーに同じ資格情報を使用] を選択することはできます。このオプションを選択すると、プロファイル リソースが Active Directory サーバーと通信するときには、常に手順 6 で入力された資格情報が使われます。このオプションが選択されていない場合、プロファイル リソースでは、実行中のプロセスの資格情報が使われます。

    次の図は、[システム属性] ダイアログ ボックスを示します。

    [システム属性] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  13. [次へ] をクリックします。

  14. [カスタム属性] ダイアログ ボックスの [完了] をクリックします。

  15. [パーティション] ダイアログ ボックスで [完了] をクリックします。

[ProfileService_ADStore] データソースが Commerce Server マネージャの [データ ソース] の下に新規ノードとして表示されます。


手順 2 : "AD User Object" を追加する

プロファイル データ オブジェクトを作成して、プロファイル プロパティを Active Directory ユーザー クラスにマップします。

新しいデータ オブジェクトを作成するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、手順1. で作成した [ProfileService_ADStore] データ ソースを展開します。次に、[データ オブジェクト] を右クリックし、[新規データ オブジェクト] をクリックします。

  2. [新しいデータ オブジェクト] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [オブジェクト名] | [user] を選択します。これは、Active Directory ユーザー クラスです。
    [表示名] | 「AD User Object」と入力します。

    次の図は、[新しいデータ オブジェクト] ダイアログ ボックスを示します。

    [新しいデータ オブジェクト] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  3. [OK] をクリックします。

[AD User Object] データ オブジェクトが [ProfileService_ADSource] データ ソースに追加されます。


手順 3 : "AD User Object" データ メンバを追加する

データ ソースをマップしたデータベースのテーブルの列にプロファイル プロパティ属性をマップするには、プロファイル データ メンバを作成します。この例では、手順 2. で作成した [AD User Object] データ オブジェクトに 9 個のデータ メンバを追加します。ユーザー名、ユーザー パスワード、一般名 (Common Name) に関するのメンバを追加します。

データ メンバを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開します。次に、[ProfileService_ADSource] 、[データ オブジェクト] の順に展開し、[AD User Object] を右クリックし、[新規データ メンバ] をクリックします。

  2. [新しいデータ メンバ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [メンバ名] | [cn] を選択します。
    [表示名] | 「一般名」と入力します。

    次の図は、[新しいデータ メンバ]ダイアログ ボックスを示します。

    [新しいデータ メンバ] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  3. [追加] をクリックします。

    既定では、[cn] データ メンバは、[必須]、[インデックス付き]、[プライマリ キー] に指定されています。

  4. 上の手順を繰り返して、以下のデータ メンバを作成します。

  5. [終了] をクリックします。
    メンバ名 | 表示名 | 型
    givenName | 名 | String
    initials | 頭文字 | String
    sn | 姓 | String
    streetAddress | 番地等 | String
    l | 市町村 | String
    st | 都道府県/州 | String
    postalCode | 郵便番号 | String
    co | 国 /地域 | String

これらのデータ メンバを追加した後の画面は、次の図のようになります。

図をクリックすると、拡大または縮小します。


手順 4 : "AD-SQL User" プロファイル定義を作成する

[AD User Object] データ オブジェクトを使って、カスタム プロファイル定義を作成します。作成するのは、ユーザー プロファイル情報を収集するプロファイル定義です。プロパティのほとんどは、SQL Server データベースにマップされます。ただし、ユーザー名とパスワードは、Active Directory にマップされます。

この複数ソースのプロファイルを作成するには、プロパティを選択し、それを複数のデータ ソースのデータ メンバにマップします。

新しいプロファイル定義を作成するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース]、[ProfileService_ADSource]、[データ オブジェクト] の順に展開します。次に、[AD User Object] を右クリックし、[新規作成] をポイントし、[新規プロファイル] をクリックします。

  2. [新しいプロファイル定義] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 「AD_SQL_User」と入力します。
    [表示名] | 「AD-SQL User」と入力します。
    [説明] | 「AD および SQL ソースを使用するユーザー プロファイル定義」と入力します。

    次の図は、[新しいプロファイル定義] ダイアログ ボックスを示します。

    [新しいプロファイル定義] ダイアログ ボックス

    図をクリックすると、拡大または縮小します。

  3. [次へ] をクリックします。

  4. [カスタム属性] ダイアログ ボックスの [完了] をクリックします (この例ではカスタム属性は作成しません)。

Commerce Server マネージャの利用可能なプロファイル定義の一覧に、新しいプロファイル定義が表示されます。


手順 5 : "AD-SQL User" にプロパティ グループを追加する

プロファイル定義を見やすくするために、Active Directory と SQL Server のプロパティについて、個別のグループを作成することができます。SQL Server プロパティを [AD-SQL User] プロファイル定義に追加するには、データ グループを作成する必要があります。

プロファイルにデータ グループを追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、[AD-SQL User] をクリックします。右側のウィンドウにプロファイル デザイナ画面が表示されます。
    AD-SQL User プロファイル定義

    図をクリックすると、拡大または縮小します。

  2. [追加] をクリックします。

  3. [追加 -- Web ページ ダイアログ] ダイアログ ボックスで、[グループの新規追加] をクリックし、[OK] をクリックします。

  4. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「ADGroup」と入力します。
    [表示名] | 「Active Directory」と入力します。

    次の図は、[属性] セクションを示します。

    プロパティ グループの AD-SQL User プロファイル定義

    図をクリックすると、拡大または縮小します。

  5. [適用] をクリックします。

  6. [プロパティ] 一覧で、作成した [Active Directory] グループをクリックし、ダイアログ ボックスの一番下の上向き矢印ボタンをクリックします。[プロパティ] 一覧のプロパティ内で、[Active Directory] が一番上に移動するまで矢印ボタンをクリックします。

  7. [Active Directory] の左の矢印をクリックします。矢印が下向きになります。ノードが展開され、グループにプロパティを追加できる状態になります。

  8. [Active Directory] のすぐ下のプロパティをクリックします。ここまでの手順に正確に従っていれば、これは [一般名] プロパティになります。

  9. ダイアログ ボックスの一番下の上向き矢印ボタンをクリックします。[Active Directory] の下に、このプロパティの名前がインデントされて表示されます。このプロパティは [Active Directory] グループに配置されます。

  10. 残りの各プロパティについても、名前をクリックし、上向き矢印ボタンをクリックします。すべてのプロパティをこのグループに配置すると、[プロパティ] 一覧の表示は次の図のようになります。
    AD-SQL User プロファイル定義の拡張属性

    図をクリックすると、拡大または縮小します。

  11. SQL Server グループをプロファイル定義に追加するには、[追加] をクリック、[グループの新規追加] をクリックして、[OK] をクリックします。

  12. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「SQLGroup」と入力します。
    [表示名] | 「SQL Server」と入力します。

    [属性] セクションは次の図のようになります。

    プロパティの AD-SQL User プロファイル定義

    図をクリックすると、拡大または縮小します。

  13. [適用] をクリックします。

  14. SQL Server グループの名前を左に移動するには、ダイアログ ボックスの一番下の下向き矢印ボタンをクリックします。

追加したプロパティが新しいプロパティ グループに分類されます。


手順 6 : "SQL Server" プロパティを "AD-SQL User" に追加する

ここまでに、2 つのプロパティ グループ "Active Directory" および "SQL Server" を持つプロファイル定義 "AD-SQL User" を作成しました。"Active Directory" プロパティには既にプロパティも追加しています。次に、"SQL Server" プロパティ グループにプロパティを追加する必要があります。

"SQL Server User Object" プロパティを "AD-SQL User" プロファイル定義に追加するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、[AD-SQL User] をクリックします。

  2. プロファイル定義画面の [プロパティ] 一覧で、[一般名] をクリックします。プロパティ属性が右側に表示されます。

  3. [詳細属性] セクションで、次の操作を行います。
    項目 | 操作
    [キーの種類] | [2 重 (プライマリおよび結合) キー] を選択します。プロファイル定義で複数のデータ ソースを使う場合は、両方のソースをマップする結合キーを作成する必要があります。
    [データへのマップ] | 省略記号 [...] ボタンをクリックします。[データ ソースの選択] ダイアログ ボックスで、[ProfileService_ADSource] を展開し、[AD-SQL User] を展開します。[プロファイル サービスの SQL ソース] をクリックし、[ユーザー オブジェクト] をクリックします。

  4. Ctrl キーを押しながら、[ログオン名 (u_logon_name)] ([ユーザー オブジェクト] の下の項目) と [一般名 (cn)] ([AD User Object (AD-SQL User)] の下の項目) の両方を選択し、[OK] をクリックして、[データ ソースの選択] ダイアログ ボックスを閉じます。

    両方のプロパティが [データへのマップ] ボックスに表示されます。

  5. [詳細属性] セクションで [RDN] チェック ボックスオンにし、[適用] をクリックします。

    ここでは、結合キーのプロパティが、プロファイルの相対識別名 (RDN) として指定されます。Active Directory などの LDAPv3 ソースにマップされる有効なプロファイルを作成するには、RDN が必要です。ただし、SQL Server などの OLE DB ソースの場合は不要です。

  6. [プロパティ] 一覧で、[SQL Server] の左の矢印をクリックし、[追加] をクリックします。

  7. [追加 -- Web ページ ダイアログ] ダイアログ ボックスで、[プロパティの新規追加] を選択し、[OK] をクリックします。

  8. [プロパティ] 一覧で、[新規プロパティ 1] をクリックします。

    次のテーブルの新規プロパティを [AD-SQL User] プロファイル定義に追加します。

    名前 | 表示名 | 型 | データへのマップ
    u_user_security_password | パスワード | 文字列 | パスワード(u_user_security_password)
    i_account_status | アカウントの状態 | 数値 | アカウントの状態(i_account_status)
    u_user_catalog_set | カタログ セット | 文字列 | ユーザ カタログ セット(u_user_catalog_set)
    d_date_registered | 登録日 | 日付/時刻 | 作成日時(d_date_registered)
    i_partner_desk_role | 取引先サービス ロール | 数値 | 取引先サービス ロール(i_partner_desk_role)
    d_date_last_changed | 最終変更日時 | 日付/時刻 | 最終変更日時 (d_date_last_changed)

  9. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 上記のテーブルの [名前] 列を参照して、プロパティのプログラム上の定義名を入力します。
    [表示名] | 上記のテーブルの [表示名] 列を参照して、プロパティの表示名を入力します。
    [型] | 上記のテーブルの [型] 列を参照して、プロパティのプロパティ型をドロップダウン リストから選択します。

  10. [詳細属性] セクションで、[データへのマップ] ボックスの省略記号ボタン [...] をクリックします。[プロファイル サービスの SQL ソース] の[ユーザ オブジェクト] に移動し、上記のテーブルの [データへのマップ] 列を参照して、プロパティのデータ メンバを選択します。

  11. [適用] をクリックして、変更をプロパティに適用します。

  12. 手順 7 ～12 を繰り返して、上記のテーブルの新規プロパティをすべて追加します。[属性] セクションは次の図のようになります。
    プロパティ グループの AD-SQL User プロファイル定義

    図をクリックすると、拡大または縮小します。

  13. プロファイル定義を保存するには、ツールバーの [image] をクリックします。

Web サイトで [AD-SQL User] プロファイル定義を使うと、SQL Server データベースと Active Directory データベースの両方にデータが保存されます。

関連項目

プロファイル リソースについて

新しいデータ ソースを追加する

新しいプロファイル定義を追加する

データ ソースを管理する

プロファイル定義を管理する


データ ソースを管理する

作成したデータ ソースを変更するには、プロファイル リソースを使います。たとえば、プロファイル プロパティがマップされるデータ ストアを変更した場合、古くなったデータ オブジェクトやデータ メンバを編集または削除する必要があります。また、新しいデータ ソースを作成したときなど、古いデータ ソースを削除する場合があります。データ ソース、データ オブジェクト、データ メンバは、いずれも変更および削除ができます。

データ ソースを変更する場合は、次の制限を考慮に入れてください。

  • パーティションを追加できるのは、まだパーティションに分割されていないデータ ソースに対してだけです。また、ソースへのパーティションの追加は、そのソースをデータの格納に使う前に行う必要があります。データを含むソースをパーティションに分割すると、既存のデータが失われます。

  • データ ソースのパーティションは削除できせんが、変更は可能です。データを含むデータ ソースのパーティションを変更する場合は、その変更によってデータが失われたり損なわれたりすることがあるので注意が必要です。

  • 削除したデータ ソースは元に戻せません。また、そのデータ ソースに関連付けられていたデータ オブジェクトおよびデータ メンバもすべて削除されます。プロファイル定義でデータ記憶域へのマップに使っていたデータ メンバが削除された場合は、存在するデータ メンバでプロファイル定義を再マップする必要があります。

  • 削除したデータ オブジェクトは元に戻せません。また、削除されたデータ オブジェクトに関連付けられていたデータ メンバもすべて削除されます。プロファイル定義でデータ記憶域へのマップに使っていたデータ メンバが削除された場合は、存在するデータ メンバでプロファイル定義を再マップする必要があります。

  • 削除したデータ メンバは元に戻せません。プロファイル定義でデータ記憶域へのマップに使っていたデータ メンバが削除された場合は、存在するデータ メンバでプロファイル定義を再マップする必要があります。

データ ソースのプロパティを変更するには

データ ソースを削除するには

データ オブジェクトの表示名と説明を変更するには

データ オブジェクトを削除するには

データ メンバの表示名と説明を変更するには

データ メンバを削除するには

データ ソースのプロパティを変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開します。次に、変更するデータ ソースを右クリックし、[プロパティ] をクリックします。

  2. [<データ ソース名> のプロパティ] ダイアログ ボックスの [全般] タブで次の操作を行います。
    項目 | 操作
    [表示名] | データ ソースの名前を編集します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | データ ソースの説明を編集します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [OK] をクリックして、変更を保存し、[Commerce Server マネージャ] に戻ります。

変更されたデータ ソースが保存されます。既存のパーティションの接続文字列を変更したり、データ ソース (LDAP または OLE DB) と同じ型の新規パーティションを追加することもできます。OLE DB-ANSI プロバイダに対して、新しいパーティションを追加するか、または既存のパーティションを編集するには、「新しい SQL Server データ ソースを追加するには」を参照してください。LDAPv3 準拠ソースに対して、新しいパーティションを追加するか、または既存のパーティションを編集するには、「新しい LDAPv3 準拠ソースのデータ ソースを追加するには」を参照してください。

データ ソースを削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開します。次に、削除するデータ ソースを右クリックし、[削除] をクリックします。

  2. [データ ソースを削除しますか?] ダイアログ ボックスで [はい] をクリックします。

データ ソース、およびそのすべてのデータ オブジェクトとデータ メンバが削除されます。

データ オブジェクトの表示名と説明を変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、変更するデータ オブジェクトを含むデータ ソースを展開します。次に、[データ オブジェクト] を展開し、変更するデータ オブジェクトを右クリックし、[プロパティ] をクリックします。

  2. [<データ オブジェクト名> のプロパティ] ダイアログ ボックスの [全般] タブで次の操作を行います。
    項目 | 操作
    [表示名] | データ オブジェクトの名前を編集します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | データ オブジェクトの説明を編集します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [OK] をクリックします。

データ オブジェクトの表示名と説明が変更されます。

注

  • データ オブジェクトの表示名は変更できますが、データ オブジェクトのプログラム上の定義名は変更できません。

データ オブジェクトを削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、削除するデータ オブジェクトを含むデータ ソースを展開します。次に、[データ オブジェクト] を展開し、削除するデータ オブジェクトを右クリックし、[削除] をクリックします。

  2. [データ オブジェクトを削除しますか?] ダイアログ ボックスで [はい] をクリックします。

データ オブジェクトがデータ ソースから削除されます。

注意

  • 削除したデータ オブジェクトは元に戻せません。

データ メンバの表示名と説明を変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、変更するデータ メンバを含むデータ オブジェクトを含むデータ ソースを展開します。次に、[データ オブジェクト] を展開し、変更するデータ メンバを含むデータ オブジェクトをクリックします。

  2. データ メンバの一覧で、変更するデータ メンバを右クリックし、[プロパティ] をクリックします。

  3. [<データ メンバ> のプロパティ] ダイアログ ボックスの [全般] タブで次の操作を行います。
    項目 | 操作
    [表示名] | データ メンバの名前を編集します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | データ メンバの説明を編集します。説明には Unicode 文字で最大 127 文字使用できます。

  4. [OK] をクリックします。

注

  • データ メンバの表示名は変更できますが、データ メンバのプログラム上の定義名は変更できません。

データ メンバを削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[データ ソース] の順に展開し、削除するデータ メンバを含むデータ オブジェクトを含むデータ ソースを展開します。次に、[データ オブジェクト] を展開し、削除するデータ メンバを含むデータ オブジェクトをクリックします。

  2. データ メンバの一覧で、削除するデータ メンバを右クリックし、[削除] をクリックします。

  3. [データ メンバを削除しますか?] ダイアログ ボックスで [はい] をクリックします。

データ メンバがデータ ソースから削除されます。

注意

  • 削除したデータ メンバは元に戻せません。

関連項目

プロファイル リソースについて

新しいデータ ソースを追加する

新しいデータ オブジェクトを追加する

新しいデータ メンバを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する


プロファイル定義を管理する

プロファイル定義で、表示名と説明を変更したりカスタム属性を追加したりするには、プロファイル リソースを使います。既存のプロファイル定義をコピーし、プロファイル デザイナ画面で、プロファイル定義の名前と属性を変更して、新しいプロファイル定義を作成することもできます。

Blank ソリューション サイトのアンパッケージでは、必要に応じてコピーして新規プロファイル定義を作成できる、いくつかのプロファイル定義が提供されます。また、必要なくなったプロファイル定義を削除したり、プロファイル定義からカスタム属性を削除したりすることもできます。一度削除したカスタム属性は元に戻せません。誤ってカスタム属性を削除した場合は、再度作成する必要があります。

プロファイル定義を変更するには

プロファイル定義をコピーするには

プロファイル定義を削除するには

プロファイル定義のカスタム属性を削除するには

プロファイル定義を変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[プロファイル定義] の順に展開します。次に、変更するプロファイル定義を右クリックし、[プロパティ] をクリックします。

  2. [<プロパティ定義名> のプロパティ] ダイアログ ボックスの [全般] タブで、次の操作を行います。
    項目 | 操作
    [表示名] | プロファイル定義の名前を変更します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | プロファイル定義の説明を変更します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [<プロパティ定義名> のプロパティ] ダイアログ ボックスの [カスタム属性] タブで、次の操作を行います。
    項目 | 操作
    [新規] | [カスタム属性] ダイアログ ボックスを開きます。新しいカスタム属性を追加するときにクリックします。
    [編集] | [カスタム属性] ダイアログ ボックスを開きます。指定したカスタム属性を編集するときにクリックします。
    [削除] | 選択したカスタム属性を削除するときにクリックします。

  4. [カスタム属性] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [表示名] | 属性に対して表示する名前を入力するか、名前を変更します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 属性の説明を入力または変更します。説明には Unicode 文字で最大 127 文字使用できます。
    [値] | 属性の値を入力または変更します。

注

  • プロファイル定義の表示名は変更できますが、プログラム上の定義名は変更できません。
  5. [OK] をクリックし、変更を保存して [<プロパティ定義名> のプロパティ] ダイアログ ボックスに戻ります。

  6. [適用] をクリックし、[OK] をクリックして、変更を保存し、[Commerce Server マネージャ] に戻ります。

変更されたプロファイル定義が保存されます。

プロファイル定義をコピーするには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、コピーするプロファイルを右クリックし、[プロファイルのコピーの作成] をクリックします。

  2. [プロファイル定義のコピー] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | プロファイル定義のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | プロファイル定義に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | プロファイル定義の説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。

  3. [次へ] をクリックします。

  4. [カスタム属性] ダイアログ ボックスの [新規] をクリックします。

  5. [カスタム属性] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 属性のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 属性に対して表示する名前を入力します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 属性の説明を入力します。説明には Unicode 文字で最大 127 文字使用できます。
    [値] | 属性の値を入力します。

  6. [OK] をクリックして、プロファイル定義を保存します。

  7. [完了] をクリックしてプロファイル定義を保存し、[Commerce Server マネージャ] に戻ります。

新しいプロファイル定義が保存されます。

プロファイル定義を削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[プロファイル定義] の順に展開します。次に、削除するプロファイル定義を右クリックし、[削除] をクリックします。

  2. [プロイファイルを削除しますか?] ダイアログ ボックスで [はい] をクリックします。

プロファイル定義がプロファイル リソースから削除されます。

注意

  • 誤ってプロファイル定義を削除した場合は、再び作成する必要があります。削除したプロファイル定義は元に戻せません。

プロファイル定義のカスタム属性を削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ]、[プロファイル定義] の順に展開します。次に、カスタム属性を削除するプロファイル定義を右クリックし、[プロパティ] をクリックします。

  2. [<プロパティ名> のプロパティ] ダイアログ ボックスの [カスタム属性] タブで、削除する属性をクリックし、[削除] をクリックします。

カスタム属性がプロファイル定義から削除されます。

関連項目

プロファイル リソースについて

新しいプロファイル定義を追加する


プロファイル プロパティを管理する

プロファイル プロパティを変更して Web サイトで収集するデータを更新するには、プロファイル リソースを使います。たとえば、Web サイトを訪問するユーザーが住んでいる都道府県についてのデータの収集に使用するプロパティを持つプロファイル定義を作成したとします。プロファイル プロパティで収集したデータを表示したところ、ユーザーから有用な居住地データを収集する方法として、文字列型のプロパティはあまり適していないことがわかりました。このような場合は、もっと有用なデータが収集されるように、プロファイル デザイナ画面でプロパティの属性を変更できます。

不要になったプロパティとプロパティ グループは、プロファイル定義から削除できます。たとえば、プロファイル定義に 7 個のプロパティを追加した後で、Web サイトで必要なのは 6 個だけだとわかった場合などです。プロパティ グループを削除すると、そのグループ内のプロパティもすべて削除されます。

プロパティとプロパティ グループは、[プロパティ] 一覧で上下に移動して整理できます。たとえば、3 つのプロパティ グループをあるプロファイル定義に追加した場合などです。作成したプロパティ グループ内に既存プロパティを適切に配置できるまで、既存のプロパティを [プロパティ] 一覧で上下に移動することができます。

プロパティのカスタム属性は、編集または削除できます。属性の表示名、説明、または値の変更が必要な場合は、カスタム属性を編集できます。誤ってカスタム属性を削除した場合は、再び作成する必要があります。削除したカスタム属性は元に戻せません。

プロファイル プロパティを変更するには

プロファイル プロパティを整理するには

プロファイル定義からプロパティを削除するには

プロファイル プロパティのカスタム属性を変更するには

プロファイル プロパティのカスタム属性を削除するには

プロファイル プロパティを変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、変更するプロパティを含むプロファイル定義をクリックします。

  2. [プロパティ] 一覧で、変更するプロパティを含むプロパティ グループを展開し、変更するプロパティをクリックします。

    または、変更するプロパティ グループをクリックします。

  3. プロファイル デザイナ画面の [属性] セクションで、次の操作を行います。
    項目 | 操作
    [表示名] | Commerce Server ビジネス デスクに表示する名前を編集します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | プロパティの説明を編集します。説明には Unicode 文字で最大 127 文字使用できます。
    [型] | プロパティ型を選択します。既定のプロパティ型は [文字列] です。この属性のプロパティ型は、この属性がマップされるデータ メンバの型と一致する必要があります。
    [型参照] | プロパティ定義に追加するサイト用語またはプロファイルを選択するには、省略記号 [...] ボタンをクリックします。この機能は、[型] で [サイト用語型] または [プロファイル型] を選択した場合にのみ利用できます。

  4. このプロパティをビジネス デスクで利用する場合は、プロファイル デザイナ画面の [詳細属性] セクションで [アクティブ] をクリックします。非アクティブなプロパティはビジネス デスクに表示されません。

  5. [データへのマップ] ボックスの省略記号 [...] ボタンをクリックして [データ ソースの選択] ダイアログ ボックスを開き、プロパティがマップするデータ メンバをクリックします。

  6. [データ ソースの選択] ダイアログ ボックスで、プロパティをマップするデータ メンバを含むデータ オブジェクトを含むデータ ソースを展開します。

  7. プロパティをマップするデータ メンバを含むデータ オブジェクトを展開し、そのデータ メンバをクリックします。

  8. [OK] をクリックします。

  9. プロファイル デザイナ画面の [詳細属性] セクションで、次の操作を行います。
    項目 | 操作
    [キーの種類] | ドロップダウン リストからキーの種類を選択します。各プロファイル定義には、プライマリ キーとなるプロパティと結合キーとなるプロパティ、または 2 重のキー (プライマリ キーと結合キーの両方) となるプロパティが必要です。
    [必須] | このプロパティが Web サイトとビジネス デスクで必須であることを指定します。ただし、この属性は、プロファイル リソースでは無効です。キーの種類を選択した場合、この属性は読み取り専用です。
    [データ ウェアハウスにエクスポート] | このプロパティが Commerce Server データ ウェアハウスにインポートされるようにするには、このオプションを選択します。エクスポートできるのは、マップされたプロパティだけです。複数値でブール型のプロパティ、またはバイナリ型、長い文字列型、パスワード型のプロパティはエクスポートできません。
    [キャッシュ読み込みの遅延] | このプロパティが、プロファイルを取得したときには読み込まれず、このプロパティそのものに対してアクセスが行われたときに読み込まれるようにするには、このオプションを選択します。
    [複数値] | このプロパティに関連付けられた複数値のコレクションを有効にするには、このオプションを選択します。プロパティのキーの種類を選択した場合、この値は選択できせん。
    [検索可能] | このプロパティに、対象となるデータ ストアでインデックスを付け、[検索条件] の項目として検索で利用できるようにするには、このオプションを選択します。
    [RDN] | ディレクトリ ストアの相対識別名 (RDN) を入力します。このプロパティのマップ先が、基になるストア内の LDAP クラスの RDN 属性である場合には、この値を設定します。
    [ハッシュ キー] | 複数のデータ ストア パーティションにプロファイルのインスタンスを配布する際に、このプロパティが使われる場合は、このオプションを指定します。パーティションに分割されていないデータ ソースでは、このプロパティは読み取り専用です。プロファイルを取得するには、このキーに対するクエリを実行する必要があります。

  10. [適用] をクリックします。

  11. プロファイル定義を保存するには、ツールバーの [image] をクリックします。

変更されたプロファイル定義が保存されます。

プロファイル プロパティを整理するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、整理するプロパティを含むプロファイル定義をクリックします。

  2. [プロパティ] 一覧で、移動するプロパティまたはプロパティ グループをクリックし、上向き矢印ボタンと下向き矢印ボタンを使って、一覧内で上下に移動します。

  3. プロファイル定義を保存するには、ツールバーの プロファイルの保存 をクリックします。

プロパティ グループおよびプロパティの順序が変更されたプロファイル定義が保存されます。

プロファイル定義からプロパティを削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、プロパティを削除するプロファイル定義をクリックします。

  2. [プロパティ] 一覧で、削除するプロパティまたはプロパティ グループをクリックし、[削除] をクリックします。

  3. [削除] ダイアログ ボックスで [OK] をクリックします。

  4. プロファイル定義を保存するには、ツールバーの プロファイルの保存 をクリックします。

プロファイル定義が保存されます。保存された定義には、削除したプロパティまたはプロパティ グループは含まれていません。

プロファイル プロパティのカスタム属性を変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、カスタム属性を変更するプロパティを含むプロファイル定義をクリックします。

  2. [プロパティ] 一覧で、変更するカスタム属性を含むプロパティをクリックします。

  3. プロファイル デザイナ画面の [カスタム属性] セクションで、[編集] をクリックします。

  4. プロファイル デザイナ画面の [カスタム属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 属性のプログラム上の定義名を編集します。名前には、最大 127 文字の英数字とアンダ スコア (_) を使用できます。スペースは使用できません。
    [表示名] | 属性に対して表示する名前を編集します。表示名には Unicode 文字で最大 127 文字使用できます。
    [説明] | 属性の説明を編集します。説明には Unicode 文字で最大 127 文字使用できます。
    [値] | 属性の値を編集します。

  5. [確認] をクリックし、次に [適用] をクリックします。

  6. プロファイル定義を保存するには、ツールバーの プロファイルの保存 をクリックします。

変更されたプロファイル定義が保存されます。

プロファイル プロパティのカスタム属性を削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[プロファイル定義] を展開し、カスタム属性を削除するプロパティを含むプロファイル定義をクリックします。

  2. [プロパティ] 一覧で、削除するカスタム属性を含むプロパティをクリックします。

  3. プロファイル デザイナ画面の [カスタム属性] セクションで、削除するカスタム属性をクリックし、[削除] をクリックします。

    カスタム属性がプロファイル定義から削除されます。

  4. [適用] をクリックします。

  5. プロファイル定義を保存するには、ツールバーの プロファイルの保存 をクリックします。

変更されたプロファイル定義が保存されます。

注意

  • 削除したカスタム属性は元に戻せません。

関連項目

プロファイル リソースについて

プロファイル定義にプロパティを追加する


サイト用語を管理する

必要に応じてサイト用語を変更または削除するには、プロファイル リソースを使います。たとえば、"好きな色" サイト用語を作成し、季節が変わったときに在庫に合わせて一覧表示する色を変更する場合などです。

サイト用語を変更するには

サイト用語を削除するには

サイト用語を変更するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[サイト用語] をクリックします。

  2. [サイト用語の構成] ボックスの一覧で、変更するサイト用語を含むサイト用語グループを展開します。

  3. プロファイル デザイナ画面で、サイト用語の属性と用語を必要に応じて変更し、[確認] をクリックします。次に、[適用] をクリックします。

  4. サイト用語を保存するには、ツールバーの プロファイルの保存 をクリックします。

変更されたサイト用語が保存されます。

サイト用語を削除するには

  1. [Commerce Server マネージャ]、[グローバル リソース]、[Profiles]、[プロファイル カタログ] の順に展開します。次に、[サイト用語] をクリックします。

  2. [サイト用語の構成] 一覧で、削除するサイト用語を含むサイト用語グループを展開し、そのサイト用語をクリックして、[削除] をクリックします。

  3. [削除] ダイアログ ボックスで [OK] をクリックします。

    サイト用語が削除されます。

  4. [確認] をクリックし、次に [適用] をクリックします。

  5. 変更を保存するには、ツールバーの プロファイルの保存 をクリックします。

変更されたサイト用語が保存されます。

関連項目

プロファイル リソースについて

サイト用語を追加する

プロファイル定義にサイト用語を追加する


BizTalk Server と Commerce Server の使用

インストールした Microsoft Commerce Server 2000 と Microsoft BizTalk Server 2000 を統合することによって、製造元と連絡をとって商品のカタログを受け取ったり、サイトで販売している商品の注文に対応することができます。サイト側と製造元側の両方で BizTalk Server をインストールする必要はありませんが、ここでは、サイト側と製造元側の両方について、BizTalk Server システムをセットアップする方法を説明します。

Commerce Server と BizTalk Server は、同じコンピュータにインストールすることをお勧めします。ただし、メッセージ キューなどを使って、BizTalk Server を別のコンピュータにインストールすることもできます。

ここでは、次のトピックについて説明します。

  • BizTalk Server について BizTalk Server と連携する Commerce Server のコンポーネントについて説明し、注文およびカタログ交換の手順の概要を示します。

  • BizTalk Server と連携するように Commerce Server を構成する Commerce Server を BizTalk Server と統合するように構成する方法を説明します。

  • 送信元サーバーを設定する カタログまたは注文書を交換するために送信元および送信者の組織を設定する方法を説明します。

  • 送信先サーバーを設定する BizTalk Server で送信先および受信者の組織を構成する方法を説明します。

  • BizTalk Server のカタログを設定する BizTalk Server をカタログ交換のために構成する方法を説明します。

BizTalk Server と Commerce Server の統合の詳細については、「BizTalk Server と統合する」を参照してください。また、Microsoft BizTalk Server 2000 のマニュアルを参照してください。

プログラミングの例については、『BizTalk Server Software Development Kit (SDK)』の「Designing Solutions with BizTalk Server 2000」を参照してください。たとえば、SDK には、注文を製造元ごとに分けるサンプル、注文を 拡張マークアップ言語 (XML) で変換するサンプル、および BizTalk Server コンポーネントを使って BizTalk Server に注文を送信するサンプルが含まれています。


BizTalk Server について

BizTalk Server 2000 は、企業と取引先 (製造元) の間でビジネス文書を送信するためのゲートウェイを提供します。たとえば、企業が BizTalk Server を使うと、カタログ、注文、文書、およびその他の電子書式を取引先と交換できます。BizTalk Server は、さまざまな転送方法に対応したデータ変換、暗号化、デジタル署名、および文書追跡サービスを管理します。

BizTalk Server と Commerce Server を併用すると、ユーザーによる Commerce Server Web サイトでの注文を処理できます。たとえば、サイトでコンピュータ ハードウェアを販売しているとします。販売するハードウェアには、自社製品と取引先から供給されている商品の両方があります。BizTalk Server を使うと、このサイトで販売するハードウェアを供給する取引先ごとに取引契約を作成できます。ユーザーがサイトを訪問し、取引先から供給されている商品のいずれかを注文すると、Commerce Server は注文を処理して BizTalk Server に送信し、BizTalk Server はその商品の取引先に注文を送信します。

複数製造元のカタログ

[製造元 ID]

BizTalk Server でカタログを交換する

BizTalk Server へ注文を送信する

受信した注文を処理する

複数製造元のカタログ

BizTalk Server を使って取引先に注文を伝達するには、サイトに表示される商品を供給する取引先のカタログを整理しておく必要があります。各取引先は、1 つまたは複数の商品カタログを送信できます。サイトの設定によって、これらのカタログを Web サイトに 1 つのカタログとして表示することも、複数のカタログとして表示することもできます。複数のカタログは、たとえば上級管理職と hobbyist など、多様なユーザー層を対象にした、異なったカタログを用意する場合などに便利です。

製造元から電子メールまたは BizTalk Server を使ってカタログが送信されたら、Commerce Server ビジネス デスクのカタログ エディタ モジュールを使って Commerce Server のカタログ データベースにインポートします。カタログのインポートについては、「カタログをインポートする」を参照してください。

製造元 ID

製造元との取引契約を設定すると、自動的に Commerce Server で製造元 ID を利用できるようになります。製造元 ID とは、送信元サーバーで送信先組織を作成するときに、製造元に対して指定する組織名です。詳細については、「送信元サーバーで送信元組織と送信先組織を作成する」を参照してください。

Commerce Server は、ビジネス デスクに製造元 ID を表示します。ここには、送信元の組織と同じ文書型をサポートし、互換性のある文書ルーティングを持っている取引先 (組織) が表示されます。したがって、ビジネス デスクを使って、製造元 ID とカタログを関連付けることができます。

1 つの製造元には、複数のカタログを関連付けることができます。また、商品レベルで製造元を指定できますが、このとき、retail ソリューション サイトで開発している場合は、_additem.asp ページもカスタマイズする必要があります。

製造元に "Default" という名前を設定した場合、Commerce Server は自社のサイトを製造元として認識します。カタログに製造元 ID を追加する方法については、「BizTalk Server のカタログを設定する」を参照してください。

注

  • ユーザーが Web サイトで項目を注文する場合、送信先組織のカタログにその項目が存在している必要があります。送信先組織のカタログにその項目がない場合、BizTalk Server は送信先サーバーで注文書を処理できません。送信先サーバーのイベント ログの記録にエラー メッセージが書き込まれます。

BizTalk Server でカタログを交換する

BizTalk Server を使うと、Commerce Server が使っているカタログを取引先と交換できます。カタログは、拡張マークアップ言語 (XML) に変換された後、BizTalk Server によって処理され、Commerce Server がインストールされている送信先コンピュータの共有フォルダにある XML カタログ ファイルに保存されます。送信先コンピュータが LAN に接続されている場合は、送信先コンピュータに BizTalk Server がインストールされている必要はありません。HTTP を使ってカタログを送信する場合は、送信先コンピュータに BizTalk Server がインストールされている必要があります。

XML カタログ ファイルが送信先コンピュータに保存された後、ビジネス デスクを使って送信先コンピュータの共有フォルダからカタログをインポートし、カタログを Web サイトに公開します。新しくインポートしたカタログは、必要に応じて、ビジネス デスクのカタログ エディタ モジュールを使って編集できます。ビジネス デスクを使ったカタログのインポートについては、「カタログをインポートする」を参照してください。

BizTalk Server を設定して、受信したカタログを自動的に Commerce Server に組み込むことができます。

次の図は、XML カタログ ファイルが処理される過程を示します。

カタログが BizTalk Server に送信される処理を示す図
XML 文書の共有フォルダ
へのドロップ
Commerce Server サイト
BizTalk Server
XML 文書の受信
Web サイトへの発行
カタログ用の Commerce Server
データベース
ビジネス デスクを使った XML カタログ ファイルのインポート
製造元から送信された XML 文書

BizTalk Server へ注文を送信する

次の図は、Commerce Server が注文を処理し、BizTalk Server に送信する過程を示します。

Commerce Server が注文を処理し、BizTalk Server に送信する過程を示す図
注文用の Commerce Server データベース
製造元
注文フォーム
ユーザーによる
注文と支払い
製造元の名前の追加
ビジネス デスク
Web サイト
支払いパイプライン
BizTalk Server による XML 文書の製造元への送信
スキーマを使った XMLTransforms による注文
フォームの XML 文書への変換
Splitter による製造元 ID の収集と注文フォーム
への添付
カタログ用の Commerce Server データベース

ユーザーは、次の手順に従って注文を作成し、処理します。

  1. ユーザーがバスケットに項目を追加します。

    Commerce Server は Commerce Server データベースを読み取り、商品の製造元名を取得します。

  2. ユーザーが支払いに進み、Commerce Server の注文パイプラインが注文を処理します。

    Splitter コンポーネントが、注文の項目 (商品) ごとに自社で供給する商品であるか、取引契約のある製造元から供給される商品であるかを示します。Splitter コンポーネントは、製造元の一覧を作成し、注文フォームに添付します。

  3. Commerce Server は、アプリケーション既定の構成リソースの BizTalk Options プロパティが 1 に設定されているかどうかを判断します。

    BizTalk Options プロパティが 1 に設定されている場合、Commerce Server は製造元の一覧を読み取り、製造元ごとに項目をまとめます。

  4. Commerce Server は、注文フォームを BizTalk Server に送信する 1 つまたは複数の XML 文書に変換します。

    Commerce Server は、XMLTransforms プロセスを使って注文フォームを変換するときに、各製造元に 1 つずつ XML 文書を作成します。

    Commerce Server は、注文を変換するために、サイトに関連付けられている POSchema.xml というスキーマを使います。注文フォームに 1 つまたは複数のフィールドを追加した場合、特に指定しない限り、Commerce Server は BizTalk Server に送信される XML 文書に新しいフィールドを含めません。注文フォームに新しいフィールドを追加するには、XDR (XML Data-Reduced) 形式ファイルの POSchema.xml を編集し、再び XML ファイルを BizTalk Server の文書に関連付ける必要があります。また、XML ファイルを BizTalk Server に転送し、再び関連付ける必要があります。POSchema.xml は、BizTalk エディタで編集できます。

  5. Commerce Server がこの XML 文書を BizTalk Server へ送信します。

受信した注文を処理する

注文を BizTalk Server に送信するには、ニーズに応じて、いくつかの方法があります。マッピングを使って注文を送信したり、各種のプロトコルを使って注文を送信したり、取引先が Commerce Server サイトまたは非 Commerce Server サイトをセットアップして送信された注文を受信することができます。

取引先が注文を受信するための Commerce Server サイトをセットアップする方法を選択した場合は、BizTalk Server から XML 文書を受信する _recvpo.asp ページを使ってサイトをセットアップできます。_recvpo.asp が XML 文書を受信すると、XMLTransforms プロセスを開始して、XML 文書を再び注文フォームに変換します。次に、Commerce Server が注文フォームに対してパイプラインを実行します。パイプラインが注文フォームを処理した後、Commerce Server データベースに注文が保存されます。_recvpo.asp を使うと、Commerce Server オブジェクトを使って XML を注文管理システムにリダイレクトできます。

次の図は、XML 文書が BizTalk Server から送信され、製造元の Commerce Server サイトで処理される過程を示します。

XML 文書が BizTalk Server から送信され、製造元の Commerce Server サイトで処理される過程を示す図
製造元の Commerce Server サイト
注文処理パイプライン
注文の処理
XML 文書の注文フォーム
への変換
XMLTransforms
_recvpo.asp
製造元の
BizTalk Server ReceiveStandard.asp
BizTalk Server から送信された
XML 文書

また、注文フォームを処理してキューに送信するように Commerce Server を設定してから、そのキューを登録するように自社または製造元の BizTalk Server を設定することもできます。この構成を使う場合、BizTalk Server と Commerce Server を別のサーバーにインストールできます。次の図は、この構成を示します。

BizTalk Server とメッセージ キューの使い方を示す図
-Dead キュー
-Receiver キュー
メッセージ キュー
-Send キュー
注文フォーム
キューの登録
Commerce
Server
BizTalk
Server
Receiver キューまたは Dead キューへの応答の書き込み

関連項目

BizTalk Server と統合する

プログラマーズ リファレンス

Splitter


BizTalk Server と連携するように Commerce Server を構成する

Commerce Server 2000 と BizTalk Server 2000 が連携できるようにプロパティを設定するには、アプリケーション既定の構成リソースを使います。

BizTalk Server と連携するように Commerce Server を構成するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. [Commerce Server マネージャ] を展開し、[Commerce サイト] を展開します。次に、BizTalk Server で扱うサイト (たとえば、Retail) を展開し、[サイト リソース] を展開します。

  3. 左側のウィンドウの [アプリケーション既定の構成] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  4. [アプリケーション既定の構成リソース] ダイアログ ボックスの [プロパティ] タブで、次の操作を行います。
    項目 | 操作
    [BizTalk カタログの形式] | BizTalk Server がカタログのために必要とする文書の定義名 (たとえば、「CatalogTransferDoc」) を入力します。
    [BizTalk オプション] | 文書を交換するために BizTalk Server との統合を有効にするには「1」を入力します。統合を無効にするには「2」を入力します。
    [BizTalk 注文書の形式] | BizTalk Server が注文書のために必要とする文書の定義名 (たとえば、「PurchaseOrder」) を入力します。
    [BizTalk 送信元組織の修飾子] | BizTalk Server のこのサイト用の別名修飾子 (たとえば、「MyCompany」) を入力します。
    [BizTalk 送信元組織の修飾子の値] | BizTalk Server のこのサイト用の別名値 (たとえば、「Sender」) を入力します。
    [BizTalk 送信形式] | BizTalk Server に文書を非同期に送信するには、「1」を入力します。

  5. Commerce Server と同じコンピュータに BizTalk Server がインストールされていない場合は、[接続文字列] タブの [変更] をクリックします。[データ リンク プロパティ] ダイアログ ボックスで BizTalk Server への接続文字列を指定します。

  6. [OK] をクリックします。

注

  • Commerce Server マネージャでプロパティ値を変更した場合、その変更を有効にするには、Web サーバーごとにメモリからアプリケーションをアンロードする必要があります。アンロードの方法については、「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

送信元サーバーを設定する

送信先サーバーを設定する

BizTalk Server のカタログを設定する


送信元サーバーを設定する

2 つの組織間でメッセージの構成を設定するには、送信元サーバーと送信先サーバーを設定する必要があります。たとえば、自社の BizTalk Server が送信元サーバーになり、製造元の BizTalk Server が送信先サーバーになります。

ここで説明する手順を実行して、送信元サーバーで注文書を交換する設定を行ってください。送信先サーバーの設定方法については、「送信先サーバーを設定する」を参照してください。

ここでは、次のトピックについて説明します。

  • 例 : カタログを交換するために送信元サーバーを構成する

  • 例 : 注文書を交換するために送信元サーバーを構成する

  • 送信元サーバーに必要なファイルをコピーおよびインポートする

  • 送信元サーバーで送信元組織と送信先組織を作成する

  • 送信元サーバーで文書定義を作成する

  • 送信元サーバーでエンベロープを作成する

  • 送信元サーバーでメッセージ ポートを作成する

  • 送信元サーバーでチャネルを作成する


例 : カタログを交換するために送信元サーバーを構成する

次の表は、送信元サーバーをカタログ交換のために構成するのに必要な、アプリケーション既定の構成および BizTalk Server のプロパティのサンプル値の一覧を示します。

アプリケーション既定の構成プロパティのサンプル値

項目 | 値
[BizTalk カタログの形式] | CatalogTransferDoc
[BizTalk オプション] | 1
[BizTalk 送信元組織の修飾子] | MyCompanyCatalog
[BizTalk 送信元組織の修飾子の値] | CatalogSender
[BizTalk 送信形式] | 1

送信元組織プロパティのサンプル値

項目 | 値
[組織名] | 既定の組織
[顧客名] | MyCompanyCatalog
[修飾子] | MyCompanyCatalog
[値] | CatalogSender
[アプリケーション名] | CatalogApplication

送信先組織プロパティのサンプル値

項目 | 値
[組織名] | CatalogDestination
[カスタム名] | MyCompanyCatalog
[修飾子] | MyCompanyCatalog
[値] | CatalogReceiver

文書プロパティのサンプル値

項目 | 値
[ドキュメント定義名] | CatalogTransferDoc
[ドキュメント仕様] | .../Microsoft/CatalogXMLSchema.xml

組織へのメッセージ ポート割り当てのサンプル値

項目 | 値
[メッセージ ポート名] | CatalogPortToDestination
[トランスポート アドレス (ファイル)] | Drive: <送信先サーバー名>\<共有フォルダ>\CatalogSend.xml <送信先サーバー名> には有効な送信先サーバーを指定します。 <共有フォルダ> には送信先コンピュータの有効な共有フォルダを指定します。

アプリケーションのチャネル割り当てのサンプル値

項目 | 値
[チャネル名] | CatalogChannelToSource
[送信元アプリケーション名] | CatalogApplication
[組織の識別子] | BizTalkCatalog/CatalogSender (既定)
[受信ドキュメント定義名] | CatalogTransferDoc
[送信ドキュメント名] | CatalogTransferDoc
[拡張プロパティ] | [詳細設定] をクリックし、次に [プロパティ] をクリックします。 [BizTalkSendLocalFile] ダイアログ ボックスで、完全なユーザー名とパスワードを設定し、次に「ファイルの上書き」を選択します。

関連項目

BizTalk Server と連携するように Commerce Server を構成する

送信元サーバーを設定する

送信先サーバーを設定する

BizTalk Server のカタログを設定する


例 : 注文書を交換するために送信元サーバーを構成する

次の表は、送信元サーバーを注文書を交換するために構成する場合に、アプリケーション既定の構成および BizTalk Server に入力するサンプル値の一覧を示します。

アプリケーション既定の構成プロパティのサンプル値

項目 | 値
[BizTalk オプション] | 1
[BizTalk 注文書の形式] | PurchaseOrder
[BizTalk 送信元組織の修飾子] | MyCompany
[BizTalk 送信元組織の修飾子の値] | Sender
[BizTalk 送信形式] | 1

送信元組織プロパティのサンプル値

項目 | 値
[組織名] | 既定の組織
[カスタム名] | MyCompany
[修飾子] | MyCompany
[値] | Sender
[アプリケーション名] | POApplication

送信先組織プロパティのサンプル値

項目 | 値
[組織名] | Destination
[カスタム名] | MyCompany
[修飾子] | MyCompany
[値] | Receiver

文書プロパティのサンプル値

項目 | 値
[ドキュメント定義名] | PurchaseOrder
[ドキュメント仕様] | .../Microsoft/POSchema.xml

エンベロープ プロパティのサンプル値

項目 | 値
[エンベローブ名] | POEnvelope

組織へのメッセージ ポートのサンプル値

項目 | 値
[メッセージ ポート名] | OutPortToDestination
[トランスポート アドレス (HTTP)] | http://<送信先サーバー名>/Retail/ReceiveStandard.asp <送信先サーバー名> には有効な送信先サーバーを指定します。
[エンベロープ] | POEnvelope
[組織の識別子] | MyCompany / Receiver (既定)

アプリケーションのチャネルのサンプル値

項目 | 値
[名前] | OutChannelToDestination
[送信元アプリケーション名] | POApplication
[組織の識別子] | BizTalk/Sender (既定)
[受信ドキュメント定義名] | PurchaseOrder
[送信ドキュメント名] | PurchaseOrder

関連項目

BizTalk Server と連携するように Commerce Server を構成する

送信元サーバーを設定する

送信先サーバーを設定する

例 : カタログを交換するために送信元サーバーを構成する

例 : 注文書用に送信先サーバーを構成する

BizTalk Server のカタログを設定する


送信元サーバーに必要なファイルをコピーおよびインポートする

送信元サーバーと送信先サーバーの両方に、同じ POSchema.xml および CatalogXMLSchema.xml ファイルが置かれている必要があります。

注

  • 送信元サーバーと送信先サーバーは、同じ商品カタログを持っている必要があります。そうでないと、注文書の送信は失敗します。カタログの設定方法については、「BizTalk Server のカタログを設定する」を参照してください。

POSchema.xml を送信元サーバーにコピーするには

CatalogXMLSchema.xml を BizTalk エディタにインポートするには

POSchema.xml を送信元サーバーにコピーするには

  • <ドライブ:>\inetpub\wwwroot\<サイト名> の POSchema.xml ファイルを、<ドライブ:>\Program Files\Microsoft BizTalk Server\BizTalkServerRepository\DocSpecs\Microsoft にコピーします。

CatalogXMLSchema.xml を BizTalk エディタにインポートするには

  1. BizTalk エディタを開きます。[スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk エディタ] をクリックします。

  2. BizTalk エディタで、[ツール] メニューの [インポート] をクリックします。

  3. [XDR スキーマ] を選択し、[OK] をクリックします。

  4. [XDR スキーマのインポート] ダイアログ ボックスの [インストール先] ボックスで <ドライブ>:\Program Files\Microsoft Commerce Server 2000 に移動し、CatalogXMLSchema.xml を選択します。次に、[開く] をクリックします。

  5. [ファイル] メニューの [WebDAV に格納] をクリックします。

  6. [WebDAV に格納] ダイアログ ボックスで、[ファイル名] ボックスに「CatalogXMLSchema.xml」と入力し、[保存] をクリックします。

  7. BizTalk エディタを閉じます。

CatalogXMLSchema.xml ファイルが BizTalk エディタにインポートされ、Distributed Authoring and Versioning (WebDAV) に格納されます。このファイルは、カタログ交換に使用できるように、適切なヘッダー情報と指定された構造を持つ仕様となります。

関連項目

送信先サーバーに必要なファイルをコピーする

BizTalk Server のカタログを設定する


送信元サーバーで送信元組織と送信先組織を作成する

送信元 BizTalk Server はサプライアです。メッセージ ポート、配布リスト、およびチャネルの組織には、送信元と送信先があります。組織は、外部の取引先、自社、取引先または自社内の事業部門のいずれかを表します。各組織には、BizTalk Server 2000 およびほかの取引先組織に対して、組織を特定する一意の識別子があります。

送信元サーバーでは、送信元組織と送信先組織の両方を作成する必要があります。送信元組織は、チャネルで文書の送信元として指定されている取引先組織です。送信先組織は、メッセージ ポートで文書の送信先として指定されている取引先組織です。

送信元サーバーで送信元組織を作成するには

送信元サーバーで送信先組織を作成するには

送信元サーバーで送信元組織を作成するには

  1. 送信元 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. [BizTalk メッセージ マネージャ] の [オプション] ダイアログ ボックスで、[スタートアップ ダイアログ ボックスの表示] チェック ボックスをオフにし、[OK] をクリックしてダイアログ ボックスを閉じます。

  3. BizTalk メッセージ マネージャの左側のウィンドウの [その他の項目を検索] で [組織] をクリックし、[検索] をクリックして、利用可能な組織の一覧を表示します。

  4. 利用可能な組織の一覧の [既定の組織 (既定)] をダブルクリックします。

  5. [組織のプロパティ] ダイアログ ボックスの [識別子] タブで、[追加] をクリックします。

  6. [新しい識別子] ダイアログ ボックスで、[カスタム] オプションが選択されていることを確認し、「MyCompany」と入力します。

  7. [修飾子] ボックスに「MyCompany」と入力します。

  8. [値] ボックスに送信者の名前 (たとえば、「Sender」) を入力します。

[値] ボックスに入力する値は、Commerce Server の [アプリケーション既定の構成] ダイアログ ボックスの [BizTalk 送信元組織の修飾子の値] ボックスに入力した値と同じであることが必要です。これらの値が異なると、注文書の送信は失敗し、エラー メッセージは表示されません。

アプリケーション既定の構成プロパティを設定する方法については、「BizTalk Server と連携するように Commerce Server を構成する」を参照してください。

  9. 送信者 (たとえば、Sender) を既定の組織に指定するには、[既定値として設定] チェック ボックスをオンにし、[OK] をクリックします。

メッセージ ポートを作成する前に、既定の組織を指定する必要があります。既定の組織は、新しい各メッセージ ポートの送信元または送信先のどちらにもなります。いつでも、ほかの既定の組織を指定して、新しい既定の組織を使用するメッセージ ポートを作成することができます。

  10. [アプリケーション] タブで [追加] をクリックし、[新しいアプリケーション] ダイアログ ボックスにアプリケーション名 (たとえば、注文書の場合は「POApplication」、カタログ転送の場合は「CatalogTransferDoc」) を入力します。次に、[OK] をクリックします。

  11. [新しいアプリケーション] ダイアログ ボックスで、[OK] をクリックします。

  12. [組織のプロパティ] ダイアログ ボックスで、[OK] をクリックします。

送信元 BizTalk Server に送信元組織と送信者が作成されます。たとえば、送信元組織が "Home Organization" になり、送信者が "Sender" になります。以上で、送信者が既定の組織として指定されます。

送信元サーバーで送信先組織を作成するには

  1. BizTalk メッセージ マネージャで、[ファイル] メニューの [新規作成] をポイントし、[組織] をクリックします。

  2. [新しい組織] ダイアログ ボックスの [全般] タブで、送信先組織の名前 (たとえば、「DestinationOrg」) を入力します。

このボックスで入力する名前は、製造元をカタログに関連付けるときに Commerce Server ビジネス デスクに表示されます。この名前は、目的の製造元を選択できる利用可能な製造元の一覧に表示されます。

  3. [コメント] ボックスに、送信先組織に関して必要なコメントを入力します。

  4. [識別子] タブで、[追加] をクリックします。

  5. [新しい識別子] ダイアログ ボックスで、[カスタム] オプションが選択されていることを確認し、「MyCompany」と入力します。

  6. [修飾子] ボックスに「MyCompany」と入力します。

  7. [値] ボックスに受取人の名前 (たとえば、「Receiver」) を入力し、[OK] をクリックします。

  8. [新しい組織] ダイアログ ボックスの [OK] をクリックします。

送信元 BizTalk Server に送信先組織と受取人が作成されます。たとえば、"Destination" が送信先組織となり、"Receiver" が受取人となります。

関連項目

BizTalk Server と連携するように Commerce Server を構成する

送信元サーバーで文書定義を作成する


送信元サーバーで文書定義を作成する

文書定義は、メッセージ ポート、チャネル、または配布リスト内のビジネス文書を表します。文書定義は、文書を定義する仕様へのポインタを提供します。文書定義を関連付けることができるメッセージ ポート、チャネル、および配布リストの数に制限はありません。

XML ファイルと関連付けられた文書定義を作成するには

  1. 送信元 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャで、[ファイル] メニューの [新規] をポイントし、[ドキュメント定義] をクリックします。

  3. [新しいドキュメント定義] ダイアログ ボックスで、[ドキュメント定義名] ボックスに文書定義の名前 (たとえば、「PurchaseOrder」または「CatalogTransferDoc」) を入力します。

[ドキュメント定義名] に入力する値は、Commerce Server の [アプリケーション既定の構成] ダイアログ ボックスの [BizTalk 注文書の形式] ボックスに入力した値と同じであることが必要です。これらの値が異なると、注文書の送信は失敗します。

アプリケーション既定の構成プロパティを設定する方法については、「BizTalk Server と連携するように Commerce Server を構成する」を参照してください。

  4. [ドキュメント仕様] チェック ボックスをオンにし、[参照] をクリックします。

  5. [WebDAV リポジトリからのドキュメント仕様の選択] ダイアログ ボックスで [Microsoft] フォルダをダブルクリックします。

  6. .xml ファイル (たとえば、CommonPO.xml) を選択し、[開く] をクリックします。

  7. [新しいドキュメント定義] ダイアログ ボックスの [OK] をクリックします。

カスタム拡張マークアップ言語 (XML) ファイルが関連付けられた注文書が作成されます。

関連項目

BizTalk Server と連携するように Commerce Server を構成する

送信元サーバーでエンベロープを作成する


送信元サーバーでエンベロープを作成する

エンベロープには、ヘッダーが含まれるほか、送信先組織に送信する電子ビジネス データの先頭に付く、またはカプセル化するフッターが含まれる場合があります。BizTalk Server 2000 は、メッセージ ポートで指定されたエンベロープのプロパティを使って、文書の送信の準備をするために使われるエンベロープ書式を決定します。

送信元サーバーのエンベロープを作成するには

  1. 送信元 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャで、[ファイル] メニューの [新規作成] をポイントし、[エンベロープ] をクリックします。

  3. [新しいエンベローブ] ダイアログ ボックスの [エンベローブ名] ボックスにエンベロープの名前 (たとえば、「POEnvelope」) を入力し、[OK] をクリックします。

作成したエンベロープにカスタム拡張マークアップ言語 (XML) ファイルを割り当てない場合は、既定の XML ファイルが割り当てられます。

関連項目

BizTalk Server と連携するように Commerce Server を構成する

送信元サーバーでメッセージ ポートを作成する


送信元サーバーでメッセージ ポートを作成する

メッセージ ポートとは、BizTalk メッセージ マネージャによって構成されるルールのセットです。メッセージ ポートを使って、文書をエンベロープ化する方法、セキュリティを設定する方法、および指定された送信先組織に転送する方法を指定します。ポートが転送する文書は、関連付けられたチャネルで指定された送信元から送信されます。チャネルとは、受信した文書を処理するルールを BizTalk Server に提供するために使用できるプロパティのセットです。

メッセージ ポートでは、文書の送信先組織または送信先アプリケーションを指定します。

送信元サーバーでメッセージ ポートを作成するには

  1. 送信元 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャで、[ファイル] メニューの [新規作成] をポイントし、[メッセージ ポート] をポイントします。次に、[組織へ] をクリックします。

  3. [新しいメッセージ ポート] ダイアログ ボックスの [全般情報] 画面で、[名前] ボックスにポート名 (たとえば、「OutPortToDestination」) を入力し、[次へ] をクリックします。

  4. [送信先組織] 画面で、[組織] オプションを選択し、次に [名前] ボックスの右の [参照] をクリックします。

  5. [組織の選択] ダイアログ ボックスで、送信先組織 (たとえば、DestinationOrg) を選択し、[OK] をクリックします。

  6. [アドレス] ボックスの右の [参照] をクリックします。

  7. [プライマリ トランスポート] ダイアログ ボックスの [トランスポートの種類] ボックスで、ドロップダウン リストの [HTTP] をクリックします。

  8. [アドレス] ボックスに「http://<送信先サーバー名>/<サイト名>/ReceiveStandard.asp」と入力し、[OK] をクリックします。

これは、注文書の送信先となる製造元の URL です。

  9. [次へ] をクリックします。

  10. [エンベローブ情報] 画面の [エンベローブ情報] ボックスで、ドロップダウン リストの [POEnvelope] をクリックし、[次へ] をクリックします。

  11. [セキュリティ情報] 画面で、[このメッセージ ポート用のチャネルの作成] チェック ボックスがオンになっていることを確認します。

  12. [チャネルの種類] ボックスで、ドロップダウン リストの [アプリケーションから] をクリックし、[完了] をクリックします。

  13. [全般情報] 画面で、[キャンセル] をクリックします。

送信元組織と送信先組織の間にメッセージ ポートが作成されます。

関連項目

送信元サーバーでチャネルを作成する


送信元サーバーでチャネルを作成する

チャネルとは、受信した文書を処理するルールを BizTalk Server 2000 に提供するために使われるプロパティのセットです。チャネルが処理した文書は、関連付けられたメッセージ ポートまたは配布リストに渡され、指定された送信先に転送されます。1 つのメッセージ ポートまたは配布リストには、1 つまたは複数のチャネルを作成できます。

送信元サーバーでチャネルを作成するには

  1. 送信元 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャの左側のウィンドウで、[その他の項目を検索] の [メッセージ ポート] リンクをクリックし、[検索] をクリックします。

  3. チャネルが関連付けられるメッセージ ポート (たとえば、[OutPortToDestination]) を選択します。

  4. [ファイル] メニューの [新規作成] をポイントし、[チャネル] をポイントします。次に、[アプリケーションから] をクリックします。

  5. 新しいチャネル ウィザードの [全般情報] 画面で、[名前] ボックスにチャネル名 (たとえば、「OutChannelToDestination」) を入力し、[次へ] をクリックします。

  6. [送信元アプリケーション] 画面で、[アプリケーション] オプションが選択されていることを確認します。

  7. [名前] ボックスで、ドロップダウン リストからアプリケーション名 (たとえば、注文書の場合は [POApplication]、カタログ転送の場合は [CatalogTransferDoc]) を選択します。

  8. [組織の識別子] ボックスで、識別子が <送信元組織>/<識別子の値>(既定) (たとえば、[My Company / Sender (既定)]) となっていることを確認し、[次へ] をクリックします。

  9. [受信ドキュメント] 画面で、[受信ドキュメント定義名] ボックスの右の [参照] をクリックします。

  10. [ドキュメント定義の選択] ダイアログ ボックスで、文書定義 (たとえば、[PurchaseOrder]) を選択し、[OK] をクリックします。

  11. [受信ドキュメント] 画面の [次へ] をクリックします。

  12. [送信ドキュメント名] 画面で、[送信ドキュメント定義名] ボックスの右の [参照] をクリックします。

  13. [ドキュメント定義の選択] ダイアログ ボックスで、文書定義 (たとえば、[PurchaseOrder]) を選択し、[OK] をクリックします。

  14. [送信ドキュメント名] 画面の [次へ] をクリックします。

  15. [ドキュメント ログ] 画面の [次へ] をクリックします。

  16. [詳細構成] 画面の [詳細設定] をクリックします。

  17. [メッセージ ポート既定値の変更] ダイアログ ボックスの [プロパティ] をクリックします。

  18. [BizTalk SendHTTPX のプロパティ] ダイアログ ボックスの [ユーザー名] ボックスに完全なユーザー名を入力します。たとえば、「REDMOND\<ユーザー名>」と入力します。

  19. [パスワード] ボックスにユーザー パスワードを入力し、[OK] をクリックします。

  20. [メッセージ ポート既定値の変更] ダイアログ ボックスの [OK] をクリックします。

  21. [詳細構成] 画面の [完了] をクリックします。

既定の組織から「送信元サーバーでメッセージ ポートを作成するには」の手順で作成したメッセージ ポートへのチャネルが作成されます。

関連項目

送信先サーバーを設定する


送信先サーバーを設定する

2 つの組織間でメッセージ ポートを設定するには、送信元サーバーと送信先サーバーを設定する必要があります。たとえば、自社の BizTalk Server が送信元サーバーになり、製造元の BizTalk Server が送信先サーバーになります。

ここで説明する手順を実行して、送信先サーバーで注文書を交換する設定を行ってください。送信元サーバーの設定については、「送信元サーバーを設定する」を参照してください。

ここでは、次のトピックについて説明します。

  • 例 : 注文書用に送信先サーバーを構成する

  • 送信先サーバーに必要なファイルをコピーする

  • 送信先サーバーで文書定義を作成する

  • 送信先サーバーでメッセージ ポートを作成する

  • 送信先サーバーでチャネルを作成する


例 : 注文書用に送信先サーバーを構成する

次の表は、送信先サーバーを注文書を交換するために構成する場合に、BizTalk Server に入力するサンプル値の一覧を示します。

送信先組織プロパティのサンプル値

項目 | 値
[組織名] | 既定の組織
[カスタム名] | MyCompany
[修飾子] | MyCompany
[値] | Receiver
[アプリケーション名] | POApplication

送信元組織プロパティのサンプル値

項目 | 値
[組織名] | Source
[カスタム名] | MyCompany
[修飾子] | MyCompany
[値] | Sender

文書プロパティのサンプル値

項目 | 値
[ドキュメント定義名] | PurchaseOrder
[ドキュメント仕様] | .../Microsoft/POSchema.xml

アプリケーションへのメッセージ ポート割り当てのサンプル値

項目 | 値
[メッセージ ポート名] | InPortFromSource
[アプリケーション名] | POApplication
[トランスポート アドレス (HTTP)] | http://<送信先サーバー名>/Retail/_recvpo.asp <送信先サーバー名> には有効な送信先サーバーを指定します。
[エンベロープ名] | POEnvelope
[組織の識別子] | MyCompany / Receiver (既定)

組織のチャネル割り当てのサンプル値

項目 | 値
[チャネル名] | InChannelFromSource
[送信元アプリケーション名] | POApplication
[組織の識別子] | MyCompany/Sender (既定)
[受信ドキュメント定義名] | PurchaseOrder
[送信ドキュメント名] | PurchaseOrder

関連項目

BizTalk Server と連携するように Commerce Server を構成する

送信元サーバーを設定する

送信先サーバーを設定する

BizTalk Server のカタログを設定する

例 : カタログを交換するために送信元サーバーを構成する


送信先サーバーに必要なファイルをコピーする

送信元サーバーと送信先サーバーの両方に、同じ POSchema.xml ファイルが置かれている必要があります。

注

  • 送信元サーバーと送信先サーバーは、同じ商品カタログを持っている必要があります。そうでないと、注文書の送信は失敗します。カタログの設定方法については、「BizTalk Server のカタログを設定する」を参照してください。

送信先サーバーに ReceiveStandard.asp をコピーするには

  • <ドライブ:>\Program Files\Microsoft BizTalk Server\SDK\Samples にある ReceiveStandard.asp ファイルを、<ドライブ:>\inetpub\wwwroot\<サイト名> にコピーします。

POSchema.xml を送信先サーバーにコピーするには

  • <ドライブ>\inetpub\wwwroot\<サイト名> にある POSchema.xml ファイルを、<ドライブ:>\Program Files\Microsoft BizTalk Server\BizTalkServerRepository\DocSpecs\Microsoft にコピーします。

関連項目

送信元サーバーに必要なファイルをコピーおよびインポートする

BizTalk Server のカタログを設定する


送信先サーバーで送信先組織を作成する

送信先 BizTalk Server は製造元です。メッセージ ポート 、配布リスト、およびチャネル の組織には、送信元と送信先があります。組織は、外部の取引先、自社、取引先または自社内の事業部門のいずれかを表します。各組織には、BizTalk Server 2000 およびほかの取引先組織に対して、組織を特定する一意の識別子があります。

基本認証をサポートするには、BizTalk Server に付属している ReceiveStandard.asp ファイルを使います。ReceiveStandard.asp ページは、情報を収集して BizTalk Server に送信します。セキュリティが設定された Web サイトを実装するには、ReceiveStandard.asp に権限を設定する必要があります。

送信先サーバーでは、送信元組織と送信先組織の両方を作成する必要があります。

ReceiveStandard.asp に特権を設定するには

送信先サーバーで送信先組織を作成するには

送信元組織を作成するには

ReceiveStandard.asp に権限を設定するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[インターネット サービス マネージャ] をクリックします。

  2. <サーバー名> を展開し、[既定の Web サイト] を展開します。次に、サイト (たとえば、Retail) を選択し、マウスの右ボタンで [ReceiveStandard.asp] をクリックします。プロパティを選択します。

  3. [ファイル セキュリティ] タブの [匿名アクセスおよび認証コントロール] セクションで、[編集] をクリックします。

  4. [認証方法] ダイアログ ボックスの [匿名アクセス] セクションで、[編集] をクリックします。[編集] をクリックするには [匿名アクセス] チェック ボックスをオンにします。

  5. [匿名ユーザー アカウント] ダイアログ ボックスの [ユーザー名] ボックスに、このコンピュータへのアクセスに使用するアカウントの Windows ユーザー名を入力します。[パスワード] ボックスに Windows ユーザー アカウントのパスワードを入力します。

  6. [匿名ユーザー アカウント] ダイアログ ボックスで、[OK] をクリックします。

  7. [認証方法] ダイアログ ボックスで、[OK] をクリックします。

  8. [ReceiveStandard.asp のプロパティ] ダイアログ ボックスで、[OK] をクリックします。

  9. インターネット サービス マネージャを閉じます。

ReceiveStandard.asp が安全に操作できるように設定されます。サイトへのアクセスはロックされ、注文書交換またはカタログ交換の受取人は、ユーザー アカウントとパスワードを知らないとアクセスできないようになります。

送信先サーバーで送信先組織を作成するには

  1. 送信先 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャで、[BizTalk メッセージ マネージャ] ダイアログ ボックスの [キャンセル] をクリックして、このダイアログ ボックスを閉じます。

  3. 左側のウィンドウの [その他の項目を検索] で [組織] をクリックし、[検索] をクリックして、利用可能な組織の一覧を表示します。

  4. 利用可能な組織の一覧の [既定の組織] をダブルクリックします。

  5. [組織プロパティ] ダイアログ ボックスの [識別子] タブで、[追加] をクリックします。

  6. [新しい識別子] ダイアログ ボックスで、[カスタム] オプションが選択されていることを確認し、「MyCompany」と入力します。

  7. [修飾子] ボックスに「MyCompany」と入力します。

  8. [値] ボックスに送信元組織の名前 (たとえば、「Receiver」) を入力します。

  9. 送信元組織を既定の組織に設定するには、[既定値として設定] チェック ボックスをオンにし、[OK] をクリックします。

メッセージ ポートを作成する前に、既定の組織を指定する必要があります。既定の組織は、新しい各メッセージ ポートの送信元または送信先のどちらにもなります。いつでも、ほかの既定の組織を指定して、新しい既定の組織を使用するメッセージ ポートを作成することができます。

  10. [アプリケーション] タブで、[追加] をクリックします。

  11. [新しいアプリケーション] ダイアログ ボックスで、アプリケーション名 (たとえば、「POApplication」) を入力し、[OK] をクリックします。

  12. [組織のプロパティ] ダイアログ ボックスの [OK] をクリックします。

送信先サーバーの送信元組織が作成され、既定の組織として指定されました。

送信元組織を作成するには

  1. BizTalk メッセージ マネージャで、[ファイル] メニューの [新規作成] をポイントし、[組織] をクリックします。

  2. [新しい組織] ダイアログ ボックスの [全般] タブで、[組織名] ボックスに送信先組織の名前 (たとえば、「Source」) を入力します。

  3. [コメント] ボックスに、送信先組織に関して必要なコメントを入力します。

  4. [識別子] タブで、[追加] をクリックします。

  5. [新しい識別子] ボックスで、[カスタム] オプションを選択し、「MyCompany」と入力します。

  6. [修飾子] ボックスに「MyCompany」と入力します。

  7. [値] ボックスに受取人の名前 (たとえば、「Sender」) を入力し、[OK] をクリックします。

  8. [新しい組織] ダイアログ ボックスの [OK] をクリックします。

送信先組織が作成されます。

関連項目

送信先サーバーで文書定義を作成する


送信先サーバーで文書定義を作成する

文書定義は、メッセージ ポート、チャネル、または配布リスト内のビジネス文書を表します。文書定義は、文書を定義する仕様へのポインタを提供します。文書定義を関連付けることができるメッセージ ポート、チャネル、および配布リストの数に制限はありません。

送信先 BizTalk Server は製造元です。

XML ファイルと関連付けられた文書定義を作成するには

  1. 送信先 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャで、[ファイル] メニューの [新規] をポイントし、[ドキュメント定義] をクリックします。

  3. [新しいドキュメント定義] ダイアログ ボックスで、[ドキュメント定義名] ボックスに文書定義の名前 (たとえば、「PurchaseOrder」) を入力します。

  4. [ドキュメント仕様] チェック ボックスをオンにし、[参照] をクリックします。

  5. [リポジトリからのドキュメント仕様の選択] ダイアログ ボックスで [Microsoft] フォルダをダブルクリックします。

  6. 拡張マークアップ言語 (XML) ファイル (たとえば、CommonPO.xml) を選択し、[開く] をクリックします。

  7. [新しいドキュメント定義] ダイアログ ボックスの [OK] をクリックします。

カスタム XML ファイルと関連付けられた注文書が作成されます。

関連項目

送信先サーバーでメッセージ ポートを作成する


送信先サーバーでメッセージ ポートを作成する

送信先 BizTalk Server は製造元です。

送信先サーバーでメッセージ ポートを作成するには

  1. 送信先 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャで、[ファイル] メニューの [新規作成] をポイントし、[メッセージ ポート] をポイントします。次に、[アプリケーションへ] をクリックします。

  3. 新しいメッセージ ポート ウィザードの [全般情報] 画面で、[名前] ボックスにポート名 (たとえば、「OnPortFromSource」) を入力し、[次へ] をクリックします。

  4. [送信先アプリケーション] 画面で [アプリケーション] オプションを選択し、[名前] ボックスで、ドロップダウン リストからアプリケーション名 (たとえば、[POApplication]) を選択します。

  5. [プライマリ トランスポート] セクションで、[アドレス] ボックスの右の [参照] をクリックします。

  6. [プライマリ トランスポート] ダイアログ ボックスの [トランスポートの種類] ボックスで、ドロップダウン リストの [HTTP] をクリックします。

  7. [アドレス] ボックスに「http://<送信先サーバー名>/<サイト名>/_recvpo.asp」と入力し、[OK] をクリックします。

  8. [次へ] をクリックします。

  9. 既定の XML ファイルを使うため、[エンベローブ情報] 画面の [エンベローブ情報] ボックスは空白のままにします。

  10. [次へ] をクリックします。

  11. [セキュリティ情報] 画面で、[このメッセージ ポート用のチャネルの作成] チェック ボックスがオンになっていることを確認します。

  12. [チャネルの種類] ボックスで、ドロップダウン リストの [アプリケーションから] をクリックし、[完了] をクリックします。

  13. [全般情報] 画面で、[キャンセル] をクリックします。

既定の組織と送信先組織の間にメッセージ ポートが作成されます。

関連項目

送信先サーバーでチャネルを作成する


送信先サーバーでチャネルを作成する

チャネルとは、受信した文書を処理するルールを BizTalk Server 2000 に提供するために使用できるプロパティのセットです。チャネルが処理した文書は、関連付けられたメッセージ ポートまたは配布リストに渡され、指定された送信先に転送されます。1 つのメッセージ ポートまたは配布リストには、1 つまたは複数のチャネルを作成できます。

送信先 BizTalk Server は製造元です。

送信先サーバーでチャネルを作成するには

  1. 送信先 BizTalk Server で [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft BizTalk Server 2000] をポイントし、[BizTalk メッセージ マネージャ] をクリックします。

  2. BizTalk メッセージ マネージャの左側のウィンドウで、[その他の項目を検索] の [メッセージ ポート] リンクをクリックし、[検索] をクリックします。

  3. チャネルが関連付けられるポート (たとえば、[SubmitPort]) を選択します。

  4. [ファイル] メニューの [新規作成] をポイントし、[チャネル] をポイントします。次に、[組織から] をクリックします。

  5. 新しいチャネル ウィザードの [全般情報] 画面で、[名前] ボックスにチャネル名 (たとえば、「InChannelFromSource」) を入力し、[次へ] をクリックします。

  6. [送信元組織] 画面で、[組織] オプションが選択されていることを確認します。

  7. [名前] ボックスの右の [参照] をクリックします。

  8. [組織の選択] ダイアログ ボックスで、送信先組織 (たとえば、MySupplier) を選択し、[OK] をクリックします。

  9. [組織の識別子] ボックスで、識別子が <送信元組織>/<識別子の値> (既定) となっていることを確認し、[次へ] をクリックします。

  10. [受信ドキュメント] 画面で、[受信ドキュメント定義名] ボックスの右の [参照] をクリックします。

  11. [ドキュメント定義の選択] ダイアログ ボックスで、文書定義 (たとえば、[PurchaseOrder]) を選択し、[OK] をクリックします。

  12. [受信ドキュメント] 画面の [次へ] をクリックします。

  13. [送信ドキュメント] 画面で、[送信ドキュメント定義名] ボックスの右の [参照] をクリックします。

  14. [ドキュメント定義の選択] ダイアログ ボックスで、文書定義 (たとえば、[PurchaseOrder]) を選択し、[OK] をクリックします。

  15. [送信ドキュメント] 画面の [次へ] をクリックします。

  16. [ドキュメント ログ] 画面の [次へ] をクリックします。

  17. [詳細構成] 画面の [完了] をクリックします。

既定の組織/アプリケーションと、送信元/送信者のメッセージ ポートに対する既定の組織との間にチャネルが作成されます。


BizTalk Server のカタログを設定する

製造元との取引契約を設定すると、Commerce Server で製造元 ID を利用できるようになります。製造元 ID とは、送信元サーバーで送信先組織を作成するときに、製造元に対して指定する組織名です。詳細については、「送信元サーバーで送信元組織と送信先組織を作成する」を参照してください。

Commerce Server は、Commerce Server ビジネス デスクに製造元 ID を表示します。ここには、送信元の組織と同じ文書型をサポートし、互換性のある文書ルーティングを持っている取引先 (組織) が表示されます。したがって、ビジネス デスクを使って、製造元 ID とカタログを関連付けることができます。

1 つの製造元には、複数のカタログを関連付けることができます。また、商品レベルで製造元を指定できますが、この場合、_additem.asp もカスタマイズする必要があります。

製造元に Default という名前を設定した場合、Commerce Server は自社のサイトを製造元として認識します。

注

  • ユーザーが Web サイトで項目を注文する場合、送信先組織のカタログにその項目が存在している必要があります。送信先組織のカタログにその項目がない場合、BizTalk Server はサイトから製造元に注文書を送信できません。代わりに、イベント ログの記録にエラー メッセージが書き込まれます。

カタログを製造元に関連付けるには

  1. Commerce Server ビジネス デスクで、[カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で製造元 ID を追加するカタログを選択し、ツール バーの 開く をクリックします。

  3. [カタログ エディタ - <カタログ名>] 画面で、[製造元 ID] ボックスの省略記号 [...] ボタンをクリックし、製造元識別子の一覧を表示します。このカタログに適切な製造元 ID を選択します。

    BizTalk Server を使って製造元との新しい取引契約を作成するたびに、製造元の一覧は自動的に更新されます。

  4. カタログの変更を保存し、[カタログ] 画面に戻るには、ツール バーの [image] をクリックします。

関連項目

例 : カタログを交換するために送信元サーバーを構成する

新しいカタログを作成する

カタログを取引先に送信する


Commerce Server サイトの監視

Microsoft Windows 2000 Server および Commerce Server 2000 には、システム管理者が Commerce Server サイトのパフォーマンスの監視に使用できる監視ツールが備わっています。Windows 2000 Server および Commerce Server のツールを使うと、サイトの利用状況を分析できます。分析の結果を使って、サイトのパフォーマンスを入念にコントロールし、規模の拡大に対応することができます。

サイトを監視するためにまず必要なことは、監視ツールの準備および設定を行うことです。監視計画が整ったら、「Commerce Server の最適化」で、サイトのパフォーマンスを調整する方法についての詳細を参照してください。

ここでは、イベント ビューアとシステム モニタについての知識があるものと想定します。イベント ビューアとシステム モニタの詳細については、Windows 2000 Server のオンライン ヘルプを参照してください。

ここでは、次のトピックについて説明します。

  • サイトの監視について 使用できる監視ツールについて説明します。

  • 監視の構成を設定する 監視ツールの計画および構成の方法について説明します。

  • 運用サーバーを監視する 運用サーバーを監視する方法について説明します。

  • パフォーマンス モニタを使う サーバーのパフォーマンスの監視に利用できるツールについて説明します。

  • イベント ビューア スナップインを使う イベント ビューア スナップインの使い方と、各種のイベント ログの記録および Windows 2000 のイベントについて説明します。

  • パフォーマンス監視カウンタ パフォーマンス カウンタについて説明し、それらの設定方法を説明します。Commerce Server が備えているカウンタの一覧を示します。


サイトの監視について

Microsoft Windows 2000 のシステム モニタ、パフォーマンス ログや警告、またはシステムのボトルネックになりそうな箇所を予測するその他のツールを使うと Commerce Server サイトを監視できます(ボトルネックとは、キャパシティの限界で動作しているハードウェアまたはソフトウェアをいいます)。

Windows 2000 Server で実行されているシステムを監視する場合は、そのオブジェクトの動作を監視します。Windows 2000 では、システム リソースの識別および操作にオブジェクトが使われ、それには個々のプロセス、共有メモリの各セクション、および物理デバイスが含まれます。

Windows 2000 のパフォーマンス ツールは、システム モニタ、およびパフォーマンス ログと警告という 2 つの要素で構成されています。システム モニタは、オブジェクトの利用状況、オブジェクトの要求、およびオブジェクトによって使用される領域についてのデータを収集します。また、システム モニタでは、オブジェクトの種類ごとにカウンタがグループ化されています。プロセス、メモリ、キャッシュ、ハード ディスク、および統計情報を生成するオブジェクトごとに、固有のカウンタが存在します。

Commerce Server には、監視ツールとして 200 以上の拡張可能カウンタが備わっています。拡張可能カウンタとは、Windows 2000 以外のアプリケーションに付属しているか、または Windows 2000 Software Developer Kit (SDK) の情報を基にユーザーが構築できるパフォーマンス モニタ カウンタです。

サイトのパフォーマンスを最適化するには、システムが使用しているカウンタ、正確な測定対象、および測定値の判断方法を正確に知っておく必要があります。特に、予想外のデータや互いに矛盾する結果を得た場合は、この情報が重要です。監視の構成の詳細については、Windows 2000 Server のオンライン ヘルプの「監視の構成を設定する」を参照してください。

関連項目

Commerce Server のパフォーマンス カウンタ

パフォーマンス カウンタを設定する


監視の構成を設定する

サイトの監視にあたっては、まずキャパシティについて考慮し、監視によるオーバーヘッドが少なくなるように監視ツールを構成します。Microsoft 管理コンソール (MMC) のシステム モニタを使って保存し、ほかのコンピュータにコピーできる監視構成を作成する必要があります。監視の構成によっては、データ センターの問題を強調表示し、システム全体のトラフィック フローを視覚化できます。また、構成を作成することによって、サイト ソフトウェアの問題を理解し、ソフトウェアの相互関係を確認することもできます。

構成の計画は、次のように行います。

  • 必要なカウンタ データが定期的 (10 ～ 15 分ごとなど) に報告されるようにパフォーマンス ログと警告を構成します。

  • 長期間にわたってログを保持します。

  • 結果データをデータベースに保存し、それを分析して全体的なパフォーマンス評価、トレンド分析、およびキャパシティ プランについての報告をするために、データに対してクエリを実行します。

キャパシティ プラン

監視によるオーバーヘッドを抑制する

キャパシティ プラン

キャパシティ プランとは、サイトで予想されるトラフィックをサポートし、サイト パフォーマンスの目標を達成するために必要なアプリケーション、ハードウェア、およびネットワークに関する計画を立てるプロセスです。キャパシティを決定するには、サイトのユーザー数を測定し、各ユーザーによるサーバーに対する要求量を決定し、現在および将来の使用レベルをサポートするために必要なコンピューティング リソース (CPU、RAM、ディスク領域、利用可能な帯域幅、およびネットワーク帯域幅) を計算します。

十分なキャパシティを確保するには、数千人、または数十万人のユーザーがサイトにかける可能性のある負荷を処理するのに必要なコンピューティング ハードウェアの量を計算する必要があります。この計算を行うことによって、パフォーマンスの低下を引き起こす可能性のある脆弱な箇所を判別することができます。脆弱な領域を解決するには、ハードウェアを追加するか、動的なページ、またはその他の CPU に負担をかけるツールのデザインを変更します。

監視によるオーバーヘッドを抑制する

  • Commerce Server のパフォーマンス カウンタおよびツールは、パフォーマンスのオーバーヘッドを最小限に抑えるように設計されています。ただし、パフォーマンス ツールの動作は、ログ ファイルによって占有されるファイル サイズおよびディスク容量の影響を受けます。この影響によりオーバーヘッドが生じます。

  • ファイル サイズおよびディスク使用領域は、更新間隔を長くすることによって軽減できます。また、監視対象ではないディスクにデータを記録することもできます。頻繁に記録すると、ディスクの入出力 (I/O) 要求も増加します。

監視によるオーバーヘッドの増大

  • 監視によるオーバーヘッドが心配される場合は、サイトの監視のためにパフォーマンス ログと監視のみを実行し、システム モニタのグラフは使わないでください。次のような場合は、オーバーヘッドが増大する可能性があります。
    • システム モニタをグラフ ビューで実行している。

    • レポート ビューに既定 (現在の値) 以外のオプションを選択している。

    • きわめて短い間隔 (3 秒未満) でデータをサンプリングしている。

監視に関する推奨事項

診断のために、監視に使用するコンピュータでシステム モニタまたはパフォーマンス ログと監視を起動する前に、次の操作を行います。

  • スクリーン セーバー プログラムを停止します。

  • 不可欠ではないか、または監視に関係のないサービスを停止します。

  • リモート マシンからシステム モニタを実行します。この変更によって、CPU および I/O にかかる負荷の大部分がリモート コンピュータに分散されます。

  • ページング ファイルのサイズを、物理メモリの容量に 100 MB を加えたサイズまで増やします。

  • プライベート管理ネットワークを使います。リモート ログ収集中に頻繁に更新が起きると、ネットワーク転送によってパフォーマンスが低下することがあります。通常は別のネットワーク インターフェイス カード (NIC) によって処理されるプライベート管理ネットワークを使うと、この問題は解決します。また、データ収集のサンプリングを軽減する方法もあります。たとえば、3 秒間隔でデータをサンプリングしている場合、5 秒間隔に変更します。ネットワーク インターフェイスとコンピュータを 2 つずつ使い、各ネットワーク セグメントに異なる処理を実行させる方法もあります。たとえば、1 台のコンピュータはニュース更新専用、もう 1 台は株式取引トランザクション専用にします。

その他の推奨事項

パフォーマンス ツールを最小限のオーバーヘッドで使用するためのその他の推奨事項を次に示します。

  • パフォーマンス結果を分析しパフォーマンス基準を設定する ログ収集したデータを、システム モニタを使ってグラフ化するか、またはエクスポートして印刷し、検討します。個々のパフォーマンスカウンタの詳細については、「Commerce Server のパフォーマンス カウンタ」を参照してください。

  • 警告を設定する 基準評価の定義に応じて、許容できないと考えられるカウンタ値に従って警告を設定します。

  • カウンタ数を減らす パフォーマンスカウンタの数を必要なものだけに減らします。推奨されるカウンタの一覧については、「ハードウェア パフォーマンス カウンタ」および「Commerce Server のパフォーマンス カウンタ」を参照してください。

  • 計画 キャパシティ プランのトレンドを監視し、必要に応じてコンポーネントを追加またはアップグレードします。収集したデータをデータベースに保存し、変化を観察してリソース要求の変化を見極めます。利用状況またはリソース要求の変化を観察すると、どの部分にリソースを追加する必要があるかを特定できます。

関連項目

Commerce Server の最適化


運用サーバーを監視する

Commerce Server 2000 を実行しているコンピュータの Web ファームを管理する場合、Windows 2000 のシステム モニタ、またはボトルネックが発生しそうな場所を予測するその他の同様のツールを使うと、システムのパフォーマンスを監視できます。キャリブレーション テストを実行し、利用状況プロファイルを更新し、Commerce Server のパフォーマンス カウンタを監視することによって、運用サーバーを効果的に監視できます。

キャリブレーション テストを実行する

利用状況プロファイルを更新する

Commerce Server のパフォーマンス カウンタを監視する

キャリブレーション テストを実行する

Compaq RAID アレイ、または同様のディスク サブシステムは、実際のハードウェアの設定によって、大幅に異なるパフォーマンス特性を示します。最適の方法としては、次の要素を決定するようにサブシステムのキャリブレーションを行います。

  • 1 秒あたりの最大物理ディスク読み取り数

  • 1 秒あたりの最大物理ディスク書き込み数

  • 1 秒あたりの最大ディスク バイト数

最近のディスク サブシステムは、複雑な階層構造になっています。ディスク ドライブが 1 つ、または単純な SCSI ソリューションの場合、% Disk Time カウンタが正確に物理ディスクの容量を反映します。さらに複雑な複数ディスク構成の場合、項目が実際に転送待ちになる前に、ディスク キューが、アレイの中でアクティブなスピンドルの数まで増える可能性があります。

最新の低電圧作動式 (LVD) またはファイバー チャネル ディスク システムの場合、問題はさらに複雑になります。これらのハイエンド システムでは、製造元が供給するツールでパフォーマンスとキャパシティを監視する必要があります。さらに、サーバーと SCSI またはファイバー チャネル インターフェイスの間のシステム バスには、最大帯域幅の制限があります。ディスク スループットの合計を、これらの上限と比較する必要があります。

利用状況プロファイルを更新する

利用状況プロファイルは、平均的なユーザー対話と、サイトがピーク時にサポートする必要のある最大同時使用ユーザー数の統計モデルです。サイト監視の重要な要素は、ユーザーを監視し、ユーザーの操作が変化したかどうかを決定することです。ユーザーの利用状況の増加傾向を監視することは特に重要です。しかし、それ以上に重要なのは、このデータを開発者、テスト担当者、およびキャパシティ プランナーに渡し、将来のハードウェアおよびソフトウェアの要件を計画できるようにすることです。

ユーザーの操作を更新、監視するには、User Profile Management パフォーマンス カウンタを使います。

Commerce Server のパフォーマンス カウンタを監視する

Commerce Server のパフォーマンス カウンタの一覧を検討します。まず、この一覧のカウンタをシステム モニタに追加してください。ほかのカウンタは後で追加できます。次の図は、システム モニタに Catalog および User Profile Management パフォーマンス カウンタを追加したところです。

(Art 注文) システム モニタのパフォーマンス コンソール

図をクリックすると、拡大または縮小します。

関連項目

パフォーマンス モニタを使う

ハードウェア パフォーマンス カウンタ

Commerce Server のパフォーマンス カウンタ


パフォーマンス モニタを使う

Windows 2000 のパフォーマンス ツールは、2 つの要素で構成されています。システム モニタ、およびパフォーマンス ログと警告です。システム モニタでは、メモリ、ディスク、プロセッサ、ネットワーク、およびその他の利用状況に関するデータをリアルタイムで収集し、グラフ、ヒストグラム、レポートのいずれかの形式で表示できます。パフォーマンス ログと警告では、パフォーマンス データを記録するようにログを構成し、指定したカウンタの値が定義したしきい値を上回るか、または下回った場合に通知するようにシステム警告を設定します。ここでは、システム モニタに焦点を当てます。パフォーマンス ログと警告の使い方については、Commerce Server マネージャを開き、マウスの右ボタンで [パフォーマンス ログと警告] をクリックします。次に、[ヘルプ] をクリックします。

ここでは、次のトピックについて説明します。

  • システム モニタ

  • その他のパフォーマンス モニタ

パフォーマンス ツールの詳細については、Windows 2000 Server のオンライン ヘルプを参照してください。


システム モニタ

ローカル コンピュータ、またはネットワーク上のほかのコンピュータのパフォーマンスを測定するには、システム モニタを使います。システム モニタは、一連のカウンタを使って、ディスク アクセスを待機しているプロセスの数、1 秒間に送信されるネットワーク パケットの数、およびプロセッサの稼働率などのデータを追跡します。このデータを使って、システムのパフォーマンスを測定および調整できるチャートを作成したり、警告を設定したり、レポートを作成することができます。データは、収集と同時に表示することも、ログ ファイルに保存して後で使用および比較することも、その両方に使うこともできます。

関連項目

Commerce Server のパフォーマンス カウンタ


その他のパフォーマンス モニタ

Commerce Server 2000 サイトの監視には、Microsoft Windows 2000 Server および Microsoft Visual Studio で利用できる各種のサーバーおよびリソース監視ツールを使用できます。

ヘルス モニタ

IP セキュリティ (IPSec) モニタ

Microsoft Web Application Stress ツール

ネットワーク モニタ

SQL Server プロファイラ

Visual Studio Analyzer

ヘルス モニタ

ヘルス モニタは、Microsoft Application Center 2000 で利用できるサービスです。ヘルス モニタは、監視対象の各サーバーでエージェントを実行し、Windows Management Instruction (WMI) でしきい値を追跡することによって、イベントおよびしきい値違反を表示します。Application Center の詳細については、Microsoft Application Center 2000 のオンライン ヘルプを参照してください。

IP セキュリティ (IPSec) モニタ

Windows 2000 は、保護付きの通信が成功しているかどうかを確認するためのIP セキュリティ (IPSec) モニタを用意しています。これは、ローカルまたはリモート コンピュータでアクティブなセキュリティの関連付けを表示するものです。たとえば、IPSec モニタを使うと、セキュリティ ポリシー設定の矛盾を示す、認証またはセキュリティ関連エラーのパターンの有無を検出できます。

Microsoft Web Application Stress ツール

Microsoft Web Application Stress (WAS) ツールは、Web アプリケーションのページを要求する複数のブラウザを現実的に再現するために Web テスターが開発したシミュレーション ツールです。Microsoft は、Web サーバー テストの複雑な側面の一部を遮蔽することで、使いやすいツールを開発しました。このため、WAS ツールは、Web サイトのパフォーマンス データの収集に関心があるすべてのユーザーに役立ちます。

WAS ツールは、長年にわたって WAS で開発された多数の優れた機能と、いくつかの新機能を統合したものです。さらに、現在のバージョンは、Windows 2000 で実行する 3 層構造のパーソナライズされた ASP ページに対してストレス テストを実行するために特に必要とされる機能を網羅しています。

ネットワーク モニタ

ネットワーク モニタ (Netmon.exe) は、ネットワーク トラフィックの追跡に使用できる Windows 2000 の管理ツールです。ネットワーク モニタは、ネットワークのトラフィックを取得し、表示、分析するために使います。このツールを使うと、ユーザーが定義した方法で以前に取得したデータの分析、定義済みプロトコル パーサーからのデータの抽出、およびネットワークのリアルタイム トラフィックの分析などのタスクを実行できます。

ネットワーク モニタは、ブラウザ、Web サーバー、および SQL Server の間のパケットを取得するために役立ちます。有用なタイミング情報に加え、パケット サイズ、ネットワーク稼働率、およびシステム パフォーマンスの管理に必要な、その他の統計を多数提供します。ネットワーク モニタは既定ではインストールされませんが、コントロール パネルの [アプリケーションの追加と削除] を使ってインストールできます。

SQL Server プロファイラ

SQL Server プロファイラは、サーバーから Microsoft SQL Server のイベントを取得するツールです。イベントはトレース ファイルに保存され、これを分析するか、または後で問題を診断しようとする際に特定の連続した手順を再現するのに使用できます。SQL Server プロファイラでは次のことができます。

  • 問題の原因を発見するために、問題のクエリの手順を実行します。

  • 低速で実行されるクエリを発見し、診断します。

  • 問題の原因となる一連の SQL ステートメントを取得します。保存された追跡結果を使って、問題を診断できるテスト サーバーで問題を再現できます。

  • SQL Server のパフォーマンスを監視し、データベースのパフォーマンスを調整します。

Visual Studio Analyzer

Visual Studio 6.0 Enterprise Edition のツールである Visual Studio Analyzer を使うと、パフォーマンスを分析し、ページの欠陥を特定し、配布アプリケーションの構造を理解することができます。Visual Studio Analyzer は、Visual Studio ツールで構築したアプリケーションおよびシステムで使用できます。

Component Object Model (COM)、Active X Data Objects (ADO)、および COM+ などのいくつかの Microsoft 技術は、Visual Studio Analyzer に情報を提供できる機能を備えています。アプリケーションがこれらのいずれかの技術を使っている場合は、Visual Studio Analyzer でこの使用に関する詳細な情報を取得できます。また、Visual Studio Analyzer に情報を提供するようにアプリケーションをカスタマイズできます。


イベント ビューア スナップインを使う

Commerce Server 2000 は、Commerce Server が正しく実行されていることをシステム管理者が確認できるように、イベント ビューア スナップインにイベントを生成します。イベント ビューアは、情報、警告、およびエラーの各イベントを追跡します。イベント ビューアのログは、ログオン時間や接続時間などのプロセスを含むすべての Commerce Server イベント、およびすべての Microsoft Windows イベントの監査記録を提供します。

Windows 2000 は、3 種類のログにイベントを記録します。

  • アプリケーション ログ アプリケーションまたはプログラムが記録したイベントが含まれます。たとえば、データベース プログラムは、アプリケーション ログにファイル エラーを記録します。記録するイベントは、サイト開発者が決定します。このログは、カタログのインポートまたはエクスポートを確認するために使います。

  • システム ログ Windows 2000 システム コンポーネントが記録したイベントが含まれます。たとえば、起動中にドライバの読み込みに失敗した場合は、システム ログに記録されます。システム コンポーネントが記録するイベントの種類は、Windows 2000 によってあらかじめ定義されています。

  • セキュリティ ログ 有効および無効なログオン試行などのセキュリティ イベントと、ファイルの作成、オープン、および削除などのリソース使用関連のイベントを記録します。セキュリティ ログに記録するイベントは、システム管理者が指定できます。たとえば、ログオン監査を有効にした場合、システムにログオンしようとすると、セキュリティ ログに記録されます。

ここでは、次のトピックについて説明します。

  • Windows イベント


Windows イベント

Windows イベント、およびパフォーマンス ログと警告は、EventLog サービスで記録されます。EventLog サービスは、Windows 2000 を起動すると自動的に開始します。アプリケーション ログとシステム ログはすべてのユーザーが表示できますが、セキュリティ ログへのアクセス権を持つのは管理者だけです。

既定では、セキュリティ ログ収集は無効になっています。セキュリティ ログ収集を有効にするには、グループ ポリシーを使います。システム管理者は、セキュリティ ログがいっぱいになるとシステムを停止させる監視ポリシーをレジストリで設定することもできます。

イベント ビューアは、次の種類のイベントを表示します。

  • エラー データの消失や機能の損失などの重大な問題です。たとえば、起動中にサービスの読み込みに失敗した場合は、エラーが記録されます。

  • 警告 必ずしも重大ではありませんが、近い将来問題が発生する可能性があることを示すイベントです。たとえば、ディスク容量が少なくなると、警告が記録されます。

  • 情報 アプリケーション、ドライバ、またはサービスの正常な処理を表すイベントです。たとえば、ネットワーク ドライバが正常に読み込まれた場合は、情報イベントが記録されます。

  • 成功の監査 監査対象のセキュリティ アクセス試行の成功を示します。たとえば、ユーザーがシステムへのログオンに成功した場合は、成功の監査イベントとして記録されます。

  • 失敗の監査 監査対象のセキュリティ アクセス試行の失敗を示します。たとえば、ユーザーがネットワーク ドライブにアクセスしようとして失敗した場合は、失敗の監査イベントとして記録されます。

次の図は、いくつかのイベントと警告が表示されたイベント ビューアの画面を示します。

(Art 注文) イベント ビューア

図をクリックすると、拡大または縮小します。


パフォーマンス監視カウンタ

システム モニタは、パフォーマンス ログと 警告を使って、パフォーマンス カウンタというデータを収集します。パフォーマンス カウンタは、パフォーマンス オブジェクトに関連付けられたデータ項目です。システム モニタは、選択したカウンタごとに、パフォーマンス オブジェクトとして定義されたパフォーマンスの特定の側面に対応する値を表示します。

パフォーマンス カウンタによって、システムまたはサービスがサイトで実行する作業の特定の側面を監視できます。システム モニタはオブジェクトの種類によってカウンタをグループ化します。Commerce Server プロセス、メモリ、キャッシュ、ハード ディスク、および統計情報を生成するオブジェクトごとに、固有のカウンタが存在します。パフォーマンス ログと警告の詳細については、Windows 2000 Server のオンライン ヘルプを参照してください。

ここでは、次のトピックについて説明します。

  • パフォーマンス カウンタを設定する

  • ハードウェア パフォーマンス カウンタ

  • Commerce Server のパフォーマンス カウンタ

  • 予測リソースを監視する


パフォーマンス カウンタを設定する

パフォーマンス カウンタを設定するには、システム モニタを使います。

パフォーマンス カウンタを設定するには

  1. まず、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. [システム モニタ] をクリックし、パフォーマンス コンソールを開きます。

  3. パフォーマンス コンソールで、[システム モニタ] ツール バーのプラス記号 (+) をクリックし、サーバーにパフォーマンス カウンタを追加します。

  4. [カウンタの追加] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ローカル コンピュータのカウンタを使う] | 選択したカウンタを、パフォーマンス コンソールを実行しているコンピュータで使用するように指定するときに選択します。
    [次のコンピュータからカウンタを選ぶ] | 選択したカウンタを、ネットワークの指定したコンピュータで使用するように指定するときに選択します。
    [パフォーマンス オブジェクト] | このカウンタを適用するパフォーマンス オブジェクトを選択します。たとえば、予測リソースのパフォーマンス カウンタは、CS2000: Marketing and Catalog パフォーマンス オブジェクトの下に表示されます。
    [すべてのカウンタ] | 選択したパフォーマンス オブジェクトのすべてのカウンタを組み込むときに選択します。
    [一覧からカウンタを選ぶ] | 選択したパフォーマンス オブジェクトの個々のカウンタを選択するように指定するときに選択します。
    [すべてのインスタンス] | 選択したカウンタのすべてのインスタンスを表示するように指定するときに選択します。
    [一覧からインスタンスを選ぶ] | システム モニタが一覧から選択されたインスタンスをすべて使用するように指定するときに選択します。

  5. オプションとして、[説明] をクリックし、各パフォーマンス カウンタに関する説明データを含むドロップダウン リスト ボックスを開くこともできます。

  6. [追加] をクリックして選択したカウンタをすべて追加し、[閉じる] をクリックします。

選択したパフォーマンス カウンタが表示され、システム モニタのパフォーマンス コンソールで実行が開始されます。次の図は、CS 2000 と [カウンタの追加] ダイアログ ボックスを示します。パイプラインのカウンタが表示されています。

(Art 注文) [パフォーマンス カウンタ] ダイアログ ボックス

図をクリックすると、拡大または縮小します。


ハードウェア パフォーマンス カウンタ

次の表は、監視する必要のあるハードウェア パフォーマンス カウンタを示します。これらのカウンタは、Microsoft Windows 2000 のシステム モニタにあります。データ センターの各サーバーをパフォーマンス カウンタで監視し、その結果を集約的に表示する必要があります。System オブジェクトと Memory オブジェクトのカウンタは、キャパシティの監視に使用できます。

パフォーマンス オブジェクト | カウンタ名 | 説明
Network Segment | Bytes received per second Bytes sent per second | ネットワーク カードのキャパシティが上限に近づいた場合は、別のカードを追加する必要があります。この値がネットワークのキャパシティに近づいた場合は、より帯域幅の大きいネットワークが必要と考えられます。
Inetinfo Instance (Process オブジェクトの中) | Virtual bytes | メモリが不足していないか、またはメモリ サイズが利用可能な最大 RAM 容量に近づいていないかを監視します。このカウンタは、仮想メモリ割り当てを測定します。
 | Working set | 利用可能なハードウェア容量の範囲内、つまり物理 RAM の容量以下である必要があります。
Memory | Available bytes | 4 MB 以上である必要があります。
 | Pages per second | 1 秒につき 1 ページ以下である必要があります。システムのメモリが実際に不足している場合、問題を示す最大の指標となります。
Physical Disk | Disk Writes/second Disk Reads/second | この 2 つのカウンタの合計が、ディスクの最大容量を十分に下回っている必要があります。
 | % Disk Time | 経過時間のうち、選択したディスク ドライブが読み取りまたは書き込み要求に対応している時間の比率を示します。
SQL Server | IO transactions/sec | SQL Server が実際に実行している活動の量を示します。
 | Compiles/sec Recompiles/sec | SQL Server が実行しているクエリの効率を示します。SQL Server の CPU 負荷を軽減するには、この数値を下げます。
System | Context switches/sec | このレートが CPU あたり 5,000 コンテキスト スイッチを超える場合は、別のサーバーを追加し、システムを水平方向に拡張する必要があります。
 | %Total Processor | ピーク稼働率が 100% になることはありますが、稼働率がプロセッサの能力を超えた水準で持続しないようにする必要があります。サーバーの要素はすべて水平方向に拡張できます。
Web | Total connections | サーバーへのアクティブな Transmission Control Protocol (TCP) 接続の数です。
 | Get requests/sec | サーバーが受信するハイパーテキスト転送プロトコル (HTTP) 要求の数です。これは、Web サイトへのトラフィックを示す主要な指標です。
 | Non-anonymous users per second | サイトの認証ユーザーの要求数を追跡します。
Active Server Pages | Requests per second | Active Server Pages (ASP) が要求を処理する速度です。成功した要求と失敗した要求の両方が含まれます。
 | Requests executing | サンプル期間中の 1 時点で実行している要求数の平均です。インターネット インフォメーション サービス (IIS) 5.0 には、要求を同時に処理できる多数のスレッドがあります。
 | Request wait time | これは、要求の処理が開始されるまでその要求がキューにある時間を示すため、きわめて 0 に近い値 (100 ミリ秒以下) である必要があります。支払いトランザクションを処理するまで、ユーザーを長時間待たせることは避けるべきです。
 | Requests queued | ピーク時間以外に長いキューが生じないようにする必要があります。

Bytes received per second

Bytes received per second カウンタをネットワーク アダプタ カードの総帯域幅と比較し、ネットワーク接続がボトルネックになっていないかどうかを判断します。トラフィックの一時的な急増に備えるため、通常はキャパシティの 50% 以上は使わないようにします。この数値が接続キャパシティにきわめて近く、プロセッサやメモリがさほど使用されていない場合は、接続に問題があると考えられます。

Requests executing

Requests executing カウンタの数値がいつも 1 以上の場合は、ASP ページまたはオブジェクトの問題によって要求がハングしている可能性があります。ピーク時間でもこの数値が 1 を超えない場合は、サイトにバグが生じたままの ASP がある可能性があります。


Commerce Server のパフォーマンス カウンタ

次の表は、Commerce Server 2000 で利用できるパフォーマンス カウンタの一覧を示します。Commerce Server マネージャのコンソール ルートにあるシステム モニタで、これらのカウンタを実行することをお勧めします。

パフォーマンス オブジェクト | カウンタ名 | 説明
CS2000:User Profile Management | AuthMgr:AnonTickets/sec | 特定の Commerce サイトで 1 秒あたりに匿名ユーザーに設定されたチケット、つまりプロパティ/値の対の数です。
 | AuthChecks Failed/sec | 特定の Commerce サイトで 1 秒あたりに失敗した認証チェックの数です。
 | AuthMgr:AuthChecks Succeeded/sec | 特定の Commerce サイトで 1 秒あたりに成功した認証チェックの数です。
 | AuthMgr:AuthMgr Objects/sec | 特定の Commerce サイトで 1 秒あたりに作成された認証マネージャ オブジェクトの数です。
 | AuthMgr:AuthTickets/sec | 特定の Commerce サイトで 1 秒あたりに設定された認証チケットの数です。
 | AuthMgr:Custom Properties/sec | 特定の Commerce サイトで 1 秒あたりに設定されたカスタム プロパティの数です。
 | AuthMgr:Get_Custom-Properties/sec | 特定の Commerce サイトで 1 秒あたりに設定された取得カスタム プロパティの数です。GetProperty() カウンタは、ユーザーの cookie からカスタム プロパティ値を取得します。
 | AuthMgr:Total AnonTickets | 特定の Commerce サイトで匿名ユーザーに設定されたチケット、つまりプロパティ/値の対の総数です。
 | AuthMgr:Total AuthChecks Failed | 特定の Commerce サイトで失敗した認証チェックの総数です。
 | AuthMgr:Total AuthChecks succeeded | 特定の Commerce サイトで成功した認証チェックの総数です。
 | AuthMgr:Total AuthMgr Objects Created | 特定の Commerce サイトで作成される認証マネージャ オブジェクトの総数です。
 | AuthMgr:Total AuthTickets | Commerce サイトの認証チケットの総数です。
 | AuthMgr:Total Custom-Properties | 特定の Commerce サイトで設定されたカスタム プロパティの総数です。
 | AuthMgr:Total Get_Custom-Properties | 特定の Commerce サイトで設定された取得カスタム プロパティの総数です。
 | AuthFilter:Token-Cache-Entries (total) _ | Windows 認証モードのトークン キャッシュ エントリの総数です。
 | AuthFilter:Token-Cache-Size (bytes) | Windows 認証モードのトークン キャッシュ エントリのサイズを示すバイト数です。
 | AuthFilter:Token-Cache Entries (Active) | Windows 認証モードで現在アクティブなトークン キャッシュ エントリの数です。
 | AuthFilter:WindowsAuth-Cache-Hits | Windows 認証モードのパスワード キャッシュ ヒットの総数です。
 | AuthFilter:WindowsAuth-Cache-Hits/sec | Windows 認証モードの 1 秒あたりのパスワード キャッシュ ヒットの数です。
 | AuthFilter:WindowsAuth-Cache-Misses | Windows 認証モードのパスワード キャッシュ ミスヒットの総数です。
 | AuthFilter:WindowsAuth-Cache-Misses/sec | Windows 認証モードの 1 秒あたりのパスワード キャッシュ ミスヒットの数です。
 | AuthFilter:Total Successful Windows-AuthChecks | 認証用の Internet Server Application Program Interface (ISAPI) フィルタにより成功した Windows 認証チェックの総数です。これは、フィルタがインターネット インフォメーション サービス (IIS) 5.0 へアカウント情報を渡し、正しく返された回数の合計です。
 | AuthFilter:Successful Windows-AuthChecks/sec | 1 秒あたりに成功した Windows 認証チェックの数です。
 | AuthFilter:Total Failed Windows-AuthChecks | 失敗した Windows 認証チェックの総数です。
 | AuthFilter:Failed Windows-AuthChecks/sec | 1 秒あたりに失敗した Windows 認証チェックの数です。
 | AuthFilter:Total AutoCookies | 生成された自動 cookie の総数です。
 | AuthFilter:AutoCookies/sec | 1 秒あたりに生成された自動 cookieの 数です。
 | AuthFilter:Total Requests Failed | フィルタ キャッシュがいっぱいになるか、エラーが発生してフィルタがエラー ページにリダイレクトされたために生じたエラーの数です。
 | UPM:Object Reads | 取得されたプロファイル オブジェクトの総数です。
 | UPM:Object Reads/sec | 1 秒あたりに取得されたプロファイル オブジェクトの数です。
 | UPM:Object Creations | 作成されたプロファイル オブジェクトの総数です。
 | UPM:Object Creations/sec | 1 秒あたりに作成されたプロファイル オブジェクトの数です。
 | UPM:Object Deletes | 削除されたプロファイル オブジェクトの総数です。
 | UPM:Object Deletes/sec | 1 秒あたりに削除されたプロファイル オブジェクトの数です。
 | UPM:Object Modifies | 変更されたプロファイル オブジェクトの総数です。
 | UPM:Object Modifies/sec | 1 秒あたりに変更されたプロファイル オブジェクトの数です。
 | UPM:Cache Objects | キャッシュ オブジェクトの総数です。
 | UPM:Cache Hit Rate/sec | 1 秒あたりのキャッシュ ヒットの数です。
 | UPM:Cache Miss Rate/sec | 1 秒あたりのキャッシュ ミスヒットの数です。
 | UPM:Background Thread State | このカウンタの値は 1 (オン) または 0 (オフ) で、バックラウンド スレッドが現在アクティブかどうかを示します。
 | UPM:No. of Cache Purges | フォアグラウンド スレッドが、メモリの空きブロックを検索するためにプロファイル オブジェクト キャッシュからエントリをパージした回数です。
 | UPM:DTS Records Exported/sec | 1 秒あたりにエクスポートされたデータ変換サービス (DTS) レコードの数です。
 | UPM:DTS Records Exported | エクスポートされた DTS レコードの総数です。
 | UPM:DTS Export Errors | エクスポート中に発生した DTS エラーの総数です。これは、データ ウェアハウスでは記録されない場合があるフィールドの不一致とオブジェクトの累積数です。
CS2000: データ ウェアハウス | CatImport:Total Catalogs | この DTS インポート タスク中にインポートされたカタログの総数です。
 | CatImport:Total Categories | この DTS インポート タスク中にインポートされたカテゴリの総数です。
 | CatImport:Total Products | この DTS インポート タスク中にインポートされた商品の総数です。
 | UImport:Free hit buffers | 現在利用できる空のヒット バッファの数です。
 | UImport:Used hit buffers | 現在使用されているヒット バッファの数です。
 | UImport:Hits per second | インポート タスクがヒットを処理している 1 秒あたりのレートです。
 | UImport:Current visits | ログの処理中に記録されたアクティブな訪問の総数です。
 | UImport:Commerce events | インポート タスク中に発生した Commerce Server イベントの総数です。
 | UImport:Decoded cookies | インポート タスクの実行中に発生した UPM デコードされた cookie の総数です。
 | UImport:Query strings | インポート タスクの実行中に処理されたクエリ文字列の総数です。
 | Total IPs resolved | この DTS IP 解決タスク中に解決された Internet Protocol (IP) の総数です。
 | Total IPs unresolved | この DTS IP 解決タスク中に解決されなかった IP の総数です。
 | Provider:Total SetColumns | SetColumns() が呼び出された回数の合計です。
 | Provider:Committed rows per second | 1 秒あたりに保存された行の数です。
CS2000:Marketing and Catalog | Catalog Queries per second | 1 秒あたりにカタログ システムに対して実行されたクエリの数です。パフォーマンス モニタ カウンタの値を記録するには、Query および FreeTextSearch が使われます。このほかには、カウンタを記録する方法はありません。
 | DML:ダイレクト メール errors per second | 1 秒あたりにダイレクト メーラーが返したエラーの数です。
 | DML:ダイレクト メール jobs running | 現在実行中のダイレクト メーラー ジョブの総数です。
 | DML:Mail Messages sent/second | 1 秒あたりにすべてのダイレクト メーラー ジョブが送信したメール メッセージの数です。
 | DML:Total ダイレクト メール errors | すべてのダイレクト メーラー ジョブが返したエラーの総数です。
 | DML:Total messages sent | すべてのダイレクト メーラー ジョブが送信したメール メッセージの総数です。
 | EEE:Evaluations/second | 1 秒あたりに評価された式の数です。
 | EEE:Expression Cache Size | 現在式キャッシュにある式の総数です。
 | EEE:Property Cache Hits | サーバーが起動してからのプロパティ キャッシュ ヒットの総数です。
 | EEE:Property Reads | サーバーが起動してから式エバリュエータが読み取ったプロパティの総数です。
 | EEE:Property Reads/second | 1 秒あたりに式エバリュエータが読み取ったプロパティの総数です。
 | EEE:Result Cache Hits | サーバーが起動してからのキャッシュ ヒットの総数です。
 | EEE:Total Evaluation Errors | 返された評価エラーの総数です。
 | EEE:Total Evaluations | 成功した評価も失敗した評価も含め、サーバーが起動してから返された評価の総数です。
 | LRUCache:Cache size | キャッシュにあるエントリの総数です。キャッシュ サイズは、ユーザーが設定したサイズを 10% 上回る場合があり、その際にはフラッシュが発生し、キャッシュ サイズがプリセットされた上限に戻ります。LRUCache カウンタは、個々のキャッシュではなく、サイトごとにグループ化されています。
 | LRUCache:Flushes/sec | キャッシュに新しく追加された項目に対応するため、1 秒あたりにキャッシュからフラッシュされた項目の数です。LRU アルゴリズムによってフラッシュされた項目と手動でフラッシュされた項目を記録します。
 | LRUCache:Hits/sec | このキャッシュの 1 秒あたりのキャッシュ ヒットの数です。
 | LRUCache:Misses/sec | このキャッシュの 1 秒あたりのキャッシュ ミスヒットの数です。
 | Predictor:Total Model Loads | サービスが最後に再起動されてから読み込まれたモデルの数です。
 | Predictor:Client Avg Prediction Time | 予測が返されるために必要な平均経過時間です。
 | Predictor:Client Model Loads From File | 分析モデルがファイルから読み込まれた回数です。
 | Predictor:Total Client Predictions | 予測の総数です。
CS2000:パイプライン | Average execution time | 特定のパイプライン コンポーネントの平均実行時間をミリ秒で示します。
 | Errors total | 特定のパイプライン コンポーネント (PIPEERRORLEV_FAIL) が返したエラー レベル 3 のエラー、またはFAILED HRESULT の総数です。
 | Errors per second | 1 秒あたりに特定のパイプライン コンポーネントが生成したエラーの数です。
 | Execution total | 特定のパイプライン コンポーネントが実行された回数の合計です。
 | Executions per second | 1 秒あたりに特定のパイプライン コンポーネントが行った実行の数です。
 | Warning total | 特定のパイプライン コンポーネント (PIPEERRORLEV_FAIL) が返したエラー レベル 2 のエラーの総数です。
 | Warnings per/second | 1 秒あたりにパイプライン コンポーネントが返した警告の数です。

注

  • CS2000: データ ウェアハウス オブジェクトについては、DTS タスク、ユーザー、およびカタログなどのデータ グループをインポートする場合にのみ、データ ウェアハウス パフォーマンス カウンタが使用されます。このため、データ ウェアハウス パフォーマンス カウンタは、匿名サーバーとして設定する必要があります。

  • CS2000 パイプライン オブジェクトについては、パイプライン全体に対して各パイプラインのカウンタのインスタンスが 1 つずつ存在します。

AuthChecks Failed/sec

AuthChecks Failed/sec カウンタは、1 秒あたりに失敗した認証チェックの数です。このカウンタのレートは、IsAuthenticated() 関数が失敗するたびに増加します。この関数は、cookie に AuthTicket がない場合、または cookie の AuthTicket の期限が切れている場合に、失敗することがあります。

AuthFilter: Token-Cache-Size

Token-Cache-Size カウンタは、フィルタ キャッシュに格納されているユーザー トークンの数です。この数値は、Microsoft 管理コンソール (MMC) の SiteConfig オブジェクトで変更できます。サーバーに十分なランダム アクセス メモリ (RAM) があり、短期間にさまざまなユーザーが多数、頻繁にサイトを訪問する場合は、この数値を変更します。

Catalog Queries per Second

Catalog Queries per second カウンタは、サーバーに対する 1 秒あたりの CS2000: Marketing and Catalog オブジェクトによるクエリのレートです。これらのクエリには、すべてのカテゴリおよび商品関連のクエリと、フリー テキスト検索が含まれます。商品キャッシュまたは検索キャッシュを使ってパフォーマンスを向上させることで、商品カタログ システムに対するクエリを軽減できます。フリー テキスト検索は、Microsoft search>queries/sec カウンタでも追跡できます。

カタログ クエリ レートは、キャッシュされないレートです。このレートが高い場合は、LRUCache カウンタなどのローカル キャッシュ機能を利用するようにアプリケーション コードを変更する必要があります。

DML: ダイレクト メール Jobs Running

ダイレクト メール jobs running カウンタは、同時実行中のジョブ数を測定します。このサービスでは、同期の方法は指定されていません。同時実行ジョブを増やすと、スループットが増加する場合と増加しない場合があります。


予測リソースを監視する

パフォーマンス カウンタを使うと、予測リソースのパフォーマンスを監視できます。予測リソースには、4 つのパフォーマンス カウンタがあります。1 つ (Client Avg Prediction Time カウンタ) は、予測の発生速度を測定し、ほかの 3 つは、PredictorClient オブジェクトの特定の処理が呼び出される頻度を計測します。

予測リソースのパフォーマンス カウンタは、Web サーバーなど、PredictorClient オブジェクトが使用されているコンピュータでのみ利用できます。各カウンタは、サイトごとに集計されるため、1 つのサイトで複数の PredictorClient オブジェクトのインスタンスがアクティブになっている場合、カウンタの総数はサイト全体の合計になります。

次の表は、予測リソースで利用できるパフォーマンス カウンタの一覧を示します。

カウンタ | 説明
Client Avg Prediction Time | このカウンタは、予測が返されるまでにかかる平均時間を判断するために使います。PredictorClient を呼び出すたびにかかる予想時間がわかります。また、このカウンタは、Active Server Page (ASP) ページにタイミング コードを挿入せずに使用できます。 このカウンタのその他の用途として、(lMaxPredictions オブジェクトの値を増やして) 予測の要求を増やした場合、パフォーマンスにどのような影響が出るかのテスト、または、モデルの違いによる PredictorClient オブジェクトの Predict メソッドのパフォーマンスの比較があります。 このカウンタは、測定値をミリ秒で示します。
Client Model Loads From File | このカウンタは、LoadModelFromFile メソッドを使ってファイルから分析モデルが呼び出された回数を判断するために使います。
Total Client Model Loads | このカウンタは、LoadModelFromDB メソッドを使ってサーバーから分析モデルが呼び出された回数の合計を判断するために使います。
Total Client Predictions | このカウンタは、クライアントの予測の総数を判断するために使います。このカウンタは、PredictorClient オブジェクトに対する Predict メソッドが呼び出された回数を追跡するのに便利です。

関連項目

Commerce Server のパフォーマンス カウンタ

ハードウェア パフォーマンス カウンタ


Commerce Server の最適化

Web サイトで必要なレベルのインターネット トラフィックを処理できるように、Microsoft Commerce Server 2000 のシステム パフォーマンスを分析し、最適化します。システムを最適化するには、まず現在のシステムとトランザクションを分析し、通常時およびピーク時にサイトを同時に使用しているユーザー数を調べる必要があります。その後で、システムに調整を加えてパフォーマンスを最適化します。

ここでは、次のトピックについて説明します。

  • 現在のシステムを分析する システムを分析し、サイトのキャパシティを向上させる方法について説明します。

  • トランザクション コスト分析を使用する パフォーマンスを向上させるために、サイトのさまざまな種類の Web トランザクションのコストを測定する方法について説明します。

  • パフォーマンスを管理する Commerce Server のパフォーマンスをチューニングおよび最適化する方法について説明します。

  • パフォーマンスのトラブルシューティング Commerce Server の最適化ツールを使用中に発生する可能性のある一般的な問題を示します。また、Commerce Server のその他の部分の問題を解決するための参照情報も示します。

  • 最適化に関するその他の情報 Commerce Server を最適化するためのツールと、オンラインおよび印刷物の参照情報を示します。


現在のシステムを分析する

現在のシステムの構成を分析することによって、構成がシステム全体のパフォーマンスに及ぼしている影響をより明確に把握できるようになります。サイトの分析が終わったら、収集した情報を使ってサイトのすべての領域をチューニングし、拡張します。たとえば、構成の変更、ソフトウェアの動作方法の調整、ハードウェアの増強などを行います。

サイトのチューニングおよび拡張を行うと、現在の構成に変更が必要になる場合があります。構成の変更がパフォーマンスに与える影響を正確に判断するには、現在のシステムの構成を把握していなければなりません。システムの基準構成の分析では、評価に次の項目を含める必要があります。

  • ハードウェア ボード、周辺機器 (マウスやキーボードを除く)、およびネットワーク デバイスを含む、各コンピュータの構成の一覧表を作成します。各部品が論理的にどのように接続され、どのような役割を果たしているかを示すシステム構成図を作成します。たとえば、そのサーバーが Web サーバーかデータベース サーバーかを示します。次の図は、ハードウェア構成図の一例です。
Seagate ST32272A 2.2 GB ドライブ Seagate ST38422A 8.6 GB ドライブ
Seagate ST32272A 2.2 GB ドライブ Seagate ST38422A 8.6 GB ドライブ
LDAP サーバー 2 台
2 × PII 400、512 MB 100 MB NIC
Compaq
RAID Array 3000
SQL Server
4 × Xeon 400、512 MB 100 MB NIC
Seagate ST32272A
2.2 GB ドライブ
Web サーバー
2 × PII 400、512 MB 2 × 100 MB NIC
NLB
Windows 2000
インターネット
クライアント
NLB
NLB
100 Base T
T1 接続
Web サーバー
2 × PII 400、512 MB 2 × 100MB NIC

  • ソフトウェア 各コンピュータで使われているソフトウェア、およびそのソフトウェアがほかのコンピュータのソフトウェアと対話している方法を記述します。各コンピュータにインストールされているソフトウェアを文書化するときは、次の項目も含めます。
    • ビルド番号。

    • アプリケーション間の論理インターフェイス。たとえば、アプリケーションがデータベースのテーブルからデータを取得している場合は、その関係を記述します。

    • サービス パック。

    • ソフトウェアのインストール時に指定したセットアップ オプション。

    • 仮想メモリの構成などのシステムの設定。

    ソフトウェアの構成を記述することに加えて、ソフトウェア構成図も作成します。次の図は、ソフトウェア構成図の一例です。

NLB
ブラウズ用サーバー 3 台
Internet Explorer 5.5 Windows 2000
Commerce Server 2000
LDAP サーバー 2 台 Internet Explorer 5.5 Commerce Server 2000 Windows 2000
Windows 2000
SQL Server 2000
ショッピング処理サーバー 3 台
Internet Explorer 5.5
Windows 2000
Commerce Server 2000
Windows 2000
インターネット
クライアント
NLB
NLB
100 Base T
T1 接続

  • 構成内容 Commerce Server 2000 のインストール以降に、各種のサーバーに追加された構成内容を記述します。たとえば、Web サーバーおよびデータベース サーバーの各ファイルと、ファイルが格納されているディレクトリ構造を文書化する必要があります。また、ファイル システム、データベース スクリプト、構成ファイル、データ ファイル、その他の権限の設定などの情報も文書化する必要があります。

  • 負荷分散 ネットワーク負荷分散 (NLB) を使っている箇所を記述します。たとえば、NLB またはハードウェア負荷分散により、複数のサーバーでサイトを拡張している場合は、それを記述します。


トランザクション コスト分析を使用する

トランザクション コスト分析 (TCA) は、サイトのキャパシティを測定する方法です。TCA を使うと、トランザクションのパフォーマンス コスト、Web サイトで処理できるトラフィックの量、および各種のトランザクションをサイトで実行するためのコストを測定できます。TCA を使ってサイトのキャパシティを測定したら、その結果に基づいて各システム コンポーネントのキャパシティを向上させます。また、サーバー トランザクションを互いに比較することにより、システムに最も負荷をかけているトランザクションを判別できます。

TCA の "トランザクション" という言葉は、ユーザーの要求を満たすために 1 台または複数のサーバー (Web サーバー、中間層のサーバー、および SQL Server) が実行する処理を意味します。たとえば、データベースに格納されている商品説明ページに対するユーザーの要求はトランザクションです。また、ショッピング バスケットに項目を追加する要求もトランザクションです。金銭がやりとりされる電子商取引のトランザクションの意味ではありません。

トラフィックを分析する

利用状況プロファイルを作成する

サイトの処理能力を測定する

Web サイトのキャパシティを向上させる

中間層のキャパシティを向上させる

データベースのキャパシティを向上させる

トラフィックを分析する

現在のシステムを分析し、ハードウェアとソフトウェアの構成を文書化したら、通常、何人のユーザーがサイトを同時に使っているかを調べる必要があります。一般に、このデータは次のような方法で収集します。

  • 市場分析 新しいサイトの分析です。サイトの配置時および配置後に、サイトでどの程度の量のトラフィックが発生するかを予測するために、市場分析レポートの作成を依頼することがあります。このレポートを TCA の基準構成として使います。

  • サイトの利用状況分析 既存のサイトの分析です。Web サーバーのログ ファイルを分析し、ある特定の時間におけるサイトのヒット数を調べます。さらに、サイトの各部分の利用数が時の経過と共に増減したかどうかを示す利用傾向も調べます。サイトが現在サポートしている同時ユーザー数を計算するときは、通常時の使用量ではなく、ピーク時の使用量に基づいて計算を行うことに注意してください。

利用状況プロファイルを作成する

サイトを使っているユーザー数がわかったら、次に標準的なユーザーがシステムにどの程度の負荷をかけるかを推定するために、ユーザーによるサイトの利用方法を調べる必要があります。その当初の基準として使用する利用状況プロファイルを作成します。

利用状況プロファイルを作成するには、サイトの利用状況ログ ファイルを分析する必要があります。長期 (最低 1 週間) にわたって収集したログがある場合は、それを使って正確な平均値を得ることができます。最初に、ユーザーが実行できる操作を特定します (参照、検索など)。次に、以下のデータを収集します。

  • サイトを利用するユーザー数

  • 各ページに対するヒット数 (どのページが訪問されているか)

  • 各ページで費やした時間

  • セッションの長さ

  • 利用状況がピークに達する期間

各ページに対する訪問数を使って、サイトにおける標準的なユーザー操作のプロファイルを作成できます。次の表は、ある電子商取引商店における標準的な買物客の操作を表す利用状況プロファイルです。

買物客の操作 | セッションあたりの操作数 | 1 秒あたりの操作数 (トランザクション頻度) | 操作全体に対する割合
[項目の追加] | 0.24 | 0.00033 | 2.00
[項目の追加] + [支払い] | 0.02 | 0.00003 | 0.17
[項目の追加] + [削除] | 0.04 | 0.00006 | 0.33
[バスケット] | 0.75 | 0.00104 | 6.25
既定 (ホーム ページ) | 1.00 | 0.00139 | 8.33
[一覧表示] | 2.50 | 0.00347 | 20.83
[照会] | 0.75 | 0.00104 | 6.25
[新規] | 0.25 | 0.00035 | 2.08
[商品] | 4.20 | 0.000583 | 35.00
[検索] | 1.25 | 0.00174 | 10.42
[ようこそ] | 1.00 | 0.00139 | 8.33

サイトのキャパシティを測定する

次の表は、サイトのキャパシティを測定するときに考慮する必要があるサーバーの 3 つの層を示します。

層 | サーバーの種類
上位層 | Web サーバー
中間層 | ビジネス サーバーやその他のアプリケーション サーバー、コンテンツ サーバー
下位層 | データベース サーバー

Web サイトのキャパシティを向上させる

システムのキャパシティを測定すると、現在のシステムでは、Web サイトで発生しているトラフィックの量を処理できないことが判明する場合があります。また、新しいマーケティング構想や、新学期、クリスマスなど季節的な需要によって、トラフィックの急増が懸念される場合もあります。

パフォーマンスの低下を防ぐには、Web サーバーで予想されるトラフィック レベルをテストして、その負荷に対処するために、サーバーのどの部分を拡張すべきかを正確に判断する必要があります。(キャパシティの問題が特定の層に切り分けられているのであれば、追加すべきサーバーの台数を決める計算が有効な場合があります。)システム モニタを使うと、さまざまなサーバー オブジェクトのカウンタ値を監視できます。Commerce Server の特定のパフォーマンス カウンタを使って、現在のビジネスにとって重要なサーバー オブジェクトを表示できます。システム モニタの詳細については、Windows 2000 Server のヘルプを参照してください。

キャパシティを向上させるには、どのリソースが不足しているかを調べる必要があります。正確な TCA を実行することも、キャパシティの向上に役立ちます。メモリ、CPU、またはネットワークのキャパシティを向上させることによって、Web サーバーを垂直方向に拡張できます。Web サーバーのキャパシティを向上させるもう 1 つの方法は、負荷分散クラスタにサーバーを追加することです。ただし、特定のコンポーネントの拡張を決定する前に、Web ファーム全体のキャパシティを十分に理解しておくことがきわめて重要です。

関連項目

トランザクション コスト分析を使用する

Commerce Server のパフォーマンス カウンタ

中間層のキャパシティを向上させる

中間層のサーバーは、アプリケーションの実行やコンテンツの格納など、さまざまな用途に使われます。中間層のパフォーマンスを評価するには、次のパフォーマンス カウンタを監視する必要があります。

  • メモリ

  • システム

  • 物理ディスク

これらのカウンタの値が不十分な場合は、この層を拡張する必要があります。たとえば、Bytes Received/sec カウンタを監視しているときは、このカウンタをネットワーク アダプタ カードの総帯域幅と比較して、ネットワーク接続がボトルネックを引き起こしていないかどうかを調べます。訪問者のトラフィックの急激な増加に備えて、値が現在のキャパシティの 50% を超えないようにすることをお勧めします。この数値が接続キャパシティにきわめて近く、プロセッサやメモリがさほど使用されていない場合は、接続に問題があると考えられます。

ネットワーク負荷分散 (NLB) は、TCP/IP ネットワーク プロトコルを使ってサーバー プログラムを実行している複数のコンピュータをまとめます。NLB をターミナル サーバーのグループと組み合わせて使用し、クライアントの要求を複数のサーバー間で分散することにより、1 つのターミナル サーバーのパフォーマンスを拡張できます。ただし、負荷分散をターミナル サーバーと組み合わせて使う場合は制限があります。これは、個々のユーザーがグループ内の別のターミナル サーバーに接続できるようにしないと、別のターミナル サーバーに振り分けられたときに、ユーザーのセッションが切断される可能性があるからです。ターミナル サービスを負荷分散と組み合わせて使う場合は、ユーザーがユーザー情報と各種設定情報に確実にアクセスできるようにしておく必要があります。

また、この層で使用されている技術に固有のパフォーマンスの問題を解説したマニュアルを参考に、中間層のキャパシティを向上させる方法を見つけることもできます。たとえば、Windows 2000 Server のヘルプには、ネットワーク負荷分散 (NLB) を使って追加のサーバーへのアクセスを可能にし、キャパシティを向上させる方法が記載されています。

NLB の詳細については、Windows 2000 Server のヘルプの「ネットワーク負荷分散とターミナル サービス」および「コンポーネント サービスを使用する」を参照してください。

データベースのキャパシティを向上させる

データベースのキャパシティを向上させるには、まず次のパフォーマンス カウンタを監視する必要があります。

  • メモリ

  • システム

  • 物理ディスク

  • SQL Server

これらのカウンタを監視すると、メモリ、物理ディスクの容量、またはサーバーを追加する必要があるかどうかがより明確にわかります。データベースのキャパシティは、新しいサーバーを追加することによって向上します。新しいサーバーを追加する方が、データベース サーバーを共有しているアプリケーションを新しいサーバーに移動するよりも簡単です。ただし、キャパシティの向上が、必ずしもサーバーの追加だけで済むとは限りません。データベース拡張のガイドラインについては、データベース アプリケーションのマニュアルを確認してください。


パフォーマンスを管理する

Commerce Server 2000 サイトのパフォーマンスの管理は、主としてボトルネックの検出と除去から成ります。ボトルネックとは、最大限度のキャパシティで動作しているハードウェアまたはソフトウェアです。負荷がキャパシティの限度に近づくにつれて、ボトルネックがシステムの処理の流れを制限し始めます。パフォーマンス ツールを使うと、どのハードウェアまたはソフトウェアがボトルネックに達しているかを調べることができます。そして、ハードウエアを拡張したり、構成を変更したり、ソフトウェアをチューニングしたりして、全体のパフォーマンスを向上させることができます。

パフォーマンスは、Commerce Server サイトの最適化における 1 つの要素にすぎません。ほかにも、開発と保守の容易さ、導入までの時間、優れたプログラミング ツールの利用のしやすさ、社内のサイト開発者の技術力などの重要な要素があります。パフォーマンスの最適化は、このいずれの要素にも影響を及ぼす可能性があります。

Web の開発は、優先順位を決めるビジネス案件によって左右されます。たとえば、プロジェクトの目標に合わせて特定のプログラミング言語やデータ アクセス技術が指定されることがあり、そうした決定は常にパフォーマンスにある程度の影響を及ぼします。Web サイトに適した "必要な" レベルのパフォーマンスを決定してから、サイトを開発し、そのレベルのパフォーマンスになるように管理することがきわめて重要です。

Web サイトはしばしば、個別のハードウェア、システム ソフトウェア、およびアプリケーション ソフトウェアから成る複数の物理層で実行されます。このため、Web アプリケーションはさまざまな種類のパフォーマンス上の問題を抱えることがあります。たとえば、ハードウェア (クライアント コンピュータ、Web サーバー、データベース サーバー、ネットワーク)、システム ソフトウェア (オペレーティング システム、ネットワーク ソフトウェア、システム サービス)、クライアント アプリケーション、ブラウザ、論理データベース、物理データベース、データ アクセスなどの問題が挙げられます。

パフォーマンス チューニングの目標を決定する際は、次の項目を検討します。

  • このサイトのパフォーマンスは現在および将来の目標にかなっているか?

  • 現在の構成がボトルネックになると予想されるか?

  • サイトでサポートできるユーザーの数は?

指定されたパフォーマンスの目標をサイトが満たしているかどうかを確認する唯一の方法は、パフォーマンスを定期的に監視することです。パフォーマンスを定期的に監視することで、変更によるパフォーマンスの低下を早期に検出できます。パフォーマンス データを収集するには、既存のシステム ツールを使うか、サイト モニタからパフォーマンスのレポートを受け取るか、またはシステムを操作する特殊なクライアント アプリケーションを構築します。

パフォーマンスをチューニングするときは、まずシステム パフォーマンスを測定し、目標が満たされているかどうかを確認します。パフォーマンスが目標を満たしていない場合は、ボトルネックを検出し、それを除去してから、パフォーマンスの目標に到達するまで作業を繰り返します。パフォーマンスをさらに向上させることは常に可能ですが、サイトのパフォーマンスが目標を満たしているときに、さらにチューニングを行っても、一般にそのコストに見合うだけの効果は得られません。

ここでは、次のトピックについて説明します。

  • システムをチューニングする

  • ログを監視および管理する

  • パフォーマンス カウンタを監視する

関連項目

Commerce Server サイトの監視


システムをチューニングする

Web サイトの管理では、最大限のパフォーマンスを発揮するようにシステムをチューニングしておく必要があります。コンピュータ システムができる限り効率的に動作するように、使用中の技術に関する最新のチューニング ガイドラインを定期的に確認してください。


ログを監視および管理する

システム ログを定期的に監視することによって、突発的な障害を回避し、予想外のサーバー活動の増加に備えることができます。

  • 1 日に最低 2 回、イベント ビューアを使ってイベント活動を確認し、異常があれば関係者に連絡します。

  • 週に最低 1 回、インターネット インフォメーション サービス (IIS) 5.0 のログを分析し、ユーザーのアクセス傾向に変化があるかどうかを調べます。Web サイトへのトラフィックがシステムの限度内にあることを確認します。傾向分析に基づいて、Web ページや商品提供の再構成が必要になることもあります。

  • データベース ログは定期的にバックアップし、整理します。データベース ログを削除する前に、テープ ドライブなどの外部バックアップ デバイスにコピーします。

  • Keynote Systems などの外部の分析機関の協力を得て、リモートのさまざまな場所からサイトのページ表示の待ち時間を監視します。

関連項目

Commerce Server サイトの監視

システム モニタ

イベント ビューア スナップインを使う


パフォーマンス カウンタを監視する

パフォーマンス カウンタを使うと、システムで実行されている処理の特定の側面を監視できます。システム モニタでは、カウンタがオブジェクトの種類ごとにグループ化されます。Commerce Server プロセス、メモリ、キャッシュ、ハード ディスク、および統計情報を生成するオブジェクトごとに、固有のカウンタが存在します。Commerce Server のパフォーマンス カウンタの詳細、およびその使い方については、「Commerce Server サイトの監視」を参照してください。システム モニタの詳細については、Windows 2000 Server のヘルプを参照してください。

関連項目

Commerce Server サイトの監視

ハードウェア パフォーマンス カウンタ

Commerce Server のパフォーマンス カウンタ

パフォーマンス カウンタを設定する


パフォーマンスのトラブルシューティング

ここでは、Commerce Server で発生した問題を解決し、システムのパフォーマンスを向上させる方法について説明します。

ここでは、次のトピックについて説明します。

  • 不要なアプリケーションを停止する

  • 運用サーバーを監視する

  • 一貫性のあるサーバー構成を使用する

  • テストを行う際のヒント

  • Site Server から移行する

  • Windows 2000 サーバーをチューニングする

  • 特定のパフォーマンスの問題を検出する

  • メモリを使用する

  • 主要なパフォーマンス カウンタを監視する

  • 匿名プロファイリングを無効にする

  • IIS の [パフォーマンス] タブの設定を変更する

  • デバッグ追跡メッセージを無効にする


不要なアプリケーションを停止する

サーバーの主要な機能の実行に必要のないアプリケーションはインストールしないでください。たとえアプリケーションを一時的にインストールして、その後アンインストールしても、互換性のないダイナミック リンク ライブラリ (DLL) がサーバー上に存在すると問題が起きることがあります。必要のないアプリケーションはすべて停止してください。


運用サーバーを監視する

Web ファームにある運用サーバーの監視には、ランタイム サービスに属さない独立したサーバーを使うことをお勧めします。監視用のプロセスが運用サーバーのパフォーマンスや処理に影響を及ぼすことがないように、運用サーバーは独立したサーバーから監視することが大切です。独立したサーバーを使うことで、運用サーバの真のパフォーマンスをより正確に測定できます。

さらに、ユーザー トラフィックの監視は、実際のデータ処理のトラフィックを扱うネットワークとは別の、独立した管理用のネットワークで行います。システム モニタやその他の監視ツールは、このプロセスで多くのサーバーからのデータを 1 つのまとまったビューに集約できます。また、この情報をログに記録するために必要となる、Web サーバーとデータベース サーバーのディスク入出力 (I/O) も減少します。


一貫性のあるサーバー構成を使用する

同じ機能を実行するサーバーは、同じソフトウェア構成になるようにします。たとえば、Web サーバーはすべて同じソフトウェア構成になるようにします (ただし、必ずしもデータベース サーバーと同じ構成ではありません)。ソフトウェア構成を同じにすると、次のような利点があります。

  • パフォーマンスが等しくなり、予測可能になります (ハードウェアも同等と仮定した場合)。

  • ソフトウェアのアップグレードが容易になります。

  • 1 台のサーバーでパフォーマンスが向上すれば、同じ方法ですべてのサーバーのパフォーマンスが向上します。


テストを行う際のヒント

パフォーマンスを向上させる目的で運用サイトに変更を加える場合は、必ず運用環境と同じ構成のテスト環境上でテストを実施してください。モジュール テストや開発システムでのテストを行っても、通常時およびピーク時のトラフィックの下で完全な構成をテストしたときと同じ結果は得られません。完全なテストを行わずに、運用環境を変更しないでください。次に、テストを行う際の基本的なガイドラインを示します。

  • 各 Web ページをテストして、コンテンツが正しいこと、リンクが機能すること、必要な結果が返されること、およびパフォーマンスが予想どおりであることを確認します。

  • ピーク時のトラフィック条件でシステムをテストし、システムが受ける最大量のトラフィックを処理できることを確認します。Microsoft Web Application Stress (WAS) やシステム モニタなどのツールを活用します。

  • 通常時のトラフィックの下で最も複雑な Web ページを呼び出し、同時にリモートからさまざまな速度の接続を使って Web サイトにアクセスして、応答時間を検証します。


Site Server から移行する

使用中の Web サイトが Site Server 3.0 Commerce Edition (SSCE) に基づいている場合は、アプリケーションの移行方法を計画する必要があります。Site Server 3.0 Commerce Edition Service Pack 4 を使うと、Site Server を Microsoft Windows 2000 プラットフォーム上で動作させることができます。

移行の準備を適切に行う方法については、「Site Server 3.0 からの移行」を参照してください。


Windows 2000 サーバーをチューニングする

Microsoft Windows 2000 サーバーをチューニングするには、次の調整を行います。

  • チャット サービス、電子掲示板システムなどの追加コンポーネントや、その他の不要なコンポーネントがインストールされている場合は、ソフトウェアのアンインストール手順に従ってアンインストールします。

  • フォアグラウンド プログラムとバックグラウンド プログラムのパフォーマンスを変更します。詳細については、この後の「パフォーマンスをバックグラウンド サービスに変更するには」の手順を参照してください。

  • ネットワーク アプリケーションのスループットを最大にします。詳細については、この後の「ネットワーク アプリケーションのスループットを最大にするには」の手順を参照してください。

パフォーマンスをバックグラウンド サービスに変更するには

  1. Windows 2000 のデスクトップで、[マイ コンピュータ] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [詳細] タブをクリックし、次に [パフォーマンス オプション] をクリックします。

  3. [アプリケーションの応答] で、[バックグラウンド サービス] をクリックします。

  4. [OK] をクリックし、もう一度 [OK] をクリックします。

ネットワーク アプリケーションのスループットを最大にするには

  1. Windows 2000 のデスクトップで、[マイ ネットワーク] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [ローカル エリア接続] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [チェック マークがオンになっているコンポーネントがこの接続で使用されています] ボックスで、[Microsoft ネットワーク用ファイルとプリンタ共有] を選択します。

  4. [プロパティ] をクリックし、[ネットワーク アプリケーションのデータ スループットを最大にする] を選択します。

  5. [OK] をクリックし、もう一度 [OK] をクリックします。

また、次の点も考慮してください。

  • Commerce Server 2000 と Active Server Pages (ASP) は、CPU リソースを使い果たす傾向があります。

  • SQL Server は、メモリ リソースまたはディスク リソースを最初に使い果たす傾向があります。

  • ハイパーテキスト転送プロトコル (HTTP) は、ほかよりもネットワーク リソースを多く使います。


特定のパフォーマンスの問題を検出する

システム スループットの問題は、一般にリソースへの要求が供給を上回ると発生します。パフォーマンスの問題の切り分けは、まずユーザー、Commerce Server 2000、およびオペレーティング システムが、各リソースとどのように対話しているかを調べることから始めます。さまざまなアプリケーションのメモリの使い方を調べることで、システムに関する多くの情報を得ることができます。

この作業を始めるには、Web サイト アーキテクチャの計画段階で、同時ユーザーの詳細な成功基準を生成します。以前の経験やユーザー分析に基づいて、標準的なユーザー訪問の利用状況プロファイルを決定します。このデータから、ページごとのダウンロード サイズ、スループット、および待ち時間の目標が得られます。

サイト開発者は、Microsoft Web Application Stress (WAS) ツールなどの負荷シミュレーション ツールを使って、自分が作成する ASP ページをテストし、その結果を目標に近づけます。ページが 1 台のサーバー構成の目標を達成したら、データ センターの構成により近い分散サーバーのテストのための段階的な目標を計画します。特に、別々のコンピュータに配置されたクライアント シミュレータ、Web サーバー、およびバックエンド システムが必要です。データ センターで Web サーバーとバックエンド システムが対称型多重処理 (SMP) サーバーとして配置される場合は、同じように構成する必要があります。

次に、ページ要求の待ち時間を減らすように努めます。パフォーマンスの向上のために最初に着目すべき項目は、SQL Server に対する要求です。Microsoft SQL Server 2000 に付属する SQL Server プロファイラ ツールには、データベースのチューニングにインデックスを推奨するウィザードがあります。このツールは、頻繁なページ操作のテストに非常に役立ちます。Microsoft Active Directory サーバーを使っている場合は、その利用状況の監視も必要になることがあります。Active Directory サーバーの NTDS オブジェクトのパフォーマンス カウンタは、このサーバー コンポーネントの使い方を定義するのに役立ちます。

データがどのようにアクセスされているかを把握したら、ページ ロジックを調査します。Active Server Pages (ASP) のプログラミングに固有のさまざまなチューニングのヒントが存在します。それらの手順に適切に従うことで、各 ASP ページのスループットを大幅に向上させることができます。

データの呼び出しが多すぎるために、ページの待ち時間が非常に長い場合は、Commerce Server の LRUCache オブジェクトを利用できます。このオブジェクトは、表示された HTML フラグメントを保持し、バックエンド サーバーへのクエリをなくすことで、時間のかかるデータの呼び出しを減少させます。

最後に、パフォーマンスとスループットを微調整するために、インターネット インフォメーション サービス (IIS) 5.0 と Microsoft Windows 2000 の中のレジストリ設定をチューニングしてみます。これらの変更を行っても、サイト コードのアルゴリズムやアクセス方法を変更するほどの効果はないことに注意してください。たとえば、IIS の [パフォーマンス] タブの設定を [100,000 件以上] に変更し、ASP デバッグが有効でないことを確認することで、IIS サーバーのパフォーマンスをチューニングできます。

関連項目

IIS の [パフォーマンス] タブの設定を変更する

Commerce Server のパフォーマンス カウンタ

その他のパフォーマンス モニタ


メモリを使用する

メモリ使用量は、おそらくシステム パフォーマンスの最も重要な要素です。メモリ要求が供給を上回ると、Microsoft Windows 2000 Server はページと呼ばれるコードとデータのかたまりをランダム アクセス メモリ (RAM) からディスクに移動して、プロセスのための領域を解放します。ページングによって Windows 2000 Server は実際の物理メモリ (RAM) の容量よりも多くのメモリを使用できるので、ある程度のページングは容認できます。ただし、常にページングが発生している状態では、システムのパフォーマンスが低下します。

Windows 2000 Server を起動すると、システムにページング ファイル (Pagefile.sys) が自動的に作成されます。Windows 2000 Server はページング ファイルを使って仮想メモリを提供します。ページング ファイルの推奨サイズは、システムで利用できる RAM の容量に 12 MB を加えたサイズです。ただし、ファイルのサイズは、ファイルの作成時にハード ディスクで利用できる空き容量にも左右されます。


主要なパフォーマンス カウンタを監視する

ピーク時に主要なパフォーマンス カウンタを監視することで、システムのボトルネックを検出できます。監視すべき Commerce Server のパフォーマンス カウンタについては、「Commerce Server のパフォーマンス カウンタ」を参照してください。

関連項目

パフォーマンス カウンタを設定する


匿名プロファイリングを無効にする

Commerce Server 2000 では、ゲスト ユーザーのプロファイリングを簡単に行うことができます。ただし、非常に規模の大きい Web サイトですべてのゲスト ユーザーを追跡した場合、コストが高くなる可能性があります。この機能を実装する前に、cookie と一意のインスタンスをデータベースおよび Microsoft Active Directory サーバーに作成することによって得られる利点を慎重に検討してください。この機能によって得られる利点の多くは、Commerce Server のレポートをより綿密に分析することで実現できます。

関連項目

Commerce Server のレポート


IIS の [パフォーマンス] タブの設定を変更する

Microsoft インターネット インフォメーション サービス (IIS) 5.0 の [パフォーマンス] タブの設定を変更し、パフォーマンスを向上させることができます。

IIS の [パフォーマンス] タブの設定を変更するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [管理ツール] をポイントし、[インターネット サービス マネージャ] をクリックします。

  2. [インターネット インフォメーション サービス] 画面で、ノードを「インターネット インフォメーション サービス/<サーバー名>/既定の Web サイト」というパスまで展開します。

  3. [既定の Web サイト] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  4. [パフォーマンス] タブをクリックします。

  5. [パフォーマンス チューニング] スライダを右側の [100,000 件以上] に移動し、[OK] をクリックします。


デバッグ追跡メッセージを無効にする

パフォーマンスを向上させるためにできる 1 つの簡単な変更は、運用システムでデバッグ追跡メッセージを無効にすることです。追跡を実行すると、場合によってはスループットが 10% ～ 15% 低下することがあります。

デバッグ追跡メッセージを無効にするには

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスの [名前] ボックスに「Regtrace.exe」と入力し、[OK] をクリックします。

  3. [Trace Settings] ダイアログ ボックスの [Traces] タブを選択します。追跡のすべてのレベルのチェック ボックスをオフにして、[OK] をクリックします。

注

  • [Output] タブの [No Tracing] を選択するだけでは不十分です。最初に、すべての追跡レベルのチェック ボックスをオフにする必要があります。

関連項目

デバッガで regtrace.exe を使う

パフォーマンス最適化ツール


最適化に関するその他の情報

Commerce Server 2000 サイトのパフォーマンスとキャパシティを最適化するのに役立つ参照情報がほかにも用意されています。

ここでは、次のトピックについて説明します。

  • パフォーマンス最適化ツール

  • Web ベースの情報


パフォーマンス最適化ツール

Microsoft では、パフォーマンスをチューニングおよびテストするためのさまざまなツールを提供しています。いくつかのツールは、Microsoft Windows 2000 およびインターネット インフォメーション サービス (IIS) 5.0 に組み込まれています。また、Microsoft の Web サイト (http://www.microsoft.com/japan/ (日本語版) または http://www.microsoft.com/ (英語版)) から入手できるツールもあります。たとえば、システム モニタ (旧パフォーマンス モニタ) は Windows 2000 に組み込まれ、サーバー パフォーマンスにかかわる要素をくまなく監視するために不可欠です。

ここでは、パフォーマンス最適化ツールの簡単な説明と、その入手先を示します。

  • Microsoft Web Application Stress ツール 複数のブラウザによる Web アプリケーションへのページ要求を忠実に再現するために、Web テスターが開発したシミュレーション ツールです。Microsoft は、Web サーバー テストの複雑な側面の一部を隠蔽することで、使いやすいツールを開発しました。したがって、このツールは、Web サイトのパフォーマンス データの収集に関心があるすべてのユーザーに役立ちます。このツールは、長年にわたって開発された多数の優れた機能と、いくつかの新機能を統合したものです。現在のバージョンでは、Microsoft Windows 2000 で実行される、3 層のパーソナライズされた Active Server Pages (ASP) Web サイトのストレス テストに最も必要な機能が提供されています。

    WAS をダウンロードするには、http://webtool.rte.microsoft.com にアクセスしてください。

  • ネットワーク モニタ ネットワーク トラフィックをキャプチャして表示および分析するためのツールです。ネットワーク モニタを使うと、以前にキャプチャしたデータをユーザー定義の方法で分析したり、定義済みのプロトコル パーサーからデータを抽出したり、ネットワーク上のリアルタイム トラフィックを分析したりすることができます。ネットワーク モニタは、ブラウザ、Web サーバー、および SQL Server 間のパケットのキャプチャに役立つツールです。有用なタイミング情報に加えて、パケット サイズ、ネットワーク利用率など、システム パフォーマンスの管理に役立つ多くの統計情報を得ることができます。

  • SQL Server プロファイラ SQL Server のイベントをサーバーからキャプチャするツールです。イベントはトレース ファイルに保存され、これを分析するか、または後で問題を診断しようとする際に特定の連続した手順を再現するために使用できます。SQL Server プロファイラを使うと、次のようなことができます。
    • 問題のクエリを順を追って実行し、問題の原因を見つける。

    • 実行の遅いクエリを見つけて診断する。

    • 問題を引き起こしている一連の SQL ステートメントをキャプチャする。保存された追跡結果を使って、問題を診断できるテスト サーバーで問題を再現できます。

    • SQL Server のパフォーマンスを監視し、ワークロードをチューニングする。
  • システム モニタ ハードウェア リソースの使われ方とシステム サービスの利用状況に関する広範なデータの収集および表示に利用できるツールです。システム モニタを使うと、次のようなことができます。
    • ローカル コンピュータまたは複数のリモート コンピュータからリアルタイムのパフォーマンス データを収集し、表示する。

    • 現在収集されているか、または以前に収集されたカウンタ ログのデータを表示する。

    • 印刷可能なグラフ、ヒストグラム、またはレポート ビューでデータを表示する。

    • オートメーションを使って、システム モニタの機能を Microsoft Word やその他の Microsoft Office 製品のアプリケーションに組み込む。

    • パフォーマンス ビューから HTML ページを作成する。

    • Microsoft 管理コンソール (MMC) を使ってほかのコンピュータにインストールできる、再利用可能なモニタの設定を作成する。
  • Visual Studio Analyzer 分散アプリケーションのパフォーマンスの分析、障害原因の切り分け、および構造の把握に利用できるツールです。Visual Studio Analyzer は、Visual Studio ツールで構築したアプリケーションおよびシステムで使用できます。Component Object Model (COM)、Microsoft Active X Data Objects (ADO)、および COM+ などのいくつかの Microsoft 技術は、Visual Studio Analyzer に情報を提供できる機能を備えています。アプリケーションがこれらのいずれかの技術を使っている場合は、Visual Studio Analyzer でこの使用に関する詳細な情報を取得できます。また、Visual Studio Analyzer に情報を提供するようにアプリケーションをカスタマイズできます。

  • プロセスとスレッドの状態 (Pstat.exe) 実行中のすべてのプロセスとスレッドの状態を表示するツールです。

  • プロセス ツリー (Ptree.exe) ローカル コンピュータまたはリモート コンピュータのプロセス継承ツリーを照会し、プロセスを削除できるツールです。

  • HTTP 監視ツール サーバーの HTTP の活動を監視し、活動量に変化があった場合に通知する機能を備えたツールです。

  • NetStat サーバーの現在のネットワーク接続に関する情報を検出するコマンド ライン ツールです。

関連項目

Commerce Server のパフォーマンス カウンタ

パフォーマンス カウンタを設定する


Web ベースの情報

次の表は、Commerce Server 2000 サイトのパフォーマンスとキャパシティの最適化に役立つ、Web で入手できる文書を示します。

タイトル | 説明
Microsoft Developer Network (MSDN) | Commerce Server 2000 およびその他の Microsoft .NET Enterprise Servers に関する情報が含まれています。このサイトには定期的にアクセスすることをお勧めします。関連文書およびホワイト ペーパーを検索するには、[このサイトの検索] ボックスに「Commerce Server 2000」と入力します。 www.microsoft.com/japan/developer
Commerce Server Software Development Kit (SDK) | Commerce Server アプリケーション プログラミング インターフェイス (API) との統合が必要なプログラムやインテリジェントな Web ページを作成する開発者向けの技術情報が含まれています。SDK にはプログラマ向けのガイドと、Commerce Server および電子商取引のさまざまな技術のリファレンスが含まれています。また、独自のプログラムの作成に利用できるサンプル ファイルやヘッダー ファイルも含まれています。
TechNet | 電子商取引 Web サイトの計画、開発、配置、および管理に役立つ技術情報とツールが含まれています。 Commerce Server については、画面の左側にある [製品別技術情報] メニューの [Commerce Server] をクリックし、表示される情報を参照してください。 www.microsoft.com/japan/technet/
ニュースグループ | 対等に対話できるニュースグループを使って、ほかの管理者や開発者、および Microsoft Most Valuable Professionals (MVP) の人々と Commerce Server について話し合うことができます。Microsoft では、これらのニュースグループやサイトの内容を管理もサポートもしていません。 www.microsoft.com/japan/support/news/newsg.htm
Microsoft 製品サポート サービス | Commerce Server で利用できるサポート オプションの一覧です。 www.microsoft.com/japan/support/
Microsoft Servers サイト | IT プロフェッショナル、開発者、およびインターネット プロフェッショナル向けの、Microsoft のサーバー製品全体をカバーするガイドです。 www.microsoft.com/japan/servers/U>


ユーザー インターフェイスのリファレンス

ここでは、Commerce Server マネージャで利用可能なリソース、および Commerce Server サイト パッケージャに関する、状況依存のヘルプ トピックについて説明します。これらのトピックは、[Commerce Server マネージャ] ダイアログ ボックスで F1 キーを押すか、[ヘルプ] をクリックすると表示できます。

ここでは、次のトピックについて説明します。

  • データ ウェアハウスの UI ヘルプ データ ウェアハウスのダイアログ ボックスのヘルプについて説明しています。

  • DTS タスク UI のヘルプ Commerce Server DTS タスクのダイアログ ボックスのヘルプについて説明しています。

  • 予測リソース UI のヘルプ 予測リソースのダイアログ ボックスのヘルプについて説明しています。

  • プロファイル リソース UI のヘルプ プロファイル リソースのダイアログ ボックスのヘルプについて説明しています。

  • サイト パッケージャのダイアログ ボックスのヘルプ Commerce Server サイト パッケージャのダイアログ ボックスのヘルプについて説明しています。


データ ウェアハウスの UI ヘルプ

ここでは、Commerce Server データ ウェアハウス リソースに関する、状況依存のヘルプ トピックについて説明します。これらのトピックをデータ ウェアハウス リソースのユーザー インターフェイスから参照するには、データ ウェアハウス リソースの各ダイアログ ボックスの [ヘルプ] をクリックします。

ここでは、次のトピックについて説明します。

  • [データ ウェアハウスのプロパティ] - [接続] タブ

  • [データ ウェアハウスのプロパティ] - [時刻] タブ


[データ ウェアハウスのプロパティ] - [接続] タブ

次の表は、[データ ウェアハウスのプロパティ] ダイアログ ボックスの [接続] タブで利用できるオプションとその機能を示します。

項目 | 操作
[ユーザー ID] | ログオンする際の認証に使うユーザー ID を入力します。
[パスワード] | ログオンする際の認証に使うパスワードを入力します。
[サーバー] | 接続されているサーバーの名前を表示します。
[データベース] | 接続されているデータベースの名前を表示します。
[OLAP Server のプロパティ: サーバー] | 接続されている OLAP サーバーの名前を表示します。
[OLAP Server のプロパティ: データベース] | 接続されている OLAP データベースの名前を表示します。

関連項目

データ ウェアハウス リソースを構成する


[データ ウェアハウスのプロパティ] - [時刻] タブ

次の表は、[データ ウェアハウスのプロパティ] ダイアログ ボックスの [時刻] タブで利用できるオプションとその機能を示します。

項目 | 操作
[適用するタイム ゾーン] | ドロップダウン リストからタイム ゾーンを選択します。
[開始する曜日] | ドロップダウン リストから開始する曜日を選択します。

関連項目

データ ウェアハウス リソースを構成する


DTS タスク UI のヘルプ

ここでは、Commerce Server データ変換サービス (DTS) タスクに関する、状況依存のヘルプ トピックについて説明します。ヘルプ トピックを表示するには、Commerce Server DTS タスクのダイアログ ボックスで、[ヘルプ] をクリックします。

ここでは、次のトピックについて説明します。

  • [Web サーバー ログのインポート]

  • [詳細 Web ログ インポートのプロパティ] - [除外] タブ

  • 除外

  • [詳細 Web ログ インポートのプロパティ] - [推論] タブ

  • [詳細 Web ログ インポートのプロパティ] - [クエリ文字列] タブ

  • クエリ文字列

  • [詳細 Web ログ インポートのプロパティ] - [既定のファイル] タブ

  • [詳細 Web ログ インポートのプロパティ] - [ログ ファイル] タブ

  • [カタログ インポート プロパティ]

  • [トランザクション インポート プロパティ] - [全般] タブ

  • [タスクの削除]

  • [IP 解決 DTS プロパティ]

  • [キャンペーン インポート プロパティ]

  • [ユーザー インポート プロパティ]

  • [DW プロパティの同期]

  • [レポートの準備のプロパティ]

  • [Web サーバー ログ ファイル]


[Web サーバー ログのインポート]

次の表は、[Web サーバー ログのインポート] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | インポート タスクの説明を入力します。
[サイト名] | インポートする Web サーバー ログを含む Web サイトをドロップダウン リストから選択します。
[アプリケーション] | ログ ファイルの一覧をアプリケーションによって並べ替えるときにクリックします。
[マシン] | ログ ファイルの一覧をコンピュータによって並べ替えるときにクリックします。
[IIS Web サイト] | ログ ファイルの一覧を IIS Web サイトによって並べ替えるときにクリックします。
[ログ ファイル パス] | ログ ファイルの一覧をログ ファイルのパスによって並べ替えるときにクリックします。
[ログ ファイル パス] | インポートする Web ログ ファイルのパスを入力するか、省略記号 [...] ボタンをクリックしてログ ファイルのパスを参照します。
[ログ ファイルの表示] | [Web サーバー ログ ファイル] ダイアログ ボックスを開くときにクリックします。[Web サーバー ログ ファイル] ボックスの一覧から、インポートする Web ログ ファイルを選択します。[OK] をクリックすると [Web サーバー ログのインポート] ダイアログ ボックスに戻ります。
[前回以降のすべてのログ ファイルのインポート] | 前回インポートが行われた後に作成されたログ ファイルをすべて指定するときに選択します。
[日付/時刻の期間を指定したログ ファイルのインポート] | [開始日/時刻] から [終了日/時刻] までの間に作成されたログ ファイルのみをインポートするように指定するときに選択します。
[開始日/時刻] | ログ ファイルをインポートする範囲の最初の日付と時刻を入力します。このオプションは、[日付/時刻の期間を指定したログ ファイルのインポート] を選択した場合にのみ使用できます。
[終了日/時刻] | ログ ファイルをインポートする範囲の最後の日付と時刻を入力します。このオプションは、[日付/時刻の期間を指定したログ ファイルのインポート] を選択した場合にのみ使用できます。
[拡張] | [詳細 Web ログ インポートのプロパティ] ダイアログ ボックスを開くときにクリックします。

関連項目

Web ログ ファイル データをインポートする

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウス コンポーネント

データ ウェアハウス リソースを構成する


[詳細 Web ログ インポートのプロパティ] - [除外] タブ

次の表は、[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [除外] タブで利用できるオプションとその機能を示します。

項目 | 操作
[フィルタによる除外の条件] 特定の除外の種類のみを表示するには、ドロップダウン リストから除外の種類を選択します。除外の種類は次のとおりです。
  • [ホスト]

  • [ファイルの種類]

  • [ファイル式]

  • [クローラ]

除外カテゴリの詳細については、「除外」を参照してください。
[除外条件に既定のクローラ一覧を含む] | 除外の条件に既定のクローラ一覧を含めるときに選択します。
[除外の種類] | 除外の一覧を除外の種類で並べ替えるときにクリックします。
[除外] | 除外の一覧を除外の条件で並べ替えるときにクリックします。
[アプリケーション] | 除外の一覧をアプリケーションによって並べ替えるときにクリックします。
[追加] | [除外] ダイアログ ボックスを開き、新しい除外を追加するときにクリックします。
[削除] | 選択した除外を削除するときにクリックします。
[プロパティ] | 選択した除外のプロパティを表示できる [除外] ダイアログ ボックスを開くときにクリックします。

関連項目

除外

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウス コンポーネント


除外

次の表は、[除外] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[除外カテゴリの選択] 追加するインポートの除外の種類をドロップダウン リストから選択します。除外できるデータの種類は次のとおりです。
  • [ホスト]

  • [ファイルの種類]

  • [ファイル式]

  • [クローラ]

除外カテゴリの詳細については、「除外」を参照してください。
[名前] | Commerce Server でログ ファイルの検索に使用できる名前を入力します。入力する名前にスペースは使用できません。
[サイト内のすべてのアプリケーション] | サイト内のすべてのアプリケーションからのデータを除外するときに選択します。
[サイト内の選択されたアプリケーション] | サイト内でデータを除外するアプリケーションを選択するときに選択します。
[すべて選択] | 一覧に表示されているすべてのアプリケーションからのデータを除外するときに選択します。
[すべて選択解除] | 一覧表示されたすべてのアプリケーションの選択を解除するときに選択します。

関連項目

除外

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウス コンポーネント


[詳細 Web ログ インポートのプロパティ] - [推論] タブ

次の表は、[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [推論] タブで利用できるオプションとその機能を示します。

項目 | 操作
[訪問終了とみなすまでのアイドル時間(分)] | 訪問が終了したと見なされるまでのアイドル時間 (分) を入力します。既定のアイドル時間は 30 分です。
[推論に Commerce Server 識別 cookie を使用] | Commerce Server 識別 cookie を使って各ユーザーを識別するときに選択します。
[推論にユーザー名を使用] | ユーザー名を使って各ユーザーを識別するときに選択します。
[カスタム cookie 識別子を使用] | カスタム cookie を使って各ユーザーを識別するときに選択します。
[新しいカスタム cookie 識別子の入力] | 使用するカスタム cookie 識別子を入力します。
[追加] | 新しいカスタム cookie 識別子を推論の一覧に追加するときにクリックします。
[削除] | 選択した行を推論の一覧から削除するときにクリックします。

関連項目

推論

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウス コンポーネント


[詳細 Web ログ インポートのプロパティ] - [クエリ文字列] タブ

次の表は、[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [クエリ文字列] タブで利用できるオプションとその機能を示します。

項目 | 操作
[クエリ文字列を URI と共に保存] | クエリ文字列を統一リソース識別子 (URI) と共に保存するときに選択します。
[クエリ文字列] | 一覧をクエリ文字列名で並べ替えるときにクリックします。
[アプリケーション] | 一覧をアプリケーション名で並べ替えるときにクリックします。
[追加] | 新しいクエリ文字列を追加できる [クエリ文字列] ダイアログ ボックスを開くときにクリックします。
[削除] | 指定したクエリ文字列を削除するときにクリックします。
[プロパティ] | 指定したクエリ文字列を編集できる [クエリ文字列] ダイアログ ボックスを開くときにクリックします。

関連項目

クエリ文字列

Web ログ ファイル インポート プロパティを構成する

データ ウェアハウス コンポーネント


クエリ文字列

次の表は、[クエリ文字列] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | クエリ文字列の名前を入力します。
[サイト内のすべてのアプリケーション] | サイト内のすべてのアプリケーションからクエリ文字列をインポートするときに選択します。
[サイト内の選択されたアプリケーション] | サイト内でクエリ文字列をインポートするアプリケーションを選択するときに選択します。
[データ型の選択] | ドロップダウン リストからクエリのデータ型を選択します。選択できるデータ型は次のとおりです。文字列 (既定値)、整数、日付/時刻、実数。
[複数値データ型] | クエリで複数値のデータ型を使うときに選択します。

関連項目

クエリ文字列

Web ログ ファイル インポート プロパティを構成する


[詳細 Web ログ インポートのプロパティ] - [既定のファイル] タブ

次の表は、[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [既定のファイル] タブで利用できるオプションとその機能を示します。

項目 | 操作
[ファイル システムのパスから最上位ディレクトリを切り捨てる] | 最上位ディレクトリを付けずにファイル名文字列を表示するときに選択します。
[ディレクトリ インデックス ファイル] | ディレクトリ インデックス ファイルとして指定するファイルの名前を入力します。
[追加] | 既定のファイル一覧に新しいディレクトリ インデックス ファイルを追加するときにクリックします。
[削除] | 既定のファイルの一覧から選択したディレクトリ インデックス ファイルを削除するときにクリックします。

関連項目

既定のファイル

Web ログ ファイル インポート プロパティを構成する


[詳細 Web ログ インポートのプロパティ] - [ログ ファイル] タブ

次の表は、[詳細 Web ログ インポートのプロパティ] ダイアログ ボックスの [ログ ファイル] タブで利用できるオプションとその機能を示します。

項目 | 操作
[レコードが重複していると判定するまでの経過時間 (分)] | レコードが重複していると判定するまでの経過時間を分で入力します。既定の経過時間は 30 分です。
[重複が検出された場合] 重複が検出された場合にとるアクションを選択します。
  • [すべてのレコードをインポートする] 重複している要求を含め、すべての要求をインポートします。

  • [インポートを中止する] 重複している要求が検出された場合、ログ ファイルをインポートしません。

  • [すべてのインポートを中止する] 重複している要求が検出された場合、すべてのログ ファイルのインポートを中止します。

  • [レコードを廃棄して続行する] (既定値) 重複している要求をすべて破棄し、残りの要求をインポートします。
[インポートの完了時] インポート プロセス終了時のオープン訪問についてとるアクションを選択します。
  • [次回のインポート時にオープン訪問を保存する] (既定の設定) 1 つの継ぎ目のないログ ファイルのように実際の訪問を再構築します。このオプションは、新しいインポートのたびにキャッシュからオープン訪問を呼び出す必要があるため、若干時間がかかります。このオプションが正しく機能するには、ログ ファイルを時間順にインポートする必要があります。

  • [データベースにオープン訪問をコミットする] ログ ファイル出力期間の最初と最後は、両方の期間にまたがる訪問が 2 回カウントされるため、訪問数が多くなります。

  • [オープン訪問を廃棄する] ログ ファイル出力期間の終了時は、終了していない訪問が削除されるため、レポート数が少なくなります。
[キャッシュの消去] | 保存されたデータのキャッシュを消去するときにクリックします。

関連項目

[ログ ファイル]

時間重複

交換

Web ログ ファイル インポート プロパティを構成する


[カタログ インポート プロパティ]

次の表は、[カタログ インポート プロパティ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | このインポート タスクの説明を入力します。
[サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。
[増分の読み込み] | 新しいカタログ データのみをインポートするときに選択します (前回のインポートに基づきます)。
[すべて読み込み] | すべてのカタログ データをインポートするときに選択します。

関連項目

カタログ データをインポートする

データ ウェアハウス コンポーネント


[トランザクション インポート プロパティ] - [全般] タブ

次の表は、[トランザクション インポート プロパティ] ダイアログ ボックスの [全般] タブで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | このインポート タスクの説明を入力します。
[サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。
[増分の読み込み] | 新しいトランザクション データのみをインポートするときに選択します (前回のインポートに基づきます)。
[すべて読み込み] | すべてのトランザクション データをインポートするときに選択します。

関連項目

トランザクション データをインポートする

データ ウェアハウス コンポーネント


[タスクの削除]

次の表は、[タスクの削除] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | 削除タスクの説明を入力します。
[サイト名] | Web ログ ファイルのデータを削除するサイトをドロップダウン リストから選択します。
[削除の種類の選択] ドロップダウン リストから削除の種類を選択します。
  • [すべて] すべてのデータ (詳細データおよび要約データ) をデータ ウェアハウスから削除します。

  • [Web ログのインポート] 選択した Web ログ ファイルからのデータを削除します。
[すべてのデータの削除] | 選択した Web ログ ファイルのインポートから要約データと詳細データの両方を削除するには、このオプションを選択します。
[詳細データの削除] | 選択した Web ログ ファイルのインポートから詳細データのみを削除するときに選択します。
[タスク ID] | 削除する Web ログ ファイルを指定するには、この列のチェック ボックスをオンにします。Web ログ ファイルの一覧をタスク ID で並べ替えるには、列見出しをクリックします。
[タスクの説明] | Web ログ ファイルの一覧を説明で並べ替えるには、列見出しをクリックします。
[状態] | Web ログ ファイルの一覧を状態で並べ替えるには、列見出しをクリックします。
[開始時刻] | Web ログ ファイルの一覧を開始時刻で並べ替えるには、列見出しをクリックします。
[詳細レベル] | Web ログ ファイルの一覧を詳細レベルで並べ替えるには、列見出しをクリックします。

関連項目

データ ウェアハウスからデータを削除する


[IP 解決 DTS プロパティ]

次の表は、[IP 解決 DTS プロパティ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | タスクの説明を入力します。
[サイト名] | IP 解決が実行されるサイトをドロップダウン リストから選択します。
[増分検索] | まだ解決されていない IP アドレスのみを解決するときに選択します。
[全検索] | すべての IP アドレスを解決するときに選択します。
[ローカル ドメイン名] | IP アドレスを解決するためのプライマリ サーバーとして使われるドメイン ネーム サーバー (DNS) のローカル ドメイン名を入力します。
[検索結果をキャッシュする日数] | 解決した IP アドレスを保存する日数を入力します。既定値は 30 日です。既定値以上に設定すると、IP 解決が頻繁に発生します。ただし、ドメイン名の変更を取得できない場合があります。
[タイムアウトまでの秒数] | IP アドレスが解決できなかったとみなされるまでに DNS サーバーが検索される時間 (秒) を入力します。既定値は 60 秒です。既定値以上に設定すると、解決できる IP アドレスの数は増えますが、IP 解決にかかる時間も長くなります。
[バッチに保持する検索要求の数] | DNS サーバーに一括して転送される IP アドレスの数を入力します。既定値は 500 です。10 ～ 99,999 の範囲で設定できます。

関連項目

インターネット プロトコル解決を実行する


[キャンペーン インポート プロパティ]

次の表は、[キャンペーン インポート プロパティ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | このインポート タスクの説明を入力します。
[サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。

関連項目

キャンペーン データをインポートする

データ ウェアハウス コンポーネント


[ユーザー インポート プロパティ]

次の表は、[ユーザー インポート プロパティ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | このインポート タスクの説明を入力します。
[サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。
[クエリ間隔 (分)] | インポートの間隔を入力します。データベース テーブルのロックを防止するため、一定の間隔でユーザー データをインポートします。たとえば、10,000 人のユーザーがいる Web サイトのユーザデータを、15 分間隔でインポートします。
[インポート開始日] | ドロップダウン カレンダーからインポートを開始する日付を選択します。
[増分の読み込み] | 新しいユーザーのみをインポートするときに選択します (前回のインポートに基づきます)。
[すべて読み込み] | すべてのユーザー データをインポートするときに選択します。

関連項目

ユーザー プロファイル データをインポートする

データ ウェアハウス コンポーネント


[DW プロパティの同期]

次の表は、[DW プロパティの同期] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | このインポート タスクの説明を入力します。
[サイト名] | ドロップダウン リストからインポートするデータを含むサイトを選択します。

関連項目

サイト構成をデータ ウェアハウスと同期させる


[レポートの準備のプロパティ]

次の表は、[レポートの準備のプロパティ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[説明] | このインポート タスクの説明を入力します。
[サイト名] | ドロップダウン リストから、分析レポートで使用するデータを含むサイトを選択します。
[増分] | 増分 キューブ処理を実行するときに選択します。
[すべて] | フル キューブ処理を実行するときに選択します。

関連項目

レポートの作成を準備する


[Web サーバー ログ ファイル]

次の表は、[Web サーバー ログ ファイル] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[アプリケーション] | インポートするログ ファイルはサイト名の横のチェック ボックスをオンにします。

関連項目

Web ログ ファイル データをインポートする


予測リソース UI のヘルプ

ここでは、Commerce Server 予測 リソースに関する、状況依存のヘルプ トピックについて説明します。これらのトピックを予測リソースのユーザー インターフェイスから参照するには、予測リソースの各ダイアログ ボックスの [ヘルプ] をクリックします。

ここでは、次のトピックについて説明します。

  • [<サーバー名> 上の予測プロパティ] - [全般] タブ

  • モデル構築のプロパティ


[<サーバー名> 上の予測プロパティ] - [全般] タブ

次の表は、[<サーバー名> 上の予測プロパティ] ダイアログ ボックスの [全般] タブで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | 予測リソースの名前を表示します。
[ホスト名] | 予測リソースがインストールされているサーバー名を表示します。
[前回開始日時] | 前回予測リソースが開始された日付と時刻を表示します。

関連項目

予測リソースについて


モデル構築のプロパティ

次の表は、[モデル構築のプロパティ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | 分析モデルの名前を入力します。
[構築の優先度] この分析モデルに設定する構築の優先度を選択します。既定値は [標準以下] で、特定の構築スレッドの優先度になります。選択できる種類は次のとおりです。
  • [最低]

  • [標準以下]

  • [標準]

  • [標準以上]

  • [最高]
[モデルの種類] 構築する分析モデルの種類を選択します。選択できる種類は次のとおりです。
  • [予測] サイトの推奨を作成する予測モデルを構築するには、このオプションを選択します。

  • [セグメント] Commerce Server ビジネス デスクのセグメント ビューア モジュールにユーザー セグメントを表示するためのセグメント モデルを構築するには、このオプションを選択します。
[サンプル サイズ] | 分析モデルの構築に使われるケースの数を入力します。必要に応じて、既定値を変更できます。既定値は [-1] (全データ)、または 20,000 ケースのどちらか少ない方です。
[測定精度サンプル比率] | モデルの精度について自動的にスコアを付けるために使うサンプル データの比率として、0.0 ～ 1.0 の数字を入力します。たとえば、[測定精度サンプル比率] の値として、「0.0」と入力すると、モデルにスコアは付けられません。「0.4」と入力すると、サンプル データの 40% を使ってモデルのスコアが付けられます。残りの 60% はビルドの構築に使用されます。
[測定精度最大予測数] | サイトに掲載する推奨の最大数を入力します。この数は、"推奨スコア" の計算に使われます。既定の属性数は 10 です。
[入力属性分数] | 予測の入力として使われる属性の比率を、0.0 ～ 1.0 の数字で入力します。たとえば、入力属性分数 0.05 を指定すると、入力属性のうち、最も有意な 5% を選択します。既定値は 1.0 で、この場合すべての属性が予測の入力属性とされます。商品数が 1,000 を超えるカタログの推奨商品のように、属性数が非常に多い場合は、1.0 未満の値を指定することをお勧めします。
[出力属性分数] | 予測される属性の比率を 0.0 ～ 1.0 の数字で入力します。たとえば、出力属性比率として 0.05 を指定すると、最も有意な属性の 5% のツリーが構築されます。出力属性が商品の場合は、最も人気の高い商品の 5% を含むツリーが返されます。既定値は 1.0 で、この場合はすべての属性を含むツリーが構築されます。商品数が 1,000 を超えるカタログの推奨商品のように、属性数が非常に多い場合は、1.0 未満の値を指定することをお勧めします。
[セグメント数] | ユーザーの分割先となるセグメントの最大数を入力します。これは、アルゴリズムの初期ヒントとなります。実際のセグメント数はこの値よりも少なくなることがあります。この値は、セグメント モデルを構築する場合にのみ利用できます。
[バッファ サイズ (バイト)] | セグメント化を行うときにケースの読み込みに使われるバッファのサイズを入力します。既定値は 1,000,000 バイトです。バッファ サイズは、モデルの構築時間および品質に影響を与えます。たとえば、モデルに多数の属性が含まれている場合は、設定するバッファ サイズを大きくする必要があります。バッファ サイズの制限は、予測リソースを実行しているコンピュータのシステム リソースによって異なります。この値は、セグメント モデルを構築する場合にのみ利用できます。

関連項目

予測リソースについて

予測の最適な使用

分析モデルの効果


サイト パッケージャのダイアログ ボックスのヘルプ

ここでは、Commerce Server サイト パッケージャに関する、状況依存のヘルプ トピックについて説明します。これらのトピックをサイト パッケージャのユーザー インターフェイスから参照するには、サイト パッケージャの各ダイアログ ボックスの [ヘルプ] をクリックします。

ここでは、次のトピックについて説明します。

  • [Commerce Server サイト パッケージャへようこそ]

  • [パッケージ]

  • [アンパック]

  • [標準]

  • [アンパック方法]

  • [サイト名]

  • [リソースの選択]

  • [グローバル リソース ポインタ]

  • [データ ベースの接続文字列]

  • [アプリケーションの選択]

  • [IIS Web サイトおよび仮想ディレクトリを選択します]

  • [Master データベース]

  • [新規データベース]

  • [データ ウェアハウスのプロパティ]

  • [システム プロファイリング]

  • [システム プロファイリング: Active Directory データ ソース]

  • [システム プロファイリング: OLEDB データ ソース]

  • [アンパックが完了しました!]

  • [サイトの選択]

  • [システム プロファイリング]

  • [システム プロファイリング]


[Commerce Server サイト パッケージャへようこそ]

次の表は、[Commerce Server サイト パッケージャへようこそ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[パッケージ ファイル (.pup) からアンパックする] | Commerce Server アプリケーションを Web サーバーにインストールするときに選択します。
[既存のサイトをパッケージ化] | Commerce Server アプリケーションのパッケージを作成し、それをほかの Web サーバーに移動できるようにするときに選択します。

関連項目

サイトをアンパッケージする


[パッケージ]

次の表は、[パッケージ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[パッケージ化するサイト] | パッケージ化するサイトのインターネット インフォメーション サービス (IIS) 名を選択します。
[作成するパッケージ ファイル] | 作成するパッケージ ファイルの名前を入力します。

関連項目

サイトをパッケージ化する


[アンパック]

次の表は、[アンパック] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[アンパックするファイル] | アンパッケージするパッケージ ファイルの名前を選択します。
[標準] | このサイトのすべてのアプリケーションをローカル コンピュータに、すべてのデータベースを 1 台のローカル コンピュータまたはリモート コンピュータに、素早くでインストールする時に指定します。
[カスタム] | すべての設定を選択しながらサイトをアンパッケージする時に指定します。インストールするアプリケーション、およびデータベースの構成方法を指定できます。


[標準]

次の表は、[標準] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[サイト名] | サイトに付ける名前を入力します。これがサイトの仮想ディレクトリの名前になります。
[IIS Web サイト] | サイトのホストになるインターネット インフォメーション サービス (IIS) Web サイトの名前を選択します。既存の Web サイトの名前にする必要があります。IIS スナップインを使って新しい IIS Web サイトを作成することもできます。
[SQL Server コンピュータ] | サイト データベースのホストになる SQL サーバーの名前を入力します。
[SQL ユーザー名] | SQL Server にログオンする権限を持つユーザーのユーザー名を入力します。SQL Server ロール (sysadmin または dbcreator) のいずれかのメンバであるログイン名を使います。OLAP エラーを避けるには、特殊な文字 (#、@、%、' など) を使わないでください。
[SQL パスワード] | SQL Server にログオンする権限を持つユーザーのパスワードを入力します。OLAP エラーを避けるには、特殊な文字 (#、@、%、' など) を使わないでください。

関連項目

サイトをアンパッケージする


[アンパック方法]

次の表は、[アンパック方法] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[新しいサイトの作成] | 新しい Web サイトを作成するときに選択します。
[既存のサイトにパッケージのリソースを追加] | ダイレクト メーラや予測などのリソースを既存の Commerce Server サイトに追加するときに選択します。
[既存のサイトにパッケージのアプリケーションを追加] | ビジネス デスクなどのアプリケーションを既存のサイトに追加するときに選択します。
[既存のサイトの既存のアプリケーションに Web サーバーを追加] | ほかのサーバーで管理している Web サーバーにアプリケーションをインストールするときに選択します。このオプションを選択すると、サイトに新しい Web サーバーが追加されます。Commerce Server 管理ツールは新しい Web サーバーにインストールされません。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[サイト名]

次の表は、[サイト名] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[サイト名] | 作成するサイトの名前を入力します。
[既存のサイト] | 既存のサイトの一覧を表示します。新しいサイトを作成する場合、この一覧から名前を選択することはできません。

注

  • アンパッケージ エラーを避けるには、サイト名に特殊な文字 (#、@、%、' など) や、キーの組み合わせ (Alt + 数字キー) を使わないでください。サイト名がデータベース名に付加され、特殊な文字やキーの組み合わせによりこれらの名前が不正になる場合があります。

  • [サイト名] は、1 バイト文字の場合は 256 文字まで、2 バイト文字の場合は 128 文字までで指定してください。

  • サイトに "Commerce" という名前を付けないでください。この名前は OLAP データベース名として予約されています。サイトに "Commerce" という名前を付けると、次にサイトをアンパッケージするときに、OLAP データベースが削除される場合があります。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[リソースの選択]

次の表は、[リソースの選択] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[アンパックするリソース] | アンパッケージするリソースを指定します。リソースがこの一覧に含まれている場合は、その設定とスキーマがアンパッケージされます。
[追加] | [利用できるリソース] 一覧で選択した項目を [アンパックするリソース] 一覧に移動します。
[すべて追加] | [利用できるリソース] 一覧のすべての項目を [アンパックするリソース] 一覧に移動します。
[削除] | [アンパックするリソース] 一覧で選択した項目を [利用できるリソース] 一覧に移動します。
[すべて削除] | [アンパックするリソース] 一覧のすべての項目を [利用できるリソース] 一覧に移動します。

注

  • サイト CS Authentication および Profiles リソースは、同時にインストールする必要があります。両方がインストールされていなければ機能しません。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[グローバル リソース ポインタ]

次の表は、[グローバル リソース ポインタ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[グローバル リソース ポインタ] | 構成するグローバル リソース ポインタを選択します。[グローバル リソースにマップ] 列には、新しいグローバル リソースがローカルに作成されるかどうか、またはグローバル リソースがどこに存在するかが示されます。
[既存のグローバル リソース] | このコンピュータで使用するグローバル リソースの場所を選択します。一覧には、Commerce Server のセットアップで作成されたグローバル リソースが表示されます。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[データ ベースの接続文字列]

次の表は、[データ ベースの接続文字列] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[リソース] | データベース サーバーの変更などの、アクションを実行するリソースを選択します。
[変更] | リソース用にほかのサーバーまたはデータベースを指定します。
[既定] | 接続文字列を既定の設定に戻します。既定の設定では、ローカルに格納された 2 つのデータベース (1 つはデータ ウェアハウス用で、もう 1 つはその他のリソース用) で構成されます。
[コピー] | 選択したリソースをクリップボードにコピーします。
[貼り付け] | 選択したリソースをクリップボードから貼り付けます。
[新規データベース] | 選択したリソース用に新しいデータベースを作成します。このコマンドは、データベースをほかのコンピュータに配置する場合に使います。また、単にデータベースの名前を変更する場合にも使います。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[アプリケーションの選択]

次の表は、[アプリケーションの選択] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[パッケージ内のアプリケーション] | アンパッケージするアプリケーションを指定します。インストールしないアプリケーションのチェック ボックスはオフにします。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[IIS Web サイトおよび仮想ディレクトリを選択します]

次の表は、[IIS Web サイトおよび仮想ディレクトリを選択します] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[アプリケーション] | 操作の対象となるアプリケーションを選択します。
[IIS Web サイト] | 既存の IIS Web サイト、サーバー上のサイトの場所を選択します。
[Web サイトの更新] | 利用できる IIS Web サイトの一覧を更新するときに選択します。新しい IIS Web サイトを作成する場合は、このダイアログ ボックスが表示されているときに、このオプションを選択します。
[IIS 仮想ディレクトリ] | サイトの IIS 仮想ディレクトリの名前を指定します。指定した名前はサイトの URL パスに表示されます。

注

  • IIS エラーを避けるには、IIS Web サイトおよび仮想ディレクトリ名に特殊な文字 (#、@、%、' など) を使わないでください。

  • サイト パッケージャは、リモート コンピュータ上のサイトのアンパッケージをサポートしません。

  • サイト パッケージャは、指定した IIS ウェブ サイトの内、および IIS Web サイトが指している物理フォルダ内の、個別のサブフォルダにアプリケーションを作成します。これらのサブフォルダには、各アプリケーションに指定した仮想ディレクトリ名が付けられます。既定では、これらの仮想ディレクトリ名はアプリケーションの名前と同じです。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[Master データベース]

次の表は、[Master データベース] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[SQL ユーザー名] | SQL Server にログオンする権限を持つユーザーのユーザー名を指定します。新しいデータベースを作成するには、SQL Server ロール (sysadmin または dbcreator) のいずれかのメンバであるログイン名を使います。OLAP エラーを避けるには、特殊な文字 (#、@、%、' など) を使わないでください。
[SQL パスワード] | SQL Server にログオンする権限を持つユーザーのパスワードを指定します。OLAP エラーを避けるには、特殊な文字 (#、@、%、' など) を使わないでください。
[接続テスト] | このコンピュータからダイアログ ボックスの上部で指定したデータベース サーバーへの接続をテストします。


[新規データベース]

次の表は、[新規データベース] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[SQL Server コンピュータ] | SQL Server クラスタの名前を入力します。
[データベース名] | データ ウェアハウス データベースの名前を入力します。
[SQL ユーザー名] | 新しいデータベースを作成するには、SQL Server ロール (sysadmin または dbcreator) のいずれかのメンバであるログイン名を使います。OLAP エラーを避けるには、特殊な文字 (#、@、%、' など) を使わないでください。
[SQL パスワード] | SQL Server ログイン パスワードを入力します。OLAP エラーを避けるには、特殊な文字 (#、@、%、' など) を使わないでください。
[データベースの作成] | クリックすると、指定したサーバーに新しいデータベースが作成されます。

関連項目

例 A: クラスタ構成の 4 台のコンピュータにインストールする


[データ ウェアハウスのプロパティ]

次の表は、[データ ウェアハウスのプロパティ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | グローバル データ ウェアハウス リソースの名前を入力します。
[サーバー] | SQL Analysis (OLAP) コンピュータの名前を入力します。
[データベース] | Analysis (OLAP) データベースの名前を入力します。
[接続テスト] | このコンピュータと、データ ウェアハウスのホストとなるサーバーとの接続をテストします。
[リソースのスキップ] | グローバル データ ウェアハウス リソースへのローカル ポインタの構成を省略します。

関連項目

サイトにセキュリティを設定する


[システム プロファイリング]

次の表は、[システム プロファイリング] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[プロファイル スキーマの定義 (.xml)] | サイトにインポートするプロファイル スキーマの定義を指定します。
[サイト用語の定義 (.xml)] | インポートするサイト用語の定義を指定します。
[式の定義 (.xml)] | インポートする式の定義を指定します。

関連項目

サイトをアンパッケージする


[システム プロファイリング: Active Directory データ ソース]

次の表は、[システム プロファイリング: Active Directory Data データソース] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[ドメイン] | サイトが属する Windows ドメインを入力します。
[ユーザー名] | 有効な Windows ドメイン ユーザー名を入力します。ユーザー名は、次のいずれかの形式で入力する必要があります。 ドメイン\ユーザー名 ユーザー名@ドメイン
[パスワード] | 指定したユーザーのドメイン パスワードを入力します。
[親 URL] | ディレクトリ ツリーの中でデータを格納する場所を入力します。
[簡易結合を使用する] | パスワードをクリア テキストで送信するときに選択します。このオプションを選択するとセキュリティが低下しますが、一部のディレクトリ サービスではこの設定が必要です。
[スクリプトの実行] | このサイトに関連するディレクトリ ツリーにオブジェクトを作成する Visual Basic スクリプトを実行します。
[接続テスト] | ドメイン コントローラへの接続が有効かどうかをテストします。


[システム プロファイリング: OLEDB データ ソース]

次の表は、[システム プロファイリング: OLEDB データ ソース] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[変更] | プロファイル システムの接続文字列を変更します。
[スキーマ定義のスクリプト (*.sql; *.vbs)] | スキーマ定義スクリプトの場所を指定します。
[データ生成スクリプト (*.sql)] | データ生成スクリプトの場所を指定します。


[アンパックが完了しました!]

次の表は、[アンパックが完了しました!] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[選択したアプリケーションの表示] | [アンパック中に作成された IIS アプリケーション] ボックスで選択したアプリケーションを実行します。
[ログ ファイルの表示] | サイト パッケージャのログ ファイルを開きます。このログ ファイルには、サイト パッケージャの実行時に発生したすべてのイベントが記録されます。エラーが発生した場合は、このログ ファイルの情報を調べます。
[完了] | サイト パッケージャを終了します。


[サイトの選択]

次の表は、[サイトの選択] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[既存のサイト] | 変更するサイトの名前を選択します。

関連項目

サイトをアンパッケージする


[システム プロファイリング]

次の表は、[システム プロファイリング] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[プロファイル スキーマの定義] | サイトにインポートするプロファイル スキーマの定義を指定します。
[サイト用語の定義] | インポートするサイト用語の定義を指定します。
[式の定義] | インポートする式の定義を指定します。


[システム プロファイリング]

次の表は、[システム プロファイリング] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[システム プロファイリングの接続文字列] | OLEDB データ ストアにインポートするファイルを指定します。ほかのデータベースを指定するには、[変更] をクリックします。
[スキーマ定義のスクリプト (*.sql; *.vbs)] | サイトにインポートするスキーマ定義スクリプトを指定します。
[データ生成スクリプト (*.sql)] | インポートするデータ生成スクリプトを指定します。


プロファイル リソース UI のヘルプ

ここでは、コンテキストに応じた、Commerce Server プロファイル リソースのヘルプ トピックについて説明します。これらのトピックをプロファイル リソースのユーザー インターフェイスから参照するには、プロファイル リソースの各ダイアログ ボックスの [ヘルプ] をクリックします。

ここでは、次のトピックについて説明します。

  • [プロファイル カタログのプロパティ] - [全般] タブ

  • [<プロファイル定義> のプロパティ] - [全般] タブ

  • [<プロファイル定義> のプロパティ] - [カスタム属性] タブ

  • [カスタム属性]

  • [新しいデータ ソース]

  • [データ ソース]

  • [パーティション]

  • [パーティション]

  • [システム属性]

  • [LDAP 接続文字列]

  • [新しいデータ オブジェクト]

  • [新しいデータ メンバ]

  • [<データ メンバ> のプロパティ] - [全般] タブ

  • [<データ メンバ> のプロパティ] - [プロパティ] タブ

  • [<データ オブジェクト> のプロパティ] - [全般] タブ

  • [新しいプロファイル定義]

  • [カスタム属性]

  • [<データ ソース> のプロパティ] - [全般] タブ

  • [<データ ソース> のプロパティ] - [データ ソース] タブ

  • [<データ ソース> のプロパティ] - [パーティション] タブ


[プロファイル カタログのプロパティ] - [全般] タブ

次の表は、[プロファイル カタログのプロパティ] ダイアログ ボックスの [全般] タブで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | プロファイル カタログのプログラム上の定義名を表示します。
[表示名] | プロファイル カタログの表示名を編集します。表示名は Unicode 文字で最大 127 文字です。
[説明] | プロファイル カタログの説明を編集します。説明は Unicode 文字で最大 127 文字です。

関連項目

プロファイル定義

サンプルのプロファイル定義

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

プロファイル定義を管理する


[<プロファイル定義> のプロパティ] - [全般] タブ

次の表は、[<プロファイル定義> のプロパティ] ダイアログ ボックスの [全般] タブで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | 編集中のプロファイル定義のプログラム上の定義名を表示します。
[表示名] | プロファイルの表示名を編集します。表示名は Unicode 文字で最大 127 文字です。
[説明] | プロファイルの説明を編集します。説明は Unicode 文字で最大 127 文字です。

関連項目

プロファイル定義

サンプルのプロファイル定義

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

プロファイル定義を管理する


[<プロファイル定義> のプロパティ] - [カスタム属性] タブ

次の表は、[<プロファイル定義> のプロパティ] ダイアログ ボックスの [カスタム属性] タブで利用できるオプションとその機能を示します。

項目 | 操作
[新規] | [カスタム属性] ダイアログ ボックスを開き、新しいカスタム属性を作成するときにクリックします。
[編集] | [カスタム属性] ダイアログ ボックスを開き、選択したカスタム属性を編集するときにクリックします。
[削除] | 選択したカスタム属性を削除するときにクリックします。

関連項目

プロファイル定義

サンプルのプロファイル定義

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

プロファイル定義を管理する


[カスタム属性]

次の表は、[カスタム属性] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[新規] | [カスタム属性] ダイアログ ボックスを開き、新しいカスタム属性を作成するときにクリックします。
[編集] | [カスタム属性] ダイアログ ボックスを開き、選択したカスタム属性を編集するときにクリックします。
[削除] | 選択したカスタム属性を削除するときにクリックします。

関連項目

プロファイル定義

サンプルのプロファイル定義

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

プロファイル定義を管理する


[新しいデータ ソース]

次の表は、[新しいデータソース] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | データ ソースのプログラム上の定義名を入力します。名前には、最大 127 文字の英数字と下線 (_) を使用できます。名前にスペースは使用できません。
[表示名] | データ ソースに対して表示される名前を入力します。表示名は Unicode 文字で最大 127 文字です。
[説明] | データ ソースの短い説明を入力します。説明は Unicode 文字で最大 127 文字です。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[データ ソース]

次の表は、[データ ソース] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[ソースの種類] | ソースの種類として、[LDAPv3 準拠のソース] または [OLEDB-ANSI プロバイダ] を選択します。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[パーティション]

次の表は、[パーティション] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[パーティションに分割されたデータ ソース] | このデータ ソースに複数のパーティションを作成するときに選択します。
[パーティションの数] | このデータ ソースの既存のパーティション数を表示します。
[追加] | [パーティション] ダイアログ ボックスを開き、新しいパーティションを作成するときにクリックします。
[編集] | [パーティション] ダイアログ ボックスを開き、選択したパーティションを編集するときにクリックします。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[パーティション]

次の表は、[パーティション] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[編集] | [データ ソース] ダイアログ ボックスで LDAP を選択した場合に [パーティション] ダイアログ ボックスで [追加] をクリックすると、[LDAP 接続文字列] ダイアログ ボックスが開きます。 [データ ソース] ダイアログ ボックスで OLE DB を選択した場合にクリックすると、[データ リンク プロパティ] ダイアログ ボックスが開きます。
[テスト] | 接続文字列をテストするときにクリックします。
[パーティション名] | このパーティションのプログラム上の定義名を入力します。パーティション名には、127 文字の英数字とアンダースコア (_) を使用できます。名前にスペースは使用できません。
[既定のパーティション] | このパーティションを既定のパーティションに指定するときに選択します。
[LDAPv3 のバインド資格情報: ユーザー名] | LDAP ソースのユーザー名を入力します。
[LDAPv3 のバインド資格情報: パスワード] | LDAP ソースのパスワードを入力します。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[システム属性]

次の表は、[システム属性] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[親 URL] | ディレクトリ ツリーの中で新しいオブジェクトを作成する場所を入力します。これはルートに対する相対的な場所です。
[すべてのユーザーに同じ資格情報を使用] | プロファイル サービスで、このパーティションのアカウント情報をすべての結合に使用するときに選択します。
[簡易結合の許可] | プロファイル サービスでパスワードをクリア テキストで送信するときに選択します。
[動的コンテナ] | Internet Locator Service (ILS) などの動的ストアに接続するときに選択します。
[1 つのレベル] | ディレクトリ内で検索を実行するには、このオプションを選択します。
[サブツリー] | サブディレクトリ内で検索を実行するには、このオプションを選択します。
[ドメイン名] | Active Directory サーバーのドメイン名を入力します。非 Active Directory ソースの場合は、コンピュータ名を使います。
[参照] | Active Directory サーバーのドメイン名を取得するときにクリックします。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[LDAP 接続文字列]

次の表は、[LDAP 接続文字列] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[サーバー] | LDAP ソースのあるサーバーの名前を入力します。
[ポート] | ポート名を入力します。既定のポートは 389 です。
[接続文字列] | 接続文字列を表示します。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[新しいデータ オブジェクト]

次の表は、[新しいデータ オブジェクト] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[オブジェクト名] | ドロップダウン リストから、基となるデータ ストアのテーブルまたは LDAP クラスの名前であるデータ オブジェクトを選択します。
[表示名] | データ オブジェクトに対して表示される名前を入力します。表示名は Unicode 文字で最大 127 文字です。
[説明] | データ オブジェクトの説明を入力します。説明は Unicode 文字で最大 127 文字です。
[オブジェクトのメンバ] | 選択したデータ オブジェクトのデータ メンバを表示します。

関連項目

データ ソース

新しいデータ ソースを追加する

新しいプロファイル定義を追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[新しいデータ メンバ]

次の表は、[新しいデータ メンバ] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[メンバ名] | 一覧から新しいデータ メンバの名前を選択します。新しいデータ メンバ名は、データ オブジェクトに対して一意である必要があります。データ メンバには、基となるデータ ストアの列または LDAP 属性の名前を付ける必要があります。名前には、最大 127 文字の英数字と下線 (_) を使用できます。名前にスペースは使用できません。
[表示名] | アプリケーションで表示するデータ メンバの名前を入力します。表示名は Unicode 文字で最大 127 文字です。
[説明] | データ メンバの簡単な説明を入力します。説明は Unicode 文字で最大 127 文字です。
[種類] データ メンバのデータ型を選択します。次のデータ型がサポートされています。
  • Binary

  • Boolean

  • Currency

  • Date/Time

  • Number

  • String
[複数値] | データ メンバに関連付けられた複数の値のコレクションを有効にするには、このチェック ボックスをオンにします。
[必須] | データ メンバが必須の場合は、このチェック ボックスをオンにします。データ メンバが必須でない場合は省略可能です。
[インデックス付き] | このデータ メンバのデータにインデックスを付ける場合は、このチェック ボックスをオンにします。
[プライマリ キー] | このデータ メンバをプライマリ キーに指定する場合は、このチェック ボックスをオンにします。各データ オブジェクトには、プライマリ キーになるデータ メンバを 1 つ選択する必要があります。
[追加] | 新しいデータ メンバをデータ メンバの一覧に追加するときにクリックします。
[終了] | [新しいデータ メンバ] ダイアログ ボックスを閉じて Commerce Server マネージャの詳細ウィンドウを更新するときにクリックします。

関連項目

データ ソース

新しいデータ ソースを追加する

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[<データ メンバ> のプロパティ] - [全般] タブ

次の表は、[<データ メンバ> のプロパティ] ダイアログ ボックスの [全般] タブで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | データ メンバのプログラム上の定義名を表示します。名前は変更できません。
[表示名] | データ メンバに対して表示される名前を編集します。表示名は Unicode 文字で最大 127 文字です。
[説明] | データ メンバの説明を編集します。説明は Unicode 文字で最大 127 文字です。

関連項目

データ ソース

新しいデータ ソースを追加する

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[<データ メンバ> のプロパティ] - [プロパティ] タブ

次の表は、[<データ メンバ> のプロパティ] ダイアログ ボックスの [プロパティ] タブで利用できるオプションとその機能を示します。

項目 | 操作
[種類] | このドロップダウン リストから、データ メンバの新しい型を選択します。
[複数値] | このデータ メンバに割り当てられるデータベース列 (または LDAP 属性) が複数値の場合は、このチェック ボックスをオンにします。
[必須] | このデータ メンバに割り当てられるデータベース列 (または LDAP 属性) が必須の場合は、このチェック ボックスをオンにします。
[インデックス付き] | このデータ メンバに割り当てられるデータベース列 (または LDAP 属性) にインデックスがインデックス付きの場合は、このチェック ボックスをオンにします。
[プライマリ キー] | このデータ メンバに割り当てられるデータベース列 (または LDAP 属性) がプライマリ キーの場合は、このチェック ボックスをオンにします。

関連項目

データ ソース

新しいデータ ソースを追加する

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[<データ オブジェクト> のプロパティ] - [全般] タブ

次の表は、[<データ オブジェクト> のプロパティ] ダイアログ ボックスの [全般] タブで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | データ オブジェクトの名前を表示します。
[表示名] | データ オブジェクトの表示名を編集します。表示名は Unicode 文字で最大 127 文字です。
[説明] | データ オブジェクトの説明を編集します。説明は Unicode 文字で最大 127 文字です。

関連項目

データ ソース

新しいデータ ソースを追加する

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[新しいプロファイル定義]

次の表は、[新しいプロファイル定義] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | 新しいプロファイルのプログラム上の定義名を入力します。名前には、最大 127 文字の英数字と下線 (_) を使用できます。名前にスペースは使用できません。
[表示名] | 新しいプロファイルの表示名を入力します。表示名は Unicode 文字で最大 127 文字です。
[説明] | 新しいプロファイルの説明を入力します。説明は Unicode 文字で最大 127 文字です。

関連項目

プロファイル定義

サンプルのプロファイル定義

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

プロファイル定義を管理する


[カスタム属性]

次の表は、[カスタム属性] ダイアログ ボックスで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | 属性のプログラム上の定義名を入力します。名前には、最大 127 文字の英数字と下線 (_) を使用できます。名前にスペースは使用できません。
[表示名] | 属性の表示名を入力します。表示名は Unicode 文字で最大 127 文字です。
[説明] | 属性の簡単な説明を入力します。説明は Unicode 文字で最大 127 文字です。
[値] | 属性に割り当てる値を入力します。

関連項目

プロファイル定義

サンプルのプロファイル定義

プロファイル定義にプロパティを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

プロファイル定義を管理する


[<データ ソース> のプロパティ] - [全般] タブ

次の表は、[<データ ソース> のプロパティ] ダイアログ ボックスの [全般] タブで利用できるオプションとその機能を示します。

項目 | 操作
[名前] | データ ソースの名前を表示します。
[表示名] | データ ソースの表示名を編集します。表示名は Unicode 文字で最大 127 文字です。
[説明] | データ ソースの説明を編集します。説明は Unicode 文字で最大 127 文字です。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[<データ ソース> のプロパティ] - [データ ソース] タブ

次の表は、[<データ ソース> のプロパティ] ダイアログ ボックスの [データ ソース] タブで利用できるオプションとその機能を示します。

項目 | 操作
[ソースの種類] | ソースの種類として、[LDAPv3 準拠のソース] または [OLEDB-ANSI プロバイダ] を選択します。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


[<データ ソース> のプロパティ] - [パーティション] タブ

次の表は、[<データ ソース> のプロパティ] ダイアログ ボックスの [パーティション] タブで利用できるオプションとその機能を示します。

項目 | 操作
[パーティションに分割されたデータ ソース] | このデータ ソースに複数のパーティションを作成するときに選択します。
[パーティションの数] | データ ソースの既存のパーティション数を表示します。
[追加] | [パーティション] ダイアログ ボックスを開き、新しいパーティションを作成するときにクリックします。
[編集] | [パーティション] ダイアログ ボックスを開き、選択したパーティションを編集するときにクリックします。

関連項目

データ ソース

データ ソースのパーティション

新しいデータ ソースを追加する

例:2 つのデータ ソースを持つプロファイル定義を作成する

データ ソースを管理する


ビジネス デスクの活用方法

ここでは、Commerce Server ビジネス デスクを使って Web サイトを管理する方法について説明します。ここで説明する内容は、ビジネス マネージャを対象にしています。ビジネス マネージャには、サイトのコンテンツの選択と更新に責任があり、特定のユーザーに対して表示する広告を変更したり、カタログを更新してその変更を公開したり、その変更がサイトの生産性に及ぼす影響を測定するためにレポートを実行するなどの作業があります。

ここでは、次のトピックについて説明します。

  • ビジネス デスク ファースト ステップ ガイド ビジネス デスクのコンポーネントとそのカスタマイズや設定の方法を紹介し、ビジネス デスクの基本操作について説明します。

  • ビジネス デスク チュートリアル ビジネス デスクで B to C サイトや B to B サイトを管理する方法について説明します。

  • ビジネス デスク分析 Web サイトの利用状況を分析するために使用するレポートを設定および実行する方法について説明します。

  • ビジネス デスク キャンペーン 多様なユーザー層ごとに対象化を行い、ビジネスの範囲を広げ、売り上げを拡大するために、広告、割引、ダイレクト メールなど、さまざまなキャンペーンを作成して管理する方法について説明します。

  • ビジネス デスク カタログ カタログ スキーマを作成する方法と、カタログを作成して管理する方法について説明します。

  • ビジネス デスク注文 注文状況を確認する方法と、注文テンプレート、バスケット、注文書承認プロセスを管理する方法について説明します。また、各種データ コードの追加、変更、および削除の方法についても説明します。

  • ビジネス デスクユーザー 新しい登録済みユーザーや組織を追加する方法について説明します。また、プロファイル定義にプロパティを追加する方法と、サイト用語の追加方法についても説明します。

  • ビジネス デスクに関するトラブルシューティング ビジネス デスクの活用方法中に発生する可能性のある一般的なエラーの原因を解明し、それを解決する方法について説明します。


ビジネス デスク ファースト ステップ ガイド

ここでは、Commerce Server ビジネス デスクを初めて使うユーザー向けの情報を提供します。

ここでは、次のトピックについて説明します。

  • ビジネス デスクの概要

  • ビジネス デスクの基礎

  • 最初にすべきこと

  • 一般的な作業

  • 例 : 成功へのビジネス サイクル

  • ビジネス デスクのオンライン ヘルプを使う

  • さらにヘルプが必要な場合


ビジネス デスクの概要

Commerce Server ビジネス デスクは、Microsoft Commerce Server 2000 に用意されている Web ベースのサイト管理ツールです。ビジネス デスクは、サイトの構成、管理、および分析に使うビジネス管理モジュールのホストの役割を果たします。たとえば、ビジネス デスク モジュールを使って、カタログの価格情報を更新したり、特定のユーザーを新しい広告の対象に指定します。また、レポートを実行して、サイトに加えた変更がサイトの生産性に与える影響を測定するときにも使用できます。

ビジネス デスクは、ビジネス デスク アプリケーションとビジネス デスク クライアントの 2 つの要素で構成されます。

  • ビジネス デスク アプリケーション サイトの構成、管理、および分析を行うための管理ツールです。Commerce Server をインストールした後に、ソリューション サイトをアンパッケージしてインストールします。ビジネス デスクは、Microsoft Internet Explorer 5.5 を実行する任意のコンピュータから利用でき、安全なリモート アクセスを提供します。

  • ビジネス デスク クライアント コンピュータにローカルにインストールされ、ビジネス デスク アプリケーションとのインターフェイスを提供するクライアント ソフトウェアです。URL を指定して初めてビジネス デスク アプリケーションにアクセスしたときに、ビジネス デスク クライアントがダウンロードされ、コンピュータにインストールされます。ビジネス デスク クライアントを実行するコンピュータとビジネス デスク アプリケーションは、高速回線で接続することをお勧めします。
ビジネス デスク
クライアント
ビジネス デスク
クライアント
ビジネス デスク
クライアント
Commerce Server
データ センター
ビジネス デスク
アプリケーション
Web サイト
ニューヨーク
東京
シカゴ
ニューヨーク
インターネット
ビジネス デスク クライアントがビジネス デスク アプリケーションにアクセスする方法を示す図

ここでは、次のトピックについて説明します。

  • ビジネス デスクのコンポーネント

  • ビジネス デスクで Web サイトを更新する

  • BizTalk Server を使う

  • Commerce Server の構成とビジネス デスク


ビジネス デスクのコンポーネント

サイトのさまざまな側面の管理には、Commerce Server ビジネス デスクの主要なコンポーネントであるモジュールを使います。次の表は、ビジネス デスクのモジュール、そのモジュールが属するカテゴリ、およびそれぞれの機能の一覧を示します。

カテゴリ | 説明
分析 レポート 完成したレポート セグメント ビューア | サイトの利用状況を表すレポートの実行と確認を行ったり、予測分析を実行します。分析モジュールには、サイトのさまざまな側面を扱う多くのレポートが含まれています。
ビジネス デスク キャンペーン キャンペーン式 キャンペーン マネージャ リスト マネージャ 対象グループ 参照テーブル キャンペーンの発行 | マーケティング キャンペーンの作成とスケジュール設定を行います。顧客情報を追加し、キャンペーンとキャンペーン項目を管理します。キャンペーン項目には、広告バナー、ダイレクト メール ジョブ、商品割引などがあります。各キャンペーン項目の対象を特定のユーザー層に絞って、きわめてパーソナライズされたサイトを作成できます。
カタログ カタログ デザイナ カタログ エディタ カタログ セット | カタログのインポート、カタログの作成、および商品の追加と価格設定を行います。また、特別価格が含まれ、クラブの会員などの特定のユーザーだけに表示されるカスタム カタログを作成します。
注文 バスケット マネージャ データ コード 注文状況 トランザクションの発行 送付方法 税率 | Commerce Server データベースから既存の注文情報を検索したり、注文情報の追加、削除、承認、および変更を行います。また、送付方法と税率の追加、削除、および変更を行います。
ユーザー ユーザー 組織 プロファイル デザイナ サイト用語エディタ プロファイルの発行 | ユーザー、組織、およびプロファイルの作成と変更を行います。また、サイト用語の作成と変更を行います。

関連項目

ビジネス デスクで Web サイトを更新する

Commerce Server の構成とビジネス デスク

BizTalk Server を使う

ビジネス デスクの基礎

最初にすべきこと


ビジネス デスクで Web サイトを更新する

次の図は、Commerce Server ビジネス デスク モジュールを使って Web サイトを更新する方法を示します。たとえば、Web サイトから収集したサイト データをデータ ウェアハウスにインポートすると、分析レポートを実行することができます。広告、割引、および宣伝を作成、表示するには、キャンペーン モジュールを使います。カタログの情報を更新するには、カタログ モジュールを使います。ユーザーの注文を調べるには、注文モジュールを使います。ユーザーのパスワードをリセットしたり、その他のユーザー プロファイル情報を変更したり、収集するプロファイル データを指定するには、ユーザー モジュールを使います。

次の図は、ビジネス デスク クライアントを使ってリモートからビジネス デスク アプリケーションにアクセスし、Web サイトを更新する方法を示します。

ビジネス デスク モジュールで Web サイトを更新する方法を示す図
ユーザー
注文
キャンペーン
注文
プロファイル
Commerce Server
データ
ウェアハウス
ユーザーの
登録
ビジネス デスク
Commerce Server データベース
Web サイト
カタログの表示
カタログ
カタログ
キャンペーン
分析
ユーザーの
活動の記録
注文の
受け付け
広告の表示

関連項目

ビジネス デスクのコンポーネント

Commerce Server の構成とビジネス デスク

BizTalk Server を使う

ビジネス デスクの基礎

最初にすべきこと


BizTalk Server を使う

BizTalk Server 2000 は、企業と取引先 (製造元) の間でビジネス文書を送信するためのゲートウェイを提供します。たとえば、企業が BizTalk Server を使っている場合は、取引先との間でカタログ、注文、文書、およびその他の電子書式を交換できます。BizTalk Server は、さまざまな転送方法に対応したデータ変換、暗号化、デジタル署名、および文書追跡サービスを管理します。

BizTalk Server と Commerce Server を併用すると、ユーザーによる Commerce Server Web サイトでの注文を処理できます。たとえば、サイトでコンピュータ ハードウェアを販売しているとします。販売するハードウェアには、自社製品と取引先から供給されている商品の両方があります。BizTalk Server を使うと、このサイトで販売するハードウェアを供給する取引先ごとに取引契約を作成できます。ユーザーがサイトを訪問し、取引先から供給される商品のいずれかを注文すると、Commerce Server が注文を処理して BizTalk Server に送信し、BizTalk Server は注文に応じるため、その商品の取引先に注文を送信します。

複数製造元からのカタログ

製造元 ID

複数製造元からのカタログ

BizTalk Server を使って取引先に注文を伝達するには、サイトに表示される商品を供給する取引先のカタログを整理しておく必要があります。各取引先は、1 つまたは複数の商品カタログを送信できます。サイトの設定によって、これらのカタログを Web サイトに 1 つのカタログとして表示することも、個別のカタログとして表示することもできます。

製造元から電子メールまたは BizTalk Server を使ってカタログが送信されたら、ビジネス デスクのカタログ エディタ モジュールを使って Commerce Server データベースにインポートします。カタログのインポートについては、「カタログをインポートする」を参照してください。

製造元 ID

製造元とのアグリーメントを設定すると、自動的に Commerce Server で製造元 ID を利用できるようになります。Commerce Server は、Commerce Server ビジネス デスクに製造元 ID を表示します。ここには、送信元の組織と同じ文書型をサポートし、互換性のある文書ルーティングを持っている取引先 (組織) が表示されます。したがって、ビジネス デスクを使って、製造元 ID とカタログを関連付けることができます。

1 つの製造元には、複数のカタログを関連付けることができます。また、商品レベルで製造元を指定できますが、この場合、サイト開発者が Web サイト内のページ (_additem.asp) をカスタマイズする必要があります。

製造元に "default" という名前を設定した場合、Commerce Server は自社のサイトを製造元として認識します。カタログへの製造元 ID の指定については、「新しいカタログを作成する」を参照してください。

注

  • ユーザーが Web サイトで項目を注文する場合、送信先組織のカタログにその項目が存在している必要があります。送信先組織のカタログにその項目がない場合、BizTalk Server はサイトから製造元に注文書を送信できません。イベント ログにエラー メッセージが書き込まれます。

システム管理者は、BizTalk Server と取引先契約を設定する責任を負います。詳細については、システム管理者に問い合わせてください。

関連項目

カタログを取引先に送信する

カタログをインポートする

新しいカタログを作成する


Commerce Server の構成とビジネス デスク

Web サイトのホストが Web サーバーであるように、Commerce Server ビジネス デスクのホストは、Commerce Server を実行する Web サーバーです。サイト開発者やシステム管理者は、ビジネス ニーズに合わせてビジネス デスクを構成し、Web サイトの分析や更新に必要なデータに確実にアクセスできるようにする責任を負います。

システム管理者は、Commerce Server マネージャを使って、ビジネス デスクの構成と管理を行います。Commerce Server マネージャは Windows ベースのアプリケーションです。Web ベースではないので、リモートからはアクセスできません。

次の表は、システム管理者が実行する Commerce Server の構成作業の一部を示します。これらの作業や、サイトのその他の機能について疑問がある場合は、システム管理者に問い合わせてください。

カテゴリ システム管理者の作業
分析
  • 必要に応じて、特定の SQL Server データベース ロールをビジネス デスクのユーザーに割り当てることによって、一部のユーザーにレポートの読み取りと保存を許可し、その他のユーザーにはレポートの読み取りのみを許可します。

  • レポートを実行できるように、サイト データをデータ ウェアハウスにインポートする。

  • セグメント分析を実行できるように、新しいセグメント モデルを構築する。
キャンペーン
  • 運用サイトで広告の項目や割引キャンペーン項目の更新を行う時期と頻度を決定する。

  • SQL データベースからリストを直接生成するための接続文字列と SQL クエリを準備する。
カタログ
  • 運用サイトでカタログの更新を行う時期と頻度を決定する。

  • カタログのインポートとエクスポートを行うための共有フォルダ (\\server\CommerceCatalogs) を作成する。

  • 外部のカタログをインポートできるように、拡張マークアップ言語 (XML) ファイル形式またはカンマ区切り値 (CSV) ファイル形式に変換する。

  • Commerce Server の次のプロパティを設定する。
    • サイトの言語 (ロケール)。1031 = ドイツ語、1033 = 英語、1034 = スペイン語、1036 = フランス語、1041 = 日本語。

    • 基本通貨の書式設定に必要なロケール。

    • 2 種類の通貨の同時表示を可能にするための、代替通貨オプション。

    • 商品の送料を計算するための重量測定単位 (kg、ポンドなど)。

    • 取引先とカタログをやりとりするための、BizTalk Server 統合オプション。
注文
  • サイトでサポートする支払いの種類を、クレジット カード、アカウント課金、またはその両方から定義する。
ユーザー
  • プロファイル定義を追加する。

  • プロファイル データの格納場所を制御するデータ ソースを追加する。

  • Commerce Server の次のプロパティを設定する。
    • サイトでのユーザー登録を可能にする、サイト登録オプション。

    • ゲスト ユーザーのプロファイル情報を収集する、サイト プライバシ オプション。

    • サイトでアドレス帳機能を有効にする、アドレス帳オプション。

    • ユーザーにサイトへのログインを要求するタイミングを指定する、ログイン オプション(ユーザーがサイトに入るときにログインする、サイトに入るときにログインするかどうかを選択する、購入時にログインを要求する、ログインするかどうかをいつでも選択できる)。

    • ユーザー名とパスワードを再入力できる回数。この回数を超えると、ユーザーは顧客サービス担当者に連絡するように求められます。

関連項目

ビジネス デスクで Web サイトを更新する

ビジネス デスクのコンポーネント

BizTalk Server を使う

ビジネス デスクの基礎

最初にすべきこと


ビジネス デスクの基礎

Commerce Server ビジネス デスクは Web ベースのアプリケーションなので、Microsoft Word や Microsoft Excel などの PC ベースの Microsoft アプリケーションとは、いくつかの点で外観や機能が異なります。たとえば、ビジネス デスクを操作するには、左側にあるメニューのオプション (モジュール) を選択します。このデザインは、多くの Web ページのデザインに似ています。

ここでは、次のトピックについて説明します。

  • ビジネス デスクを操作する

  • ツール バーのボタンを使う

  • ビジネス デスク モジュールのセキュリティを設定する

  • ビジネス デスクをカスタマイズする

  • データをインポートおよびエクスポートする

  • キーボード ショートカットを使う


ビジネス デスクを操作する

Commerce Server ビジネス デスクのモジュールはそれぞれ独自の機能を備えていますが、どのモジュールも同じような方法で操作できるように設計されているため、情報を簡単に検索して並べ替えることができます。1 つのビジネス デスク モジュールで基本的な操作方法を習得すれば、その知識をほかのモジュールにも応用できます。ここでは、ビジネス デスクの画面のレイアウトと、カテゴリからモジュールや画面に移動する方法について説明します。

ナビゲーション ウィンドウ

コンテンツ ウィンドウ

ツール バーのボタン

ナビゲーション ウィンドウ

Commerce Server ビジネス デスクの画面の左側をナビゲーション ウィンドウと呼びます。このウィンドウは、カテゴリを選択したり、モジュールを開くときに使います。カテゴリの名前をクリックすると、カテゴリは展開し、カテゴリの下の一覧にモジュール名が表示されます。再びカテゴリ名をクリックすると、モジュール名はカテゴリの中に折りたたまれます。

カテゴリ名の左側にある矢印の向きで、カテゴリを展開できるかどうか、または折りたためるかどうかがわかります。右向きの矢印は、一覧を展開できることを示します。下向きの矢印は、一覧が既に展開されていることを示します。

次の図は、注文カテゴリが展開され、モジュールの一覧が表示された状態のナビゲーション ウィンドウを示します。

ビジネス デスク ナビゲーション ウィンドウ

図をクリックすると、拡大または縮小します。

注

一覧表示された項目のプロパティを参照すると、ナビゲーション ウィンドウが見えなくなります。たとえば、前の図で、コード番号 [1] ? [バスケット] のプロパティを表示すると、新しい画面が表示され、ナビゲーション ウィンドウは見えなくなります。ナビゲーション ウィンドウのあるメイン画面に戻るには、ツール バーの 戻る と 保存して戻る を使います。

コンテンツ ウィンドウ

ビジネス デスク画面の右側をコンテンツ ウィンドウと呼びます。コンテンツ ウィンドウは、サイト データを表示したり、情報を編集するときに使います。ナビゲーション ウィンドウでモジュール名をクリックすると、そのモジュールの現在の情報がすべて含まれる一覧がコンテンツ ウィンドウに表示されます。

たとえば、注文カテゴリを開いて、[データ コード] というモジュール名をクリックすると、[注文状況コード] 画面がコンテンツ ウィンドウに表示されます。この画面では、注文状況、国/地域、および都道府県/州のデータ コードを表示、追加、削除できます。

ツール バーのボタン

コンテンツ ウィンドウの上部に表示されるツール バーには、標準的な作業を行うためのボタンが用意されています。たとえば、項目を追加、コピー、または削除する場合などに、ツール バーのボタンをクリックします。ツール バーのボタンには、そのボタンの機能を示すグラフィックが表示されます。ボタンの機能の説明を表示するには、ボタンをクリックする前に、マウスでボタンをポイントしたまま少し待ちます。利用できるツール バーのボタンとそれぞれの機能の説明については、「ツール バーのボタンを使う」を参照してください。

コマンド ボタンには、そのボタンで実行されるコマンドの名前が付いています。コマンド ボタンをクリックして、コンテンツ ウィンドウで特定の作業を実行します。たとえば、結果リストのすべての項目を選択するには、[すべて選択] ボタンをクリックします。

関連項目

ツール バーのボタンを使う

キーボード ショートカットを使う

ビジネス デスク オンライン ヘルプを使う


ツール バーのボタンを使う

ツール バーのボタンは、Commerce Server ビジネス デスクの任意の画面から標準的な操作を行うときに使います。画面によっては、利用できないボタンもあります。次の表は、ツール バーのボタンとそれぞれの機能を示します。

ツール バーのボタン | 説明
アーカイブ [アーカイブ] | 選択した項目をビジネス デスクのアーカイブに保存します。
戻る [戻る] | 編集画面を閉じて、元の画面に戻ります。
キャンセル [キャンセル] | 処理待ち中の操作を取り消します。
コピー [コピー] | 選択した項目の詳細情報を開いて、項目をコピーし、類似のプロパティを持つ新しい項目を作成します。
削除 [削除] | 選択した項目を削除します。
エクスポート [エクスポート] | 一連の情報をエクスポートします。
検索 [検索] | 検索ウィンドウを開きます。
[ドロップダウン リストから開く] | ドロップダウン リストを開き、いくつかの種類の項目の中から検索対象の項目を 1 つ選択できます。
ヘルプ [ヘルプ] | 現在のモジュールのビジネス デスク オンライン ヘルプを開きます。さらに、ほかのヘルプ トピックも参照できます。
[インポート] | 一連の情報をインポートします。
追加 [追加] | 新しい項目を追加します。
開く [開く] | 選択した項目を開きます。
[プレビュー] | 選択したレポートを、印刷されるときの形式で表示します。
印刷 [印刷] | 選択したレポートを印刷します。このボタンは、分析モジュールでのみ利用できます。
カタログの発行 [発行] | カタログを Retail サイトに公開します。このボタンは、カタログ エディタ モジュールでのみ利用できます。
復元 [復元] | 削除したキャンペーン項目を復元します。このボタンは、キャンペーン マネージャ モジュールでのみ利用できます。
レポートの実行 [実行] | 選択したレポートを実行します。このボタンは、分析モジュールでのみ利用できます。
保存 [保存] | 追加または変更した項目やプロパティを保存します。
[保存して新規作成] | 追加または変更した項目やプロパティを保存し、新しいページを開いて新しい項目を作成します。
[保存して戻る] | 追加または変更した項目やプロパティを保存し、メインのモジュール画面に戻ります。
送信 [送信] | Microsoft BizTalk Server を使って取引先にカタログを送ります。このボタンは、カタログ エディタ モジュールでのみ利用でき、BizTalk Server がインストールされている場合にのみ有効になります。
表示 [表示] | 表示する項目の種類を選択します。

関連項目

ビジネス デスクを操作する

キーボード ショートカットを使う

ビジネス デスクのオンライン ヘルプを使う


ビジネス デスク モジュールのセキュリティを設定する

Commerce Server ビジネス デスクには、ロール ベースのセキュリティが備わっています。ビジネス デスクのユーザーは、自分が権限を持つモジュールだけを表示および管理することができます。たとえば、あるユーザー グループがカタログ デザイナ モジュールを使わない場合は、そのグループのユーザーがビジネス デスクにアクセスしたときに、カタログ デザイナ モジュールがナビゲーション ウィンドウに表示されないようにすることができます。サイト開発者がモジュールへのアクセスを制限すると、そのモジュールにアクセスする権限のないユーザーにはモジュールが表示されません。

ビジネス デスクの特定のモジュールへのアクセスを制限する機能は、不正なセキュリティ違反の防止を目的としたものではありません。むしろ、無関係なビジネス デスク モジュールをユーザーから隠すためのものです。

セキュリティを実装するには、システム管理者に問い合わせてください。ビジネス デスク モジュールのセキュリティを設定する場合、システム管理者はモジュールの Active Server Pages (ASP) ファイルに Windows アクセス制御リスト (ACL) を設定する必要があります。詳細については、「セキュリティ」を参照してください。

注

  • プロファイルの発行、キャンペーンの発行、トランザクションの発行のいずれかのモジュールにセキュリティを設定すると、特に指定しない限り、すべてのモジュールにセキュリティが設定されます。

  • この機能を使って、ビジネス デスク内の特定のデータへのアクセスを制限することはできません。ビジネス デスクに表示されるデータへのアクセスを制限する場合は、システム管理者またはサイト開発者に依頼して、Commerce Server データベース レベルでセキュリティを設定します。たとえば、ビジネス デスクのユーザーに特定のカタログの編集だけを許可する場合は、サイト開発者がセキュリティを設定します。

  • 認証されていないセッションを通じてユーザーがインターネットからビジネス デスクに接続すると、ビジネス デスク アプリケーションに対する認証を行うために、ユーザー名、パスワード、およびドメイン名の入力を求める画面が Internet Explorer に表示されます。

関連項目

ビジネス デスクのコンポーネント

ビジネス デスクをカスタマイズする


ビジネス デスクをカスタマイズする

サイト開発者とシステム管理者は、ビジネス ニーズに合わせて Commerce Server ビジネス デスクをカスタマイズできます。たとえば、サイト開発者は機能の追加や削除、ビジネス デスクと既存のアプリケーションとの統合、ビジネス デスクが特定の機能を実行する方法の変更などを行うことができます。

次の表は、ビジネス デスクのユーザーがシステム管理者やサイト開発者とカスタマイズを調整する項目を示します。

ビジネス デスクのコンポーネント カスタマイズと調整
分析 : レポート モジュール
  • サイト開発者は、ビジネス ニーズに合わせて、新規またはカスタマイズされたレポートを作成できます。ビジネス デスクのユーザーも、ビジネス デスクのレポート モジュールの既存の動的レポートを基にして、カスタム レポートを作成できます。

  • システム管理者は、データを定期的にデータ ウェアハウスにインポートする責任を負います。ビジネス デスクのユーザーは、データ ウェアハウスにインポートされたデータに対してレポートを実行し、それを分析できます。

  • システム管理者は、Web ログ ファイルのどのデータをデータ ウェアハウスにインポートするかをカスタマイズできます。また、レポートの結果に影響を及ぼすユーザーと訪問の定義も設定できます。
分析 : セグメント ビューア モジュール
  • システム管理者は、Commerce Server マネージャの予測リソースを使って、モデル構成を作成します。システム管理者は、モデル構成を使って、データ ウェアハウスのデータから予測モデルやセグメント モデルを構築します。ビジネス デスクのセグメント ビューア モジュールで、セグメント モデルを表示できます。システム管理者は、予測モデル ビューアを使って予測モデルを表示します。
ユーザー : プロファイル デザイナ モジュール
  • システム管理者は、Commerce Server マネージャを使ってプロファイル定義を作成し、データ ソース、データ オブジェクト、およびデータ メンバを追加して、Commerce Server データベースの構造をプロファイル定義に公開します。ビジネス デスクを使ってプロファイル定義にプロファイル プロパティを追加するときに、データ メンバを選択します。これにより、新しいプロファイル プロパティが収集するデータの格納先となる Commerce Server データベース内の場所に、そのプロファイル プロパティがマップされます。
システムの全般的な設定
  • システム管理者は、測定単位、通貨オプション、支払いオプション、Web サイトの登録とセキュリティのオプションなどのシステム設定を行います。ビジネス デスクのユーザーは、これらのオプションや設定の変更をシステム管理者と調整する必要があります。

関連項目

ビジネス デスクのコンポーネント

Commerce Server の構成とビジネス デスク

最初にすべきこと

さらにヘルプが必要な場合


データをインポートおよびエクスポートする

カタログ、メーリング リスト、およびユーザー リストのインポートやエクスポートを行うには、Commerce Server ビジネス デスクを使います。次の表は、インポートまたはエクスポートできるデータを示します。

モジュール | インポートまたはエクスポートできるデータ
カタログ エディタ | カタログ 外部ソースとの間で、拡張マークアップ言語 (XML) 形式またはカンマ区切り値 (CSV) 形式のカタログをインポートおよびエクスポートできます。カタログのインポートとエクスポートについては、「カタログをインポートする」と「カタログをエクスポートする」を参照してください。 カタログ プロパティ カタログ デザイナを使って、データ ウェアハウスにインポートして保存するカタログ プロパティを指定します。ビジネス デスクのユーザーは、システム管理者がデータ ウェアハウスにインポートしたカタログ プロパティに対してレポートを実行できます。
リスト マネージャ | ユーザー リストとメーリング リスト リスト マネージャ モジュールとの間で、静的または動的なユーザー リストとメーリング リストをインポートおよびエクスポートできます。リストのインポートとエクスポートについては、「リストをインポートおよびエクスポートする」を参照してください。
プロファイル デザイナ | プロファイル プロパティプロファイル デザイナを使って、データ ウェアハウスにインポートして保存するプロファイル プロパティを指定します。ビジネス デスクのユーザーは、システム管理者がデータ ウェアハウスにインポートしたプロファイル プロパティに対してレポートを実行できます。
レポート | 動的レポートを実行する場合は、レポートを Microsoft Excel にエクスポートして、Excel のスプレッドシートとして保存できます。 静的レポートはリスト マネージャにエクスポートできます。静的レポートをリスト マネージャにエクスポートすると、そのレポートに電子メール アドレスが含まれている場合は、ダイレクト メーラーにリストをインポートし、ダイレクト メール キャンペーンで使用できます。レポートにユーザー プロファイル情報が含まれている場合は、ユーザー モジュールにリストをインポートし、リスト内のユーザーのプロファイルを更新できます。

関連項目

カタログをインポートする

カタログをエクスポートする

リストをインポートおよびエクスポートする

さらにヘルプが必要な場合


キーボード ショートカットを使う

Commerce Server ビジネス デスクでは、マウスで実行する操作や編集の機能を、キーボード ショートカットでも実行できます。ショートカットを使って、ビジネス デスクで使用するすべての機能を実行できます。

ここでは、キーボード ショートカットについて説明します。また、キーボードを使ったビジネス デスクの操作に関するいくつかのヒントも示します。

Tab キー

キーボード ショートカットの表

Tab キー

Tab キーを使ってビジネス デスクの初期画面を移動する場合、最初はタブ フォーカスがナビゲーション ウィンドウ上に置かれています。タブ フォーカスを取得している画面要素は点線の枠で示されます。

Tab キーでナビゲーション ウィンドウの外に移動すると、タブ フォーカスはツール バーに移り、次にコンテンツ ウィンドウに移ります。タブを項目の一覧に置いたときは、方向キーを使って一覧の中を移動します。選択を確定するには Enter キーまたは Space キーを使います。

  • ドロップダウン メニュー (下向き矢印の付いたメニュー) から選択する場合は、方向キーを使って選択し、次に Enter キーを押します。

  • ドロップダウン メニューを開くには、Space キーを押します。

  • ボタンを使う場合は、そのボタンがフォーカスを取得するまで Tab キーを押し、次に Enter キーを押します。

  • Tab キーで前の画面要素に戻るには、Shift キーを押しながら Tab キーを押します。

ビジネス デスク モジュールを開くには

キーボードを使ってツール バーのボタンにアクセスするには

キーボードを使って項目のプロパティを開くには

ビジネス デスク モジュールを開くには

  1. ナビゲーション ウィンドウで、操作するビジネス デスク モジュールが含まれるカテゴリに Tab キーで移動し、次に Enter キーを押します。

  2. 操作するモジュール名に Tab キーで移動し、次に Enter キーを押します。

選択したモジュールが開きます。

キーボードを使ってツール バーのボタンにアクセスするには

  1. ナビゲーション ウィンドウで、追加または編集する項目が含まれるカテゴリに Tab キーで移動し、次に Enter キーを押します。

  2. 操作するモジュール名に Tab キーで移動し、次に Enter キーを押します。

  3. 使用するツール バーのボタンに Tab キーで移動し、次に Enter キーを押します。

開いたツール バーの機能を使って、変更や追加を行うことができます。

  4. 追加や変更を保存するには、Alt キーを押しながら S キーを押します。

注

  • Tab キーでドロップダウン リストを含むボックスに移動した場合は、Enter キーを押してドロップダウン リストからオプションを選択する必要があります。↑キーと↓キーを使ってオプションを選択し、次に Enter キーを押します。

  • 1 つ前のボックスに戻るには、Shift キーを押しながら Tab キーを押します。

いくつかの画面要素に、同じショートカット キーが割り当てられていることがあります。たとえば、ナビゲーション ウィンドウの注文モジュールと、ツールバーの 開く は、どちらも Alt キーを押しながら O キーを押すショートカット キーを共有しています。このような場合、ショートカット キーを使うと、まず最初の画面要素がアクティブになり、もう 1 度ショートカット キーを使うと次の画面要素がアクティブになります。

キーボードを使って項目のプロパティを開くには

  1. ナビゲーション ウィンドウで、操作する項目が含まれるカテゴリに Tab キーで移動し、次に Enter キーを押します。

  2. 操作するモジュールに Tab キーで移動し、次に Enter キーを押します。選択したモジュールが開きます。

  3. コンテンツ ウィンドウの項目の一覧に Tab キーで移動し、↑キーと↓キーを使って項目にフォーカスを合わせます。

  4. Enter キーを押します。項目が強調表示されます。

Tab キーでツール バーの 開く に移動し、次に Enter キーを押します。

  1. その項目のプロパティが表示され、プロパティを参照したり変更を加えることができます。

キーボード ショートカットの表

ビジネス デスクには、マウスを使わずに操作を行うためのキーボード ショートカットが用意されています。次の表は、ビジネス デスク内で頻繁に使用するキーボード ショートカットを示します。また、ツール バーのボタンのキーボード ショートカットは、目的のボタンの上にマウス ポインタを置くと表示されます。この操作によって、ツール バーのボタンに関するヒントが表示されます。

操作 | ショートカット
[開く] | Alt + O
[検索] | Alt + F
[新規] | Alt + N
[保存] | Alt + S
[保存して戻る] | Alt + K
[保存して新規作成] | Alt + N
[削除] | Alt + D
[コピー] | Alt + C
[プロパティの表示] | Alt + V
[ヘルプの表示] | Alt + ?
[戻る] | Alt + B
[レポートの実行] | Alt + R
[エクスポート] | Alt + E
[インポート] | Alt + I

関連項目

ツール バーのボタンを使う

ビジネス デスク オンライン ヘルプを使う

ビジネス デスクを操作する

さらにヘルプが必要な場合


最初にすべきこと

Web サイトを開設してビジネスを始める前に、ビジネス マネージャまたはサイト開発者は、Commerce Server ビジネス デスクを使って次の作業を行う必要があります。

  1. カタログを作成する 既存のカタログをインポートすることも、カタログ スキーマを作成することもできます。
    • カタログをインポートする インポートするカタログの名前と場所をシステム管理者に問い合わせます。メインの Commerce Server コンピュータにあるカタログのフルパス名が必要です (C:\Commerce Server\Catalogs\SportsCatalog.xml など)。

    • カタログ スキーマを作成する インポートする既存のカタログがない場合は、カタログ スキーマを作成する必要があります。カタログ スキーマを作成する前に、カタログの構成を計画することをお勧めします。
  2. 商品の価格を設定する

  3. カタログを更新および公開する

  4. 送料をカスタマイズする Commerce Server による送料の計算を、商品の重量、ユーザーが購入した数量、購入金額の小計のいずれに基づいて行うか指定する必要があります。

これらの手順を実行した後、Web サイトを開設してビジネスを始めることができます。さらに、サイトに合わせてビジネス デスクを構成する方法を理解するために、次の手順を実行することをお勧めします。

[キャンペーン] で、次の作業を行います。

  • 参照テーブルを設定する 参照テーブルには、業種コード、ページ グループ、およびコンテンツ サイズが格納されます。Commerce Server には、一般的な業種コードとコンテンツ サイズがいくつか用意されています。

[分析] で、次の作業を行います。

  1. 既存のレポートを調べて、ニーズが満たされているかどうかを確認します。Commerce Server に付属するレポートの一覧については、「Commerce Server のレポート」を参照してください。ほかのレポートが必要な場合は、カスタム レポートを作成するか、またはサイト開発者に依頼します。新しいレポートの作成については、「新しい動的レポートを作成する」を参照してください。

  2. システム管理者に問い合わせて、データがデータ ウェアハウスにインポートされる日時を確認します。システム管理者は、担当者がレポートを実行する前に、データをデータ ウェアハウスにインポートしておく必要があります。

  3. システム管理者に問い合わせて、セグメント モデルが構築される日時を確認します。システム管理者は、担当者がセグメント モデルを表示する前に、セグメント モデルを構築しておく必要があります。

[ユーザー] で、次の作業を行います。

  1. 既存のプロファイル定義を調べて、ニーズが満たされているかどうかを確認します。Commerce Server に付属するプロファイル定義の一覧については、「サンプルのプロファイル定義」を参照してください。プロファイル定義を追加する場合は、システム管理者に依頼します。プロファイル定義にプロパティを追加する方法については、「プロファイル定義にプロパティを追加する」を参照してください。

  2. 既存のサイト用語を調べて、ニーズが満たされているかどうかを確認します。サイト用語を追加する方法については、「サイト用語を追加する」を参照してください。


一般的な作業

サイトを開設した後で、次の作業を頻繁に実行する必要があります。

  • ユーザー パスワードをリセットする

  • 注文を検索する、並べ替える

  • 商品の価格を設定する

  • 商品価格に割引を適用する

  • 広告または割引の対象を指定する

  • レポートを実行する

  • 静的レポートをエクスポートする

  • 組織を追加する

  • サイト用語を追加する


例 : 成功へのビジネス サイクル

Commerce Server ビジネス デスクを使ってビジネスを分析したら、その分析の結果を使って、サイトをより効果的で、ユーザーの要望に即したものにします。サイトが、ユーザーの要望に即し、より有益で便利なものになれば、ユーザーの信頼を得て、サイトへの訪問回数の増加につながります。この "成功へのビジネスサイクル" の機能は、ユーザー データを収集し、それを分析して、対象化の条件を満たすユーザーに情報を配信することです。この機能は、訪問者を購入者に変え、さらに購入者をリピート ユーザーに変えることによって、Web サイト ビジネスに直接的な効果をもたらします。

Commerce Server には、サイトの利用状況を分析し、サイトを更新するためのさまざまな手段が用意されています。ここでは、 成功へのビジネス サイクルの 1 つのシナリオとして、ユーザー プロファイル データをカスタマイズし、ユーザー情報を分析して、対象化の条件を満たすユーザーに向けたダイレクト メール キャンペーンを作成する方法について説明します。

手順 1: プロファイル定義にプロパティを追加する

手順 2: プロファイルの変更を Web サイトに発行する

手順 3: 新しいプロパティを持つユーザーを追加する

手順 4: 静的レポートを実行する

手順 5: リストに静的レポートをエクスポートする

手順 6: ダイレクト メール キャンペーンを作成する

手順 1: プロファイル定義にプロパティを追加する

プロファイル デザイナ モジュールを使って、ユーザーに関して収集するデータを指定します。収集するデータを指定するには、ユーザー プロファイル定義にプロパティを追加します。たとえば、"favorite color" などのプロパティを追加した後で、このプロパティを使って青色が好きなユーザーを特定し、これらのユーザーを青色の商品の対象に指定することができます。

ユーザー プロファイルに新しいプロパティを追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

[プロファイル] 画面で、プロファイル定義として [ユーザー オブジェクト] を選択し、ツール バーの 開く をクリックします。

  1. [プロファイル] 画面で、[プロパティ] ボックスの一覧の [一般情報] をクリックし、[追加] をクリックします。

  2. [追加] ダイアログ ボックスの [プロパティの新規追加] をクリックし、[OK] をクリックします。

  3. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | プロパティの名前を入力します (例 : FavoriteColor)。
    [表示名] | プロパティの表示名を入力します (例 : Favorite Color)。

  4. [詳細属性] セクションで、次の操作を行います。
    項目 | 操作
    [アクティブ] | [はい] が選択されていることを確認します。
    [データへのマップ] [データへのマップ] ボックスの省略記号 [...] ボタンをクリックして、[データ ソースの選択] ダイアログ ボックスを開きます。

    [データ ソースの選択] ダイアログ ボックスで、[プロファイル サービスの SQL ソース] を選択します。次に [ユーザー オブジェクト] を選択し、下にスクロールして [カスタム プロパティ 1] を選択します。

    プロパティをデータ ソースにマップしない場合、ユーザー モジュールや組織モジュールでそのプロパティを編集することはできません。

  5. [OK] をクリックし、次に [適用] をクリックします。

プロパティを保存して [プロファイル デザイナ] 画面に戻るには、ツール バーの 保存して閉じる をクリックします。

新しいプロパティがプロファイル定義に追加されます。これで、プロファイルの変更が Web サイトに発行されます。

手順 2: プロファイルの変更を Web サイトに発行する

プロファイル定義にプロパティを追加した後、プロファイルの発行モジュールを使って、プロファイルの変更を Web サイトに発行します。

プロファイルの変更を発行するには

  1. [ユーザー] の [プロファイルの発行] をクリックします。

[プロファイルの発行] 画面で、発行先のサイトを選択し、ツール バーの 変更をサイトに発行し、キャッシュを更新 をクリックします。

プロファイルの変更が更新され、Web サイトで利用できるようになります。これで、新しいプロファイルを持つユーザーを追加できるようになります。

手順 3: 新しいプロパティを持つユーザーを追加する

ユーザー モジュールを使って、登録済みユーザーのユーザー プロファイル情報を追加します。ここでは、手順 1 で追加した "Favorite Color" プロパティをはじめとするユーザー プロファイル情報を入力します。

新しいプロファイルを持つユーザーを追加するには

  1. [ユーザー] の [ユーザー] をクリックします。

[ユーザー] 画面で、ツール バーの 新しいユーザー をクリックします。

  1. [新しいユーザー] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 新しいユーザーのログオン名を入力します。
    [ユーザー パスワード] | 新しいユーザーのパスワードを入力します。
    [電子メール] | 新しいユーザーの電子メール アドレスを入力します。
    [姓] | 新しいユーザーの姓を入力します。
    [名] | 新しいユーザーの名を入力します。
    [Favorite Color] | 「青」と入力します。

新しいユーザーを保存して [ユーザー] 画面に戻るには、ツール バーの 保存してユーザー リストに戻る をクリックします。

ユーザーが Commerce Server データベースに追加されます。これで、ユーザーのプロファイル情報に基づいてユーザーを対象化できるようになります。

手順 4 : 静的レポートを実行する

ユーザーとサーバーの利用状況に関する情報を含むデータがデータ ウェアハウスに格納された後、システム管理者はこの情報を Microsoft SQL Server Enterprise Manager にインポートします。ログ ファイルのインポート後、分析モジュールを使って、ユーザーの特性や過去の操作を調べるレポートを実行してユーザー データを分析します。これで、それらのユーザーが広告や商品の対象になるようにサイトを更新できるようになります。たとえば、登録済みユーザーのプロパティ レポートを実行し、レポートの情報を分析して、ダイレクト メール キャンペーンの対象に指定するユーザーを選択できます。

静的レポートを実行するには

  1. [分析] の [レポート] をクリックします。

利用できるレポートの一覧の [登録済みユーザーのプロパティ] を選択し、ツール バーの <レポート名> の実行 をクリックします。

  1. [レポートの実行] ダイアログ ボックスの [サイト名] セクションで、次の操作を行います。
    項目 | 操作
    [オペランド] | ドロップダウン リストから、レポートの対象となるサイトを判別するオペランド ([すべて]、[等しい]、[等しくない]、[同様である]、[同様ではない]) を選択します。
    [パラメータ値] | レポートの対象となるサイトの名前を入力します。

  2. [レポートの実行] ダイアログ ボックスの [ユーザー数] セクションで、次の操作を行います。
    項目 | 操作
    [選択] ドロップダウン リストから、レポートに含めるユーザー数のパラメータを選択します。
    • [すべて] クエリの条件を満たす Commerce Server データベースのすべてのユーザー。

    • [最上位] クエリの条件を満たす Commerce Server データベースのユーザー数の上限。上限のユーザー数を [パラメータ値] ボックスに入力します。

    • [一意な項目] クエリの条件を満たす Commerce Server データベースの特定のユーザー。
    [パラメータ値] | レポートが返すユーザー数の上限を入力します。

  3. [OK] をクリックします。

静的レポートが実行されます。完了すると、完成したレポート モジュールで表示できます。これで、レポートをリストとしてリスト マネージャにエクスポートし、ダイレクト メール キャンペーンの対象に指定するユーザーの選択に使用できます。

手順 5: リストに静的レポートをエクスポートする

静的レポートのデータは、ダイレクト メール キャンペーンで使用できます。リスト マネージャに格納されているメーリング リストを使うと、ダイレクト メール キャンペーンの対象として特定のユーザーを指定することができます。

静的レポートをエクスポートするには

  1. [分析] の [レポート] をクリックします。

[レポート] ボックスの一覧から、[登録済みユーザーのプロパティ] などの、エクスポートするデータが含まれる静的レポートを選択し、ツール バーの <レポート名> のエクスポート をクリックします。

  1. [レポートの実行] ダイアログ ボックスの [サイト名] セクションで、次の操作を行います。
    項目 | 操作
    [オペランド] | ドロップダウン リストから、レポートの対象となるサイトを判別するオペランド ([すべて]、[等しい]、[等しくない]、[同様である]、[同様ではない]) を選択します。
    [パラメータ値] | レポートの対象となるサイトの名前を入力します。

  2. [レポートの実行] ダイアログ ボックスの [ユーザー数] セクションで、次の操作を行います。
    項目 | 操作
    [選択] ドロップダウン リストから、レポートに含めるユーザー数のパラメータを選択します。
    • [すべて] クエリの条件を満たす Commerce Server データベースのすべてのユーザー。

    • [最上位] クエリの条件を満たす Commerce Server データベースのユーザー数の上限。上限のユーザー数を [パラメータ値] ボックスに入力します。

    • [一意な項目] クエリの条件を満たす Commerce Server データベースの特定のユーザー。
    [パラメータ値] | レポートが返すユーザー数の上限を入力します。

  3. [OK] をクリックします。

  4. [レポートをリストとしてエクスポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [静的] | [静的] が選択されていることを確認します。
    [リスト名] | リストの一意の名前を入力します。

  5. [OK] をクリックします。

静的レポートがリストとしてリスト マネージャにエクスポートされます。これで、リストを使ってダイレクト メール キャンペーンを作成できるようになります。

手順 6: ダイレクト メール キャンペーンを作成する

ダイレクト メール キャンペーンは、ユーザーに広告を見てもらうための手段です。キャンペーン モジュールを使ってダイレクト メール キャンペーンを作成します。リスト マネージャに格納されているメーリング リストを使うと、ダイレクト メール キャンペーンの対象として特定のユーザーを指定することができます。これらのリストを使ってダイレクト メール ジョブを実行すれば、メールの送信対象となるユーザーを効率的に特定できます。

次の手順は、顧客とキャンペーンが既に作成済みであることを前提にしています。

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

[キャンペーン マネージャ] 画面で、作成するダイレクト メール キャンペーンの対象となるキャンペーンを選択し、ツール バーの 新しいキャンペーン項目 をクリックします。次に、ドロップダウン リストの [新しいダイレクト メール] をクリックします。

  1. [ダイレクト メールのプロパティ] 画面の [ダイレクト メール項目] セクションで、次の操作を行います。
    項目 | 操作
    [ダイレクト メール名] | ダイレクト メール ジョブの名前を入力します。
    [送信元電子メール アドレス] | ダイレクト メールの送信元のアドレスを入力します。
    [返信先電子メール アドレス] 返信先が既定のアドレスと異なる場合に、返信先のアドレスを入力します。

    特に指定しない限り、このボックスにはダイレクト メールの送信元のアドレスが入ります。
    [メッセージの件名] | このダイレクト メール ジョブの件名を入力します。
    [メッセージ本文を含むファイル パスまたは URL] | ダイレクト メール メッセージの表示に使用するファイルのパスまたは URL を入力します。
    [アタッチメント] メッセージと共に送信するアタッチメントのファイル パスと名前を入力します。

    アタッチメントを送信しない場合は、このボックスを空のままにします。
    [メーリング リスト] | このダイレクト メール キャンペーンで使用するメーリング リストをドロップダウン リストから選択します ([登録済みユーザーのプロパティ] など)。
    [ユーザーごとにパーソナライズするダイレクト メール] ドロップダウン リストの [はい] または [いいえ] をクリックします。
    • [はい] このダイレクト メール キャンペーンのパーソナライズを有効にします。

    • [いいえ] このダイレクト メール キャンペーンのパーソナライズを無効にします。
    [メールの形式] このメールの形式を選択します。

    選択できるオプションは次のとおりです。

    • [テキスト] メールの形式を ASCII 形式に設定します。

    • [MHTML] メールの形式を多言語 HTML に設定します。

    • [MIME] メールの形式を Multipurpose Internet Mail Extensions (MIME) に設定します。
    [コメント (メッセージには含まれない)] | このダイレクト メール ジョブに関するコメントを必要に応じて入力します。

ダイレクト メール キャンペーンを保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

ダイレクト メール キャンペーンがキャンペーン マネージャに追加され、指定したメーリング リストからユーザーにメールが送信されて、ループが閉じます。


ビジネス デスクのオンライン ヘルプを使う

Commerce Server ビジネス デスクからヘルプを参照するには、 ヘルプの表示 をクリックします。必要に応じて、あらゆる画面と作業についてのヘルプが表示されます。

ビジネス デスクには、ダイアログ ボックス レベルのヘルプと作業のヘルプの両方が用意されています。ダイアログ ボックス レベルのヘルプは、特定のテキスト ボックスで必要なエントリを示します。作業のヘルプは、特定の作業の手順を順序立てて示します。Commerce Server 2000 には、システム管理者やサイト開発者向けに書かれたマニュアルも用意されています。

トピックを印刷する

[目次] タブ

[キーワード] タブ

[検索] タブ

用語集の用語

トピックを印刷する

  • 印刷するトピックをマウスの右ボタンでクリックし、[印刷] をクリックします。

  • ポップアップされたトピックを印刷するには、ポップアップ ウィンドウの内側をマウスの右ボタンでクリックし、[印刷] をクリックします。

  • ブックに含まれるすべての項目を印刷するには、[目次] タブで目的のブックを選択します。ヘルプのツール バーの [オプション] をクリックし、[印刷] をクリックして、[選択された見出しおよびすべてのサブトピックを印刷] をクリックします。

注

  • 大きな図を印刷すると、全体を印刷できない場合があります。図が非常に大きい場合、コードや図の右端で余白の境界を超えた部分は印刷されません。

[目次] タブ

ビジネス デスクのヘルプの最初のウィンドウで、[目次] タブをクリックし、ビジネス デスクのヘルプの目次を表示します。トピック名をクリックしてそのトピックを表示するか、またはプラス記号 (+) をクリックしてトピックを展開します。トピックは、ヘルプ ウィンドウの右側にあるコンテンツ ウィンドウに表示されます。

現在選択されているトピック、または現在選択されているトピックとすべてのサブトピックを印刷するには、 目次からトピックまたはノードを印刷します をクリックします。[同期] をクリックして、目次を右側のコンテンツ ウィンドウと同期させることもできます。検索を実行した後は、目次をコンテンツ ウィンドウと同期させる必要があります。

[キーワード] タブ

ビジネス デスクのオンライン インデックスを表示するには、[キーワード] タブをクリックします。

[キーワード] タブで語句を検索するには

  1. [ビジネス デスク ヘルプ] ウィンドウで、[キーワード] タブをクリックします。

  2. [キーワードを入力してください] ボックスに、検索するに使用するキーワードまたは語句を入力します。入力したキーワードまたは語句に最も近い語句が自動的に表示されます。

  3. 一致する語句が見つかったら、[表示] をクリックします。その語句を含むトピックの一覧が [該当するトピック] ボックスに表示されます。

  4. 目的の情報を見つけるには、トピックを選択し、[表示] をクリックします。トピックがコンテンツ ウィンドウに表示されます。

[検索] タブ

ビジネス デスクのヘルプで特定のキーワードまたは語句を検索するには、[検索] タブをクリックします。

キーワードまたは語句を検索するには

  1. [ビジネス デスク ヘルプ] ウィンドウで、[検索] タブをクリックします。

  2. [検索文字列] ボックスに、検索に使用するキーワードまたは語句を入力し、[検索開始] をクリックします。結果の一覧がコンテンツ ウィンドウに表示されます。

    [検索タイプの選択] ボックスを使うと、検索の種類を選択できます。特に指定しない限り、入力したとおりの語句が検索されます。選択できる種類は次のとおりです。

    検索の種類

            説明

    [完全一致]

            入力した文字列と正確に一致する語句を検索します。たとえば、「Business Desk」と入力した場合は、"Business Desk" という語句が含まれるトピックだけが検出されます。

    [標準検索]

            入力した語句のすべての形態を検索します。たとえば、「Business Desk」と入力した場合は、"business" を含むトピックと "desk" を含むトピックがすべて検出されます。

  3. 参照するトピックを表示するには、トピックの見出しをクリックします。

トピックがコンテンツ ウィンドウに表示されます。

用語集の用語

ビジネス デスクのヘルプ トピックがコンテンツ ウィンドウに表示されるときに、いくつかの語句が緑色で強調表示されることがあります。強調表示されている語句をクリックすると、その用語の定義が表示されます。また、ビジネス デスクの目次の末尾にある [用語集] では、これらの用語が (英語の単語はアルファベット順に、日本語の単語は五十音順に) 一覧表示されます。


さらにヘルプが必要な場合

ニーズに応じて Commerce Server ビジネス デスクを使用したりカスタマイズする場合、さらにヘルプが必要なときは、システム管理者またはサイト開発者に問い合わせてください。次の表は、それぞれが担当する作業を示します。

担当者 作業内容
システム管理者
  • カタログをインポートおよびエクスポートする場合に使用する共有フォルダを作成する。

  • 外部カタログをインポートできるように、XML ファイルまたは CSV ファイルに変換する。

  • BizTalk Server を使ってカタログを交換できるように、取引先を設定する。

  • レポートを実行できるように、データ ウェアハウスにデータをインポートする。

  • セグメント ビューアで表示できるように、セグメント モデルを構築する。

  • 追加のプロファイルデータを収集できるように、新しいプロファイル定義とデータ ソースを追加する。

  • ビジネス デスク モジュールのセキュリティを設定する。

  • ダイレクト メール ジョブのスケジュールを設定する。

  • ビジネス デスクのトラブルシューティングを行う。

  • Web サイト環境のトラブルシューティングを行う。
サイト開発者
  • Web サイトを既存のシステムと統合する。

  • ビジネス デスクの機能をカスタマイズする。

  • ビジネス デスクに新しいモジュールを追加する。

  • クロスセル項目やアップセル項目などの関連セル機能をサイトに追加する。

  • ページ グループを対象に指定できるように、Web ページでの広告表示を有効にする。

  • カスタム レポートを作成する。

  • データ ウェアハウスを拡張する。


ビジネス デスク チュートリアル

Microsoft Commerce Server 2000 には、Web 用の電子商取引アプリケーションの構築に役立つ包括的なツール群が用意されています。このチュートリアルでは、Commerce Server を使って Web サイトを管理する方法を順を追って説明していきます。

  • B to C サイトのチュートリアル

  • B to B サイトのチュートリアル

Web サイトのさまざまな側面の管理には、Commerce Server ビジネス デスクに含まれるモジュールを使います。


B to C サイトのチュートリアル

B to C (Retail) ビジネス デスクのチュートリアルでは、Commerce Server の機能を使って、カタログのインポートと作成、ユーザー プロファイルの管理、広告キャンペーンの作成、対象となるサイト ユーザー層の設定、サイトの利用状況の分析、およびレポートの実行を行う手順を、わかりやすく説明していきます。

このチュートリアルでは、Retail ソリューション サイトで次の実習を行います。Retail ソリューション サイトの場所については、システム管理者に問い合わせてください。実習は、ここに示す順序で実行することが重要です。それぞれの実習を実行するには、それ以前の実習を既に実行していることが必要です。

  • 送付方法と税率を追加する

  • カタログを作成する

  • サイト用語を作成する

  • 新しいプロファイルを持つユーザーを追加する

  • カタログのインポート、およびフリー テキスト検索と条件指定検索を実行する

  • 広告キャンペーンを作成する

  • 対象式を作成する

  • 割引キャンペーンを作成する

  • ログ ファイルをインポートする

  • 動的レポートを実行する

  • 静的レポートを実行する

  • 静的レポートをエクスポートする

  • ダイレクト メール キャンペーンを作成する


送付方法と税率を追加する

Commerce Server ビジネス デスクの注文モジュールを使うと、注文状況に関する情報の表示、送付方法の追加と変更、および国/地域、都道府県/州に合わせた税率の設定を行うことができます。

ここの実習では、送付方法の追加、代金の小計を基準にした送料の追加と編集、および税率の設定を行います。

送付方法を追加するには

  1. [スタート] メニューまたはデスクトップから Commerce Server ビジネス デスクを開きます。

  2. [注文] の [送付方法] をクリックします。

  3. [送付方法] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [代金で課金] をクリックします。

  4. [代金で課金 - 新規] 画面の [送付方法プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「Vigor Airlines」と入力します。
    [説明] | 「We'll ship anything」と入力します。
    [有効] | [送付方法を有効にする] チェック ボックスがオンになっていることを確認します。

  5. [料金] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [代金 (～まで)] | 「1000」と入力します。
    [送料] | 「500」と入力します。

  6. [確認] をクリックします。

  7. ほかの送料を追加するために、[新規] をクリックし、次の操作を行います。
    項目 | 操作
    [代金 (～まで)] | 「2000」と入力します。
    [送料] | 「1000」と入力します。

  8. [確認] をクリックします。

  9. 次の操作を行い、2000 を超える代金に対する送料を追加します。
    項目 | 操作
    [代金 (～まで)] | [2000 を超える] をダブルクリックします。
    [送料] | 「1500」と入力します。

  10. [確認] をクリックします。

代金の小計を基準にした新しい送料が定義されます。

送料を編集するには

  1. [代金で課金 - 新規] 画面の [料金] セクションで、次の操作を行います。
    項目 | 操作
    [代金 (～まで)] | [2000] を選択し、[編集] をクリックします。
    [送料] | [1000] をクリックし、送料を「1050」に変更します。

  2. [確認] をクリックします。

  3. 新しい送料を保存して [送付方法] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

送料が保存され、Retail サイトでの購入に対して代金の小計を基準に送料が適用されます。

税率を追加するには

  1. [注文] の [税率] をクリックします。

  2. [税] 画面の [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [国/地域] | ドロップダウン リストの [日本] をクリックします。
    [都道府県/州] | ドロップダウン リストの [すべての都道府県/州] をクリックします。
    [税率 (%)] | 「5」と入力します。

  3. [確認] をクリックします。

  4. 新しい税率を保存して [ビジネス デスクへようこそ！] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

税率が保存され、購入した商品に対して適用されます。


カタログを作成する

商品データの追加と更新、および商品のカタログの作成には、カタログ モジュールを使います。カタログは、2 つの主要な要素カタログ スキーマおよびカタログ データで構成されます。カタログを作成する場合は、最初にカタログ スキーマを作成し、その後でカタログ データを追加します。カタログ スキーマはカタログの構造を規定します。カタログ データはカタログの内容です。

カタログ データは、次のような階層型のグループに分類されます。

  • カテゴリは、商品またはサブカテゴリのコンテナです。各カテゴリは、カテゴリ定義の個々のインスタンスです。

  • 商品は、カタログ内の項目です。各商品は、商品定義の個々のインスタンスです。密接に関連する商品のグループが、商品グループを構成します。

  • 商品は、プロパティ定義の組み合わせで定義されます。たとえば、Shirts (シャツ) という名前の商品定義に Color (色)、Length (長さ)、Size (サイズ) というプロパティが定義されている場合、それぞれの色、長さ、およびサイズを組み合わせた商品を作成し、カタログに入れることができます。

  • 商品バリエーションは、関連性のあるバリエーションでグループ化され 1 つの商品を形成する特定の項目です。

この実習では、カタログ デザイナ モジュールを使って、プロパティ定義と商品定義を作成し、カタログに新しい商品を追加します。プロパティ定義はカタログ内の商品を描写するプロパティを定義し、商品定義は特定の種類の商品を定義します。

プロパティ定義を作成するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ:カテゴリ定義] 画面で、次の操作を行います。ツール バーの 表示 をクリックし、ドロップダウン リストの [プロパティ定義] をクリックします。

  3. [カタログ デザイナ:プロパティ定義] 画面で、次の操作を行います。ツール バーの 追加 をクリックし、ドロップダウン リストの [テキスト] をクリックします。

  4. [プロパティ定義: 新規 (テキスト)] 画面で、次の操作を行います。
    項目 | 操作
    [名前] | 「MyTitle」と入力します。
    [表示名] | 「マイタイトル」と入力します。
    [商品リストに表示] | [はい]チェック ボックスをオンにし、商品リストにプロパティ定義を表示します。

  5. 新しいプロパティ定義を保存してほかのプロパティ定義を作成するために、ツール バーの 保存して新規作成 をクリックします。

  6. [新規プロパティ定義] ダイアログ ボックスで、[種類] ボックスの [テキスト] をクリックし、[継続] をクリックします。

  7. [プロパティ定義: 新規 (テキスト)] 画面で、次の操作を行います。
    項目 | 操作
    [名前] | 「MyAuthor」と入力します。
    [表示名] | 「マイオーサー」と入力します。

  8. 新しいプロパティ定義を保存してほかのプロパティ定義を作成するために、ツール バーの 保存して新規作成 をクリックします。

  9. [新規プロパティ定義] ダイアログ ボックスで、[種類] ボックスの [テキスト] をクリックし、[継続] をクリックします。

  10. [プロパティ定義: 新規 (テキスト)] 画面で、次の操作を行います。
    項目 | 操作
    [名前] | 「MyISBN」と入力します。
    [サイトに表示] | [はい] チェック ボックスをオンにします。
    [表示名] | 「マイアイエスビーエヌ」と入力します。
    [フリー テキスト検索可能] | [はい] チェック ボックスをオフにします。
    [条件指定検索可能] | [はい] チェック ボックスをオフにします。
    [最小文字数] | 「10」と入力します。
    [最大文字数] | 「20」と入力します。
    [データ ウェアハウスにエクスポート] | [はい] チェック ボックスをオンにします。

  11. プロパティ定義を保存して [カタログ デザイナ: プロパティ定義] 画面に戻るには、ツール バーの 保存して新規作成 をクリックします。

新しいプロパティ定義が保存されます。これで商品定義を追加できるようになります。

商品定義を追加するには

  1. [カタログ デザイナ: プロパティ定義] 画面で、次の操作を行います。ツール バーの 表示 をクリックし、ドロップダウン リストの [商品定義] をクリックします。

  2. [カタログ デザイナ: 商品定義] 画面で、次の操作を行います。ツール バーの 追加 をクリックします。

  3. [[商品定義: 新規] 画面で、次の操作を行います。[商品定義プロパティ] セクションの、[名前] ボックスに「マイブック」と入力します。

  4. [商品プロパティ] セクションの [利用できるプロパティ] ボックスで、下にスクロールして [MyAuthor]、[MyISBN]、および [MyTitle] を表示します。Ctrl キーを押しながら [MyAuthor]、[MyISBN]、および [MyTitle] をクリックし、Ctrl キーを離します。

  5. [追加] をクリックします。

選択したプロパティが [割り当てられたプロパティ] ボックスに移動します。

  6. 新しい商品定義を保存して [カタログ デザイナ: 商品定義] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

商品定義 [マイブック] が [名前] ボックスに表示されます。

  7. 商品定義 [マイブック] をダブルクリックします。

商品定義 [マイブック] の下に、[Description(説明)]、[Name(名前)]、[Weight(重量)] の各プロパティのほかに、[MyAuthor]、[MyISBN]、[MyTitle] の各商品プロパティが表示されます。

新しいカタログを追加するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [新しいカタログ] をクリックします。

  3. [カタログ: 新規] 画面の [カタログ プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「蔵書」と入力します。
    [商品の一意の ID] | ドロップダウン リストの [MyISBN] をクリックします。
    [商品のバリエーションの一意の ID] | ドロップダウン リストの [MyISBN] をクリックします。

  4. ツール バーの 保存 をクリックして、カタログ プロパティを保存します。

カタログ プロパティが新しいカタログとともに保存されます。

部門 カテゴリ定義を基にした新しいカテゴリを追加するには

  1. [カテゴリ] セクションの [新規] をクリックします。

  2. [新しいカテゴリ] ダイアログ ボックスで、[部門] を選択し、[継続] をクリックします。

  3. [カテゴリ プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「ビジネス書籍」と入力します。
    [Description(説明)] | 「ビジネス関連書籍」と入力します。

  4. ツール バーの 保存して前の画面に戻る をクリックして、新しいカテゴリを保存し、[カタログ – 蔵書] 画面に戻ります。

    部門カテゴリ定義を基にしたビジネス書籍カテゴリが作成されます。

  5. ツール バーの 戻る をクリックして、[カタログ] 画面に戻ります。

蔵書カタログが [名前] ボックスに表示されます。これでこのカタログに新しい商品を追加できるようになります。

カタログに新しい商品を追加するには

  1. [カタログ] 画面で、[蔵書] カタログを選択し、ツール バーの 開く をクリックします。

  2. [商品] セクションの [新規] をクリックします。

  3. [新しい商品] ダイアログ ボックスで、[マイブック] を選択し、[OK] をクリックします。

  4. [商品プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [MyISBN] | 「1-2345-6789-0」と入力します。
    [Description(説明)] | 「Bill's latest thoughts」と入力します。
    [Name(名前)] | 「Business @ the Speed of Thought」と入力します。
    [MyAuthor] | 「Bill Gates」と入力します。
    [MyTitle] | 「Business @ the Speed of Thought」と入力します。
    [価格] | 「2000」と入力します。

  5. [割り当てられたカテゴリ] セクションの [利用できるカテゴリ] ボックスで、[ビジネス書籍] をクリックします。

  6. [追加] をクリックします。

この新しい書籍がビジネス書籍カテゴリに割り当てられます。

  7. カタログに新しい商品を保存して [カタログ - 蔵書] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

『Business @ the Speed of Thought』 という書籍が、新しい商品としてカタログに保存されます。これでほかの商品を追加できるようになります。

カタログにほかの商品を追加するには

  1. [商品] セクションの [新規] をクリックします。

  2. [新しい商品] ダイアログ ボックスで、[マイブック] を選択し、[OK] をクリックします。

  3. [商品プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [MyISBN] | 「2-3452-8892-9」と入力します。
    [Description(説明)] | 「Bill's first book」と入力します。
    [Name(名前)] | 「The Road Ahead」と入力します。
    [MyAuthor] | 「Bill Gates」と入力します。
    [MyTitle] | 「The Road Ahead」と入力します。
    [価格] | 「3000」と入力します。

  4. [割り当てられたカテゴリ] セクションの [利用できるカテゴリ] ボックスで、[ビジネス書籍] をクリッします。

  5. [追加] をクリックします。

  6. [商品の関係] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [関連付け] | 「Bill Gates の著書」と入力します。
    [項目] | 省略記号 [...] ボタンをクリックし、[商品の選択] ダイアログ ボックスを開きます。

  7. [商品の選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [カテゴリ] | [ビジネス書籍] を選択します。
    [カテゴリ内の商品] | [MyISBN 番号1-2345-6789-0, (Business @ the Speed of Thought)] をクリックします。

  8. [OK] をクリックします。次に [商品の関係] セクションの [確認] をクリックします。

書籍『Business @ the Speed of Thought』との関連付けが確立されます。

  9. ツール バーの 保存して前の画面に戻る をクリックして、カタログに新しい商品を保存して [カタログ - 蔵書] 画面に戻ります。

  10. [カタログ] 画面に戻るには、ツール バーの 戻る をクリックします。

『The Road Ahead』という書籍が新しい商品としてカタログに保存されます。新しい商品は Retail サイトのビジネス書籍カテゴリに表示されます。

  11. [カタログのフルテキスト インデックスの更新、カスタム カタログの発行、およびすべてのキャッシュの更新] をクリックします。

サイトでの確認の手順

Retail サイトで変更を確認するには

  1. Retail サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/retail」と入力します。

  2. ウィンドウの左側にある [ログイン] の下の [新しいユーザー] をクリックし、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「Joe Visitor」と入力します。
    [パスワード] | 「open_sesame」と入力します。
    [パスワードの確認] | 「open_sesame」と入力します。

  3. [送信] をクリックします。

  4. [ビジネス書籍] カテゴリをクリックし、[Business @ the Speed of Thought] をクリックします。次に [バスケットに追加] をクリックします。

  5. 画面ヘッダー セクションの [バスケット] をクリックし、[チェック アウト] をクリックします。

    「アドレス帳は空です。」というメッセージが表示されます。

  6. [ここをクリックして住所を追加してください。] をクリックし、次の操作を行います。
    項目 | 操作
    [住所名] | 「Joey」と入力します。
    [姓] | 「Visitor」と入力します。
    [名] | 「Joe」と入力します。
    [住所欄1] | 「笹塚 1-X-X」と入力します。
    [市町村] | 「渋谷区」と入力します。
    [都道府県/州] | 「東京都」と入力します。
    [郵便番号] | 「151-XXXX」と入力します。
    [国/地域] | ドロップダウン リストの [日本] をクリックします。

  7. [送信] をクリックします。

  8. [送付先] 画面で、[住所の選択] をクリックします。

  9. [送付オプション] 画面で、[チェック アウト] をクリックします。

次の画面に進めない場合は、ビジネス デスクの [注文] の [トランザクションの発行] で、キャッシュを選択して、[変更をサイトに発行し、キャッシュを更新] をクリックします。その後、Retail サイトで [更新] をクリックし、再度 [チェック アウト] をクリックします。

  10. 税率が注文の代金の小計の 5% になっていること、および送料が\1,050になっていることを確認し、[チェック アウト] をクリックします。

  11. [クレジット カード] 画面で、次の操作を行います。
    項目 | 操作
    [カード名] | カードの名義が Visitor Joe になっていることを確認します。
    [カード番号] | 「4111-1111-1111-1111」と入力します。
    種類 | ドロップダウン リストの [VISA] をクリックします。
    [有効期限 (月)] | ドロップダウン リストの [7 月] をクリックします。
    [有効期限 (年)] | ドロップダウン リストの [2003] をクリックします。

  12. 注文を完了するには、[送信] をクリックします。

[注文の確認] 画面が表示され、注文番号のリンクが有効になります。

商品プロファイルが追加した項目と一致することを確認するには

  1. ウィンドウの左側にある [顧客サービス] の下の [注文] をクリックし、[項目の詳細を表示] をクリックします。

  2. [注文の詳細] 画面で、次の項目を確認します。
    ボックス | 説明
    [名前] | Business @ the Speed of Thought
    [説明] | Bill's latest thoughts
    [商品 ID] | 1-2345-6789-0
    [数量] | 1
    [単価] | ¥2,000

  3. ブラウザ ウィンドウを閉じます。


サイト用語を作成する

サイトに関係する値を定義するには、サイト用語エディタ モジュールを使います。サイト用語を使うと、サイト全体で使われる値を標準化できます。サイト用語を使って、カタログ内の商品、コンテンツ、および広告の対象を、特定のサイト ユーザー層に限定することもできます。

この実習では、male (男性) および female (女性) というサイト用語を追加します。サイト用語を作成したら、ユーザー プロファイルにサイト用語を組み込んで、後でそのユーザー プロファイルに一致するサイト ユーザーを広告の対象に設定できるようにします。

サイト用語を作成するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、[追加] をクリックします。

  3. [追加] ダイアログ ボックスで、[グループの新規追加] を選択し、[OK] をクリックします。

  4. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「PersonalInfo」と入力します。
    [表示名] | 「個人情報」と入力します。

  5. [適用] をクリックします。

  6. [サイト用語の構成] ボックスで、[個人情報] を選択し、[追加] をクリックします。

  7. [追加] ダイアログ ボックスで、[新しいサイト用語の追加] を選択し、[OK] をクリックします。

  8. [サイト用語の属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「Gender」と入力します。
    [表示名] | 「性別」と入力します。

  9. [用語] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [用語の名前] | 「Male」と入力します。
    [表示名] | 「男性」と入力します。

  10. [確認] をクリックします。

  11. [用語] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [用語の名前] | 「Female」と入力します。
    [表示名] | 「女性」と入力します。

  12. [確認] をクリックし、次に [適用] をクリックします。

  13. ツール バーの 保存して前の画面に戻る をクリックして、サイト用語を保存して [ビジネス デスクへようこそ !] 画面に戻ります。

Male および Female というサイト用語が保存され、ユーザー プロファイルに追加できるようになります。

サイト用語をユーザー プロファイルに追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面の [名前] ボックスで、[ユーザー オブジェクト] を選択し、ツール バーの 開く をクリックします。

  3. [プロファイル: ユーザー オブジェクト] 画面の [プロパティ] ボックスで、[一般情報] を選択し、[追加] をクリックします。

  4. [追加] ダイアログ ボックスで、[プロパティの新規追加] を選択し、[OK] をクリックします。

  5. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「Gender」と入力します。
    [表示名] | 「性別」と入力します。
    [種類型] | ドロップダウン リストの [サイト用語] をクリックします。
    [型参照] | 省略記号 [...] ボタンをクリックし、[個人情報] をクリックします。次に、[性別] をクリックします。

  6. [OK] をクリックします。

  7. [詳細属性] セクションで、次の操作を行います。
    項目 | 操作
    [アクティブ] | [はい] チェック ボックスがオンになっていることを確認します。
    [データへのマップ] | 省略記号 [...] ボタンをクリックし、[データ ソースの選択] ダイアログ ボックスを開きます。

  8. [データ ソースの選択] ダイアログ ボックスで、[プロファイル サービスの SQL ソース] をクリックします。次に [ユーザー オブジェクト] を選択し、下にスクロールして [カスタム プロパティ 1(STRING)] をクリックします。

  9. [OK] をクリックします。

  10. [カスタム属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | [sUserAccess] を選択し、[編集] をクリックします。
    [値] | 値を「1」に変更します。

  11. [確認] をクリックし、次に [適用] をクリックします。

  12. ツール バーの 保存して前の画面に戻る をクリックすると、ユーザー プロファイルとともにサイト用語が保存され、 [プロファイル] 画面に戻ります。

プロファイル定義にプロパティを追加したら、変更を Web サイトに発行します。

Web サイトでプロファイルの変更を発行するには

  1. [ユーザー] の [プロファイルの発行] をクリックします。

  2. [プロファイルの発行] 画面で、変更を発行するサイトを選択し、ツール バーの 発行 をクリックします。

プロファイルの変更が更新され、Web サイトで利用できるようになります。


新しいプロファイルを持つユーザーを追加する

登録済みユーザーを管理するには、ユーザー モジュールを使います。登録済みユーザーとは、オンラインの登録フォームに記入したか、またはなんらかの方法でサイトにユーザー アカウントを開設したことによりサイトで認識される、Web サイト ユーザーです。

この実習では、前の実習で作成した Male (男性) および Female (女性) という新しいサイト用語を使って、2 人の新しいユーザーを追加します。

男性のユーザーを作成するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、ツール バーの 追加 をクリックします。

  3. [新しいユーザー] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 「JackUser」と入力します。
    [ユーザー パスワード] | 「open_sesame」と入力します。
    [電子メール] | 「JackUser@Microsoft.com」と入力します。
    [姓] | 「User」と入力します。
    [名] | 「Jack」と入力します。
    [性別] | ドロップダウン リストの [男性] をクリックします。

  4. 男性のユーザーを保存して新しいユーザーを作成するために、ツール バーの 保存して新規作成 をクリックします。

男性のユーザーが保存されます。これでほかの新しいユーザーを追加できるようになります。

女性のユーザーを作成するには

  1. [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 「JillUser」と入力します。
    [ユーザー パスワード] | 「open_sesame」と入力します。
    [電子メール] | 「JillUser@Microsoft.com」と入力します。
    [姓] | 「User」と入力します。
    [名] | 「Jill」と入力します。
    [性別] | ドロップダウン リストの [女性] をクリックします。

  2. 女性のユーザーを保存して [ユーザー] 画面に戻るために、ツール バーの 保存して前の画面に戻る をクリックします。

「男性」と「女性」のサイト用語を使った新しい男性ユーザーと女性ユーザーが保存されます。

サイトでの確認の手順

Retail サイトで変更を確認するには

  1. Retail サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/retail」と入力します。

  2. [Retail] 画面で、[ここをクリックしてゲスト訪問者としてサイトにアクセスしてください。] をクリックします。

  3. ウィンドウの左側にある [ログイン] の下の [サインイン] をクリックします。

  4. [サインイン] 画面で、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「JackUser」と入力します。
    [パスワード] | 「open_sesame」と入力します。

  5. [送信] をクリックします。

  6. ウィンドウの左側にある [顧客サービス] の下の [プロファイル] をクリックします。

  7. [一般情報] の下に、新しく作成したサイト用語 [性別] が表示されていることを確認します。

  8. ブラウザ ウィンドウを閉じます。


カタログのインポート、およびフリー テキスト検索と条件指定検索を実行する

カテゴリとカタログを処理するには、カタログ エディタ モジュールを使います。カタログ エディタ モジュールを使うと、カテゴリとカタログの作成、変更、および削除ができます。また、カタログをインポートすることもできます。カタログは、拡張マークアップ言語 (XML) ファイルとカンマ区切り値 (.csv) ファイルのいずれからもインポートできます。

この実習では、XML のカタログ ファイルをインポートします。次に、サイトを訪問してフリー テキスト検索と条件指定検索を実行し、検索条件に一致する商品、商品グループ、および検索可能なプロパティが設定されたバリエーションを持つ商品グループを表示します。検索条件に一致する商品が見つかったら、その商品をショッピング バスケットに追加します。

XML のカタログ ファイルを [Catalogs] フォルダにコピーするには

  1. CD-ROM のルートの \Tutorial フォルダにある Hardwarefull.xml ファイルを、<ドライブ名:>\Inetpub\wwwroot\retailbizdesk\Catalogs フォルダにコピーします。

  2. CD-ROM のルートの \Tutorial フォルダにある Booksfull.xml ファイルを、<ドライブ名:>\Inetpub\wwwroot\retailbizdesk\Catalogs フォルダにコピーします。

Hardwarefull.xml カタログ ファイルをインポートするには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ エディタ] 画面で、ツール バーの インポート をクリックし、ドロップダウン リストの [XML のインポート] をクリックします。

  3. [XML カタログのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ファイル名] | 「<ドライブ名>:\Inetpub\wwwroot\retailbizdesk\Catalogs\hardwarefull.xml」と入力します。
    [このカタログの既存のデータを削除する] | このチェック ボックスがオフになっていることを確認します。

  4. [OK] をクリックします。

  5. [ビジネス デスク: XML カタログのインポート] ダイアログ ボックスで、[OK] をクリックします。[XML カタログのインポート] ダイアログ ボックスで、[OK] をクリックします。

ハードウェア カタログがインポートされ、Retail サイトで利用できるようになります。

注

  • カタログは、まだカタログ エディタの [名前] ボックスには表示されません。

Booksfull.xml カタログ ファイルをインポートするには

  1. [カタログ エディタ] 画面で、ツール バーの インポート をクリックし、ドロップダウン リストの [XML のインポート] をクリックします。

  2. [XML カタログのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ファイル名] | 「<ドライブ名:>\Inetpub\wwwroot\retailbizdesk\Catalogs\Booksfull.xml」と入力します。
    [このカタログの既存のデータを削除する] | このチェック ボックスがオフになっていることを確認します。

  3. [OK] をクリックします。

  4. [ビジネス デスク: XML カタログのインポート] ダイアログ ボックスで、[OK] をクリックします。

書籍カタログがインポートされ、Retail サイトで利用できるようになります。

注

  • カタログは、まだカタログ エディタの [名前] ボックスには表示されません。

    カタログ エディタ モジュールを使って Web サイトでカタログを更新、発行します。変更を行った場合、変更が Web サイトに反映されるようにするには、カタログを更新、発行する必要があります。

カタログを更新および公開するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、ツール バーの カタログの公開 をクリックします。

Web サイトでカタログが更新、発行されます。

フリー テキスト検索を実行するには

  1. Retail サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/retail」と入力し、サイトにアクセスします。

  2. [商品検索] ボックスに「book」と入力し、[検索] をクリックします。

    [検索結果] 画面が開き、指定した検索条件に一致する次のような項目が表示されます。

    • 検索条件に一致する検索可能なプロパティが設定されたバリエーションを持つ商品。ここでは、商品 『The Road Ahead』 が表示されます。

    • 検索条件に一致する『The Road Ahead』を含む商品グループ。

    • 検索条件に一致する検索可能な商品プロパティの説明を持つ商品カテゴリ。

条件指定検索を実行するには

  1. [拡張] 検索リンクをクリックします。

    [ハードウェア] カタログと [書籍] カタログが含まれる [拡張検索] 画面が表示されます。

  2. [ハードウェア] カタログの下の [マウス] をクリックし、[検索] をクリックします。

    [これまでの該当件数: 7] というメッセージが表示されます。

  3. 検索条件を絞り込むには、[拡張検索] 画面で、次の操作を行います。
    項目 | 操作
    [Cordless] | [あり] を選択します。
    [OS] | [Win 9x] を選択します。
    [ScrollWheel] | [あり] を選択します。

  4. [検索] をクリックします。

    [該当件数: 1] というメッセージが表示されます。

検索条件によって、結果を [Microsoftｮ Cordless Wheel Mouse] の 1 件に絞り込みました。

商品バリエーションを表示するには

  1. [Microsoftｮ Cordless Wheel Mouse] をクリックします。

    バリエーションの一覧を下にスクロールします。商品が 2 つのバリエーションとともに表示されます。バリエーションのどちらかを選択し、ショッピング バスケットに追加できます。

  2. 2 番目のバリエーションである "Color (白)"、"SKU (C57-00001w)"、"価格 (\4,495)" をクリックします。

  3. [バスケットに追加] をクリックし、画面上部の [バスケット] ページへのリンクをクリックし、[バスケット] 画面を開きます。次に [チェック アウト] をクリックします。

  4. [送付先] フォームで、次の操作を行います。
    項目 | 操作
    [姓] | 「Jones」と入力します。
    [名] | 「Amy」と入力します。
    [住所欄 1] | 「笹塚 1-X-X」と入力します。
    [市町村] | 「渋谷区」と入力します。
    [都道府県/州] | 「東京都」と入力します。
    [郵便番号] | 「151-ＸＸＸＸ」と入力します。
    [国/地域] | ドロップダウン リストの [日本] をクリックします。

  5. [送信] をクリックします。

  6. [送付オプション] 画面で、[チェック アウト] をクリックします。

  7. [注文内容] 画面で、[チェック アウト] をクリックします。

  8. [クレジット カード] 画面で、次の操作を行います。
    項目 | 操作
    [カード番号] | 「4111-1111-1111-1111」 と入力します。
    [種類] | ボックスの 「VISA」をクリックします。
    [有効期限 (月)] | ドロップダウン カレンダーの [3 月] をクリックします。
    [有効期限 (年)] | ドロップダウン カレンダーの [2003] をクリックします。

  9. [送信] をクリックします。

    注文番号が表示されている[注文の確認] 画面が表示されます。

  10. ブラウザ ウィンドウを閉じます。


広告キャンペーンを作成する

マーケティング キャンペーンの作成およびスケジュールの設定には、Commerce Server ビジネス デスクのキャンペーン モジュールを使います。キャンペーン モジュールを使うと、広告キャンペーン、ダイレクト メール キャンペーン、および割引キャンペーンを作成することができます。また、キャンペーン モジュールでは、さまざまな顧客向けの各種キャンペーンを管理したり、キャンペーンの参照テーブル モジュールを使って、業種コードを設定することもできます。業種コードを使うと、広告や割引の関連業種を識別できるので、同じ業種内の顧客による 2 つの広告や割引が同一 Web ページに表示されるのを防ぐことができます。

この実習では、「書籍」という業種コードを追加します。次に、Lucerne Publishing という新しいキャンペーン顧客を追加し、さらに Bill's Books という名前の新しい広告キャンペーンを追加します。

参照テーブルに業種コードを追加するには

  1. キャンペーン の [参照テーブル] をクリックします。

  2. [参照テーブル] 画面の [業種コード] セクションで、[新規] をクリックします。

  3. [業種コード] ボックスに、「書籍」と入力します。

  4. [確認] をクリックします。

  5. 新しい業種コードを保存して [ビジネス デスクへようこそ！] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しい業種コードが保存されます。これで、2 つの広告が同一 Web ページの別々の本に対して表示されるのを防ぐことができます。

キャンペーン顧客を追加するには

  1. キャンペーン の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [新しい顧客] をクリックします。

  3. [キャンペーン マネージャ - 新規 (顧客)] 画面の [顧客プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「Lucerne Publishing」と入力します。
    [種類] | ドロップダウン リストの [広告主] をクリックします。
    [業種] | ドロップダウン リストの [書籍] をクリックします。

  4. 新しい顧客を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しい顧客が保存され、[キャンペーン マネージャ] 画面に表示されます。これで新しいキャンペーンを追加できるようになります。

キャンペーンを追加するには

  1. [キャンペーン マネージャ] 画面で、[Lucerne Publishing] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [新しいキャンペーン] をクリックします。

  3. [キャンペーン プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [キャンペーン名] | 「Bill's Books」と入力します。
    [開始日] | ドロップダウン カレンダーから昨日の日付を選択します。
    [終了日] | ドロップダウン カレンダーから、今日から 1 か月後の日付を選択します。
    [状態] | ドロップダウン リストの [アクティブ] をクリックします。

  4. [広告/キャンペーンの目標] セクションで、次の操作を行います。
    項目 | 操作
    [目標] | ドロップダウン リストの [広告の項目] をクリックします。
    [カウント方法] | ドロップダウン リストの [要求数] をクリックします。

  5. キャンペーンを保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

Bill's Books キャンペーンが保存され、この広告の項目のレベルに目標が設定されます。これで新しい広告を作成し、特定のユーザー層を対象に広告を表示できるようになります。


対象式を作成する

対象とするユーザー グループを定義するには、キャンペーン式モジュールを使います。このモジュールで定義したグループを対象に広告やダイレクト メールを実施したり、割引キャンペーンを適用することができます。

この実習では、すべての男性顧客を対象にした広告キャンペーンを作成します。「サイト用語を作成する」の実習で既に性別のプロパティを定義しているので、性別プロファイル プロパティを使って広告の対象を設定します。

注

  • この実習で、広告を表示には、[Retail] サイト フォルダに画像を置く必要があります 。

サイトに画像ファイルをコピーするには

  • CD-ROM のルートの \Tutorial フォルダにあるイメージ ファイルを、<ドライブ名:>\Inetpub\wwwroot\retail\images フォルダにコピーします。

対象式を作成するには

  1. キャンペーン の [キャンペーン式] をクリックします。

  2. [キャンペーン式: 対象式] 画面で、ツール バーの 追加 をクリックします。

  3. [対象式] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 「男性ユーザー」と入力し、[新規] をクリックします。
    [次の条件に基づく対象]
    • 1 番目のボックス ドロップダウン リストの [ユーザー オブジェクト] をクリックし、[一般情報] をクリックします。次に、[性別] を選択します。

    • 2 番目のボックス ドロップダウン リストの [が右の項目と等しい] をクリックします。

    • 3 番目のボックス 省略記号 [...] ボタンをクリックし、[男性] サイト用語の一覧をクリックします。次に、[OK] をクリックします。

  4. [適用] をクリックします。

  5. 式を保存するには、[保存] をクリックします。

式が保存され、広告は男性ユーザーを対象にできます。

対象グループを作成するには

  1. キャンペーン の [対象グループ] をクリックします。

  2. [対象グループ] 画面で、ツール バーの 追加 をクリックします。

  3. [対象グループ: 新規] 画面で、次の操作を行います。
    項目 | 操作
    [対象グループ名] | 「男性顧客」と入力し、[新規] をクリックします。
    [式] | ドロップダウン リストの [男性ユーザー] をクリックします。
    [アクション] | ドロップダウン リストの [適用] をクリックします。

  4. [確認] をクリックします。

  5. 対象グループを保存して [対象グループ] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

対象式 「男性ユーザー」 を使った対象グループが作成されます。

新しい広告を作成するには

  1. キャンペーン の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、[Lucerne Publishing] キャンペーンの横の矢印をクリックし、[Bill's Books] をクリックします。

  3. [キャンペーン マネージャ] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [新しい広告] をクリックします。

  4. [キャンペーン マネージャ - Lucerne Publishing - Bill's Books - 新規(広告)] 画面の [広告プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [広告名] | 「男性顧客対象広告」と入力します。
    [状態] | ドロップダウン リストの [アクティブ] をクリックします。
    [種類] | ドロップダウン リストの [有料広告] をクリックします。
    [要求数] | 「1000」と入力します。
    [表示上限回数] | ドロップダウン リストの [なし] をクリックします。
    [業種] | ドロップダウン リストの [書籍] をクリックします。

  5. [広告の対象] セクションで、次の操作を行います。
    項目 | 操作
    [ページ グループ] | 広告をすべての Retail サイト Web ページに表示するように、[すべてのページ グループで表示] チェック ボックスがオンになっていることを確認します。
    [対象グループ: 利用可能] | [男性顧客] をクリックし、次に [追加] をクリックして、グループを [割り当て] ボックスに移動します。

  6. 下にスクロールし、[広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | ドロップダウン リストの [フル バナー] をクリックします。
    [種類] | ドロップダウン リストの [イメージ] をクリックします。
    [イメージの保存場所] | 「http://<コンピュータ名>/Retail/Images/MSPress.gif」と入力します。
    [クリック時のリンク先] | 「http://MSPress.Microsoft.com」と入力します。

広告が定義されます。これで、広告をプレビューしてから運用サイトに送信できるようになります。

広告をプレビューするには

  1. [広告の表示] セクションで、[プレビュー] をクリックします。

  2. [プレビュー] ダイアログ ボックスで、[はい] をクリックしてキャンペーン項目を保存します。

    [プレビュー] ボタンの下の表示領域に広告のコピーが表示されます。

  3. [キャンペーン マネージャ] 画面に戻るには、ツール バーの 戻る をクリックします。

対象を設定した広告の状態を確認するには

  1. [キャンペーン マネージャ] 画面で、ツール バーの 検索 をクリックします。

  2. [検索] 画面の [状態] ボックスで、ドロップダウン リストの [すべて] をクリックします。

  3. [検索開始] をクリックします。

  4. [フィルタ ビュー] ボックスで、[Lucerne Publishing] の横の矢印をクリックします。次に [Bill's Books] の横の矢印をクリックし、対象を設定した広告が表示されることを確認します。

[男性顧客対象広告] の状態はアクティブです。

Web サイトでキャンペーンを更新するには

  1. [キャンペーン] の [キャンペーンの発行] をクリックします。

  2. [キャンペーンの発行] 画面の [サイトに発行する項目] ボックスで、[advertising] をクリックします。

  3. キャンペーンを更新するには、ツール バーの カタログの公開 をクリックします。

広告キャンペーンが更新され、Retail サイトで、男性ユーザーを対象に広告が表示されます。

サイト確認の手順

Retail サイトで変更を確認するには

  1. Retail サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/Retail」と入力します。

  2. [ログイン] の下の [サインイン] をクリックし、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「JillUser」と入力します。
    [パスワード] | 「open_sesame」と入力します。

  3. [送信] をクリックします。

    広告の対象を男性ユーザーに設定したため、Retail サイトに広告は表示されません。

  4. ブラウザ ウィンドウを閉じます。

  5. 再び Retail サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/Retail」と入力します。

  6. ウィンドウの左側にある[ログイン] の下の [サインイン] をクリックするかまたは、[ここをクリックして既存のアカウントでサインインしてください] をクリックし、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「JackUser」と入力します。
    [パスワード] | 「open_sesame」と入力します。

  7. [送信] をクリックします。

    広告の対象を男性ユーザーに設定したので、Retail サイトに広告が表示されます。

  8. ブラウザ ウィンドウを閉じます。


割引キャンペーンを作成する

キャンペーンの作成が終了すると、キャンペーン マネージャ モジュールを使って割引を作成できます。割引を適用する商品を指定し、割引の金額を決定して、ユーザーが割引を受けるのに必要な項目の購入数を指定できます。

この実習では、すべてのユーザーに 20% の割引を提供する、サイト全体の割引キャンペーンを作成します。

割引キャンペーン項目を作成するには

  1. キャンペーン の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、[Lucerne Publishing] の横の矢印をクリックし、[Bill's Books] をクリックします。次に、ツール バーの 追加 をクリックし、ドロップダウン リストの [新しい割引] をクリックします。

  3. [キャンペーン マネージャ - Lucerne Publishing - Bill's Books - 新規 (割引)] 画面の [割引プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [割引名] | 「20% オフ」と入力します。
    [状態] | ドロップダウン リストの [アクティブ] をクリックします。
    [開始日] | ドロップダウン カレンダーから今日の日付を選択します。
    [終了日] | ドロップダウン カレンダーから、今日から 2 か月後の日付を選択します。

  4. [割引定義] セクションで、次の操作を行います。
    項目 | 操作
    [対象: すべての商品] | このチェック ボックスをオンにして、割引をすべての商品に適用します。
    [特典]
    • 1 番目のボックス - 特典が適用される項目の数として [無制限] が選択されていることを確認します。

    • 2 番目のボックス - ドロップダウン リストの [すべての商品] をクリックします。

    • 3 番目のボックス - ドロップダウン リストの [パーセント(%)] をクリックします。

    • 4 番目のボックス - 「20」と入力します。

  5. [割引の表示] セクションで、次の操作を行います。
    項目 | 操作
    [バスケットの表示] | 「20% 割引適用」と入力します。
    [コンテンツ サイズ] | ドロップダウン リストの [ハーフ バナー] をクリックします。
    [コンテンツの種類] | [イメージ] を選択します。
    [イメージの保存場所] | 「http://<コンピュータ名>/retail/images/MSPress.gif」と入力します。
    [クリック時のリンク先] | 「http://MSPress.Microsoft.com」と入力します。

  6. 割引を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

20% の割引が Retail サイトのすべての商品に適用されます。

割引キャンペーンを運用サイトに送信するには

  1. [キャンペーン] の [キャンペーンの発行] をクリックします。

  2. [キャンペーンの発行] 画面で、[discounts] をクリックし、ツール バーの カタログの発行 をクリックします。

割引キャンペーンが運用サイトに送信されます。

サイト確認の手順

Retail サイトで変更を確認するには

  1. Retail サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/Retail」と入力します。

  2. ウィンドウの左側にある [ログイン] の下の [サインイン] をクリックするかまたは、[ここをクリックして既存のアカウントでサインインしてください] をクリックし、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「JackUser」と入力します。
    [パスワード] | 「open_sesame」と入力します。

  3. [送信] をクリックします。

  4. [蔵書] カタログ、[ビジネス書籍] カテゴリの順にクリックし、[Business @ the Speed of Thought] を選択します。

書籍の価格は 2000 円です。

  5. [バスケットに追加] をクリックします。

  6. 画面ヘッダー セクションの [バスケット] をクリックします。

    最終価格に対して、定価の 20% に当たる 400 円の割引が適用されます。

  7. ブラウザ ウィンドウを閉じます。


ログ ファイルをインポートする

サイトでのユーザーやサーバーの活動状況に関するデータが記録されたログ ファイルをデータ ウェアハウスにインポートし、インポートしたデータに対してレポートを実行することができます。ログ ファイルをインポートする前に、どのサイトからログ ファイルをインポートするかを選択する必要があります。また、インポートするログ ファイルを指定する必要もあります。

Web ログのイベント データをデータ ウェアハウスに取り込んだ後は、データ変換サービス (DTS) タスクを実行し、割引の名前などのキャンペーン項目に関する記述データを読み込んで、レポートを作成することができます。

この実習では、ログ ファイルをデータ ウェアハウスにインポートしてポスト インポート処理を実行し、後からそれを使って DTS タスクをインポートします。サイトのログをインポートするには、Microsoft SQL Server Enterprise Manager を使う必要があります。

注

  • この実習で行われるこの作業は、通常、システム管理者の作業になります。

データ ウェアハウスをアプリケーションと同期するには

  1. まず、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  2. 左側のウィンドウで、[Microsoft SQL Servers]、[SSQL Server グループ]、[(サーバー名)]、[データ変換サービス] の順に展開し、[ローカル パッケージ] をクリックします。

  3. [操作] メニューの [新規パッケージ] をクリックします。

    [DTS パッケージ: < 新規パッケージ>] ウィンドウが表示されます。

  4. [タスク] メニューの [構成の同期 (Commerce Server)] をクリックし、[DW プロパティの同期] ダイアログで [OK] をクリックします。

Web ログ ファイルをインポートするには

  1. [タスク] メニューの [Web サーバー ログ インポート (Commerce Server)] をクリックします。

  2. [Web サーバー ログのインポート] ダイアログ ボックスの [サイト名] ボックスで、ドロップダウン リストの [Retail] をクリックします。[アプリケーション] の下で、[retail, retailbizdesk] アプリケーションをクリックします。

  3. [ログ ファイル パス] ボックスに「<ドライブ名:>\Winnt\System32\LogFiles\W3svc1」と入力し、[OK] をクリックします。

プロファイル ユーザー データをインポートするには

  1. [タスク] メニューの [ユーザー プロファイル データ インポート (Commerce Server)] をクリックします。

  2. [ユーザー インポート プロパティ] ダイアログ ボックスの [サイト名] ボックスで、ドロップダウン リストの [Retail] をクリックし、[OK] をクリックします。

OLAP キューブにインポート データを生成するには

  1. [タスク] メニューの [レポート準備 (Commerce Server)] をクリックします。

  2. [レポートの準備のプロパティ] ダイアログ ボックスの [サイト名] ボックスで [Retail] が選択されていることを確認し、[OK] をクリックします。

4 つの DTS タスクを実行するには

  1. [DTS パッケージ <新規パッケージ>] ウィンドウに表示される [構成の同期] アイコンをクリックし、Shift キーを押しながら [レポート準備] アイコンをクリックします。

    Commerce Server DTS タスクの 4 つのアイコンがすべて選択されます。

  2. [ワークフロー] メニューの [完了時] をクリックします。

  3. [パッケージ] メニューの [実行] をクリックします。

    タスクが実行中であることを示す進捗ダイアログ ボックスが表示されます。

  4. タスクが正常に実行されると、[パッケージ実行結果] ダイアログ ボックスが表示されます。[OK]、[終了] の順にクリックします。

  5. パッケージを保存せずに SQL Server Enterprise Manager を終了します。

データ ウェアハウスにデータがインポートされます。


動的レポートを実行する

Commerce Server 2000 には、約 50 の既定のレポートが用意されています。これらのレポートは、データ ソースに接続するとすぐに利用できます。レポート モジュールから動的レポートと静的レポートを実行することも、レポートが定期的に自動で実行されるようにスケジュール設定することもできます。動的レポートは瞬時に実行され、ピボット テーブルの形でほかのウィンドウに表示されます。

この実習では、インターネット オプションを設定し、ドメイン間でのデータ ソースのアクセスを有効にします。次に、動的レポートを実行し、日々のサイトの利用状況に関する要約を表示します。

ドメイン間でデータ ソースにアクセスするには

  1. Internet Explorer で、[ツール] メニューの [インターネット オプション] をクリックします。

  2. [セキュリティ] タブで、次の操作を行います。
    項目 | 操作
    [レベルのカスタマイズ] | このボタンをクリックして、[セキュリティの設定] オプション画面を表示します。
    [その他] の [ドメイン間でのデータ ソースのアクセス] | [有効にする] をクリックします。
    [異なるドメイン間のサブフレームの移動] | [有効にする] をクリックします。

  3. [セキュリティの設定] ダイアログ ボックスで、[OK] をクリックします。

  4. [警告] ダイアログ ボックスで [はい] をクリックし、[インターネット オプション] ダイアログ ボックスで [OK] をクリックします。

  5. ブラウザ ウィンドウを閉じます。

毎日の利用状況の要約レポートを実行するには

  1. [分析] の [レポート] をクリックします。

  2. [レポート] 画面で、ツール バーの 検索 をクリックします。

  3. [検索] 画面で、次の操作を行います。
    項目 | 操作
    [検索条件] | ドロップダウン リストの [名前] をクリックします。
    [名前] | 「利用状況」と入力します。

  4. [検索開始] をクリックします。

  5. フィルタ ビューで、[利用状況の要約(曜日単位)] レポートをクリックし、ツール バーの レポートの実行 をクリックしてレポートを実行します。

レポートがピボット テーブルとして新しいウィンドウに表示されます。

レポートを保存するには

  1. [ピボット テーブル] ウィンドウで、[レポートの保存] をクリックします。

  2. [レポート名] ボックスに「利用状況の要約 (日単位)」と入力し、[OK] をクリックします。

  3. ブラウザ ウィンドウを閉じます。


静的レポートを実行する

静的レポートは、レポート モジュールから実行します。静的レポートの実行には少し時間がかかることがあります。ただし、静的レポートを実行している間も、レポート モジュールでほかのレポートを実行できます。実行中のレポートの状態は、完了レポート モジュールで確認できます。ここには、実行が完了したレポートも表示されます。

この実習では、静的レポートを実行し、完了レポート モジュールでレポートを表示します。

静的レポートを実行するには

  1. [分析] の [レポート] をクリックします。

  2. [レポート] 画面で、ツール バーの 検索 をクリックします。

  3. [検索] 画面で、次の操作を行います。
    項目 | 操作
    [検索条件] | ドロップダウン リストの [名前] をクリックします。
    [名前] | 「登録済みユーザーのプロパティ」と入力し、[検索開始] をクリックします。
    [名前] (リスト) | [登録済みユーザーのプロパティ] をクリックします。

  4. レポートを実行するには、ツール バーの レポートの実行 をクリックします。

  5. [レポートの実行] ダイアログ ボックスで、[OK] をクリックして既定値をそのまま使います。

レポートが実行され、[完成したレポート] モジュールに表示されます。

完成したレポートを表示するには

  1. [分析] の [完成したレポート] をクリックします。

  2. [完成したレポート] 画面の フィルタービュー画面の [名前] ボックスで、[登録済みユーザーのプロパティ] をクリックします。

  3. レポートを開くには、ツール バーの 開く をクリックします。

    登録済みユーザーのプロパティ レポートが表示されます。

  4. ブラウザ ウィンドウを閉じます。


静的レポートをエクスポートする

サイト ユーザーの一覧を作成および管理するには、リスト マネージャ モジュールを使います。一覧をリスト マネージャにエクスポートすると、ダイレクト メーラでメールを作成し、一覧の特定の受信者に送信するためのメーリング リストを作成できます。

この実習では、「登録済みユーザーのプロパティ」レポートをリスト マネージャにエクスポートします。ただし、ダイレクト メールは送信しません。

静的レポートをリスト マネージャにエクスポートするには

  1. [分析] の [レポート] をクリックします。

  2. [レポート] 画面で、ツール バーの 検索 をクリックします。

  3. [検索] 画面で、次の操作を行います。
    項目 | 操作
    [検索条件] | ドロップダウン リストの [名前] をクリックします。
    [名前] | 「登録済みユーザーのプロパティ」と入力し、[検索開始] をクリックします。
    [名前] (リスト) | [登録済みユーザーのプロパティ] をクリックします。

  4. レポートをエクスポートするには、ツール バーの エクスポート をクリックします。

  5. [レポートの実行] ダイアログ ボックスで、[OK] をクリックして既定値をそのまま使います。

  6. [レポートをリストとしてエクスポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [リストの種類] | [静的] を選択します。
    [リスト名] | 「ユーザープロパティ」と入力します。

  7. [OK] をクリックします。

キャンペーンのリスト マネージャ モジュールの [リスト マネージャ] 画面に[ユーザープロパティ] リストが表示されます。このリストを使ってダイレクト メール キャンペーンを作成できるようになります。


ダイレクト メール キャンペーンを作成する

ダイレクト メール キャンペーンは、ユーザーに広告を見てもらうための手段です。リスト マネージャに格納されているメーリング リストを使うと、ダイレクト メール キャンペーンの対象として特定のユーザーを指定することができます。これらのリストを使ってダイレクト メール ジョブを実行すれば、広告の対象となるユーザーを効率的に特定できます。

この実習では、前の実習で静的レポートからリスト マネージャにエクスポートした[ユーザープロパティ] リストを使って、ダイレクト メール キャンペーンを作成します。

ダイレクト メール キャンペーンを作成するには

  1. キャンペーン の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、[Lucerne Publishing] をダブルクリックし、[Bill's Books] キャンペーンをクリックします。

  3. ツール バーの [image] をクリックし、ドロップダウン リストの [新しいダイレクト メール] をクリックします。

  4. [キャンペーン マネージャ –Lucerne Publishing = Bill’s Books – 新規 (ダイレクト メール)] 画面の [ダイレクト メールのプロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [ダイレクト メール名] | 「ターゲットメール」と入力します。
    [送付元電子メール アドレス] | 「WebMaster@BooksGalore」と入力します。
    [メッセージの件名] | 「Great news for our customers」と入力します。
    [メッセージ本文を含むファイル パスまたは URL] | 「http://www.Microsoft.com」と入力します。
    [メーリング リスト] | ドロップダウン リストの [ユーザー プロパティ] をクリックします。
    [ユーザーごとにパーソナライズするダイレクト メール] | チェック ボックスをオフにします (キャプションなしのチェック ボックス)。
    [メールの形式] | ドロップダウン リストの [MHTML] をクリックします。

  5. [メール スケジュール] セクションで、次の操作を行います。
    項目 | 操作
    [開始日] | 今日の日付を入力します。
    [開始時刻] 現在の時刻の次の正時を選択します。

    たとえば、現在の時刻が午前 11 時 45 分の場合は、[12:00] を選択します。
    [メールの間隔] | [1 回限り] が表示されていることを確認します。

  6. [テスト] セクションの [テスト リスト] ボックスで、ドロップダウン リストの [ユーザー プロパティ] をクリックします。

  7. [テスト メールの送信] をクリックします。

  8. [ダイレクト メール] ボックスで、[はい] をクリックします。ジョブが開始されたことを知らせるダイアログが表示されます。[OK] をクリックします。

  9. [キャンペーン マネージャ] 画面に戻るには、ツール バーの [image] をクリックします。

ダイレクト メール キャンペーンがキャンペーン マネージャに追加されます。

サイト確認の手順

テスト メールが送信されたことを確認するには

  • ローカル コンピュータで直接 DML_drop ディレクトリに移動します。Windows エクスプローラで、<ドライブ名:>\Program Files\Microsoft Commerce Server\DML_drop を開きます。

ダイレクト メール メッセージを含む .eml ファイルが表示されます。表示されない場合は、コンピュータを再起動してからもう一度、テスト メールを送信してください。

テスト メールを表示するには

  1. .eml ファイルをダブルクリックします。

  2. 次の項目の内容を確認します。
    項目 | 内容
    [送信者] | WebMaster@BooksGalore.com
    [宛先] | <送信先のユーザーの電子メール アドレス>
    [件名] | Great news for our customers
    メッセージ本文 | Microsoft.com のホーム ページ

注

  • スケジュール設定されたメールの送信を確認するには、指定した開始時刻に上記の手順を繰り返します。


B to B サイトのチュートリアル

B to B (Supplier) ビジネス デスクのチュートリアルでは、Commerce Server の機能を使って、カタログのインポート、サイトへの取引先の追加、ユーザーの追加、およびプロファイルの管理を行うための手順を、わかりやすく説明していきます。

サプライアのチュートリアルには、Supplier ソリューション サイトでの次の実習が含まれます。Supplier ソリューション サイトの場所については、システム管理者に問い合わせてください。実習は、ここに示す順序で実行することが重要です。それぞれの実習を実行するには、それ以前の実習が既に終了していることが必要です。

  • 送料を追加する

  • カタログをインポートする

  • カタログ セットを作成する

  • 組織を作成する

  • ユーザーを作成する

  • サイト用語を作成する

  • 新しいプロファイルを持つユーザーを追加する


送料を追加する

Commerce Server ビジネス デスクの注文モジュールを使うと、注文状況に関する情報の表示、送料の追加と変更、および国、都道府県、地域に合わせた税率の設定を行うことができます。この実習では、小計を基準にした送料を追加します。

送料を追加するには

  1. [スタート] メニューまたはデスクトップから [Commerce Server ビジネス デスク] を開きます。

  2. [注文] の [送付方法] をクリックします。

  3. [送付方法] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [代金で課金] をクリックします。

  4. [代金で課金 -新規] 画面の [送付方法プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「Vigor Airlines」と入力します。
    [説明] | 「We'll ship anything」と入力します。
    [有効] | [送付方法を有効にする] チェック ボックスがオンになっていることを確認します。

  5. [料金] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [代金 (～まで)] | 「1000」と入力します。
    [送料] | 「500」と入力します。

  6. [確認] をクリックします。次に [新規] をクリックし、ほかの送料を追加します。

  7. [料金] セクションで、次の操作を行います。
    項目 | 操作
    [代金 (～まで)] | 「2000」と入力します。
    [送料] | 「1000」と入力します。

  8. [確認] をクリックします。

  9. [料金] セクションで、次の操作を行います。
    項目 | 操作
    [代金 (～まで)] | [2000 を超える] をダブルクリックします。
    [送料] | 「1500」と入力します。

  10. [確認] をクリックし、[2000 を超える] の送料を追加します。

  11. 送料を保存して [送付方法] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

送料が保存され、Web サイトでの購入に対して適用されます。


カタログをインポートする

カテゴリとカタログを処理するには、カタログ エディタ モジュールを使います。カタログ エディタ モジュールでは、カテゴリとカタログの作成、変更、および削除ができます。また、カタログ エディタを使ってカタログをインポートすることもできます。カタログは、拡張マークアップ言語 (XML) ファイルとカンマ区切り値 (CSV) ファイルのいずれからもインポートできます。

この実習では、XML のカタログ ファイルをインポートします。

XML のカタログ ファイルを [Catalogs] フォルダにコピーするには

  1. CD-ROM のルートの \Tutorial フォルダにある Hardwarefull.xml ファイルを、<ドライブ名:>\Inetpub\wwwroot\supplieradbizdesk\Catalogs フォルダにコピーします。

XML のカタログ ファイルをインポートするには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ エディタ] 画面で、ツール バーの インポート をクリックし、ドロップダウン リストの [XML のインポート] をクリックします。

  3. [XML カタログのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ファイル名] | 「<ドライブ名:>\Inetpub\wwwroot\SupplierADBizDesk\Catalogs\Hardwarefull.xml」と入力します。
    [任意のこのカタログの既存のカタログ データを削除する] | このチェック ボックスがオフになっていることを確認します。

  4. [OK] をクリックします。カタログのインポートが正常に開始されたことを知らせるダイアログが表示されます。[OK] をクリックします。

Hardware カタログがインポートされ、SupplierAD サイトで利用できるようになります。

注

  • カタログは、まだカタログ エディタの [名前] ボックスには表示されません。

    カタログ エディタ モジュールを使ってカタログを更新し、Web サイトに発行します。変更を行った場合、変更が Web サイトに反映されるようにするには、カタログを更新、発行する必要があります。

カタログを更新および発行するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ エディタ] 画面で、ツール バーの カタログの公開 をクリックします。

Web サイトでカタログが更新、発行されます。


カタログ セットを作成する

カタログ セットは、商品カタログのサブセットです。Commerce Server ビジネス デスクのカタログ セット モジュールを使うと、カタログ セットを作成し、ユーザー プロファイルに従って特定のユーザーまたはユーザーのグループに割り当てることができます。

この実習では、WWSpecial という名前のカタログ セットを作成します。

カタログ セットを作成するには

  1. [カタログ] の [カタログ セット] をクリックします。

  2. [カタログ セット] 画面で、ツール バーの 追加 をクリックし、次の操作を行います。
    項目 | 操作
    [名前] | 「WWSpecial」と入力します。
    [説明] | 「World Wide Importers Special Catalog Set」と入力します。
    [利用できるカタログ] | [ハードウェア] を選択します。

  3. [追加] をクリックして、[ハードウェア] カタログを [割り当てられたカタログ] ボックスに移動します。

  4. カタログ セットを保存して [カタログ セット] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

Hardware カタログを含むWWSpecial カタログ セットが保存されます。


組織を作成する

組織を作成または変更するには、組織モジュールを使います。また、サイトに取引先を追加して、担当者の名前、住所、電話番号、注文書の承認プロセス、コスト センター、割引など、その取引先に関する情報を指定するときも、このモジュールを使います。

この実習では、World Wide Importers という名前の組織を追加します。

組織を追加するには

  1. [ユーザー] の [組織] をクリックします。

  2. [組織] 画面で、ツール バーの 追加 をクリックします。

  3. [新しい組織] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「World Wide Importers」と入力します。
    [取引先番号] | 「02」と入力します。
    [組織カタログ セット] | ドロップダウン リストの [WWSpecial] をクリックします。

  4. WWSpecial カタログ セットを割り当てられた新しい組織を保存して [組織] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

World Wide Importers 組織が保存されます。組織 「World Wide Importers」 が保存されます。World Wide Importers 会社向けのの SupplierAD サイトには、WWSpecial カタログ セットが表示されます。


ユーザーを作成する

登録済みユーザーを管理するには、ユーザー モジュールを使います。登録済みユーザーとは、オンラインの登録フォームに記入したか、またはなんらかの方法でサイトにユーザー アカウントを開設したことによりサイトで認識される、Web サイト ユーザーです。

この実習では、World Wide Importers 社に次の 3 人の異なるロール フラグの新しいユーザーを追加します。管理者、代理管理者、非管理者ユーザーです。

管理者を作成するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、ツール バーの 追加 をクリックします。

  3. [新しいユーザー] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 「JoeUser」と入力します。
    [ユーザー パスワード] | 「open_sesame」と入力します。
    [電子メール] | 「JoeUser@WWImporters.com」と入力します。
    [姓] | 「User」と入力します。
    [名] | 「Joe」と入力します。

  4. [アカウント情報] セクションで、次の操作を行います。
    項目 | 操作
    [組織 ID] | 省略記号 [...] ボタンをクリックし、[組織の選択] ダイアログ ボックスを開きます。

  5. [組織の選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] (検索) 「World Wide Importers」と入力し、[検索開始] をクリックします。

    [World Wide Importers] が [名前] (リスト) ボックスに表示されます。
    [名前] (リスト) | [World Wide Importers] をクリックします。

  6. [OK] をクリックします。

  7. [アカウント情報] セクションの [アカウントの状態] ボックスで、ドロップダウン リストの [アクティブなアカウント] をクリックします。

  8. [ビジネス デスク] セクションの [取引先サービス ロール フラグ] ボックスで、ドロップダウン リストの [管理者] をクリックします。

  9. 新しいユーザーを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックして、新しいユーザーを保存し、 [ユーザー] 画面に戻ります。

新しいユーザーが組織 「World Wide Importers」に保存されます。

注

  • ユーザーを登録したあと、Active Directoryのサーバー管理者に、ユーザ権利の割り当てを依頼してください。割り当てが行われない限り、追加ユーザーではログオンできません。

代理管理者を作成するには

  1. SupplierAD サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/SupplierAD」と入力します。

  2. SupplierAD サイトのサインイン画面で、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「JoeUser」と入力します。
    [パスワード] | 「open_sesame」と入力します。
    [ドメイン] | ドメイン名を入力します。

  3. [OK] をクリックします。

    左側のウィンドウに [取引相手のサービス] が表示されます。

  4. 左側のウィンドウで、[取引相手のサービス] の下の [ユーザー] をクリックします。次に、ユーザー情報の上の [作成] をクリックします。

  5. [アカウント情報] セクションで、[アカウントの状態] ボックスの [アクティブ] をクリックします。

  6. [ビジネス デスク] セクションで、[取引先サービス ロール フラグ] ボックスの [代理管理者] をクリックします。

  7. [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 「BettyUser」と入力します。
    [ユーザー パスワード] | 「open_sesame」と入力します。
    [電子メール] | 「BettyUser@WWImporters.com」と入力します。
    [姓] | 「User」と入力します。
    [名] | 「Betty」と入力します。

  8. [保存] をクリックし、[閉じる] をクリックします。

    Betty User が代理管理者として保存されます。

  9. ブラウザ ウィンドウを閉じます。

    注

  • ユーザーを登録したあと、Active Directoryのサーバー管理者に、ユーザ権利の割り当てを依頼してください。割り当てが行われない限り、追加ユーザーではログオンできません。

非管理者のユーザーを作成するには

  1. SupplierAD サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/SupplierAD」と入力します。

  2. SupplierAD サイトのサインイン画面で、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「BettyUser」と入力します。
    [パスワード] | 「open_sesame」と入力します。
    [ドメイン] | ドメイン名を入力します。

  3. [OK] をクリックします。

  4. ウィンドウの左側にある [取引相手のサービス] の下の [ユーザー] をクリックし、[新規] をクリックします。

  5. [アカウント情報] セクションで、[アカウントの状態] ボックスの [アクティブ] をクリックします。

  6. [ビジネス デスク] セクションで、[取引先サービス ロール フラグ] ボックスの [ユーザー] をクリックします。

  7. [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 「BarneyUser」と入力します。
    [ユーザー パスワード] | 「open_sesame」と入力します。
    [電子メール アドレス] | 「BarneyUser@WWImporters.com」と入力します。
    [姓] | 「User」と入力します。
    [名] | 「Barney」と入力します。

  8. [保存] をクリックし、[閉じる] をクリックします。

    Barney User が非管理者のユーザーとして保存されます。

  9. ブラウザ ウィンドウを閉じます。

    注

  • ユーザーを登録したあと、Active Directoryのサーバー管理者に、ユーザ権利の割り当てを依頼してください。割り当てが行われない限り、追加ユーザーではログオンできません。

サイト確認の手順

BarneyUser が代理管理者でないことを確認するには

  1. SupplierAD サイトを開くには、Internet Explorer の [アドレス] ボックスに「http://<コンピュータ名>/SupplierAD」と入力します。

  2. SupplierAD サイトのサインイン画面で、次の操作を行います。
    項目 | 操作
    [ユーザー名] | 「BarneyUser」と入力します。
    [パスワード] | 「open_sesame」と入力します。
    [ドメイン] | ドメイン名を入力します。

  3. [OK] をクリックします。

    [取引先サービス] は表示されません。

  4. [キーボード] カテゴリをクリックします。カテゴリ内の商品が表示されない場合は、[カタログ] の [カタログ エディタ] でカタログを更新し、その後、Supplier サイトを更新てください。

    注

    • 利用できるカタログは 1 つだけなので、サイトにはカタログの名前ではなく、カタログのカテゴリが表示されます。
  5. [Microsoftｮ Internetｮ Keyboard Pro] をクリックし、下にスクロールして [バスケットに追加] をクリックします。

  6. 画面上部の [バスケット] をクリックして、[バスケット] 画面を開きます。[数量] ボックスに「5」と入力し、[更新] をクリックします。

    [バスケット] ページの [合計金額] にはキーボード 5 つの合計代金が表示されます。

  7. ブラウザ ウィンドウを閉じます。

ビジネス デスクのバスケットに商品が存在することを確認するには

  1. [注文] の [バスケット マネージャ] をクリックします。

  2. [バスケット マネージャ] 画面の [検索] 画面で、[検索条件] ボックスの [すべてのバスケット] をクリックします。

  3. [検索開始] をクリックします。

Barney User の注文が検索結果画面に表示されます。


サイト用語を作成する

サイトに関係する値を定義するには、サイト用語モジュールを使います。サイト用語を使うと、サイト全体で使われる値を標準化できます。サイト用語を使って、カタログ内の商品、コンテンツ、および広告の対象を、特定のサイト ユーザー層に限定することもできます。

この実習では、Line (ライン) および Staff (スタッフ) というサイト用語を追加します。サイト用語を作成したら、ユーザー プロファイルにサイト用語を組み込んで、後でそのユーザー プロファイルに一致するサイト ユーザーを広告の対象に設定できるようにします。

サイト用語を作成するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、[追加] をクリックします。

  3. [追加] ダイアログ ボックスで、[グループの新規追加] をクリックし、[OK] をクリックします。

  4. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「CompanyInfo」と入力します。
    [表示名] | 「会社情報」と入力します。

  5. [適用] をクリックします。

  6. [サイト用語の構成] ボックスで、[会社情報] をクリックし、[追加] をクリックします。

  7. [追加] ダイアログ ボックスで、[新しいサイト用語の追加] をクリックし、[OK] をクリックします。

  8. [サイト用語の属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「JobRole」と入力します。
    [表示名] | 「ジョブ ロール」と入力します。

  9. [用語] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [用語の名前] | 「Line」と入力します。
    [表示名] | 「ライン」と入力します。

  10. [確認] をクリックします。次に [新規] をクリックし、新しいサイト用語を追加します。

  11. [用語] セクションで、次の操作を行います。
    項目 | 操作
    [用語の名前] | 「Staff」と入力します。
    [表示名] | 「スタッフ」と入力します。

  12. [確認] をクリックし、次に [適用] をクリックします。

  13. 新しいサイト用語を保存して [ビジネス デスクへようこそ！] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しいサイト用語が保存され、ユーザー プロファイルに追加できるようになります。

サイト用語をユーザー プロファイルに追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面の [名前] ボックスで、[ユーザー オブジェクト] プロファイルをクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル: ユーザー オブジェクト] 画面で、[プロパティ] ボックスの [一般情報] をクリックします。

  4. [追加] をクリックします。

  5. [追加] ダイアログ ボックスで、[グループの新規追加] をクリックします。

  6. [OK] をクリックします。

  7. [プロファイル: ユーザー オブジェクト] 画面の [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「CompanyInfo」と入力します。
    [表示名] | 「会社情報」と入力します。

  8. [適用] をクリックし、次に [追加] をクリックします。

  9. [追加] ダイアログ ボックスで、[プロパティの新規追加] をクリックし、[OK] をクリックします。

  10. [プロファイル: ユーザー オブジェクト] 画面の [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 「JobRole」と入力します。
    [表示名] | 「ジョブ ロール」と入力します。
    [種類] | ドロップダウン リストの [サイト用語] をクリックします。
    [型参照] | 省略記号 [...] ボタンをクリックし、[会社情報] を選択します。次に、[ジョブ ロール] を選択します。

  11. [OK] をクリックします。

  12. [拡張プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [アクティブ] | [はい]チェック ボックスがオンになっていることを確認します。
    [データへのマップ] | 省略記号 [...] ボタンをクリックし、[データ ソースの選択] ダイアログ ボックスを開きます。

  13. [データ ソースの選択] ダイアログ ボックスで、[プロファイル サービスの SQL ソース] をクリックします。次に [ユーザー オブジェクト] をクリックし、下にスクロールして [カスタム プロパティ 1 (STRING)] をクリックします。

  14. [OK] をクリックし、次に [適用] をクリックします。

  15. 属性をユーザー プロファイルとともに保存して [プロファイル] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

サイト用語「ジョブ ロール」を含んだユーザー プロファイルが保存されます。

ユーザー プロファイルを更新するには

  1. [ユーザー] の [プロファイルの発行] をクリックします。

  2. [プロファイルの発行] 画面で、[SupplierAD] アプリケーションをクリックし、ツール バーの 発行 をクリックします。

ユーザー プロファイルが更新され、このユーザー プロファイルに一致するサイト ユーザーを対象化できるようになります。


新しいプロファイルを持つユーザーを追加する

登録済みユーザーを管理するには、ユーザー モジュールを使います。登録済みユーザーとは、オンラインの登録フォームに記入したか、またはなんらかの方法でサイトにユーザー アカウントを開設したことによりサイトで認識される、Web サイト ユーザーです。

この実習では、前の実習で作成した Line (ライン) と Staff (スタッフ) という新しいサイト用語を使って2 人の新しいユーザーを追加します。

「Line (ライン)」部門のユーザーを作成するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、ツール バーの 追加 をクリックします。

  3. [新しいユーザー] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 「JackUser」と入力します。
    [ユーザー パスワード] | 「open_sesame」と入力します。
    [電子メール アドレス] | 「JackUser@WWImporters.com」と入力します。
    [姓] | 「User」と入力します。
    [名] | 「Jack」と入力します。
    [ジョブ ロール] | [ジョブ ロール] をクリックし、ドロップダウン リストの [ライン] をクリックします。

  4. [アカウント情報] セクションで、次の操作を行います。
    項目 | 操作
    [組織 ID] | 省略記号 [...] ボタンをクリックし、[組織の選択] ダイアログ ボックスを開きます。[World Wide Importers] をクリックし、[OK] をクリックします。
    [アカウントの状態] | ドロップダウン リストの [アクティブなアカウント] をクリックします。

  5. [ビジネス デスク] セクションの [取引先サービス ロール フラグ] ボックスで、ドロップダウン リストの [標準ユーザー] をクリックします。

  6. ユーザーを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

Jack User が 組織 「World Wide Importers」 「ライン」部門のユーザーとして作成されます。

「Staff (スタッフ)」部門の ユーザーを作成するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、ツール バーの 追加 をクリックします。

  3. [新しいユーザー] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 「JillUser」と入力します。
    [ユーザー パスワード] | 「open_sesame」と入力します。
    [電子メール] | 「JillUser@WWImporters.com」と入力します。
    [姓] | 「User」と入力します。
    [名] | 「Jill」と入力します。
    [ジョブ ロール] | [ジョブ ロール] をクリックし、ドロップダウン リストの [スタッフ] をクリックします。

  4. [アカウント情報] セクションで、次の操作を行います。
    項目 | 操作
    [組織 ID] | 省略記号 [...] ボタンをクリックし、[組織の選択] ダイアログ ボックスを開きます。[World Wide Importers] をクリックし、[OK] をクリックします。
    [アカウントの状態] | ドロップダウン リストの [アクティブなアカウント] をクリックします。

  5. [ビジネス デスク] セクションの [取引先サービス ロール フラグ] ボックスで、ドロップダウン リストの [標準ユーザー] をクリックします。

  6. ユーザーを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

Jill User が組織 「World Wide Importers」の 「Staff(スタッフ)」部門のユーザーとして作成されます。


ビジネス デスク分析

サイトでのユーザーの利用状況に関するデータを分析するには、分析モジュールを使います。登録済みユーザーに関する特定の情報を分析できます。また、ユーザーが特定のページでどの程度の時間を費やしたか、どのリンクをクリックしたかなど、サイトを訪問中のユーザーの行動を分析することもできます。

レポートを実行してデータを調べたり、ユーザーのセグメントを表示することができます。このようなレポートやセグメントから得られる情報は、価格設定、マーケティング、広告など、ビジネスのさまざまな局面で的確な判断を下すのに役立ちます。

分析レポートの実行やセグメントの表示によって Web サイトでのユーザー活動を分析するには、システム管理者が Microsoft Commerce Server 2000 を既にインストールしていることが必要です。システム管理者は、Web ログ、トランザクション、キャンペーン、ユーザー、およびカタログのデータをデータ ウェアハウスにインポートして、レポート準備タスクを実行することも必要です。

ここでは、次のトピックについて説明します。

  • レポート管理のワークフロー レポートを実行、変更、および管理するときのワークフローを示します。

  • セグメント分析のワークフロー セグメント ビューア モジュールでセグメントとセグメント モデルを表示および管理するときのワークフローを示します。

  • 分析について レポートのコンポーネントについて説明し、さまざまな種類のレポートの概要を示します。また、セグメント ビューア モジュール自体と、セグメント ビューア モジュールを使ってサイトの利用状況を分析する方法についても説明します。

  • Commerce Server のレポート Commerce Server に用意されているレポート、レポート プロパティ、および Commerce Server レポートでの時間の処理方法について説明します。

  • ビジネス分析を設定する Commerce Server の分析機能の実行に必要な手順について説明します。

  • レポートを検索する レポートの一覧でレポートを検索する方法について説明します。

  • レポートを実行する 動的レポートと静的レポートを実行する方法について説明します。

  • 動的レポートを表示する 完成した動的レポートを表示する方法について説明します。

  • 静的レポートを表示する 完了レポート モジュールで静的レポートを開いたり表示する方法について説明します。

  • レポートを印刷する 動的レポートと静的レポートをブラウザ ウィンドウから印刷する方法について説明します。

  • 動的レポートをエクスポートする 動的レポートを Microsoft Excel にエクスポートする方法について説明します。

  • 静的レポートをエクスポートする 静的レポートをリスト マネージャ モジュールのリストとしてエクスポートする方法について説明します。

  • 新しい動的レポートを作成する 動的レポートに変更を加え、変更後の動的レポートを新しい動的レポートとして保存する方法について説明します。

  • レポートを削除する カスタム動的レポート定義および完成した静的レポートを削除する方法について説明します。

  • レポート プロパティを表示する レポート プロパティを表示する方法について説明します。

  • ユーザーのセグメントを分析する セグメント モデルを開く方法、セグメントまたはセグメント グループを表示する方法、2 つのセグメントまたはセグメント グループを比較する方法、およびセグメントのデータをリストにエクスポートする方法について説明します。


レポート管理のワークフロー

次の図は、レポートを実行、変更、および管理するときのシナリオの例を示します。

レポート
レポートの実行
動的レポートの表示
レポートの変更
パラメータの構成

変更を保存して
新しい動的レポート
定義を作成

静的レポートの表示
完成したレポート
ブラウザのウィンドウ
新しい動的レポートの
実行
レポート
動的
静的

動的レポートの実行例

  1. [レポート] モジュールで、動的レポートを実行します。

  2. ブラウザ ウィンドウで、その動的レポートを表示します。

  3. ブラウザ ウィンドウで、その動的レポートに変更を加えます。

  4. ブラウザ ウィンドウで、変更後の動的レポートを新しいレポート定義として保存します。

  5. [レポート] モジュールで、その新しい動的レポートを実行します。

静的レポートの実行例

  1. [レポート] モジュールで、静的レポートを実行します。

  2. その静的レポートのパラメータを設定します。

  3. [完成したレポート] モジュールで、その静的レポートを開いてブラウザ ウィンドウに表示します。

  4. [レポート] モジュールで、静的レポートをリストとしてエクスポートします。

  5. その静的レポートのパラメータを設定します。

  6. リストを設定します。

  7. [リスト マネージャ] モジュールで、その新しいリストを開きます。
    レポート
    静的レポートを
    エクスポートする
    パラメータの設定
    リストの設定
    新しいリストの表示
    リスト マネージャ

静的レポートのエクスポート例

  1. [レポート] モジュールで、静的レポートをリストとしてエクスポートします。

  2. その静的レポートのパラメータを設定します。

  3. リストを設定します。

  4. その新しいリストが [リスト マネージャ] モジュールで使用できるようになります。


セグメント分析のワークフロー

次の図は、セグメント ビューアでセグメントとセグメント モデルを表示および管理するときのシナリオの例を示します。

セグメント ビューア
セグメント モデルの選択
セグメントの分析と比較
セグメント名の変更と保存
比較の要約レポートの作成
リスト マネージャへの
セグメントのエクスポート

  1. [セグメント ビューア] モジュールで、表示および分析するセグメント モデルを選択します。

  2. 選択したセグメントまたはセグメント グループを分析して、その特性と、同じモデルのほかのセグメントまたはセグメント グループの特性を比較します。それぞれの特性の要約情報を確認し、ほかのセグメントまたはセグメント グループの情報と比較することで、これらの特性を分析します。

  3. 必要に応じて、要約情報および特性の比較を反映するように、セグメントまたはセグメント グループの名前を変更します。

  4. 比較したセグメントの要約レポートを Internet Explorer に作成し、それを印刷します。

  5. さらなる分析と管理を行うには、セグメントを [リスト マネージャ] モジュールにエクスポートして、そのセグメントに含まれるユーザーの一覧を作成します。

関連項目

分析について


分析について

分析は、データ ウェアハウスに格納されているユーザーおよびサイトのデータに関するレポートを実行するときに使います。このレポートの結果を使って、Web サイトのパフォーマンスをビジネス面から分析します。たとえば、ユーザーの特性や過去の行動に関するレポートを実行して、広告や商品の対象を特定のユーザーに絞るようにサイトを更新できます。

分析レポートの実行に加えて、セグメント ビューア モジュールを使うと、ユーザーのセグメントを分析できます。セグメントとは、特性または行動が類似するユーザーのグループのことです。ユーザーの特性や行動 (利用傾向など) を特定するには、セグメント ビューア モジュールを使ってセグメントを分析します。この分析結果から、ユーザー間の類似性に基づいたマーケティングを決定できます。

レポートを実行し、セグメントを分析できるようにするには、システム管理者がいくつかの作業を実行する必要があります。詳細については、「ビジネス分析を設定する」を参照してください。

ここでは、次のトピックについて説明します。

  • レポート定義

  • ディメンションとメジャー

  • 動的レポートと静的レポート

  • カスタム レポート

  • セグメント分析


レポート定義

レポート定義は、完成したレポートではなく、レポートの構造です。新しいデータがデータ ウェアハウスにインポートされた後で、再びレポートを実行すると、そのレポートには新しいデータが反映されます。データ ウェアハウス内のデータの "スナップショット" を参照するには、レポートを実行します。

レポート モジュールには、2 種類のレポート定義があります。1 つは動的レポート用の定義で、もう 1 つは静的レポート用の定義です。動的レポートと静的レポートについては、「動的レポートと静的レポート」を参照してください。

レポート モジュールに用意されているレポートは、広告、商品別売り上げ、Web の用途、ユーザー、訪問、診断、およびクエリ文字列の 7 つのカテゴリに分類されます。レポート モジュールで利用できるレポート定義については、「Commerce Server のレポート」を参照してください。

カスタム動的レポート定義を作成できます。システム管理者は、カスタム動的レポート定義とカスタム静的レポート定義の両方を作成できます。動的レポートと静的レポートのどちらを実行した場合でも、データ ウェアハウスのデータの要約を、指定した形式で返します。カスタム レポートについては、「カスタム レポート」を参照してください。


ディメンションとメジャー

レポートにどのようなデータが返されるかは、レポート定義に含まれているディメンションとメジャーで決まります。メジャーは数値です。ディメンションは、色、サイズ、商品、時刻などのビジネス エンティティです。Commerce Server のレポート定義では、ディメンションとメジャーを組み合わせることで、数量ベースの情報と時間ベースの情報を提供できます。

静的レポートを実行するときには、返されるデータのパラメータを変更できます。たとえば、商品を購入したユーザー 25 人分だけのデータを要求できます。ただし、静的レポートに含まれるディメンションとメジャーを変更することはできません。

動的レポートを実行するときには、利用できるディメンションとメジャーの一覧が、ピボット コントロールのフィールド リストに表示されます。動的レポートのディメンションとメジャーは、ディメンションとメジャーの方向を追加、削除、および変更したり、完成したレポートに表示する詳細のレベルを変更することによって、変更を加えることができます。完成した動的レポートを変更する場合には、変更後のレポート定義をカスタム動的レポート定義として保存できます。

関連項目

動的レポートと静的レポート

カスタム レポート

Commerce Server のレポート


動的レポートと静的レポート

Commerce Server には、次の 2 種類のレポートが用意されています。

  • 動的レポート 実行時に作成されるレポートです。動的レポートを実行するたびに、データ ウェアハウスにある最新データが収集されます。時間が経過しても変化しないレポート定義だけが格納されます。

  • 静的レポート 要求に応じて直ちに実行され、データと共に完了レポート モジュールに格納されるレポートです。静的 SQL レポートは非同期的に実行されるので、静的レポートの実行中でも、Commerce Server ビジネス デスクでほかの作業を行うことができます。静的なマルチ ディメンション式 (MDX) レポートは同期的に実行されるので、レポートが完了するまで、ビジネス デスクでほかの作業を行うことはできません。

注

  • 静的レポートが MDX と SQL のどちらに基づいているかを確認するには、レポートのプロパティを表示します。レポート プロパティを表示する方法については、「レポート プロパティを表示する」を参照してください。

動的レポートと静的レポートの機能

動的レポート

ピボットテーブル

ピボットテーブル フィールド リスト

折りたたまれたディメンション

ピボットグラフ

静的レポート

動的レポートと静的レポートの機能

次の表は、動的レポートと静的レポートの相違点を示します。

機能 | 動的レポート | 静的レポート
レポート結果のサイズを調整する | 詳細データを表示しないようにします。 | レポートの行数を制限します。
レポートの内容を変更する | ピボットテーブル機能を使って、レポート結果のディメンションとメジャーを追加または削除します。 | 「Creating Custom Reports」を参照してください。
レポート結果をリスト マネージャに直接エクスポートする | 動的レポートの結果をリスト マネージャにエクスポートすることはできません。 | 静的レポートは、動的リストまたは静的リストとしてリスト マネージャにエクスポートできます。
レポート結果を Microsoft Excel にエクスポートする | 動的レポートの結果は Microsoft Excel にエクスポートできます。 | 静的レポートを Microsoft Excel にエクスポートすることはできません。
新しいレポート定義を作成する | 動的レポートに変更を加え、変更後のレポートを新しい動的レポート定義として保存できます。 | 「Creating Custom Reports」を参照してください。
レポート定義を削除する | カスタム動的レポート定義は削除できます。既定の動的レポート定義を削除することはできません。 | カスタム静的レポート定義は削除できます。既定の静的レポート定義を削除することはできません。
完成したレポートを保存する | 完成した動的レポートをデータと共にビジネス デスクに保存することはできません。 | 完成した静的レポートは、削除しない限り、データと共に完了レポート モジュールに格納されています。
レポート結果をチャートとして表示する | 完成した動的レポートをピボットグラフとして表示できます。 | 完成した静的レポートをチャートとして表示することはできません。

動的レポート

完成した動的レポートは、特に指定しない限り、Internet Explorer の新しいウィンドウに、ピボットテーブル レポートまたはピボットグラフ レポートとして表示されます。ピボットテーブルとピボットグラフは、どの動的レポートでも表示できます (非表示にすることもできます)。ピボットテーブルはフィルタ、行、列などで構成され、列にはレポートの詳細が収められます。ピボットグラフは、レポート内のデータをグラフィックで表現したものです。ピボットテーブルでは、データの詳細を参照したり、ディメンションとメジャーを移動して違う視点からデータをとらえることができます。

注

  • Microsoft ピボットテーブル リストのヘルプを利用するには、ビジネス デスクを実行しているコンピュータに Microsoft Office をインストールする必要があります。

ピボットテーブル

動的レポートのピボットテーブルに変更を加えることができます。具体的には、行または列として機能するディメンションを追加または削除したり、メジャーを追加または削除することができます。また、表示される詳細のレベルを拡大または縮小したり、フィルタとして機能するディメンションを追加または変更することもできます。変更を加えた動的レポートは、新しい動的レポート定義として保存できます。この定義は、レポート モジュールで使用できます。新しい動的レポート定義を作成する方法の詳細については、「新しい動的レポートを作成する」を参照してください。

次の図では、広告の表示回数とヒット率 (キャンペーン別) レポートを使って、ピボットテーブルの画面要素を示します。

図をクリックすると、拡大または縮小します。

ピボットテーブル フィールド リスト

ピボットテーブルにディメンションおよびメジャーを追加するには、ピボットテーブル フィールド リストを使います。ピボットテーブル フィールド リストが表示されるのは、レポートがブラウザ ウィンドウに表示されるときです。ピボットテーブル フィールド リスト が自動的に表示されない場合は、[ピボットテーブル フィールド リスト] をクリックしてください。ピボットテーブル フィールド リストには、レポートに含めることができるディメンションとメジャーが表示されます。太字で表示されているディメンションとメジャーは、特に指定しなくてもレポートに含まれます。太字で表示されていないディメンションとメジャーは、指定することによってレポートに含めることができます。ディメンションとメジャーは、ドラッグ アンド ドロップ機能を使ってレポートに追加できます。

次の図は、ピボットテーブル フィールド リストの画面要素を示します。

ピボット テーブル フィールド リスト

図をクリックすると、拡大または縮小します。

折りたたまれたディメンション

レポートの詳細に表示される情報のレベルを変更するには、ディメンションを展開または折りたたみます。折りたたまれたディメンションは、ディメンション名の左側にプラス記号 (+) が付いた形で、ピボットテーブルに表示されます。

ディメンションが折りたたまれているときにレポートに表示される合計は、全体としてのディメンションの合計をまとめたものです。

ディメンション名の左側のプラス記号をクリックすると、ディメンションの個々のメンバが表示されます。折りたたまれたディメンションは、そのディメンションが折りたたまれているレベルで並べ替えられます。

動的レポートのメジャーのカウントが一意の場合、ディメンションを折りたたむと、そのレポートに表示される合計が不正確になります。たとえば、広告の表示回数とヒット率 (日単位) レポートには、1 日あたりの広告キャンペーンごとの到達率 (一意のユーザーの数) と頻度 (一意の訪問の数) が表示されます。ここで、ある広告キャンペーンを折りたたんだ場合、その広告キャンペーンに関しては、1 日あたりの一意のユーザーの総数が不正確になります。これは、1 人のユーザーがその Web サイトを何日も訪問している場合があるためです。一意のカウントが含まれるその他の Commerce Server レポートには、広告の表示回数とヒット率 (キャンペーン別)、広告の表示回数とヒット率 (キャンペーン項目別)、ユーザー数と訪問数 (週単位)、ユーザー数 (日単位) などがあります。

ピボットグラフ

動的レポートのピボットグラフを表示できます。[チャートの表示] をクリックすると、動的レポートがチャートで表示されます。使用されるチャートは、Commerce Server に用意されている 15 種類のチャートのいずれかになります。Commerce Server の動的レポートには、そのレポートのデータを最も適切に表す既定のチャート形式がそれぞれ割り当てられています。必要に応じて、ほかのチャート形式を選ぶこともできます。

次の図は、広告の利用状況レポートのピボットグラフの画面要素を示します。

図をクリックすると、拡大または縮小します。

注

  • ピボットグラフには、最初のメジャーだけが表示されます。ほかのメジャーに変えてチャートを表示する場合は、チャートの基となるピボットテーブルの先頭位置 (左端) にそのメジャーを移動する必要があります。

次の表は、各チャート形式、およびチャートに表示されるデータの内容を示します。動的レポートをピボットグラフとして表示する方法については、「動的レポートを表示する」を参照してください。

チャート形式 | 表示されるデータ
[横棒: 集合] | 項目間の比較を表示します。
[縦棒: 集合] | 時間の経過によるデータの変化、または項目間の比較を表示します。
[折れ線] | データの傾向を表示します。
[折れ線: マーカー付き] | データの傾向を等間隔で表示し、間隔を示すマーカーを付けます。
[折れ線: 平滑] | データの傾向を等間隔で表示し、平滑化によって間隔の間の推定データを示します。
[折れ線: 平滑、マーカー付き] | データの傾向を等間隔で表示し、間隔を示すマーカーを付けて、平滑化によって間隔の間の推定データを示します。
[円] | 1 つのデータ系列を構成する各項目のサイズを、それらの項目の合計に対する相対的なサイズで表示します。
[円: 分割] | 特定の項目を強調する形で、1 つのデータ系列を構成する各項目のサイズを、それらの項目の合計に対する相対的なサイズで表示します。
[面] | 時間の経過による変化の規模、および一部のデータの全体に対する関係を表示します。
[ドーナツ] | 項目間の関係と、項目が構成するデータ系列を表示します。チャートの各リングは、それぞれ別個のデータ系列を表します。
[ドーナツ: 分割] | 特定の項目を強調する形で、項目間の関係と、項目が構成するデータ系列を表示します。チャートの各リングは、それぞれ別個のデータ系列を表します。
[レーダー: 線付き] | いくつかのデータ系列の集計値の比較を、点が中心から放射状に広がるように表示します。
[レーダー: 線およびマーカー付き] | いくつかのデータ系列の集計値の比較を、つながった点が中心から放射状に広がるように表示し、値を示すマーカーを付けます。
[レーダー: 平滑線付き] | いくつかのデータ系列の集計値の比較を、つながった点が中心から放射状に広がるように表示し、平滑化によって間隔の間の推定データを示します。
[レーダー: 平滑線およびマーカー付き] | いくつかのデータ系列の集計値の比較を、つながった点が中心から放射状に広がるように表示し、値を示すマーカーを付けて、平滑化によって間隔の間の推定データを示します。

静的レポート

完成した静的レポートは、完了レポート モジュールに格納されます。静的レポートでは、サイズの大きな結果セットを返すことができます。ただし、サイズの大きなデータ セットに対して静的レポートを実行すると、完了までにかなりの時間がかかる場合があります。実行中の静的レポートは、完了レポート モジュールに "保留中" と表示されます。完成した静的レポートを開くと、その内容が Microsoft Internet Explorer の新しいウィンドウに HTML 文書として表示されます。

次の図は、静的レポートの画面要素を示します。

図をクリックすると、拡大または縮小します。

静的レポートの結果は、静的リストまたは動的リストとして、キャンペーンのリスト マネージャ モジュールにエクスポートできます。リスト マネージャの静的リストに含まれるデータは、静的レポートを実行したときに作成されたデータと同じものです。ただし、HTML 文書として表示される場合、静的レポートの最大行数は 1,000 行に制限されます。リストとしてエクスポートする際には、行数の制限はありません。

動的リストには、静的レポートへのポインタが含まれています。たとえば、新規登録済みユーザー レポートをエクスポートする場合には、[レポートの実行] ダイアログ ボックスを使ってそのレポートのパラメータを設定します。そのレポートの日付として "先月" を選択した場合、リストとしてエクスポートされるデータは先月のものになります。

過去にそのレポートを動的リストとしてエクスポートしたことがある場合は、そのレポート定義とパラメータが格納されています。その動的リストを実行するたびに、現在の月より 1 つ前の月のデータがリストに表示されます。たとえば、7 月に動的リストを実行すると、6 月のデータが返されます。リスト マネージャで動的リストを実行すると、その動的リストにはデータ ウェアハウスから最新のデータが取り込まれます。ただし、レポートを動的リストではなく静的リストとして 6 月にエクスポートした場合、レポートの日付として "先月" を選択すると、いつその静的リストを開いても必ず 5 月のデータが表示されます。

静的リスト :
静的レポート定義はデータ ウェアハウスからデータを収集

Commerce Server データ ウェアハウス

静的レポートの
エクスポート

リストが開かれたときに
データ ウェアハウスから
収集されたデータ

動的リスト

リスト マネージャに追加された
動的リスト定義

リスト マネージャに追加された
静的リスト

リスト マネージャ

静的レポートの結果をカスタマイズするには、[レポートの実行] ダイアログ ボックスで静的レポートのプロパティを使います。静的レポートが基づくどのパラメータについても、既存の値を変更したり、新しい値を入力することができます。たとえば、最近登録したユーザー 25 人分だけのプロパティが表示されるように、登録済みユーザーのプロパティ レポートに制限を加えることができます。日付パラメータのあるレポートを実行する場合は、絶対日付、日付の範囲、または相対日付 (昨年など) を選択できます。式パラメータのあるレポートを実行する場合は、有効なオペランドを選択して必要な式を作成できます。

静的レポートを実行した後で、レポートの結果をブラウザ ウィンドウで変更することはできません。ただし、Internet Explorer の機能を使って、通常の HTML ファイルと同様に、静的レポートを印刷したり、静的レポートをファイルとして保存することができます。Internet Explorer の機能については、Internet Explorer のヘルプを参照してください。

関連項目

Commerce Server のレポート

レポートを実行する

動的レポートをエクスポートする

新しい動的レポートを作成する

動的レポートを表示する

静的レポートをエクスポートする

静的レポートを表示する


カスタム レポート

動的レポート定義に変更を加えてカスタム レポート定義として保存し、レポート モジュールに追加できます。新しい形式で動的レポートのデータを表示するには、カスタム動的レポート定義を使います。たとえば、利用状況の傾向レポートに、サイトの 1 年あたりの要求回数、ユーザー数、および訪問回数を表示できます。

利用状況の傾向に関するより詳細なデータが必要な場合は、利用状況の傾向レポートから新しい動的レポート定義を作成して、サイトを訪れているユーザーの種類別の傾向や、1 年あたりではなくほかの期間 (1 日、1 か月、または四半期) での傾向を表示することもできます。変更後の利用状況の傾向レポートを保存すると、新しいレポート定義がレポート モジュールに追加されます。追加された新しい動的レポート定義を表示するには、レポート モジュールのレポートの一覧を更新します。新しい動的レポート定義を作成する方法の詳細については、「新しい動的レポートを作成する」を参照してください。

カスタム動的レポート定義を作成するには、既存のレポートのピボットテーブルを変更し、その結果を新しいレポート定義として保存します。既存のレポートのピボットテーブルを変更するには、フィルタの追加と削除、表示データの並べ替え、メジャーの追加、フィールドの移動、詳細データと要約データの切り替え、および列と行のピボット化 (操作) などを行います。たとえば、利用状況の傾向レポートの年ディメンションを展開して、1 日単位の傾向を表示できます。また、年ディメンションを展開し、年、四半期、日の各ディメンションを削除して、月単位の傾向だけを表示することもできます。

システム管理者は、カスタム静的レポート定義とカスタム動的レポート定義を作成して、レポートで使用するデータベースに直接追加できます。サイト開発者によるカスタム レポートの作成については、「カスタム レポートを作成する」を参照してください。カスタム レポートを作成するための計画を立てる方法については、「ビジネス分析システムの計画」を参照してください。

関連項目

Commerce Server のレポート

レポートを実行する

新しい動的レポートを作成する


セグメント分析

セグメント化 (クラスタ化) の分析を行うには、セグメント ビューア モジュールを使います。セグメント化の分析では、サイトでのユーザーの行動およびユーザーのプロパティ (年齢や性別など) に従って、ユーザーをセグメントにグループ化します。同じセグメントのユーザーは、類似した行動またはプロパティを持つことになります。同じセグメントにある各レコードは、ほかのセグメントにあるレコードよりも互いの類似性が増す傾向にあります。セグメント化を行った結果がセグメント モデルです。セグメント モデルは、セグメントまたはセグメント グループに属するユーザーが共有する特性を記述したものです。セグメントとセグメント グループは、データ ウェアハウスにあるデータに基づいて Commerce Server マネージャで作成されます。

セグメントを個別に調べたり、セグメントどうしを比較するには、セグメント ビューア モジュールを使います。セグメント ビューア モジュールは、すべてのセグメントの要約レポートを作成するときにも使います。

セグメントとセグメント グループ

セグメント モデル

セグメント ビューア

セグメント レポート

セグメントとセグメント グループ

セグメントとは、サイトでの行動や特性 (年齢や性別など) が類似しているユーザーの集まりのことです。各セグメントは、従属するデータベース レコードの要約で構成されています。この要約は、データベース レコードのクラスタ化に使用したデータ ウェアハウス内のプロパティに基づいて作成されます。セグメント グループとは、類似したセグメントまたはセグメント グループの集まりのことです。類似したセグメントおよびセグメント グループをマージすると、より上位のセグメント グループになります。この処理を続けていくと、最終的にはユーザー全体を表す上位のセグメント グループが 1 つ形成されます。

セグメント ビューアでは、セグメントが階層構造で表示されます。最上位のセグメント グループはユーザー全体を要約し、それより下位のセグメント グループとセグメントは、ユーザーのより小規模なサブセットを要約します。セグメント ビューアで収集した情報は、ほかの Commerce Server ビジネス デスク モジュールで、パーソナライズや対象化の基礎として使います。

セグメント グループが形成するセグメント階層のさまざまなレベルでデータの傾向を分析し、相関関係を見つけることができます。ユーザーを類似性でグループ化すると、新たな相関関係が明らかになることもあります。このような新たに認められた相関関係に基づいて、対象化およびパーソナライズのルールを形成できます。

セグメント モデル

セグメント モデルは、それぞれのセグメントおよびセグメント グループに属するユーザーの特性を記述したものです。サイトを訪問するユーザーの特性を示す属性値を見つけて分析するには、セグメント モデルを使います。たとえば、セグメント モデルを構築した後で、子供向けの人気の高い空想物語の本を購入したユーザーから成るセグメントを見つけ、その特性が女性、年齢 40 歳以上、年収 550万以上、および大卒以上であったとします。このような共通の特性が見つかれば、同じ特性を持つユーザーに同種の商品を勧めることができます。たとえば、これらのユーザーは子供向けの動物の本も購入する可能性があります。

システム管理者に要求して、Commerce Server のデータ ウェアハウスから生成されたデータに基づいてセグメント モデルを構築してもらうことができます。システム管理者は、更新後のセグメント モデル情報を Commerce Server ビジネス デスクのセグメント ビューア モジュールで表示できるように、新しいセグメント モデルを構築した後で通知する必要があります。

セグメント ビューア

セグメント グループと個々のセグメントを表示するには、セグメント ビューアを使います。セグメント ビューアは、ビジネス マネージャ向けのデータ分析ツールです。セグメント ビューア モジュールを使うと、利用状況の傾向を割り出して、ユーザー間の類似性に基づいたマーケティングを決定できます。

セグメント ビューア モジュールは、さまざまなセグメントの関連情報を表示し、そのプロパティを比較および対比するときに使います。個々のセグメントをさらに分析および分類する場合は、個々のセグメントのメンバーをリスト マネージャ モジュールのリストに保存できます。

セグメント ビューア モジュールを最初に開くと、利用できるセグメント モデルの一覧が表示されます。セグメント モデルを選択し、ツール バーの [モデルを開く] をクリックすると、セグメント ビューアの画面が表示されます。この画面には、次の 3 つの作業領域があります。

  • 開いたセグメント モデルのセグメントとセグメント グループの階層。

  • 選択したセグメントまたはセグメント グループに関連するプロパティの要約。

  • 選択したセグメントと、ほかのセグメントまたはセグメント グループとの比較。

セグメント ビューアでセグメント モデルを最初に表示したときには、セグメントの一覧のセグメントとセグメント グループに、Segment1、Segment2 などの汎用的な名前が付けられています。

セグメントまたはセグメント グループで表されるユーザーのユーザー全体に対する割合が、名前の後ろのかっこの中に表示されます。

セグメントの一覧の右側の画面には、セグメント要約が表示されます。

図をクリックすると、拡大または縮小します。

セグメントまたはセグメント グループの要約には、次の列から成るテーブルが含まれています。

  • プロパティ/値の対 互いに対応しており、選択したセグメントまたはセグメント グループのレコードを適切に要約します。たとえば、選択したセグメントのレコードの大多数が、職業を "学生" とするユーザーに対応している場合は、[プロパティ] 列に "職業" が、[値] 列に "学生" が表示されます。

  • スコア 赤色のバーを表示します。このバーの長さは、選択したセグメントまたはセグメント グループのレコードを、対応するプロパティ/値の組み合わせがどの程度うまく要約しているかを示します。

セグメント レポート

セグメント ビューアを使うと、作成したすべてのセグメント グループとセグメントを要約するレポートを生成できます。このレポートを使って、すべてのセグメントを比較します。各セグメントとセグメント グループには、詳細な情報へのリンクが設定されています。これらのリンクをクリックすると、セグメント間を簡単に移動できます。

生成したレポートは、独立したブラウザ ウィンドウに表示されます。

関連項目

Commerce Server のレポート

セグメント モデルを表示する

セグメント レポートを表示する

セグメントのデータをリスト マネージャにエクスポートする


Commerce Server のレポート

Commerce Server には、39 個のレポート定義が用意されています。動的レポートを変更して新しいレポートを作成し、作成した動的レポートをレポート モジュールに追加できます。新しい動的レポート定義を作成する方法の詳細については、「新しい動的レポートを作成する」を参照してください。また、サイト開発者やシステム管理者は、必要に応じてカスタム レポートを作成することができます。

注

  • レポートを実行するには、システム管理者がいくつかの作業をあらかじめ実行しておく必要があります。詳細については、「ビジネス分析を設定する」を参照してください。

ここでは、次のトピックについて説明します。

  • 広告のレポート

  • 商品売上レポート

  • Web 利用状況のレポート

  • ユーザーのレポート

  • 訪問のレポート

  • 診断のレポート

  • クエリ文字列のレポート

  • レポート プロパティ

  • レポート内の時間の処理


広告のレポート

広告のデータを分析するには、レポート モジュールを使って次のレポートを実行します。

広告の利用状況 (動的レポート)

広告の表示回数とヒット率 (日単位) (動的レポート)

広告の表示回数とヒット率 (キャンペーン項目別) (動的レポート)

広告の表示回数とヒット率 (キャンペーン別) (動的レポート)

キャンペーン項目の要約 (動的レポート)

キャンペーン イベントの要約 (動的レポート)

広告の利用状況 (動的レポート)

広告が効果的にサイトに配置されているかどうかを調べるには、広告の利用状況レポートを使います。このレポートでは、サイトでのキャンペーン活動の要約が、配置場所ごとに表示されます。このレポートに収集されるデータは、既に終了した訪問に関するものだけです。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[イベント数のカウント] [キャンペーン項目]
[イベント数]
[ページ グループ]
[サイト]

広告のレポートに戻る

広告の表示回数とヒット率 (日単位) (動的レポート)

サイトのキャンペーン項目に対するユーザーの行動を調べるには、広告の表示回数とヒット率 (日単位) レポートを使います。このレポートでは、キャンペーン項目ごとに、1 日あたりの一意のユーザーの利用状況が表示されます。このレポートに収集されるデータは、既に終了した訪問に関するものだけです。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[イベント数]
[頻度]
[訪問] 		[キャンペーン]
[日付]
[一意のユーザー]
[イベント]
[サイト]

広告のレポートに戻る

広告の表示回数とヒット率 (キャンペーン項目別) (動的レポート)

キャンペーン項目に対するユーザーの行動を時間を追って調べるには、広告の表示回数とヒット率 (キャンペーン項目別) レポートを使います。このレポートでは、キャンペーン項目ごとに、1 日あたりの一意のユーザーの利用状況が時系列で表示されます。このレポートに収集されるデータは、既に終了した訪問に関するものだけです。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[イベント数]
[頻度]
[訪問] 		[キャンペーン]
[キャンペーン項目]
[一意のユーザー]
[イベント]
[サイト]

広告のレポートに戻る

広告の表示回数とヒット率 (キャンペーン別) (動的レポート)

キャンペーンに対するユーザーの行動を調べるには、広告の表示回数とヒット率 (キャンペーン別) レポートを使います。このレポートでは、キャンペーンごとに、1 日あたりの一意のユーザーの利用状況が表示されます。このレポートに収集されるデータは、既に終了した訪問に関するものだけです。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[イベント数]
[頻度]
[訪問] 		[キャンペーン]
[一意のユーザー]
[イベント]
[サイト]

広告のレポートに戻る

キャンペーン項目の要約 (動的レポート)

サイトで展開したキャンペーンの効果を調べるには、キャンペーン項目の要約レポートを使います。このレポートでは、サイトの利用状況の要約が、キャンペーン項目別に表示されます。このレポートに収集されるデータは、既に終了した訪問に関するものだけです。

このレポートには、サイトでのキャンペーン活動の要約が表示されます。次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[クリックした割合 %]
[広告の残り要求数]
[クリック数]
[要求数]
[目標の達成率]
 [広告主]
[キャンペーン]
[キャンペーン項目]
[訪問]
[サイト]

広告のレポートに戻る

キャンペーン イベントの要約 (動的レポート)

サイトで展開したキャンペーンの効果を調べるには、キャンペーン イベントの要約レポートを使います。このレポートには、サイトでのキャンペーン イベントの活動の要約が表示されます。このレポートに収集されるデータは、既に終了した訪問に関するものだけです。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[イベント数のカウント] [広告主]
[イベント]
[サイト]

広告のレポートに戻る

関連項目

分析について

Commerce Server のレポート

ビジネス分析を設定する

レポートを検索する

レポートを実行する

動的レポートを表示する

静的レポートを表示する

レポートを印刷する


商品売上レポート

商品売上のデータを分析するには、レポート モジュールを使って次のレポートを実行します。

買い物客の参照の状況 (動的レポート)

顧客別の売り上げ (静的レポート)

顧客の消費の要約 (動的レポート)

注文イベント (動的レポート)

商品別売り上げ (動的レポート)

買い物バスケット イベント (動的レポート)

買い物客の参照の状況 (動的レポート)

ユーザーの訪問パターンと購入パターンを調べるには、買い物客の参照の状況レポートを使います。このレポートには、初購入者の数とリピータの数、および各購入者の購入ごとの平均訪問回数が表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[売り上げのカウント]
[訪問数のカウント]
[訪問者数のカウント]
[訪問数 (購入単位)] 		[買い物客の種類]
[サイト]

商品売上レポートに戻る

顧客別の売り上げ (静的レポート)

顧客の詳細、総売上高、および総注文数を参照するには、顧客別の売り上げレポートを使います。このレポートは、リスト マネージャにエクスポートできます。また、このレポートの情報を使って、オンライン キャンペーン (ダイレクト メールなど) で顧客を対象にすることができます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[注文]
[売り上げ] 		[電子メール]
[名]
[姓]
[ユーザー ID]

商品売上レポートに戻る

顧客の消費の要約 (動的レポート)

顧客ごとの販売量と売上収益を調べるには、顧客の消費の要約レポートを使います。このレポートには、登録済みユーザーのログオン名ごとの売上データ、およびゲスト ユーザーのゲスト ユーザー ID ごとの売上データが表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[数量]
[収益] 		[顧客]
[日付]
[商品]
[サイト]

商品売上レポートに戻る

注文イベント (動的レポート)

注文依頼イベント (注文を完了するためにユーザーが [チェック アウト] をクリックするなど) を調べるには、注文イベント レポートを使います。このレポートには、登録済みユーザーやゲスト ユーザーが実行した注文依頼イベントの数が、時間単位で表示されます。

注

  • このレポートでは、日付ディメンションの計算に週数ディメンションが使われます。たとえば、土曜日で始まる年の場合、最終週の週数ディメンションには 53 週が返されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[イベント数のカウント] [日時]
[イベント]
[時刻]
[サイト]
[ユーザーの種類]

商品売上レポートに戻る

商品別売り上げ (動的レポート)

日付ごとの商品の販売量と売上収益を調べるには、商品別売り上げレポートを使います。このレポートでは、販売された商品ごとに、総販売量と総売上収益が表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[数量]
[収益] 		[日付]
[商品]
[サイト]

商品売上レポートに戻る

買い物バスケット イベント (動的レポート)

ショッピング バスケットに関するユーザーの行動を調べるには、買い物バスケット イベント レポートを使います。このレポートには、商品、および商品がショッピング バスケットに追加された回数とショッピング バスケットから削除された回数が表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[カウント] [日時]
[イベント]
[商品]
[サイト]

商品売上レポートに戻る

関連項目

分析について

Commerce Server のレポート

ビジネス分析を設定する

レポートを検索する

レポートを実行する

動的レポートを表示する

静的レポートを表示する

レポートを印刷する


Web 利用状況のレポート

サイトの利用状況、参照 URL、およびデータ要求を分析するには、レポート モジュールを使って次のレポートを実行します。

ディレクトリ (動的レポート)

エントリ画面の分析 (静的レポート)

参照元ドメインを要求順に表示 (静的レポート)

要求の多いページ (静的レポート)

利用状況の要約 (曜日単位) (動的レポート)

利用状況の要約 (時間単位) (動的レポート)

利用状況の要約 (週単位/年間) (動的レポート)

利用状況の傾向 (動的レポート)

訪問数 (ブラウザ/バージョン/OS 別) (動的レポート)

ディレクトリ (動的レポート)

5,000 個の統一リソース識別子 (URI) ディレクトリ レベルのうち、最も訪問されたディレクトリ レベルを調べるには、ディレクトリ レポートを使います。このレポートには、URI ディレクトリの最初の 6 レベルの利用状況が表示されます。

注

  • 訪問回数が最も多い 5,000 個の URI 以外の情報 (訪問回数の最も少ない URI など) を参照する場合は、サイトのデータベースに保存されている CSDW_MakeAggRequestsByUri ストアド プロシージャを編集するように、システム管理者に依頼してください。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[ヒット数のカウント] [日付]
[ディレクトリのレベル]
[要求]
[サイト]

Web 利用状況のレポートに戻る

エントリ画面の分析 (静的レポート)

サイトにたどり着くために最も頻繁に使用されたエントリ パスを調べるには、エントリ画面の分析レポートを使います。このレポートには、上位 6 レベルのパス ディレクトリが表示されます。

注

  • エントリ画面の分析レポートでは、ユーザーがサイトにどのような経路でたどり着いたかを分析します。この処理には多くのプロセスが使われるため、完了までに時間がかかる場合があります。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[カウント] [URI 1]
[URI 2]
[URI 3]
[URI 4]
[URI 5]
[URI 6]

Web 利用状況のレポートに戻る

参照元ドメインを要求順に表示 (静的レポート)

ユーザーがどのサイトからアクセスしてきたかを調べるには、参照元ドメインを要求順に表示レポートを使います。このレポートには、よく使用された参照元ドメインの一覧が、要求回数別に表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[ドメイン] [% 要求]
[要求のカウント]

Web 利用状況のレポートに戻る

要求の多いページ (静的レポート)

最も要求されたページを調べるには、要求の多いページ レポートを使います。このレポートでは、要求回数の多い上位 5,000 ページの一覧が、クエリ文字列と共に、要求数ごとに表示されます。

注

  • 要求回数が多い上位 5,000 ページ以外の情報 (最も要求回数の少ないページなど) を参照する場合は、データ ウェアハウスのストアド プロシージャの下にある CSDW_MakeAggRequestsByUri ストアド プロシージャを編集するように、システム管理者に依頼してください。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[URI] [% 要求]
[要求のカウント]

Web 利用状況のレポートに戻る

利用状況の要約 (曜日単位) (動的レポート)

ページの平均要求回数を曜日ごとに表示するピボットグラフを参照するには、利用状況の要約 (曜日単位) レポートを使います。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[平均要求数 (曜日ごと)]
[平均訪問数 (曜日ごと)] 		[日付]
[曜日]
[サイト]

Web 利用状況のレポートに戻る

利用状況の要約 (時間単位) (動的レポート)

ページの平均要求回数を時間ごとに表示するピボットグラフを参照するには、利用状況の要約 (時間単位) レポートを使います。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[平均要求数 (1 日の時間ごと)]
[平均訪問数 (1 日の時間ごと)] 		[日付]
[時刻]
[サイト]

Web 利用状況のレポートに戻る

利用状況の要約 (週単位/年間) (動的レポート)

ページの平均要求回数を週ごとに表示するピボットグラフを参照するには、利用状況の要約 (週単位/年間) レポートを使います。

注

  • 土曜日で始まる年の場合、最終週の週数ディメンションには 53 週が返されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[平均要求数 (週ごと)]
[平均訪問数 (週ごと)] 		[日付]
[サイト]
[週数]

Web 利用状況のレポートに戻る

利用状況の傾向 (動的レポート)

1 日のページ要求、ユーザー、および訪問の要約を調べるには、利用状況の傾向レポートを使います。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[要求数]
[ユーザー]
[訪問数] 		[日付]
[サイト]
[ユーザーの種類]

Web 利用状況のレポートに戻る

訪問数 (ブラウザ/バージョン/OS 別) (動的レポート)

サイトへの訪問によく使用されているブラウザを調べるには、訪問数 (ブラウザ/バージョン/OS 別) レポートを使います。たとえば、ユーザーのブラウザが古い場合には、サイトを設計する際にフレームやマルチメディアなどの機能を組み込まないようにします。このレポートには、サイトへのアクセスにユーザーが使用しているブラウザ、バージョン、およびオペレーティング システムが表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[訪問数] [ブラウザ]
[日付]
[OS 名]
[サイト]
[バージョン]
[訪問のカウント]

Web 利用状況のレポートに戻る

関連項目

分析について

Commerce Server のレポート

ビジネス分析を設定する

レポートを検索する

レポートを実行する

動的レポートを表示する

静的レポートを表示する

レポートを印刷する


ユーザーのレポート

ユーザーのデータを分析するには、レポート モジュールを使って次のレポートを実行します。

ユーザー数と訪問数 (週単位) (動的レポート)

ユーザー数 (日単位) (動的レポート)

新規登録済みユーザー (静的レポート)

登録済みユーザーのプロパティ (静的レポート)

登録済みユーザー数 (登録日別) (動的レポート)

ユーザー登録までの日数 (動的レポート)

ユーザーの登録状況 (動的レポート)

ユーザーの傾向 (動的レポート)

ユーザー数と訪問数 (週単位) (動的レポート)

少数のユーザーが何度もサイトを訪れているのか、多数のユーザーが一度だけサイトを訪れているのかを判断するには、ユーザー数と訪問数 (週単位) レポートを使います。このレポートには、サイトを訪れている一意のユーザーの数、および特定の週のサイト訪問回数が表示されます。このレポートでは、一意のユーザーの数を各ユーザーの訪問回数と関連付けています。

日付ディメンションを折りたたむと、その期間 (年) に毎週訪れている一意のユーザーの数が表示されます。このレポートでは、週単位で一意となるユーザーの数を計算しているため、年単位で一意となるユーザーの訪問回数はわかりません。たとえば、ある週の水曜日に訪れたユーザーが次の週の金曜日に再び訪れた場合、そのユーザーはそれぞれの週の一意のユーザーとして数えられます。この場合、どちらの訪問も同じユーザーによって行われたにもかかわらず、その年の一意のユーザーは 2 人と数えられることになります。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[ユーザー]
[訪問数] 		[サイト]
[一意のユーザー数]
[ユーザーの種類]
[訪問数]
[週数]
[年]

ユーザーのレポートに戻る

ユーザー数 (日単位) (動的レポート)

特定の日にサイトに訪れている一意のユーザーの数を調べるには、ユーザー数 (日単位) レポートを使います。日付ディメンションを折りたたむと、その期間 (週または年) に毎日訪れている一意のユーザーの数が表示されます。このレポートでは、1 日単位で一意となるユーザーの数を計算しているため、週単位または年単位で一意となるユーザーの訪問回数はわかりません。たとえば、あるユーザーが特定の週に2日訪れた場合、そのユーザーはそれぞれの日の一意のユーザーとして数えられます。この場合、どちらの訪問も同じユーザーによって行われたにもかかわらず、その週の一意のユーザーは 2 人と数えられることになります。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[ユーザー] [日付]
[サイト]
[ユーザー数]
[ユーザーの種類]

ユーザーのレポートに戻る

新規登録済みユーザー (静的レポート)

新しい登録ユーザーを調べるには、新規登録済みユーザー レポートを使います。このデータを利用して、特別な宣伝キャンペーンを作成できます。新規登録ユーザーをオンライン キャンペーン (ダイレクト メールなど) の対象とするには、このレポートをリスト マネージャにエクスポートします。

静的レポートをエクスポートする方法の詳細については、「静的レポートをエクスポートする」を参照してください。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
このレポートにメジャーはありません。 [登録日]
[作成日]
[電子メール]
[名]
[姓]
[ユーザー ID]

ユーザーのレポートに戻る

登録済みユーザーのプロパティ (静的レポート)

登録済みユーザーから提供された情報を調べるには、登録済みユーザーのプロパティ レポートを使います。このデータを利用して、特別な宣伝キャンペーンを作成できます。登録済みユーザーをオンライン キャンペーン (ダイレクト メールなど) の対象とするには、このレポートをリスト マネージャにエクスポートします。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
このレポートにメジャーはありません。 [作成日]
[登録日]
[電子メール]
[名]
[姓]
[ユーザー ID]

ユーザーのレポートに戻る

登録済みユーザー数 (登録日別) (動的レポート)

登録に関するユーザーの行動を調べるには、登録済みユーザー数 (登録日別) レポートを使います。このレポートには、特定の期間 (年、四半期、月、または日) のサイトのユーザー登録履歴が表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[登録済みユーザー] [日付]
[RegisteredUsers]
[サイト]

ユーザーのレポートに戻る

ユーザー登録までの日数 (動的レポート)

ゲスト ユーザーがサイトに登録するまでに要した平均日数を追跡するには、ユーザー登録までの日数レポートを使います。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[登録までの平均所要日数] [平均所要日数]
[作成日時]
[サイト]

ユーザーのレポートに戻る

ユーザーの登録状況 (動的レポート)

ゲスト ユーザーがどの程度サイトに登録したかを調べるには、ユーザーの登録状況レポートを使います。このレポートには、ユーザーがゲストとしてサイトに初めてアクセスした日からサイトに登録するまでに経過した時間が表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[登録済みユーザー] [所要日数]
[登録済みユーザー数]
[サイト]

ユーザーのレポートに戻る

ユーザーの傾向 (動的レポート)

サイトを繰り返し訪問するリピート ユーザーがどの程度いるかを調べるには、User Trends レポートを使います。このレポートでは、サイトを訪れるユーザーの種類 (新規とリピート) が、日付ごとに表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[新しいユーザー]
[リピート ユーザー %]
[リピート ユーザー]
[ユーザー] 		[日付]
[サイト]
[週数]

ユーザーのレポートに戻る

関連項目

分析について

Commerce Server のレポート

ビジネス分析を設定する

レポートを検索する

レポートを実行する

動的レポートを表示する

静的レポートを表示する

レポートを印刷する


訪問のレポート

訪問のデータを分析するには、レポート モジュールを使って次のレポートを実行します。

最初に参照したページ (動的レポート)

最後に参照したページ

一般的な利用状況の統計 (動的レポート)

ユーザーの訪問の傾向 (動的レポート)

最初に参照したページ (動的レポート)

ユーザーがサイトに訪れるときに最初にアクセスする可能性が高いページを調べるには、最初に参照したページ レポートを使います。このレポートには、サイトに訪れる際によく使用される URI と、各 URI の使用回数が表示されます。

注

  • よく使用される 5,000 個の URI 以外の情報 (最も使用回数の少ない URI など) を参照する場合は、サイトのデータベースに保存されている CSDW_MakeAggRequestsByUri ストアド プロシージャを編集するように、システム管理者に依頼してください。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[訪問数のカウント] [日付]
[サイト]
[URI]

訪問のレポートに戻る

最後に参照したページ (動的レポート)

ユーザーがサイトを去る際に使用する可能性が高いページを調べるには、最後に参照したページ レポートを使います。このレポートには、サイトを去る際によく使用される URI と、各 URI の使用回数が表示されます。

注

  • よく使用される 5,000 個の URI 以外の情報 (最も使用回数の少ないページなど) を参照する場合は、サイトのデータベースに保存されている CSDW_MakeAggRequestsByUri ストアド プロシージャを編集するように、システム管理者に依頼してください。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[訪問数のカウント] [日付]
[サイト]
[URI]

訪問のレポートに戻る

一般的な利用状況の統計 (動的レポート)

サイトでの利用状況をすばやく調べるには、一般的な利用状況の統計レポートを使います。このレポートには、1 回の訪問あたりの平均要求回数、平均訪問時間、および要求回数と訪問回数が表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[平均滞在時間(秒)/訪問]
[平均訪問数/訪問]
[要求数]
[訪問] 		[日付]
[サイト]

訪問のレポートに戻る

ユーザーの訪問の傾向 (動的レポート)

サイトへの訪問回数を時間を追って調べるには、ユーザーの訪問の傾向レポートを使います。このレポートには、総訪問回数と、登録済みユーザー/未登録ユーザーの訪問回数が表示されます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[訪問数] [日付]
[サイト]
[ユーザーの種類]

訪問のレポートに戻る

関連項目

分析について

Commerce Server のレポート

ビジネス分析を設定する

レポートを検索する

レポートを実行する

動的レポートを表示する

静的レポートを表示する

レポートを印刷する


診断のレポート

診断のデータを分析するには、レポート モジュールを使って次のレポートを実行します。

帯域幅の要約

帯域幅の傾向 (動的レポート)

ヒット数 (HTTP ステータスごと) (動的レポート)

ヒット数 (Win32 ステータスごと) (動的レポート)

帯域幅の要約 (動的レポート)

サイトの週ごとの帯域消費量を表示するピボットグラフを参照するには、帯域幅の要約レポートを使います。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[帯域幅 (MB)] [日時]
[サイト]

診断のレポートに戻る

帯域幅の傾向 (動的レポート)

サイトの毎日の帯域消費量を調べるには、帯域幅の傾向レポートを使います。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[帯域幅 (MB]) [日付]
[曜日]
[サイト]

診断のレポートに戻る

ヒット数 (HTTP ステータスごと) (動的レポート)

要求回数の多い上位 5,000 ページをユーザーが訪れた際に発生する可能性のある問題を調べて診断するには、ヒット数 (HTTP ステータスごと) レポートを使います。このレポートには、Web サイトで要求回数の多い上位 5,000 ページに関連する HTTP エラー メッセージが表示されます。

注

  • 要求回数が多い上位 5,000 ページ以外の情報 (最も要求回数の少ないページなど) を参照する場合は、サイトのデータベースに保存されている CSDW_MakeAggRequestsByUri ストアド プロシージャを編集するように、システム管理者に依頼してください。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[カウント] [日付]
[HTTP ステータス]
[サイト]
[URI]

診断のレポートに戻る

ヒット数 (Win32 ステータスごと) (動的レポート)

要求回数の多い上位 5,000 ページをユーザーが訪れた際に発生する可能性のある問題を調べて診断するには、ヒット数 (Win32 ステータスごと) レポートを使います。このレポートには、Web サイトで要求回数の多い上位 5,000 ページに関連する Win32 エラー メッセージが表示されます。

注

  • 要求回数が多い上位 5,000 ページ以外の情報 (最も要求回数の少ないページなど) を参照する場合は、サイトのデータベースに保存されている CSDW_MakeAggRequestsByUri ストアド プロシージャを編集するように、システム管理者に依頼してください。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[Count] [日付]
[サイト]
[Win32 ステータス]

診断のレポートに戻る

関連項目

分析について

Commerce Server のレポート

ビジネス分析を設定する

レポートを検索する

レポートを実行する

動的レポートを表示する

静的レポートを表示する

レポートを印刷する


クエリ文字列のレポート

クエリ文字列のデータを分析するには、レポート モジュールを使って次のレポートを実行します。

クエリ文字列 (複数値) (静的レポート)

クエリ文字列 (単数値) (静的レポート)

クエリ文字列 (複数値) (静的レポート)

ユーザーがサイトでどのような情報を探しているかを調べるには、クエリ文字列 (複数値) レポートを使います。このレポートには、システムで分析する目的で設定したクエリ文字列への要求回数が表示されます。たとえば、システム管理者は、複数の値を取るクエリ文字列を設定して、ユーザーがどのような商品に興味を持っているかを追跡できます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[要求数] [名前]
[値]

クエリ文字列のレポートに戻る

クエリ文字列 (単数値) (静的レポート)

ユーザーがサイトでどのような情報を探しているかを調べるには、クエリ文字列 (単数値) レポートを使います。このレポートには、システムで分析する目的で設定したクエリ文字列への要求回数が表示されます。たとえば、システム管理者は、単一の値を取るクエリ文字列を設定して、ユーザーがサイトで特定の検索文字列を入力した回数を追跡できます。このレポートを使って、サイトで最も頻繁に使用される検索文字列を分析できます。

次の表は、このレポートに含まれるメジャーとディメンションを示します。

メジャー ディメンション
[要求数] [名前]
[値]

クエリ文字列のレポートに戻る

関連項目

分析について

Commerce Server のレポート

ビジネス分析を設定する

レポートを検索する

レポートを実行する

動的レポートを表示する

静的レポートを表示する

レポートを印刷する


レポート プロパティ

実行前にレポートの詳細を調べるには、レポート プロパティを使います。レポートのプロパティに用意されているレポート クエリを表示すると、特定のレポート定義が希望通りのデータを返すかどうかを判断するのに役立ちます。これが特に重要になるのは、大規模なデータ セットに対して静的レポートを実行している場合 (1000 万のユーザーについて登録済みユーザーのプロパティ レポートを実行している場合など) です。大規模なデータ セットに対して静的レポートを実行すると、処理にかなりの時間がかかる場合があります。

レポート プロパティには、名前、説明、種類、作成日、レポートの基礎となるクエリなど、レポートに関する有益な情報が含まれます。レポート プロパティに変更を加えることはできません。レポート プロパティを表示する方法については、「レポート プロパティを表示する」を参照してください。

次の表は、レポート モジュールで表示できるプロパティを示します。

プロパティ | 説明
[名前] | レポートの名前。
[説明] | レポートの説明。
[レポートの種類] | レポートの種類。
[作成日時] | レポートが作成された日付。
[作成者] | レポートを作成した人の名前。
[変更日時] | レポートが最後に変更された日付。
[変更者] | レポートを最後に変更した人の名前。
[クエリ] | レポート用に実行する Structured Query Language (SQL) クエリまたはマルチ ディメンション式 (MDX) クエリ。動的なオンライン分析処理 (OLAP) レポートではクエリを利用できません。
[メーリング リストとしてエクスポートしますか?] | このレポートのデータをメーリング リストとしてリスト マネージャにエクスポートできるかどうかを示します。
[ユーザー リストをエクスポートしますか?] | このレポートのデータをユーザー リストとしてリスト マネージャにエクスポートできるかどうかを示します。

関連項目

分析について

Commerce Server のレポート

新しい動的レポートを作成する


レポート内の時間の処理

Commerce Server のすべてのレポートでは、ユーザーの行動のデータが時間ごとに示されます。週単位の活動のレポートでは、使用している SQL Server の言語に対応する既定の週の開始日 (通常は日曜日) が使われます。


ビジネス分析を設定する

Web サイトでのユーザーの利用状況を分析するには、分析モジュールを使ってレポートを実行し、セグメント モデルを表示します。ユーザーの利用状況のデータを分析に利用するには、いくつかの作業を行う必要があります。次の図は、Commerce Server 2000 の分析処理でデータを利用するために必要な手順を示します。

セグメント ビューア
セグメント モデルの表示
セグメント モデルの作成
Commerce Server を
インストールする
ビジネス デスクの
インストール
レポート
レポートの実行
レポートの実行
準備タスク
データ ウェアハウスへの
データのインポート
データ ウェアハウスの
構成

ビジネス分析を設定するには

  1. システム管理者が Commerce Server をインストールします。Commerce Server をインストールする手順については、「http://www.microsoft.com/japan/support/commerceserver/2000/install/default.asp」を参照してください。

  2. ビジネス分析に使用するコンピュータに Commerce Server ビジネス デスク クライアントをインストールします。

  3. システム管理者がデータ ウェアハウスを設定します。データ ウェアハウスを設定する方法の詳細については、Commerce Server 2000 ヘルプの「データ ウェアハウス リソース プロパティを構成する」を参照してください。システム管理者は、特定の複数の SQL Server データベース ロールをユーザーに割り当てることによって、一部のユーザーにレポートの読み取りと保存を許可し、その他のユーザーにはレポートの読み取りのみを許可することもできます。これらのロールを作成する方法の詳細については、Commerce Server 2000 のヘルプの「データ ウェアハウスの権限を設定する」を参照してください。

  4. システム管理者が、Web ログ、トランザクション、ユーザー、キャンペーン、およびカタログ データという形式で、ユーザーの利用状況のデータをデータ ウェアハウスにインポートします。データ ウェアハウスにデータをインポートする方法については、Commerce Server 2000 ヘルプの「データ ウェアハウスにデータをインポートする」を参照してください。

  5. システム管理者が、レポート準備タスクを実行し、データ ウェアハウス内のデータと共に OLAP キューブを読み込みます。OLAP キューブは、サイトのアンパッケージ時にインストールされます。OLAP キューブには、分析処理でのデータ検索の効率を上げるように、データが整理されて格納されています。レポート準備タスクを実行する方法については、Commerce Server 2000 ヘルプの「レポートの作成を準備する」を参照してください。

システム管理者が、データ ウェアハウス内のデータでセグメント モデルを構築します。セグメント モデルを構築する方法については、Commerce Server 2000 ヘルプの「新しい分析モデルを構築する」を参照してください。

  6. 分析レポートを実行してセグメント モデルを表示し、Web サイトでのユーザーの利用状況を分析します。レポートを実行する方法については、「レポートを実行する」を参照してください。セグメント モデルを表示する方法については、「セグメント モデルを表示する」を参照してください。

関連項目

レポートを検索する

レポートを実行する

セグメント モデルを表示する


レポートを検索する

動的レポートおよび静的レポートを検索するには、レポート モジュールを使います。

レポートの一覧から、特定のレポートまたは複数のレポートを検索できます。用意されているすべてのレポートの一覧を取得したり、レポートのプロパティを使って検索を絞り込むには、検索ウィンドウを使います。検索結果の一覧には、検索条件を満たすすべてのレポートが表示されます。この一覧には、名前、カテゴリ、作成者、種類の 4 つの列があり、それぞれが同じ名前の 4 つのレポート プロパティに対応しています。検索結果の一覧は、名前、カテゴリ、作成者、および種類の各レポート プロパティで並べ替えることができます。

名前、カテゴリ、または作成者でレポートを検索すると、その検索文字列に一致するエントリとその検索文字列で始まるエントリがすべて返されます。

用意されているレポートの一覧を表示するには

プロパティに基づいてレポートを検索するには

レポートの一覧を並べ替えるには

用意されているレポートの一覧を表示するには

  1. [分析] の [レポート] をクリックし、ツール バーの 分析レポートの検索 をクリックします。

  2. [検索条件] ドロップダウン リストの [すべてのレポート] をクリックし、[検索開始] をクリックします。

用意されているレポートの一覧が [レポート] 画面に表示されます。

プロパティに基づいてレポートを検索するには

  1. [分析] の [レポート] をクリックし、ツール バーの 分析レポートの検索 をクリックします。

  2. [検索条件] ドロップダウン リストで、次の操作を行います。
    項目 | 操作
    [名前] | レポートを名前で検索するときに選択します。
    [カテゴリ] | レポートをレポートが属するカテゴリで検索するときに選択します。
    [作成者] | レポートを作成者で検索するときに選択します。
    [種類] | レポートをレポートの種類 (動的または静的) で検索するときに選択します。
    [情報] | レポートを [名前]、[カテゴリ]、[作成者]、[種類] の各検索条件の任意の組み合わせで検索するときに選択します。
    [すべてのレポート] | 用意されているレポートをすべて検出するときに選択します。

  3. 次に表示されるプロパティ値ボックスで、選択したプロパティ (名前、カテゴリ、作成者、および 種類) の値を入力するか、または一覧から値を選択します。

[情報] を選択した場合は、名前、カテゴリ、作成者、種類の各プロパティに対応したテキスト ボックスが表示されます。

適切なプロパティ値ボックスで、1 つまたは複数のプロパティの値を入力するか、または値を選択します。

  4. [検索開始] をクリックします。

検索条件に一致するレポートの一覧が [レポート] 画面に表示されます。

レポートの一覧を並べ替えるには

  • [分析] の [レポート] をクリックし、次の操作を行います。
    項目 | 操作
    [名前] | レポートの名前で並べ替えるときにクリックします。既定では、レポートの一覧は名前で昇順に並べ替えられています。
    [カテゴリ] | レポートのカテゴリで並べ替えるときにクリックします。
    [作成者] | レポートの作成者で並べ替えるときにクリックします。
    [種類] | レポートの種類で並べ替えるときにクリックします。

関連項目

分析について

Commerce Server のレポート

レポートを実行する

レポート プロパティを表示する


レポートを実行する

動的レポートおよび静的レポートを実行するには、レポート モジュールを使います。

レポートを実行するには、システム管理者がいくつかの作業をあらかじめ実行しておく必要があります。たとえば、システム管理者は、データをデータ ウェアハウスに定期的にインポートし、レポート準備タスクを実行して、データ ウェアハウスのデータが最新であるようにしておく必要があります。必要に応じて、システム管理者は、レポートの保存と表示を行うための適切な権限をユーザーに割り当てることもあります。詳細については、「ビジネス分析を設定する」を参照してください。

注

  • レポート モジュールを最初に開いたときは、すべてのレポートを検索する設定になっています。より具体的な検索条件を指定して、レポートの一覧を絞り込むこともできます。

動的レポートを実行するには

静的レポートを実行するには

動的レポートを実行するには

  • [分析] の [レポート] をクリックします。用意されているレポートの一覧で、実行する動的レポートを選択し、ツール バーの [image] をクリックします。

完成した動的レポートは、新しいブラウザ ウィンドウにピボットテーブルとして表示されます。

注

  • ピボットテーブルが表示されない場合は、[ピボットの表示] をクリックしてください。

  • Commerce Server 2000 では、動的レポートの場合、1 つのディメンションにつき最大で 25 万人のメンバまでサポートしています。動的レポートの対象となるデータ セットにメンバが 25 万人を超えるディメンションがある場合、その動的レポートはデータなしでブラウザ ウィンドウに表示されます。

静的レポートを実行するには

  1. [分析] の [レポート] をクリックします。用意されているレポートの一覧で、実行する静的レポートを選択し、ツール バーの <レポート名> の実行 をクリックします。

  2. [レポートの実行] ダイアログ ボックスの [サイト名] セクションで、次の操作を行います。
    項目 | 操作
    [オペランド] | ドロップダウン リストから、レポートの対象となるサイトを判別するためのオペランド ([すべて]、[等しい]、[等しくない]、[同様である]、または [同様ではない]) を選択します。
    [パラメータ値] | 既定では、現在のサイト名が入ります。ほかのサイトに対してレポートを実行する場合は、そのサイトの名前を入力します。入力した名前が Commerce Server サイト名と一致しない場合は、レポートが失敗するか、またはデータなしのレポートが表示されます。

  3. [レポートの実行] ダイアログ ボックスで、必要に応じてパラメータを調整します。レポートのパラメータはすべて、レポート固有のものです。

    注

    • レポート クエリ、サイト名、フィールド名、およびユーザー数とサイト名のパラメータ タグを表示するには、[レポートの実行] ダイアログ ボックスの [拡張] をクリックします。
  4. [OK] をクリックします。

静的レポートが実行されます。完了すると、完成したレポート モジュールで表示できます。

注意

  • 同時に実行している静的レポートの数が多いと、処理に時間がかかり、場合によってはビジネス デスクが応答しなくなることがあります。

関連項目

分析について

Commerce Server のレポート

レポートを検索する


動的レポートを表示する

完成した動的レポートは、ピボットテーブルまたはピボットグラフとしてブラウザ ウィンドウに表示されます。

動的レポートをピボットグラフとして表示するには

動的レポートをピボットテーブルとして表示するには

動的レポートをピボットグラフとして表示するには

  1. [分析] の [レポート] をクリックし、実行する動的レポートを選択します。

  2. [レポート] 画面で、ツール バーの <レポート名> の実行 をクリックして動的レポートを実行します。

    完成したレポートは、新しいブラウザ ウィンドウにピボットテーブルまたはピボットグラフとして表示されます。

    注

    • Commerce Server ビジネス デスクから動的レポートを最初に実行すると、ビジネス デスクが動作中のコンピュータにユーザー登録済みの Microsoft Office をインストールしているかどうかを確認するメッセージが表示されます。そのコンピュータにユーザー登録済みの Microsoft Office をインストールしていない場合は、動的レポートを Microsoft Excel にエクスポートしたり、動的レポートに変更を加えることができません。また、Microsoft ピボットテーブル リストのヘルプを利用することもできません。動的レポートのデータを標準の表示形式で参照することはできます。
  3. [<完成したレポート>] ブラウザ ウィンドウで、次の操作を行います。
    項目 | 操作
    [チャートの表示] | ピボットグラフを表示するときにクリックします。もう一度クリックすると、ピボットグラフが表示されなくなります。
    [凡例の追加] | ピボットグラフの凡例を表示するときにクリックします。もう一度クリックすると、凡例が表示されなくなります。
    [反転] | ピボットグラフでのデータの表示方法を変更するときにクリックします。[反転] をクリックすると、ピボットテーブルの行と列のディメンションを切り替えたときと同じ効果が得られます。
    [チャート タイプ] ドロップダウン リスト | ドロップダウン リストから、ピボットグラフの新しいチャートの種類を選択します。

動的レポートをピボットテーブルとして表示するには

  1. [分析] の [レポート] をクリックし、実行する動的レポートを選択します。

  2. [レポート] 画面で、ツール バーの <レポート名> の実行 をクリックして動的レポートを実行します。

    完成したレポートは、新しいブラウザ ウィンドウにピボットテーブルまたはピボットグラフとして表示されます。

  3. [<完成したレポート>] ブラウザ ウィンドウで、次の操作を行います。
    項目 | 操作
    [ピボットの表示] | ピボットテーブルを表示するときにクリックします。もう一度クリックすると、ピボットテーブルが表示されなくなります。
    [詳しい説明の表示] | レポートの説明を表示するときにクリックします。


静的レポートを表示する

静的レポートを実行すると、完成した静的レポートは完成したレポート モジュールのレポートの一覧に表示されます。

静的レポートの状態を確認するには

完成した静的レポートを検索するには

完成したレポートの一覧を並べ替えるには

静的レポートを開くには

複数の静的レポートを開くには

静的レポートを閉じるには

静的レポートの状態を確認するには

  • [分析] の [完成したレポート] をクリックします。

レポートの状態が、レポートの一覧の [状態] 列に表示されます。状態は、次のいずれかになります。

  • 完了レポートは完了しています。レポートを開いて表示できます。

  • 保留中 レポートは実行中です。

  • 失敗 レポートは正常に完了しませんでした。レポートが失敗した場合は、[完成したレポート] の一覧からそのレポートを削除して、もう一度そのレポートを実行します。

注

  • 完了レポート モジュールの [状態] 列は、[完了]、[保留中]、[失敗] の順に、[ステータス ID] で並べ替えられます。

完成した静的レポートを検索するには

  1. [分析] の [完成したレポート] をクリックし、ツール バーの 完成したレポートの検索 をクリックします。

  2. [検索条件] ドロップダウン リストで、次の操作を行います。
    項目 | 操作
    [名前] | レポートを名前で検索するときに選択します。
    [実行者] | レポートを実行者の名前で検索するときに選択します。
    [実行日] | レポートを実行された日付の範囲で検索するときに選択します。
    [状態] | レポートをレポートの状態 ([完了]、[保留中]、または [失敗]) で検索するときに選択します。
    [情報] | レポートを、[名前]、[実行者]、[実行日]、[状態] の各検索条件の任意の組み合わせで検索するときに選択します。
    [すべてのレポート] | 用意されているレポートをすべて検出するときに選択します。

  3. 次に表示されるプロパティ値ボックスで、選択した検索条件 ([名前]、[実行日]、[実行者]、[状態] など) の値を入力するか、または一覧から値を選択します。次に、[検索開始] をクリックします。

検索結果のレポートの一覧には、検索条件を満たすすべての静的レポートが表示されます。レポートの一覧を並べ替えるには、いずれかの列見出しをクリックします。

完成したレポートの一覧を並べ替えるには

  • [分析] の [完成したレポート] をクリックし、次の操作を行います。
    項目 | 操作
    [名前] | レポートの名前で並べ替えるときにクリックします。
    [実行日] | レポートが実行された日付で並べ替えるときにクリックします。既定では、レポートは [実行日] で降順に並べられています。
    [実行時間] | レポートが実行された時刻で並べ替えるときにクリックします。
    [実行者] | レポートを実行したユーザーの名前で並べ替えるときにクリックします。
    [状態] | レポートの状態 ([完了]、[保留中]、または [失敗]) で並べ替えるときにクリックします。

注

  • 完成したレポート モジュールの [状態] 列は、[失敗]、[保留中]、[完了] の順序で並べ替えられます。

  • [実行時間] 列は、レポートが実行された日付で並べ替えられます。[実行時間] 列を [実行日] 列から独立して並べ替えることはできません。

静的レポートを開くには

  1. [分析] の [完成したレポート] をクリックします。

  2. レポートの一覧で、開くレポートを選択し、ツール バーの <レポート名> を開く をクリックします。

    注

    • 開くことができるレポートは、状態が [完了] のレポートだけです。

静的レポートが、新しいブラウザ ウィンドウに HTML 文書として表示されます。

複数の静的レポートを開くには

  1. [分析] の [完成したレポート] をクリックします。

  2. 完成したレポートの一覧で、開くレポートを複数選択し、ツール バーの <レポート名> を開く をクリックします。

静的レポートが、新しいブラウザ ウィンドウに HTML 文書として表示されます。

注

  • [すべて選択] をクリックして一覧のすべてのレポートを選択した場合、それらのレポートを開くことはできません。一覧のすべてのレポートを開くには、各レポートを個別に選択する必要があります。

  • 複数の静的レポートを開く場合、Web ブラウザのメモリ制限を超えて、完成したレポート モジュールが応答しなくなることがあります。

静的レポートを閉じるには

  • レポートが表示されているブラウザ ウィンドウを閉じます。

関連項目

レポートを印刷する

動的レポートをエクスポートする

静的レポートをエクスポートする


レポートを印刷する

Commerce Server 2000 レポートは、ブラウザ ウィンドウで表示するように設計されています。動的レポートと静的レポートは、Web ブラウザから印刷できます。大規模なレポートを印刷および表示する場合は、サイズ制限の問題があります。

動的レポートのピボットテーブルを印刷したときに実際に印刷されるのは、ブラウザ ウィンドウにスクロールなしで表示できるピボットテーブルの一部だけになります。ピボットテーブルのノードを展開した場合やテーブルがブラウザのメモリ制限を超えた場合には、ピボットテーブルは印刷されません。大きなピボットテーブルの全体を印刷するには、ピボットテーブルを Microsoft Excel にエクスポートします。ピボットテーブルを Microsoft Excel にエクスポートする方法については、「動的レポートをエクスポートする」を参照してください。Microsoft Excel から印刷する方法については、Microsoft Excel のヘルプを参照してください。

静的レポートを実行するときには、完成したレポートがブラウザ ウィンドウの 1.000 行に収まるように制限されます。大きな静的レポートのすべての行を表示するには、レポートをリスト マネージャにエクスポートします。レポートをリスト マネージャにエクスポートする方法については、「静的レポートをエクスポートする」を参照してください。

レポートを印刷するには

  1. ブラウザ ウィンドウで、[ファイル] メニューの [印刷] をクリックします。

  2. [印刷] ダイアログ ボックスの [印刷] をクリックします。

レポートが印刷されます。

関連項目

動的レポートをエクスポートする

静的レポートをエクスポートする


動的レポートをエクスポートする

完成した動的レポートを Microsoft Excel にエクスポートするには、ピボットテーブルのコントロールを使います。Microsoft Excel を使って、完成した動的レポートを保存、変更、および印刷します。このため、レポートを表示するコンピュータに Microsoft Excel をインストールしておく必要があります。

完成した動的レポートを Microsoft Excel にエクスポートするには

  1. [分析] の [レポート] をクリックします。用意されているレポートの一覧で、実行する動的レポートを選択し、ツール バーの <レポート名> の実行 をクリックします。

    完成した動的レポートは、新しいブラウザ ウィンドウにピボットテーブルとして表示されます。

    注

    • ピボットテーブルが表示されない場合は、[ピボットの表示] をクリックしてください。
  2. Microsoft Excel でレポートを開くには、[ピボット テーブル] 画面で [ピボット テーブル] ツール バーの [Excel へエクスポート] をクリックします。

レポートが Microsoft Excel のスプレッドシートとして表示されます。

関連項目

分析について

Commerce Server のレポート

レポートを実行する

静的レポートをエクスポートする

レポートをリスト マネージャにエクスポートする


静的レポートをエクスポートする

静的レポートのデータをリスト マネージャ モジュールにエクスポートするには、レポート モジュールを使います。ダイレクト メール プロパティを持つ静的レポートのデータは、ダイレクト メール キャンペーンで使用できます。ユーザーに関する静的レポート (登録済みユーザーのプロパティなど) のデータを参照および更新するには、ユーザー モジュールを使います。

データをリストにエクスポートするには

  1. [分析] の [レポート] をクリックします。

  2. レポートの一覧で、エクスポートするデータが含まれている静的レポートを選択し、ツール バーの <レポート名> のエクスポート をクリックします。

  3. [レポートの実行] ダイアログ ボックスで、必要に応じてレポートのパラメータを調整します。レポートのパラメータはすべて、レポート固有のものです。

    注

    • [サイト名: パラメータ値] ボックスに入力した名前が Commerce Server のサイト名と一致しない場合は、データなしでレポートがエクスポートされます。

    • レポート クエリ、サイト名、フィールド名、およびユーザー数とサイト名のパラメータ タグを表示するには、[レポートの実行] ダイアログ ボックスの [拡張] をクリックします。
  4. [OK] をクリックします。

  5. [レポートをリストとしてエクスポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [静的] | 静的リストをエクスポートするときに選択します。
    [動的] | 動的リストをエクスポートするときに選択します。
    [リスト名] | リストの一意の名前を入力します。
    [レポート名] | リストの作成元であるレポートの名前を表示します。

  6. [OK] をクリックします。

静的レポートがリストとしてリスト マネージャ モジュールにエクスポートされます。

リスト マネージャ モジュールを開いて、データがリストとしてエクスポートされたことを確認してください。リストをリスト マネージャにエクスポートする方法については、「レポートをリスト マネージャにエクスポートする」を参照してください。

関連項目

分析について

Commerce Server のレポート

レポートを実行する

動的レポートをエクスポートする

レポートをリスト マネージャにエクスポートする


新しい動的レポートを作成する

レポートのピボットテーブルに変更を加え、変更後のレポートを新しいレポート定義として保存するには、レポート モジュールを使います。新しく保存したレポートは、レポートの一覧で利用できるようになります。サイト開発者用のカスタム レポートを作成する方法については、「カスタム レポートを作成する」を参照してください。

注

  • ピボットグラフを保存することはできません。

ピボットテーブルにフィールドを追加するには

レポートの一覧に新しいレポートを表示するには

レポートの一覧を更新するには

ピボットテーブルにフィールドを追加するには

  1. [分析] の [レポート] をクリックし、実行する動的レポートを選択します。

  2. [レポート] 画面で、ツール バーの <レポート名> の実行 をクリックして動的レポートを実行します。

    完成したレポートが、新しいブラウザ ウィンドウにピボットテーブルとして表示されます。ピボットテーブルの上部に [ピボットテーブル フィールド リスト] が表示されます。

    注

    • テーブルを開いたときに [ピボットテーブル フィールド リスト] が自動的に表示されない場合は、[ピボット テーブル] ツール バーの [フィールド リスト] をクリックしてください。
  3. [ピボットテーブル フィールド リスト] からフィールドをドラッグして、ピボットテーブルにドロップします。

    ピボットテーブルで、フィールド一覧の [集計] の下にある項目がメジャーです。[集計] と同じレベルにある項目はディメンションです。メジャーは、ピボットテーブルのデータ領域 (中央のセル) に追加できます。ディメンションは、行、列、またはフィルタとして使用できます。

    フィールドを [ピボットテーブル フィールド リスト] からドラッグ アンド ドロップする代わりに、[ピボットテーブル フィールド リスト] の下部にある [追加先] を使うこともできます。フィールド一覧の使い方については、[ピボット テーブル] ツール バーの [ヘルプ] をクリックし、表示される情報を参照してください。

  4. 完成したレポートのウィンドウで、ピボットテーブルのすぐ上にある レポートの保存 をクリックします。[レポートの保存 — Web ページ] ダイアログ ボックスが表示されます。

  5. [レポートの保存—Web ページ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [レポート名] | 新しいレポートの名前を入力します。
    [レポートの説明] | 新しいレポートの説明を入力します。
    [レポートの詳しい説明] | 新しいレポートの詳しい説明を入力します。この説明は、 詳しい説明の表示 をクリックしたときに、ピボットテーブル コントロールの上にあるブラウザ ウィンドウに表示されます。

  6. [OK] をクリックします。新しいレポートが保存されます。

  7. [レポート] 画面に戻るには、レポートのウィンドウを閉じます。

ピボットテーブルを操作する方法の詳細については、ピボットテーブルのヘルプを参照してください。このヘルプは、[ピボット テーブル] ツール バーの [ヘルプ] をクリックすると表示されます。

重要

  • 新しいレポートを保存すると、レポートのデータではなく、レポート定義が保存されます。次回そのレポートを実行すると、同じ行、列、およびフィルタが表示されます。また、そのレポート定義に従って、現在のデータが Microsoft SQL Server 2000 Analysis Services (OLAP) から照会されます。

レポートの一覧に新しいレポートを表示するには

  1. [分析] の [レポート] をクリックします。

  2. [レポート] 画面で、ツール バーの 分析レポートの検索 をクリックします。次に、適切な検索条件を指定していることを確認し、[検索開始] をクリックします。

レポートの一覧を更新するには

  1. [分析] の [レポート] をクリックし、ツール バーの 分析レポートの検索 をクリックします。

  2. [検索条件] ボックスで [すべてのレポート] を選択し、[検索開始] をクリックします。

すべてのレポートが含まれる新しい一覧が表示されます。

関連項目

分析について

Commerce Server のレポート


レポートを削除する

カスタム レポート定義を削除するには、完成したレポート モジュールを使います。完成した静的レポートを削除するには、完了レポート モジュールを使います。Commerce Server にあらかじめ用意されている動的レポート定義および静的レポート定義は削除できません。これらはシステムのレポートです。システムのレポートの場合は、レポート モジュールのレポートの一覧の [作成者] 列に "システム" と表示されます。

カスタム レポート定義を削除する

完成した静的レポートを削除する

カスタム レポート定義を削除する

カスタム レポート定義を削除するには、レポート モジュールを使います。システムのレポートは削除できません。システムのレポートの場合、[作成者] 列に "システム" と表示されます。

注意

  • レポート モジュールでカスタム レポートを削除すると、対応するレポート定義が削除され、そのレポートを実行できなくなります。

カスタム レポートを削除するには

  1. [分析] の [レポート] をクリックし、削除するカスタム レポートを選択します。

  2. ツール バーの [image] 削除をクリックします。

  3. [レポートを削除しますか?] ダイアログ ボックスで [はい] をクリックします。

選択したカスタム レポートが削除されます。レポートの一覧には、削除したレポートが表示されなくなります。

完成した静的レポートを削除する

完成した静的レポートを削除するには、完成したレポート モジュールを使います。完成したレポート モジュールで静的レポートを削除すると、完成したレポートだけが削除されます。レポート定義は削除されずにレポート モジュールに残ります。

注

  • 失敗したレポートも、完成したレポートと同じ方法で削除できます。

  • 実行中のレポート (状態が [保留中] のレポート) をレポートの一覧から削除しても、そのレポートは終了しません。引き続き実行されます。

完成した静的レポートを削除するには

  1. [分析] の [完成したレポート] をクリックします。

  2. レポートの一覧で、削除するレポートを選択し、ツール バーの 完成したレポートの削除 をクリックします。

選択した静的レポートが削除されます。レポートの一覧には、削除したレポートが表示されなくなります。

関連項目

分析について

Commerce Server のレポート


レポート プロパティを表示する

静的レポートおよび動的レポートの名前、説明、レポートの種類、作成日時、作成者、変更日時、変更者、クエリ、メーリング リストとしてエクスポート、ユーザー リストとしてエクスポートの各プロパティを表示するには、レポート モジュールを使います。プロパティの値を参照すると、レポートが希望通りの情報を返すかどうかを判断するのに役立ちます。

レポート プロパティに変更を加えることはできません。求めているデータを返すクエリがどのレポート定義にも存在しない場合は、既存の動的レポート定義に変更を加え、それを新しい動的レポート定義として保存します。また、システム管理者に依頼して、必要とする動的レポート定義または静的レポート定義を新規に作成してもらうこともできます。動的レポート定義に変更を加えて新しい動的レポート定義を作成する方法の詳細については、「新しい動的レポートを作成する」を参照してください。

レポートのプロパティを表示するには

  • [分析] の [レポート] をクリックします。レポートの一覧で、表示するプロパティが含まれているレポートを選択し、ツール バーの <レポート名> を開く をクリックします。

レポート プロパティの一覧が表示されます。

関連項目

分析について

Commerce Server のレポート

レポートを検索する


ユーザーのセグメントを分析する

セグメントとは、特性または行動を共有するユーザーのグループのことです。セグメントは、データ ウェアハウスに格納されている特性に基づいて作成されます。ユーザーの特性または行動 (利用傾向など) を割り出すには、セグメント ビューア モジュールを使ってセグメントとセグメント グループを分析します。この分析結果から、ユーザー間の類似性に基づいたマーケティングを決定できます。

セグメント モデルは、そのセグメント モデルを構築したときに作成されたセグメントの集まりで、それぞれのセグメントおよびセグメント グループに属するユーザーの特性を記述したものです。サイトを訪問するユーザーの特性を示す属性値を見つけて分析するには、セグメント モデルを使います。

たとえば、セグメント モデルを構築した後で、子供向けの人気の高い空想物語の本を購入したユーザーから成るセグメントを見つけ、その特性が女性、年齢 40 歳以上、年収 550万以上、および大卒以上であったとします。このような共通の特性が見つかれば、同じ特性を持つユーザーに同種の商品を勧めることができます。たとえば、これらのユーザーは子供向けの動物の本も購入する可能性があります。

セグメント モデルを表示するには、Commerce Server ビジネス デスクのセグメント ビューア モジュールを使います。表示したセグメントとセグメント グループには、Commerce Server によって汎用的な名前が付けられています。セグメントとセグメント グループの内容を分析したら、その内容に沿ったわかりやすい名前に変更してください。セグメントの名前を変更した後で、それらを互いに比較して、比較結果を示すレポートを生成できます。また、セグメントのデータをビジネス デスクのリスト マネージャ モジュールにエクスポートして、メーリング リストを作成したり、ユーザー プロファイルにプロパティを追加して対象化に使用することができます。

ここでは、次のトピックについて説明します。

  • セグメント モデルを表示する

  • 2 つのセグメントまたはセグメント グループを比較する

  • セグメントまたはセグメント グループの名前を変更する

  • セグメント レポートを表示する

  • セグメントのデータをリスト マネージャにエクスポートする

関連項目

セグメント分析

Commerce Server のレポート


セグメント モデルを表示する

セグメント モデルを最初に表示したときには、セグメント階層のセグメントとセグメント グループにセグメント 1、セグメント 2 などの汎用的な名前が付けられています。セグメントまたはセグメント グループで表されるユーザーのユーザー全体に対する割合が、名前の後ろのかっこの中に表示されます。セグメントの一覧の右側の画面には、セグメント要約が表示されます。

図をクリックすると、拡大または縮小します。

セグメントまたはセグメント グループの要約には、次の列から成るテーブルが含まれています。

  • プロパティ/値 互いに対応しており、選択したセグメントまたはセグメント グループのレコードを適切に要約します。たとえば、選択したセグメントのレコードの大多数が、職業を "学生" とするユーザーに対応している場合は、[プロパティ] 列に "職業" が、[値] 列に "学生" が表示されます。

  • スコア 赤色のバーを表示します。このバーの長さは、選択したセグメントまたはセグメント グループのレコードを、対応するプロパティ/値の組み合わせがどの程度うまく要約しているかを示します。

セグメント モデルを表示するには

  • [セグメント ビューア] をクリックし、表示するセグメント モデルを選択します。次に、ツール バーの [image] をクリックします。

[セグメント ビューア] 画面が開き、[生成 (100%)] というラベルが付いた最上位のセグメント グループが表示されます。下位のセグメントとセグメント グループを表示するには、最上位のセグメント グループの横の矢印をクリックします。

注

  • 一度に表示できるセグメント モデルは 1 つだけです。

セグメント モデルは、システム管理者が Commerce Server マネージャで作成します。セグメント モデルを作成する方法については、Commerce Server 2000 ヘルプの「予測リソースの実行」を参照してください。

関連項目

セグメント分析のワークフロー

セグメント ビューア

Commerce Server のレポート


2 つのセグメントまたはセグメント グループを比較する

あるセグメントまたはセグメント グループをほかのセグメントまたはセグメント グループと比較するには、セグメント ビューア モジュールを使います。たとえば、サイトによく訪れるユーザーに対応しているセグメントと、たまにしか訪れないユーザーに対応しているセグメントがあるとします。これらのセグメントを比較すると、よく訪れるユーザーとたまにしか訪れないユーザーの特性にどのような違いがあるのかがわかります。

セグメント比較を行うには、まず 1 つのセグメントを選択し、次にその比較対象となるセグメントを選択します。比較結果は、次の列から成るテーブルに表示されます。

  • プロパティ/値 選択したセグメントまたはセグメント グループに属するユーザーと、その比較対象となったセグメントまたはセグメント グループに属するユーザーとの違いを表すプロパティと値の組み合わせです。

  • 選択されたセグメント 黄色のバーが表示されます。このバーの長さは、プロパティ/値の組み合わせに対応するレコードが、比較対象となったセグメントまたはセグメント グループではなく、選択したセグメントまたはセグメント グループにどの程度属しているかを示します。

  • セグメントの比較 青色のバーが表示されます。このバーの長さは、プロパティ/値の組み合わせに対応するレコードが、選択したセグメントまたはセグメント グループではなく、比較対象となったセグメントまたはセグメント グループにどの程度属しているかを示します。

2 つのセグメントまたはセグメント グループを比較するには

  1. [セグメント ビューア] をクリックし、比較するセグメントが含まれているセグメント モデルを選択します。次に、ツール バーの [image] モデルを開く をクリックします。

  2. [セグメント階層] で、比較するセグメントまたはセグメント グループを選択します。

    [セグメント ビューア] 画面の [要約 <セグメント名>] の下に、選択したセグメントまたはセグメント グループの要約が表示されます。

  3. [<セグメント名> を以下と比較] ボックスで、前の手順で選択したセグメントの比較対象となるセグメントまたはセグメント グループを、ドロップダウン リストから選択します。

[セグメント ビューア] 画面の下部に比較の要約が表示されます。プロパティは、選択したセグメントまたは比較対象のセグメントにおけるメンバとしての相対的な強さの順序で表示されます。


セグメントまたはセグメント グループの名前を変更する

セグメント モデルを最初に開いたときには、セグメントとセグメント グループにセグメント 1、セグメント 2 などの汎用的な名前が付けられています。セグメント階層には、これらの汎用的な名前が表示されています。すべてのセグメントが含まれているユーザー全体の名前は、[生成 (100%)] となっています。

セグメントの要約情報を調べたりほかのセグメントと比較して、どの特性が重要かが判明したら、セグメントとセグメント グループにわかりやすい名前を付けることをお勧めします。セグメントやセグメント グループに新しい名前を付けるときは、そのセグメント モデルで一意の名前を付ける必要があります。

セグメントまたはセグメント グループの名前を変更するには

  1. [セグメント ビューア] をクリックし、名前を変更するセグメントまたはセグメント グループが含まれているセグメント モデルを選択します。次に、ツール バーの モデルを開く をクリックします。

  2. [セグメント階層] で、名前を変更するセグメントまたはセグメント グループが表示されるまで、最上位のセグメント グループを展開します。目的のセグメントまたはセグメント グループが表示されたら、そのセグメントまたはセグメント グループを選択し、[名前の変更] をクリックします。

  3. [セグメント名の変更] ダイアログ ボックスで、そのセグメントまたはセグメント グループの新しい名前を入力し、[OK] をクリックします。

    セグメント階層に表示されていた古い名前が新しい名前に置き換わります。

  4. さらにほかのセグメントまたはセグメント グループの名前を変更する場合は、手順 3 を繰り返します。

  5. 必要なすべてのセグメントとセグメント グループの名前を変更し、変更をセグメント モデルに保存する準備ができたら、ツール バーの [image] 保存 をクリックします。

新しい名前が保存されます。

注

  • 大きなセグメント グループの名前を数個変更した場合は、保存に数分かかることがあります。

関連項目

Commerce Server のレポート


セグメント レポートを表示する

作成したすべてのセグメントとセグメント グループを要約したレポートを生成するには、セグメント ビューアを使います。レポートは、Internet Explorer の独立したウィンドウに表示されます。このレポートを使って、すべてのセグメントを比較します。各セグメントとセグメント グループには、詳細な情報へのリンクが設定されています。これらのリンクをクリックすると、セグメント間を簡単に移動できます。

セグメント レポートを表示するには

  1. [セグメント ビューア] をクリックし、表示するレポートが含まれているセグメント モデルを選択します。次に、ツール バーの モデルを開く をクリックします。

  2. セグメント階層の一覧で、レポートを生成するセグメントを選択し、ツール バーの [image] レポートの起動 をクリックします。

レポートが Internet Explorer のウィンドウに表示されます。


セグメントのデータをリスト マネージャにエクスポートする

セグメントを作成した後に、そのセグメント内のユーザーのリストを作成して、さらなる分析と管理を行うことができます。そのためには、セグメントのデータを Commerce Server ビジネス デスクのリスト マネージャにエクスポートします。

セグメントのデータをリスト マネージャにエクスポートするには

  1. [セグメント ビューア] をクリックし、エクスポートするデータが含まれているセグメント モデルを選択します。次に、ツール バーの [image] モデルを開く をクリックします。

  2. セグメント階層で、エクスポートするデータが含まれているセグメントを選択し、ツール バーの [image] セグメントをリストにエクスポートをクリックします。

  3. [セグメントをリストにエクスポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [リスト名の入力] | リストの名前を入力します。
    [最小の可能性] | メンバシップのしきい値を入力します。この値を超えているユーザーだけがリストに含まれます。

  4. [OK] をクリックします。

データをエクスポートしたら、ビジネス デスクのリスト マネージャ モジュールでそのデータを表示します。比較的少ないデータをエクスポートした場合は、データがすぐにリスト マネージャに表示されます。大量のデータをエクスポートした場合は、データが表示されるまでに数分かかることがあります。レポートをエクスポートする方法の詳細については、「レポートをリスト マネージャにエクスポートする」を参照してください。

注

リストにユーザー情報をエクスポートするには、セグメント グループではなく、セグメントを選択する必要があります。セグメント グループを選択すると、ツール バーの [image] が使用できなくなります。


ビジネス デスク キャンペーン

マーケティング キャンペーンを作成したり管理したりするには、キャンペーン モジュールを使います。キャンペーン モジュールは、キャンペーン スケジュールを作成したり管理したりするために使いやすいインターフェイスを備えています。キャンペーン スケジュールは、ユーザーに表示するコンテンツの種類とコンテンツを配信する時期を決定するときに使います。広告キャンペーン、ダイレクト メール キャンペーン、または割引キャンペーンを作成し、対象となるユーザーのグループにコンテンツを配信する時期を指定できます。

キャンペーン レポートを実行すると、価格、マーケティング、広告、およびビジネスのその他の側面について、詳細な情報に基づいた決断ができます。また、キャンペーンを分析すれば、最も効果的なキャンペーンを推進できるようになります。

ここでは、次のトピックについて説明します。

  • キャンペーン管理のワークフロー キャンペーンの作成、対象決定、および管理のためのワークフローについて説明します。

  • キャンペーンについて 広告、割引、ダイレクト メールについて、およびキャンペーン目標設定の使い方について説明します。また、対象式の作成方法についても説明します。

  • 参照テーブルを設定する コンテンツ サイズ、業種コード、およびページ グループをビジネス モデルに合わせて設定する方法について説明します。

  • キャンペーンを作成する 顧客情報を追加する方法、キャンペーンの追加とスケジュール設定の方法、キャンペーン項目を作成およびプレビューする方法、および運用サイトに送信する方法について説明します。

  • キャンペーンの変更を Web サイトに発行する ビジネス デスクを使って追加した新しい情報でサイトを更新する方法について説明します。

  • キャンペーン レベル目標設定と広告の項目目標設定を切り替える キャンペーン目標設定の変更が広告の優先度にどのように影響するかについて説明します。

  • 広告キャンペーン項目を追加する 広告キャンペーン項目を追加する方法、広告のサイズを指定する方法、および広告の対象として特定の Web ページやユーザーのグループを指定する方法について説明します。

  • 割引キャンペーン項目を追加する 割引キャンペーンを作成および管理する方法について説明します。

  • 広告または割引の対象を指定する 対象式とカタログ式の目的と使い方、および対象グループを作成する方法について説明します。

  • ダイレクト メール キャンペーン項目を追加する サイト ユーザー リストの作成および管理する方法について説明します。

  • ユーザー レコード リストを管理する リスト マネージャを使ってメーリング リストとユーザー リストを作成および管理する方法について説明します。

  • キャンペーンを分析する キャンペーン レポートを実行し、リスト マネージャにエクスポートする方法について説明します。

  • キャンペーンを削除および復元する キャンペーンを削除および復元する方法について説明します。

  • キャンペーンを検索する フィルタ条件を使ってサイト上のキャンペーンを検索する方法について説明します。


キャンペーン管理のワークフロー

次の図は、キャンペーンの作成、管理、分析、および対象化するためのサンプル シナリオを示しています。

参照テーブル
キャンペーンを分析する
キャンペーン マネージャ
参照テーブルを設定する
キャンペーンを作成する
メーリング リストをインポートする
ダイレクト メール キャンペーンを作成する
分析
キャンペーン マネージャ
キャンペーン式対象グループ
広告または割引の対象を指定する
リスト マネージャ

  1. 参照テーブル モジュールで、コンテンツ サイズ、業種コードおよびページ グループを追加します。この手順は、サイト開発者が用意したテーブルを追加または変更する必要がある場合にのみ実行します。

  2. キャンペーン マネージャ モジュールで、新しい顧客 (Arbor Shoes など) を作成し、キャンペーン (Fall Season Sale など) を作成します。次に、割引キャンペーン項目 (Member Discount など) を追加します。

  3. キャンペーン式モジュールで、割引を提供するユーザーを指定するための対象式を作成します。

  4. キャンペーン マネージャ モジュールで、広告キャンペーンの効果を分析するためのレポートを実行します。

  5. リスト マネージャ モジュールで、キャンペーン レポートをリスト マネージャにインポートします。

  6. キャンペーン マネージャ モジュールで、リストを使ってダイレクト メール ジョブを実行し、対象となるユーザーをより的確に指定します。

関連項目

キャンペーンについて


キャンペーンについて

マーケティング キャンペーンの作成やスケジュール設定を行ったり、対象化したコンテンツを Web サイトに配信するために、キャンペーン モジュールを使います。Commerce Server には、オンライン キャンペーンを実施するためのさまざまな機能が用意されています。たとえば、広告、割引、およびダイレクト メール用のキャンペーンを作成できます。キャンペーンを分析すれば、価格、コンテンツの対象化、およびビジネスのその他の側面について決断することもできます。ユーザー データを分析してからサイトを更新すると、ユーザーをより効率的に対象化できます。

キャンペーン モジュールは、顧客と協力し、広告、割引、およびダイレクト メールの効果を最大にできるように設計されています。キャンペーンを使うと、次のようなことができます。

  • 広告や割引の対象を特定のプロファイルを持つユーザーに設定する プロファイル デザイナ モジュールを使ってユーザー プロファイルを設定し、キャンペーンに組み込みます。広告のページごとに、ページを参照しているユーザーのプロファイルを参照し、対象化されたコンテンツ用を表示するか、またはまったく表示しないかを指定することができます。

  • 複数の顧客向けに同じ業種で競合するキャンペーンを実行する 競合する広告が同じページに表示されることは決してありません。

  • 顧客が希望する広告要求数に基づいて顧客に料金を請求する

ここでは、次のトピックについて説明します。

  • キャンペーンの構造

  • キャンペーン目標設定

  • 参照テーブル

  • 広告

  • 割引

  • ダイレクト メール

  • ユーザー リストとメーリング リスト

  • 対象化とパーソナライズ

  • キャンペーンの効果


キャンペーンの構造

キャンペーンは、顧客からの 1 つ以上の契約または注文を表すマーケティング プログラムです。たとえば、新製品を発売するキャンペーン、既存のユーザーを維持するキャンペーン、市場シェアを拡大するキャンペーンなどが考えられます。各キャンペーンには、広告、割引、およびダイレクト メール メッセージの複数のキャンペーン項目が含まれることがあります。

顧客、キャンペーン、およびキャンペーン項目を作成して管理するには、キャンペーン マネージャ モジュールを使います。

次の図は、キャンペーン マネージャ ツリーの階層構造を示します。

図をクリックすると、拡大または縮小します。

請求先などの顧客情報が、その顧客用に作成されるすべてのキャンペーンで使われます。キャンペーン マネージャ モジュールでは、すべての顧客が降順で表示できます。

1 つのキャンペーンに含まれるキャンペーン項目は、顧客と日付範囲がすべて共通です。たとえば、新聞サイトの旅行セクションで、広告主が米国北西部からユーザーに対して 1 週間以内に 10,000 件の要求を配信するように要請したとします。この広告主は、10,000 件の要求を実現するために 3 種類の広告を掲載し、クリック数が最も多い広告を特定しようとしているとします。この場合、各広告がキャンペーン項目となります。


キャンペーン目標設定

キャンペーン目標設定は、一定期間内に配信する広告の数 (目標) を指定する処理です。広告のクリック数または広告に対する要求数で目標を設定できます。キャンペーンの目標は、キャンペーン レベルまたは広告の項目レベルで設定できます。

  • キャンペーン レベルの目標設定では、要求の総数を優先度に従って配分することによって、キャンペーンのすべてのキャンペーン項目 (広告) に目標を適用します。

    たとえば、ある顧客について、キャンペーン レベルで目標を設定するとします。顧客からは 2 種類の広告を与えられ、25,000 回の広告要求の注文を受けているとします。キャンペーン レベルでは、一方の広告には広告要求数の 60% 表示されるように設定し、もう一方の広告には広告要求数の 40% 表示されるように設定します。もし、顧客が広告要求の数を 40,000 回に変更した場合でも、広告が表示される回数を手動で変更する必要はありません。表示回数は 60% と 40% の割合のままになります。

  • 広告の項目レベルの目標設定では、キャンペーン項目レベルで目標を適用します。キャンペーンの要求の総数は、注文された各キャンペーン項目の要求の合計数と等しくなります。たとえば、ある顧客が 1 ヶ月で 50,000 回の広告要求を注文したとします。この場合は、広告の項目を 50,000 回配信する必要があります。

キャンペーン レベルの目標設定と広告の項目レベルの目標設定は、切り替えることができます。たとえば、ある顧客が 2 つの広告キャンペーン項目を合計で 1,000 回、均等に実行するように注文したとします。この場合は、次のような手順を実行します。

  1. キャンペーンにキャンペーン項目を追加し、各項目の優先度に 1 を割り当てます。項目ごとの広告要求の数は 500 回になります。

  2. その後、同じ顧客が広告 1 の要求数に 500 回追加するよう注文したとします。キャンペーンを開き、目標設定を広告の項目レベルに変更します。次に、広告 1 を選択し、数量に 500 回追加します。

    広告 1 の目標値は 1,000 回になります。広告 2 の目標値は 500 回です。広告の項目レベルで目標を設定したキャンペーンでは、注文の目標値がキャンペーン マネージャ モジュールに表示されません。

  3. さらに、顧客が注文を再配分し、広告 1 と広告 2 を 3 対 1 の割合で実行するように求めてきたとします。目標設定をキャンペーン レベルに変更します。注文の目標値が再び表示され、すべての広告の合計目標値、つまり 1,500 回が表示されます。これで、各広告の優先度が注文の目標値と同じになります。

    この時点で、優先度が 3 と 1 になるように各広告の優先度を編集します。Commerce Server は新しい数量を計算し、広告 1 の目標値を1,125、広告 2 の目標値を 375 と算出します。

別の状況で、たとえば手順 2. の後で、顧客がキャンペーンを 2 対 1 の割合で実行し、さらに 3 番目の広告を注文して優先度 1 を割り当てるように求めてきたとします。広告の項目レベルの目標設定からキャンペーン レベルの目標設定に変換したキャンペーンに広告を追加し、その優先度を 1 にした状態でほかの広告の優先度を変更せずにいると、広告の配信にゆがみが生じます。キャンペーン マネージャを再度開き、すべての広告に新しい優先度を割り当て、実際に計算される結果を確認する必要があります。

関連項目

キャンペーン レベル目標設定と広告の項目目標設定を切り替える

キャンペーンのスケジュールを設定する


参照テーブル

ビジネス デスクの参照テーブル モジュールは、サイトに表示されるコンテンツのサイズを設定したり、ページ グループの名前を管理したり、同じ業種の 2 つの広告が同時に同じページに表示されないようにするための業種コードを設定するときに使います。参照テーブル モジュールのプロパティによって、サイト全体で広告コンテンツの一貫性を保つことができます。

  • コンテンツ サイズは、コンテンツ (広告および割引) に指定するサイズです。Commerce Server 2000 では、既定のコンテンツ サイズがいくつか用意されています。これらのコンテンツ サイズは、Internet Advertising Bureau (IAB) によって承認された、一般に使われるサイズのリストに基づいています。コンテンツ サイズは、参照テーブル モジュールの [コンテンツ サイズ] セクションで確認します。

    参照テーブルのコンテンツ サイズは、キャンペーン項目のコンテンツ サイズを選択するときに利用できます。定義済みのサイズは、どれでも表示、編集、および削除できます。必要に応じて新しいコンテンツ サイズを作成することもできます。

  • 業種コードは、自動車、航空、飲料などのさまざまな業種に対応するコードです。業種コードを使うと、広告に関連付けられている業種を特定できるため、同じ業種で競合している複数の企業の広告が同じページに表示されないようにすることができます。業種コードは、割引には適用されません。

    たとえば、業種コードを更新して、コーヒー用に 1 つとミルク用に 1 つ、のように複数の飲料コードを含めると、種類の異なる飲料の広告を同じページに表示できます。たとえば、コーヒーの広告とミルクの広告が同じページで競合しても問題のない場合があります。このテーブルのエントリ数を調整することによって、業種の競合を監視するレベルを設定できます。

    Commerce Server には、一般的な業種コードがいくつか用意されています。広告で使用する業種コードは、参照テーブル モジュールの [業種コード] セクションで確認します。参照テーブルの業種コードは、キャンペーン項目の業種コードを選択するときに利用できます。参照テーブル モジュールの [業種コード] セクションでは、現在のすべての業種コードを一覧表示したり、新しい業種コードを追加したり、業種コードを編集および削除することができます。

  • ページ グループは、特定のページ グループに名前を付けることができ、広告の対象化に使われる、関連性のある Web ページの集合です。たとえば、新聞のサイトを運用している場合は、トップ記事用に 1 つとローカル ニュース用に 1 つ、スポーツのページ グループを作成できます。さらに、特定のページ グループのページだけに表示されるように広告の対象を指定できます。

    サイトで表示する広告の料金を顧客に請求するときには、ページ グループを広告料の基準に設定できます。たとえば、ホーム ページに表示される広告には割増料金を請求し、それ以外のページに表示される広告には低い料金を請求することができます。

注

  • ページ グループを使うには、サイト開発者に依頼して、ページでの広告表示を有効にしてもらう必要があります。

関連項目

参照テーブルを設定する


広告

Commerce Server では、有料広告と自社広告の 2 種類の広告がサポートされています。

  • 有料広告は、表示頻度 (NOD) と呼ばれる配信用の特定の計算式に基づいて配信されるコンテンツです。

  • 自社広告は、有料広告が指定された表示頻度のスケジュールよりも先行して配信された場合に配信されるコンテンツです。たとえば、顧客が 1,000 回の有料広告を 4 ヶ月かけて配信する注文をしているにもかかわらず、最初の 2 ヶ月で 850 回の広告が配信されたとします。この場合表示頻度のスケジュールを調整するために、自社広告を配信します。

    自社広告は、有料広告を円滑に配信する上で重要な役割を果たします。また、要求に適した有料広告がない場合にも、自社広告が表示されます。たとえば、すべての有料広告が、要求される対象に適さない場合には、自社広告が配信されます。

    自社広告は、売れ残りの在庫を割引価格で販売するときにも使われます。また、サイトの広告が特定の配信目標を持たないけれども指定した優先度で広告を実行する必要がある場合にも使われます。

広告のコンポーネント

Commerce Server では、広告を次の 4 つの部分から成るものとして扱います。

  • 広告プロパティには、広告の名前、種類 (有料広告または自社広告)、優先度または配信する要求数やクリック数 (有料広告と自社広告の割合)、表示上限回数、および広告に関連付けられた業種が含まれます。

  • 広告のスケジュールは、開始日/時刻と終了日/時刻です。広告を表示する曜日と、曜日ごとの時刻を選択できます。

  • 広告対象は、広告を表示するページと、その対象となるグループを指定します。

  • 広告の表示は、広告のサイズや種類 (イメージ、テキスト、HTML など) を指定できます。また、必要に応じて、ユーザーがほかのページ (または Web サイト) に移動するためにクリックする画像や URL も指定します。広告は、イメージ、テキスト、HTML、クリックできないイメージ、Buy Now、Windows メディア サービス、またはビネットとして表示できます (ビネット広告は、広告を表示するイメージと、それに隣接して表示されるテキストで構成されます)。

広告を対象化する

Commerce Server を使って、広告をいつ、どこで、誰に対して表示するかを指定できます。広告を作成するときに、次の項目を指定します。

  • 表示上限回数 1 回のセッション中にユーザーに広告を表示できる回数です。

  • 優先度 特定の顧客のすべてのキャンペーン項目との相関関係で、広告を表示する頻度を決める方法です。キャンペーンの、目標がキャンペーン レベルで設定されている広告にのみ優先度が適用されます。広告の目標が広告の項目レベルで設定されている場合、有料広告に優先度は適用されません。

    自社広告では、優先度はすべての顧客およびすべてのキャンペーンで設定されているすべての自社広告との相関関係になります。有料広告では、優先度は同じキャンペーンのほかの有料広告との相関関係になります。個々のキャンペーン項目の優先度は、ほかのすべてのキャンペーン項目の優先度との相関関係になります。

    たとえば、塗料を販売する 4 つの広告に、次のような優先度を割り当てるとします。

    広告 | 優先度 | 配信回数の割合
    青色の塗料 | 1 | 10
    緑色の塗料 | 2 | 20
    赤色の塗料 | 3 | 30
    黄色の塗料 | 4 | 40
    優先度の合計 | 10 | 100

    すべての広告の優先度の合計は、10 (10+20+30+40 = 100) です。青色の塗料の広告の優先度は 1 なので、10 回の広告要求ごとに 1 回表示されます。

    有料広告の優先度は、そのキャンペーンのすべてのキャンペーン項目の合計に対する 1 つの広告の割合になります。自社広告の場合、キャンペーンのほかのすべての自社広告の優先度の合計が優先度になります。

    キャンペーン項目レベルで目標が設定されている広告では、広告配信の決定に優先度は使われません。代わりに、配信する要求数またはクリック数を直接指定します。

  • ページ グループ 特定のページ グループ名を付け、広告の対象化に使われる、関連性のある Web ページの集合です。たとえば、新聞のサイトを運用している場合は、トップ記事用に 1 つとローカル ニュース用に 1 つ、スポーツのページ グループを作成できます。さらに、特定のページ グループのページだけに表示されるように広告の対象を指定できます。

    ページ グループは、参照テーブル モジュールを使って作成します。

  • 対象グループ コンテンツが表示される対象の集合です。たとえば、特定のプロファイル プロパティを持つユーザーを広告の対象に指定できます。対象と対象グループの詳細については、「対象化とパーソナライズ」を参照してください。

広告キャンペーン項目を処理する

コンテンツ選択フレームワーク (CSF) は、広告に指定するキャンペーン目標設定、表示上限回数、スケジュール、優先度、ページ グループ、および対象グループの各変数を処理します。ユーザーがサイトを訪問するたびに、コンテンツ選択フレームワークは広告を表示すべきかどうかを判断します。

広告のコンテンツ選択フレームワークは、表示頻度 (NOD) と呼ばれる計算式を使って、まず配信がどの程度スケジュールより遅れているかを基準に広告のスコアを付けます。この計算式では、配信するコンテンツの合計数と、その数量を配信する期間が考慮に入れられます。表示頻度は、コンテンツ選択フレームワークが広告要求を処理した後で、広告要求ごとに計算されます。表示頻度は有料広告にのみ適用され、自社広告には適用されません。

複数の広告があり、それらがどのような基準で表示されているかを知る必要がある場合は、サイト開発者に問い合わせてください。Commerce Server には、サイト開発者が選択処理を追跡するための TraceScores というツールが用意されています。TraceScores を使って、内部のコンテンツ決定処理が実際にどのように機能しているのかを調べます。

同じ対象グループと同じ優先順位を使って多くのキャンペーンを同時に実行する場合、コンテンツ選択フレームワークは広告の種類に基づいて表示する広告を選択します。広告がどちらも自社広告の場合は、優先度を相対的確率として使った無作為の選択が行われます。広告が有料広告の場合、表示される広告は表示頻度の計算に基づいて選択されます。この計算では、開始日、終了日、スケジュールされているイベントの数、および現在までに配信されたイベントの数が考慮されます。スコアを変更する要因の 1 つがペナルティ履歴で、ユーザーが最近表示した広告に、スコアを減らすペナルティが適用されます。ペナルティ履歴を有効にすると、広告は時間の経過と共に "循環" します。

関連項目

広告キャンペーン項目を追加する


割引

割引は、カタログのどの項目にも適用できます。割引は、注文全体に対して適用すること (注文レベルの割引) も、注文の特定の項目に対して適用する (項目レベルの割引) こともできます。

  • 注文レベルの割引は、ショッピング バスケットのすべての商品に適用されます。たとえば、送料無料は注文レベルの割引の一種です。バスケット内にあるすべての商品の送料を無料にすることができます。Commerce Server に用意されている注文レベルの割引は、送料を無料にする割引だけです。優待ユーザーに対する 10% の割引など、その他の注文レベルの割引を提供する場合は、サイト開発者がサイトに独自の変更を加える必要があります。

  • 項目レベルの割引は、バスケット内の特定の商品に適用されます。

割引を注文全体に適用すると、割引は各項目に個別に適用されます。一商品の注文項目に適用できる割引は 1 つだけです。2 つの割引を一商品の同じ項目に適用することはできません。

Commerce Server を使って、次の種類の割引を作成および適用できます。

  • クリック必須の割引は、ユーザーが割引 URL をクリックした場合にのみ適用されます。たとえば、"10% オフ" などと書かれた商品のイメージが、割引 URLになります。サイト開発者は、この種類の割引をほかの用途に拡張し、たとえば顧客が割引を受けるために必要な割引券を提供することなどができます。

  • レバレッジ割引は、ほかの商品の購入に基づいて適用されます。たとえば、ユーザーがバスケットに電話機を追加したら、両手が自由になるヘッドセットを支払い時に提供し、ユーザーがそれをバスケットに追加して受け取るようにすることができます。また、ほかの付属品を割引価格で提供することもできます。

  • パーセンテージ割引は、商品の価格を金額ではなくパーセンテージで引き下げます。たとえば、商品に 10% の割引を適用した後で、必要に応じて商品の価格を変更できます。商品の価格を変更すると、割引金額は自動的に更新されます。

  • 金額割引は、商品の価格を固定金額で引き下げます。たとえば、特定の商品に対して 500 円の割引を提供できます。商品の価格を変更しても、この割引金額 (500 円) は変わりません。

  • 期間限定割引は、特定の日数の間だけ商品の価格を引き下げます。割引を特定の時間帯だけ適用するようにスケジュールを設定するには、現在の時刻を評価する式を作成します。たとえば、現在の時刻 > 5:00 pm および現在の時刻 < 9:00 pm の場合は、商品に 10% の割引を適用します。

これらの割引は、個々の商品に適用することも、カテゴリのすべての商品に適用することもできます。また、特定のメーカーのすべての項目に 10% の割引を適用するような、特定の条件を満たす商品に割引を適用する式を作成することもできます。

たとえば、次の状況で適用する割引を作成できます。

  • 商品の価格が 2,000 円を超えている 割引条件式です。割引条件式は、商品プロパティに基づいています。

  • 商品を 2 点購入した 必要な割引定義の一部です。

  • スポーツ ページの割引広告をクリックした クリック必須の割引です。

  • 登録済みユーザーである 割引資格要件式です。割引資格要件式は、ユーザー プロファイルとコンテキスト プロファイルに基づいています。

1 つの商品に、複数の割引を同時に適用することはできません。顧客は 1 つの商品につき 1 つの割引だけを受けることができます。または、条件を 1 つの割引に対してのみ適用できます。商品を 1 つの割引の条件または特典として使った後で、その商品をほかの割引の条件または特典として使うことはできません。

割引のコンポーネント

割引キャンペーン項目のコンポーネントには、割引プロパティ、割引定義、割引表示対象、および割引の表示があります。これらのコンポーネントは、割引を作成するときにキャンペーン マネージャ モジュールを使って定義します。

  • 割引プロパティは、割引名、優先順位、開始日、および終了日です。

  • 割引定義は、割引を適用する項目、金額、および対象の内訳です。割引定義には、次の要素があります。
    • 対象式は、割引を適用する項目を指定します。たとえば、Book_price > 20 という対象式は、この条件を満たすすべての本に割引を適用します。

    • 必要条件は、割引が広告されるユーザー、コンテキスト、またはその両方を指定します。たとえば、ユーザーが登録済みの女性で、前回の訪問時に 5,000 円分の商品を購入した場合に、割引を提供することができます。あるいは、ユーザーが特定の日にサイトでショッピングをしたか、または特定のページを表示した場合に、コンテキストの必要条件を満たしたものとして 10% の割引を受けられるようにすることもできます。

    • 特典は、10% の割引や送料なしなど、ユーザーに提供される割引の内容を指定します。割引を受けるには、特典の条件を満たす必要があります。特典の条件は、注文フォームの項目ごとに評価されます。特典の条件を式にして、割引を特定の項目に適用することも、すべての項目に適用するように指定することもできます。
  • 割引表示対象は、割引を広告するページと、その対象グループを指定します。

  • 割引の表示は、割引をユーザーに表示する回数、ユーザーが割引を受けるためにクリックするイメージや URL、および支払い時にバスケットに表示される割引情報を指定します。

割引の優先順位

割引にはすべて優先順位を設定し、商品に適用される可能性のあるほかの割引との相関関係で、その割引をいつ適用するかを決定します。広告とは異なり、割引では適用のタイミングの決定に優先度を使いません。たとえば、3 種類の割引を作成し、それぞれに次の表に示す優先順位を割り当てます。

割引 | 優先順位
電話機に対して 10% の割引 | 10
電話機、ラジオ、またはコンピュータを購入した優待ユーザーに対して 30% の割引 | 20
送料の免除 | 30

優待ユーザーがサイトでショッピングをして、ほかの項目と共に電話機を購入した場合は、10% の割引だけが電話機に適用されます。30% の割引や送料免除の割引は優先順位が低いため、電話機の購入には適用されません。

2 つの割引の優先順位が同じ場合は、使用中のデータベースの種類によって、適用される割引が変わることがあります。同じ優先順位の割引については、結果が確定しません。

購入した数量または金額に基づく割引

ユーザーが購入した数量または金額に基づいて割引を適用することが適用できます。たとえば、ユーザーがジュースを 3 ケース購入した場合 (数量) に適用される割引や、ジュースを 2,000 円分購入した場合 (金額) に適用される割引を作成することができます。

数量ごとまたは金額ごとに 1 つの割引を適用できます。たとえば、オンライン ストアの飲料部門が、夏に向けて "ジュースを 1 ケース購入すると 2 ケース目は半額" という特別提供を実施するとします。ただし、このオンライン ストアでは、飲料カテゴリの各商品に 10% の割引を適用する特別提供も実施しています。これらの割引に、次の表に示す優先順位を設定します。

割引 | 優先順位
ジュースを 1 ケース購入すると 2 ケース目は 50% の割引 | 10
飲料カテゴリの各商品に対して 10% の割引 | 20

ユーザーがジュースを 4 ケース購入した場合、割引は次のように適用されます。

  • 1 ケース目:割引なし。

  • 2 ケース目:50% の割引。

  • 3 ケース目:10% の割引。

  • 4 ケース目:"1 ケース購入すると 2 ケース目は半額" の割引に制限が設定されていない場合にのみ、50% の割引。50% の割引の方が優先順位が高いので、10% の割引ではなく 50% の割引が再び適用されます。

割引の制限

バスケットに適用できる割引の回数を制限できます。割引の制限の値をゼロ (0) に設定すると、割引は無制限になります。バスケットで割引の条件が何回も満たされた場合には、割引が何回も適用されます。割引の制限は 1 つのバスケットの制限なので、ほかのバスケットでは適用されません。たとえば、支払いを終えたユーザーが、再びサイトに戻って、同じ割引項目を購入した場合は、再度同じ割引を受けることができます。

割引キャンペーン項目を処理する

割引キャンペーンは、割引コンテンツ選択パイプラインと注文割引パイプライン コンポーネントによって処理されます。割引 CSF パイプラインは、ユーザーに最適な割引を広告するために使います。バスケット パイプラインの注文割引コンポーネントは、ショッピング バスケットに割引を適用するために使います。

  • 割引コンテンツ選択パイプラインは、割引の開始日と終了日をチェックし、適用可能な割引の一覧のスコアを調整します。これにより、現在のユーザーに最も関連のある割引に最高の優先順位が与えられるようにします。

  • 注文割引パイプライン コンポーネントは、まず利用可能な割引に必要条件を適用します。適用される割引に応じて、ユーザー プロファイルとコンテキスト プロファイルの情報を使って対象式を評価します。さらに、クリックが必要な割引の場合は、クリックされるすべての項目のキャンペーン項目 ID の一覧をチェックします。次に、注文パイプラインは条件と特典をテストしながら各項目を処理します。割引は、優先順位が最も高いものから適用されます。2 つの割引の優先順位が同じ場合は、優先順位以外のプロパティによって、割引が適用される順序が決まります。

関連項目

割引キャンペーン項目を追加する

広告または割引の対象を指定する


ダイレクト メール

ダイレクト メール キャンペーン項目を作成し、対象となるユーザー グループに電子メール メッセージの広告を配信します。メールに高い応答率を得ることが目的となります。Web ページからパーソナライズされた電子メール メッセージを送ることも、フラット テキスト ファイルからパーソナライズされていないメッセージを送ることもできます。写真、割引、URL などのアタッチメントを含むダイレクト メール メッセージを作成できます。ダイレクト メール サービスは、パーソナライズされた電子メール メッセージを大量のユーザーに一括送信するように設計されています。

ダイレクト メール キャンペーンを設定するには、ビジネス デスクのキャンペーン マネージャ モジュールを使います。ダイレクト メール キャンペーン項目は、大量の電子メールを高速に送信できる強力なエンジンである、ダイレクト メーラー サービスによって処理されます。

ダイレクト メール キャンペーン項目を作成するには、次の手順を実行します。

  • メッセージを作成する パーソナライズされた電子メール メッセージを作成するには、まずサイト開発者がパーソナライズされたテキストを含む ASP ページを作成し、Web サーバーに追加する必要があります。サイト開発者は、ASP ページの場所の URL をビジネス デスクのユーザーに知らせる必要があります。パーソナライズされていないメッセージを作成するには、メモ帳などを使ってテキストをフラット テキスト ファイルに入力します。

  • 受信者のリストを生成する Commerce Server の強力な分析ツールを使って、ダイレクト メール キャンペーンの受信者のリストを生成できます。たとえば、ビジネス デスクのレポート モジュールを使うと、データ ウェアハウスのデータに対してレポートを実行し、特定のユーザーのリストを取得できます。こうして取得したリストを、リスト マネージャにエクスポートできます。また、予測リソースを使ってユーザーのセグメントに含まれるユーザーのリストを生成し、そのリストをリスト マネージャにエクスポートすることもできます。リスト マネージャにエクスポートしたリストは、ダイレクト メーラーで利用できます。

    対象グループを使って、ユーザーの電子メール アドレスにダイレクト メールを直接送信することはできません。

  • ダイレクト メール キャンペーンを作成し、スケジュールを設定する キャンペーン マネージャ モジュールを使って、キャンペーンの名前、受信者のリストの名前、キャンペーン項目の開始時刻と日付、およびダイレクト メーラーがメッセージ本文を取得する URL (パーソナライズされたメッセージの場合) または静的ファイルを指定します。

ダイレクト メール キャンペーン項目の追加の詳細については、「ダイレクト メール キャンペーン項目を追加する」を参照してください。

脱退リスト

ダイレクト メーラーは、脱退機能をサポートしています。キャンペーン項目の一部として実行されるダイレクト メール ジョブでは、個々の受信者がダイレクト メール キャンペーン項目からの脱退を要求できます。Commerce Server ソリューション サイトに含まれる脱退用の ASP ページを使って、脱退リストと照合してメーリング リストをフィルタ処理できます。

Web サーバーからのダイレクト メーラー ジョブ用の ASP ページを作成する開発者であれば、opt-out.asp ページへのリンクを配置できます。これにより、受信者は該当するリンクをクリックすることで、サイトまたはダイレクト メール キャンペーン項目から脱退できるようになります。キャンペーン項目の一部として実行されるダイレクト メーラー ジョブが実行されると、ダイレクト メーラーはサイト レベルの脱退リストとキャンペーン項目レベルの脱退リストが存在するかどうかを調べます。両方の脱退リストが存在していれば、これらの脱退リストが元のメーリング リストから削除され、削除後のリストが新しいメーリング リストとして機能します。

ダイレクト メール キャンペーン項目を処理する

ダイレクト メーラーでは、次の作業を行います。

  • ダイレクト メール ジョブの管理。

  • パーソナライズされているメッセージ本文、またはパーソナライズされていないメッセージ本文の作成。

  • 電子メール メッセージ ヘッダーの書式設定。

  • コード ページ値 (言語) の設定と、メッセージ本文の正しいメッセージ形式への変換。MIME HTML (MHTML)、Multipurpose Internet Mail Extensions (MIME)、またはテキストに変換します。

  • 受信者への電子メール メッセージの送信。

ダイレクト メーラー パイプラインは、受信者のリストを処理するために使われます。パイプラインに新しいコンポーネントを追加したり、コンポーネントを基幹業務システムに統合したり、そのコンポーネントをサードパーティが供給するコンポーネントと交換することができます。

関連項目

ダイレクト メール キャンペーン項目を追加する


ユーザー リストとメーリング リスト

Commerce Server ビジネス デスクのリスト マネージャ モジュールを使って、ビジネス デスクのユーザー リストとメーリング リストのインポートとエクスポートを行います。

リストをリスト マネージャに追加する Commerce Server 分析レポートを、リストとしてリスト マネージャにエクスポートできます。また、SQL Server (SQL テーブルを作成する場合)、メモ帳 (ASCII テキスト ファイルを作成する場合)、Microsoft Excel (スプレッドシートを作成する場合)、Microsoft Outlook (アドレスのリストを含む .pst ファイルをエクスポートする場合) など、ほかのアプリケーションで作成したリストも、リスト マネージャにインポートできます。たとえば、アドレスのリストが Microsoft Excel のスプレッドシートにある場合は、リスト マネージャを使ってそれをビジネス デスクにインポートし、ダイレクト メール キャンペーンで使用できます。分析レポートでユーザーのリストを特定した場合は、レポートの結果をリストとしてリスト マネージャにエクスポートし、ダイレクト メール キャンペーンで使用できます。

リスト マネージャへのリストのインポートについては、「リストをインポートおよびエクスポートする」を参照してください。リスト マネージャへの Commerce Server 分析レポートのエクスポートについては、「静的レポートをエクスポートする」を参照してください。

  • リスト マネージャからリストを使う リスト マネージャ モジュールからユーザー モジュールにユーザー リストをインポートし、リストのユーザー プロファイルを更新できます。たとえば、Commerce Server の顧客別の売り上げレポートを実行して、最も多くの商品を購入するユーザーを特定し、そのレポートをリストとしてリスト マネージャにエクスポートします。リスト マネージャからユーザー モジュールにユーザー リストをインポートし、ユーザー プロファイルのプロファイル プロパティに特別な値を割り当てて、リストのユーザー プロファイルを更新します。その値を使って、変更したプロファイルを持つユーザーを、特定の広告または割引キャンペーンの対象に指定します。ユーザー モジュールへのリストのインポートについては、「ユーザー プロファイルの一覧をインポートする」を参照してください。複数のユーザー プロファイルの変更については、「複数のユーザーを編集する」を参照してください。

    また、リストをほかのアプリケーションにエクスポートすることもできます。たとえば、分析レポートから生成されたリストを Microsoft Excel のスプレッドシートにエクスポートできます。ファイルへのリストのエクスポートについては、「リストをインポートおよびエクスポートする」を参照してください。

メーリング リスト

メーリング リストには、ダイレクト メール キャンペーン用の電子メール アドレスが列挙されます。リストの各行に受信者が 1 人ずつ記載され、次の要素がカンマ区切り形式で並べられます。

要素 | 説明
電子メール アドレス | 名前または名前@ドメイン。
GUID | グローバル一意識別子。パーソナライズされたメール メッセージにコンテンツを提供するときに使用するユーザー ID です。
メッセージ形式 | Collaboration Data Object (CDO) が結果をどのメッセージ形式に変換するかを制御します。たとえば、テキスト、MIME HTML (MHTML)、Multipurpose Internet Mail Extensions (MIME) などの形式があります。
言語 | メール メッセージのコード ページ値です。
URL | ユーザーごとに個々の URL を CDO に渡すことができます。

リストは、メモ帳などの任意のテキスト エディタを使って作成できます。リスト マネージャ モジュールを使って、ASCII テキスト ファイル、Microsoft Excel や Microsoft Outlook のファイル、または SQL Server データベースのテーブルをインポートすると、ビジネス デスクにメーリング リストを追加できます。Microsoft Outlook の .pst ファイルの情報を使ってメーリング リストを作成する方法については、Microsoft Outlook のオンライン ヘルプの「ファイルや個人用フォルダ ファイルにアイテムをエクスポートする」を参照してください。

ダイレクト メール キャンペーン用のメーリング リストのインポートについては、「メーリング リストをインポートする」を参照してください。

ユーザー リスト

ユーザー リストには、ユーザー ID と、必要に応じてその他のユーザー プロファイル プロパティが列挙されます。リスト マネージャ モジュールからプロファイル デザイナ モジュールにユーザー リストをエクスポートし、特定のユーザーのプロパティに対する一括更新を実行できます。

たとえば、セグメント ビューア モジュールからリストをインポートし、特定のセグメントに所属していることを示すプロパティを、各ユーザーのユーザー プロファイルに設定できます。この情報を利用して、そのユーザー セグメントを広告や割引の対象に指定できます。

汎用リスト

ユーザー リストやメーリング リストと異なり、汎用リストに内容の要件はありません。汎用リストを使うには、サイト開発者がアプリケーションをカスタマイズする必要があります。

汎用リストには、任意の情報を入れることができるほか、次の例に示すようにヘッダーを含めることができます。

ProductID | ProductName | Unit
1 | 靴下 | 100
2 | シャツ | 20

汎用リストは、商品プロパティを設定する場合などに使います。Commerce Server の商品別売り上げレポートを実行し、Web サイトで最も人気のある商品 (売上高の点で) を特定します。次に、リスト マネージャ モジュールを使って、このレポートの結果を商品のリストとしてインポートし、カタログ エディタ モジュールを使って、これらが売れ筋商品であることを示すプロパティを設定します。このプロパティを使って、対象式を作成したり、売れ筋商品の価格を 5% 割り増しすることができます。

汎用リストのその他の使い方として、現実世界の店舗で利用できる割引券を、オンラインのリピータに郵送できます。そのためには、ユーザーの購入を分析するレポートを実行し、そのレポートの結果を住所を含むリストとしてエクスポートします。次に、リスト マネージャを使って、このリストをラベル作成用のアプリケーションで使用できるようにエクスポートします。

動的リストと静的リスト

ユーザー リスト、メーリング リスト、および汎用リストは、動的または静的のどちらかになります。

  • 動的リストは、実行時に作成されます。たとえば、ダイレクト メール キャンペーンで使うリストを、リスト マネージャからエクスポートするときに作成されます。リストが要求されるたびに、リスト マネージャはデータ ウェアハウスにある最新データを収集します。リスト マネージャが使用するデータベースには、リストの作成に必要な情報だけが格納されます。動的リストは、頻繁に実行するダイレクト メール キャンペーンや、頻繁に更新される受信者のリストに使います。

  • 静的リストは、要求に応じて直ちに作成され、リスト マネージャが使用するデータベースに格納されます。静的リストは、まれに実行するダイレクト メール キャンペーンや、あまり変更されない受信者のリストに使います。

関連項目

リストをインポートおよびエクスポートする

ユーザー プロファイルの一覧をインポートする

ユーザー レコード リストを管理する

メーリング リストを作成する


対象化とパーソナライズ

対象化とパーソナライズは、パーソナライズされたコンテンツを 1 人または複数のユーザー、あるいはプロファイルを持つそのほかのビジネス エンティティに配信する処理です。たとえば、スポーツに関する Web サイトを運用している場合、テニス関連の情報を、テニス プレーヤーのみに配信したり、テニスに興味がある人に配信することができます。近日開催されるテニス トーナメントに関する発表や、テニス商品の広告と宣伝を配信することもできます。

Commerce Server 2000 では、2 種類の対象化が可能です。

  • 式に基づく対象化 明示対象化とも呼ばれます。配信対象となるユーザーのプロファイル プロパティがわかっている場合、またはコンテキストがわかっている場合で、配信するコンテンツが明確なときに使われます。Commerce Server ビジネス デスクのキャンペーン モジュールを使ってこの情報を指定し、ユーザーにコンテンツを配信します。

  • 予測 黙示対象化とも呼ばれます。ユーザーの対象化に必要なすべてのプロファイル プロパティがわかっていない場合、または配信するコンテンツが明確でない場合に使われます。ユーザーの興味を引くコンテンツを配信できるように、Commerce Server 予測リソースを使って、既存のユーザー データからこのような情報を推測します。

式に基づく対象化または予測を使った場合、受信するユーザーの興味を引くコンテンツを配信できる可能性が高まります。パーソナライズされたコンテンツを期待できる場合、ユーザーが再びサイトを訪問する確率が上がります。

Web サイトの管理に対象化を使う

式に基づく対象化

式ビルダ

式を処理する

Web サイトの管理に対象化を使う

プロファイルを持つビジネス関連の項目に合わせて、コンテンツを対象化できます。たとえば、匿名ユーザー、登録済みユーザー、企業、またはコンテキストに合わせて、コンテンツを対象化できます。プロファイルの概念については、「プロファイル」を参照してください。

ビジネス関連の項目に合わせてコンテンツを対象化するには、ビジネス デスクを使います。たとえば、次の作業を行うことができます。

  • ユーザーにパーソナライズされたメッセージを配信するためのダイレクト メール キャンペーンを作成する。

  • 特定のユーザー プロファイル プロパティに基づいて、ユーザーに広告などのコンテンツを配信する。たとえば、Favorite Sport プロパティが "Biking" に設定されているユーザーに、自転車の広告を表示します。

  • Web ページのグループを特定し、それらのページにのみ、または特定のプロパティを持つユーザーがそれらのページにアクセスした場合にのみ表示されるようにコンテンツを対象化する。

  • ページ上のほかのコンテンツのプロパティに基づいて、ページにコンテンツを表示する。たとえば、Web サイトでニュースを提供する場合、Weather_Type プロパティが "Hot" か "Cold" かを指定して、コンテンツにプロファイルを割り当てます。Weather_Type = Hot の場合、エアコンの広告を表示できます。

  • 商品自体の特性やユーザー プロファイルに基づいて、カタログの特定の商品に割引を適用する。

  • 割引を表示する時期、および注文に割引を適用する時期を選択する。たとえば、ユーザーが項目をバスケットに入れたとき、または支払うときに、割引を適用できます。

式に基づく対象化

式に基づく対象化は、対象化するユーザーまたはコンテキスト、および配信するコンテンツを定義する式を作成する処理です。式とは、プロファイルに対して評価される条件で、コンテンツを配信するか、またはその他のアクションを実行するかを決定します。たとえば、ユーザーのトータル訪問回数 > 100 という式があるとします。この式の評価結果が True の場合、ユーザーに対して該当するコンテンツが表示されます。

ビジネス デスクのキャンペーン モジュールを使って式を作成し、式を評価した後に実行するアクションに式を結合します。次の 2 種類の式を作成できます。

  • 対象式 どこで、いつ、だれにコンテンツを表示するかを特定します。たとえば、特定のプロファイル プロパティを持つユーザーをコンテンツの対象に設定できます。また、ページ グループと呼ばれる、Web サイトの特定のセクションをコンテンツの対象に設定することもできます。たとえば、スポーツのページにのみ特定の広告を表示する対象式を作成できます。

  • カタログ式 割引を適用できるカタログの商品を指定します。たとえば、商品の値段 = 2000 円というカタログ式を作成します。この式の評価結果が特定の商品で True の場合、ユーザーがショッピング バスケットにその商品を追加すると、商品の価格に 10% の割引が適用されます。

対象式を作成した後で、それらを結合して対象グループを形成できます。対象グループは、式とアクションの集合です。たとえば、サイトを 10 回訪問したユーザーに特定のコンテンツを表示する式と、サッカー シャツを購入したユーザーにコンテンツを表示する式を作成します。これら 2 つの式を AND または OR ステートメントで結合し、対象グループにします。たとえば、次のように指定します。

ユーザーがサイトを 10 回訪問し、かつ、そのユーザーがサッカー シャツを購入した場合、

サッカー商品の広告を表示する。

対象グループでは、各式の評価結果が True になったときに実行するアクションを指定して、式を結合します。各アクションにはそれぞれ 2 つの乗数があります。式が True の場合に適用する乗数と、式が False の場合に適用する乗数です。乗数が適用されると、式にはスコアが与えられ、コンテンツの配信が有効かどうかに影響します。次のアクションを指定できます。

  • 対象 式の評価結果が True の場合、スコアは増加し、コンテンツが表示される確率も上がります。式の評価結果が False の場合、スコアは変わりません。いずれの場合でも、コンテンツの配信は有効です。

  • 適用 式の評価結果が True の場合、コンテンツの配信は有効です。False の場合、コンテンツの配信は無効です。

  • 除外 式の評価結果が True の場合、コンテンツの配信は無効です。False の場合、コンテンツの配信は有効です。

  • スポンサー 式の評価結果が True の場合、コンテンツの配信は有効です。ほかのコンテンツは、同じアクション = スポンサーの式がない限り無効です (スポンサーの乗数は 1 つだけです)。たとえば、Microsoft がホーム ページの広告のスポンサーである場合は、Microsoft の広告だけが表示されます。ただし、ほかにもそのホーム ページのスポンサー企業の広告がある場合は、それらの広告の表示も有効になります。

サイト開発者は、Commerce Server に用意されている乗数の値を変更できます。あるアクション タイプが設定された式の優先順位を、ほかのアクション タイプが設定された式より高くする場合などに、この値を変更します。

式ビルダ

ビジネス マネージャによる式の作成、編集、および表示を可能にする Commerce Server の機能を、式ビルダといいます。式ビルダは、式を構築するためのユーザー インターフェイスを提供します。式ビルダは、式を構築するための適切なプロパティにアクセスし、式に名前を付け、Commerce Server データベースに格納します。

式ビルダは、サイト開発者が、その機能やユーザー インターフェイスを簡単にほかのビジネス デスク モジュールに組み込めるように設計されています。また、式を使用し操作する任意の Web アプリケーションから呼び出せるため、ほかの処理と統合できます。たとえば、既存のコンテンツ管理処理がある場合、式ビルダの機能を組み込んで、ユーザーに合わせてコンテンツを対象化できます。

式ビルダを使用するアプリケーションを作成するには、次の操作を行います。

  • プロファイルの定義 式が使うプロファイルを指定します。式ビルダは、これらのプロファイル定義を読み込んで式を構築します。プロファイル プロパティ フィルタを指定して、式ビルダのユーザーが利用できるプロファイルのプロパティを制限することもできます。

  • 式の保存 使用する式ストアまたはプロファイル ストアを指定できます。式ビルダは、このデータベースに式を読み込んで保存します。

  • ユーザーに対するメッセージの表示 式ビルダのユーザー インターフェイス (UI) に表示されるメッセージをカスタマイズできます。たとえば、独自のメッセージとして [広告の対象式を作成します] に変更できます。

式ビルダは UI に Dynamic Hypertext Markup Language (DHTML) を使うため、アプリケーションのスタイルシートが式ビルダの UI に適用され、アプリケーションの外観が一貫したものになります。

式を処理する

Commerce Server は、いくつかの手順を実行して、ユーザーに対して表示するコンテンツを指定します。この処理では、次のコンポーネントが使われます。

  • ExpressionEval この Component Object Model (COM) オブジェクトは、式とユーザー データを入力すると、式を処理して評価結果が True と False のいずれになるかを決定します。

  • コンテンツ選択フレームワーク (CSF) このプラットフォーム レベルのフレームワークには、式の結果として実行されるアクションを決定する一連のコンポーネントとパイプライン (コンテンツ選択パイプラインとイベント処理パイプライン) が含まれます。

次の図は、対象式、カタログ式、ユーザー データ、およびコンテキスト データが式エバリュエータに入力され、その結果が True、False、または未定義になるしくみを示します。結果は CSF に入力され、CSF は実行するアクションを決定します。

式エバリュエータと CSF が式を処理するしくみを表す図
対象式
カタログ式
ユーザー データ

コンテキスト データ
式エバリュエータ
True、False、または未定義の結果
コンテンツ選択フレームワーク
結果に基づくアクションの決定

関連項目

プロファイル

対象式を作成する

対象グループを作成する


キャンペーンの効果

次の表は、キャンペーン項目の効果を分析するために、Commerce Server に用意されているレポートを示します。

レポート | 説明
キャンペーン項目の要約 | サイトでのキャンペーン活動の要約を調べます。このレポートには、クリックの数と割合、広告の残り要求数などの情報が表示されます。
広告の表示回数とヒット率 (日単位) | キャンペーンに対する日々の一意のユーザーの行動を分析します。このレポートを使って、日々の一意のユーザーによるキャンペーンとの関連を把握します。
広告の表示回数とヒット率 (キャンペーン項目別) | 一意のユーザーによるキャンペーン項目との関連を分析します。このレポートには、キャンペーン項目に対する一意のユーザーの行動が、すべての時間にわたって表示されます。
広告の表示回数とヒット率 (キャンペーン別) | 一意のユーザーによるキャンペーンとの関連を分析します。このレポートには、キャンペーンに対する一意のユーザーの行動が、すべての時間にわたって表示されます。
キャンペーン イベントの要約 | サイトでのキャンペーンの効果を分析します。このレポートには、サイトでのキャンペーン活動の要約が表示されます。
広告の利用状況 | サイトのどこに配置した広告が最も効果的であるかを分析します。このレポートには、ページ グループごとにキャンペーン活動の要約が表示されます。

関連項目

Commerce Server のレポート

レポートを実行する


参照テーブルを設定する

参照テーブルを設定すると、ビジネス モデルを正確に反映できます。参照テーブルには、有効な広告業種コード、ページ グループ、およびコンテンツ サイズが格納されます。キャンペーン項目で使用するページ グループが参照テーブルのページ グループと一致しない場合、このキャンペーン項目は運用サイトに表示されません。

Commerce Server 2000 で用意されている以外の業種コード、ページ グループ、およびコンテンツ サイズを追加するには、参照テーブル モジュールを使います。使用しない業種コード、ページ グループ、およびコンテンツ サイズを削除することもできます。

コンテンツ サイズを指定する

業種コードを追加する

ページ グループを追加する

コンテンツ サイズを指定する

キャンペーン項目のコンテンツ サイズは指定できます。Commerce Server 2000 では、既定のコンテンツ サイズがいくつか用意されています。これらのコンテンツ サイズは、Internet Advertising Bureau (IAB) の Standards and Practices Committee によって承認された、一般的に使われるサイズのリストに基づいています。コンテンツ サイズは、参照テーブル モジュールの [コンテンツ サイズ] セクションで確認します。

参照テーブルのコンテンツ サイズは、キャンペーン項目のコンテンツ サイズを選択するときに利用できます。定義済みのサイズは、どれでも表示、編集、および削除できます。必要に応じて新しいコンテンツ サイズを作成することもできます。

コンテンツ サイズを指定するには

  1. [キャンペーン] の [参照テーブル] をクリックします。

  2. [参照テーブル] 画面の [コンテンツ サイズ] セクションで、[新規] をクリックし、次の操作を行います。
    項目 | 操作
    [タグ] タグの名前を入力します。

    タグは、ページのコンテンツ要求に渡されるパラメータ値で、文書の一部または全体をどのように書式設定するかを指定します。
    [名前] | 新しいコンテンツ サイズの名前を入力します。
    [幅] | コンテンツ サイズの幅 (ピクセル数) を入力します。
    [高さ] | コンテンツ サイズの高さ (ピクセル数) を入力します。

  3. [確認] をクリックします。

    コンテンツ サイズの一覧に新しいコンテンツ サイズが追加されます。一覧では、[タグ] ボックスに入力したコンテンツ サイズの名前がアルファベット順で表示されます。

  4. 新しいコンテンツ サイズを保存して [ビジネス デスクへようこそ] 画面に戻るには、ツール バーの 保存してメイン メニューに戻る をクリックします。

新しいコンテンツ サイズが保存され、キャンペーン項目のコンテンツ サイズを選択するときに利用可能になります。

業種コードを追加する

業種コードは、業種 (自動車、航空、飲料など) を定義するときに使います。業種コードを使うと、広告に関連付けられている業種を特定できるため、同じ業種で競合している複数の企業の広告が同じページに表示されないようにすることができます。また、業種コードを更新することもできます。たとえば、コーヒーとソフト ドリンクの飲料コードを追加すると、種類の異なる飲料の広告を同じページに表示できます。

Commerce Server には、一般的な業種コードがいくつか用意されています。広告で使用する業種コードは、参照テーブル モジュールの [業種コード] セクションで確認します。参照テーブルの業種コードは、広告キャンペーン項目の業種コードを選択するときに利用できます。参照テーブル モジュールの [業界コード] セクションでは、現在のすべての業種コードを一覧表示したり、新しい業種コードを追加したり、業種コードを編集および削除することができます。

業種コードを作成するには

  1. [キャンペーン] の [参照テーブル] をクリックします。

  2. [参照テーブル] 画面の [業種コード] セクションで、[新規] をクリックし、次の操作を行います。
    項目 | 操作
    [業種コード] | 新しい業種コードの名前を入力します。

  3. [確認] をクリックします。

    新しい業種コードが業種コードの一覧に追加され、アルファベット順で表示されます。

  4. 新しい業種コードを保存して [ビジネス デスクへようこそ] 画面に戻るには、ツール バーの 保存してメイン メニューに戻る をクリックします。

新しい業種コードが保存され、キャンペーン項目の業種コードを選択するときに利用できるようになります。

ページ グループを追加する

ページ グループは、Web サイトで広告を表示するページを指定するときに使います。ページ グループを使うと、対象を特定した広告をコマース サイトのすべてのページに表示することも、指定した 1 つのページにだけ表示することもできます。たとえば、ニュースのサイトであれば、スポーツのページ グループを用意して、スポーツ関連の広告の対象に指定できます。さらに、広告を掲載するページ グループに応じて、広告主に請求する金額を変更することもできます。ページ グループは、参照テーブル モジュールの [ページ グループ] セクションを使って確認します。

参照テーブルのページ グループは、キャンペーン項目を表示するページを選択するときに利用できます。キャンペーン項目が使用するページ グループと Page Group プロパティが一致すれば、そのキャンペーン項目を運用サイトに表示できます。参照テーブル モジュールの [ページ グループ] セクションでは、現在のすべてのページ グループを一覧表示したり、新しいページ グループを追加したり、ページ グループを編集および削除することができます。

注

  • 広告の対象となるページ グループを指定する前に、サイト開発者がページでの広告表示を有効にする必要があります。ページでの広告表示を有効にする方法については、Commerce Server 2000 Software Development Kit の Ad Sitelet サンプルを参照してください。

ページ グループを追加するには

  1. [キャンペーン] の [参照テーブル] をクリックします。

  2. [参照テーブル] 画面の [ページ グループ] セクションで、[新規] をクリックし、次の操作を行います。
    項目 | 操作
    [ページ グループ] | 新しいページ グループの名前を入力します。
    [説明] | ページ グループの説明を入力します。

  3. [確認] をクリックします。

    新しいページ グループがページ グループの一覧に追加され、アルファベット順で表示されます。

  4. 新しいページ グループを保存して [ビジネス デスクへようこそ] 画面に戻るには、ツール バーの 保存してメイン メニューに戻る をクリックします。

新しいページ グループが保存され、キャンペーン項目のページ グループを選択するときに利用可能になります。

関連項目

参照テーブル

広告の対象となるページ グループを指定する


キャンペーンを作成する

キャンペーン項目を作成して運用サイトに送信するには、キャンペーン モジュールを使います。キャンペーン項目を作成するには、まずキャンペーン マネージャ モジュールに顧客を追加します。次に、キャンペーン マネージャで、その顧客用のキャンペーンを作成します。たとえば、ブランド認知キャンペーンを作成します。そして、キャンペーン目標設定でキャンペーンのスケジュールを設定します。キャンペーンのスケジュールは、キャンペーン レベルの目標設定または広告の項目レベルの目標設定を使って設定できます。キャンペーンを作成したら、1 つ以上のキャンペーン項目を作成し、広告の表示を指定します。広告の表示を定義したら、必要に応じて広告をプレビューしてから運用サイトに送信します。

次の図は、キャンペーンを作成し、キャンペーン項目を追加して、キャンペーン項目を運用サイトに送信するシナリオの例を示します。

キャンペーン マネージャ

キャンペーン項目を作成する

顧客情報を追加する
キャンペーンを追加する
キャンペーン項目をプレビューする

キャンペーンの変更を
Web サイトに発行する

キャンペーンのスケジュールを設定する
キャンペーンの発行

  1. キャンペーン マネージャ モジュールで、新しい顧客 (Arbor Shoes など) を追加します。

  2. キャンペーン マネージャ モジュールで、新しいキャンペーン (Fall Season sale など) を追加します。

  3. キャンペーン レベルの目標設定などで、キャンペーンのスケジュールを設定します。

  4. 広告キャンペーン項目 (summer sandals など) を作成します。

  5. 広告キャンペーン項目をプレビューしてから、運用サイトに送信します。

  6. キャンペーンの発行モジュールで、新しい広告を使ってサイトを更新します。

ここでは、次のトピックについて説明します。

  • 顧客情報を追加する

  • キャンペーンを追加する

  • キャンペーンのスケジュールを設定する

  • キャンペーン項目を作成する

  • キャンペーン項目をプレビューする


顧客情報を追加する

キャンペーンを作成するには、そのキャンペーンを所有する顧客に関する情報を最初に追加する必要があります。それぞれの顧客には、マーケティング プログラムごとに複数のキャンペーンを関連付けられます。たとえば、1 人の顧客に秋物セール、新製品キャンペーン、および春の割引セールを関連付けます。各キャンペーンには、広告、割引または宣伝、およびダイレクト メールなど、複数のキャンペーン項目を含めることができます。

キャンペーン マネージャ モジュールを使うと、顧客の追加、顧客のプロパティの変更、および顧客の削除を行うことができます。

新しい顧客を作成するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの 新しいキャンペーン項目 をクリックし、ドロップダウン リストの [新しい顧客] をクリックします。

  3. [キャンペーン マネージャ - 新規 (顧客)] 画面の [顧客プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 顧客名を入力します。
    [住所] | 顧客の住所 (国/地域、郵便番号、都道府県、市町村、番地など) を入力します。
    [種類] | 相手の会社との関係をドロップダウン リストから選択します。
    [URL] | 顧客に関連する URL を入力します。
    [業種] 顧客の業種を選択します。

    業種コードは参照テーブル モジュールを使って作成します。詳細については、「参照テーブルを設定する」を参照してください。

    [コメント] | 必要に応じて顧客に関するコメントを入力します。

  4. [連絡先情報] セクションで、次の操作を行います。
    項目 | 操作
    [連絡先] | 顧客の連絡先情報を入力します。
    [電子メール] | 連絡先の電子メール アドレスを入力します。
    [電話] | 連絡先の電話番号を入力します。
    [FAX] | 連絡先の FAX 番号を入力します。

  5. 顧客情報を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

これで、顧客情報が保存されました。次に、この顧客のためのキャンペーンを追加します。

関連項目

キャンペーン管理のワークフロー

キャンペーンについて

キャンペーンを追加する

参照テーブルを設定する


キャンペーンを追加する

顧客情報を追加すると、その顧客のキャンペーンを追加できるようになります。それぞれの顧客には、複数のキャンペーンを関連付けられます。たとえば、1 人の顧客にブランド認知キャンペーンとリピーター獲得キャンペーンの両方を関連付けます。キャンペーン マネージャ モジュールを使うと、キャンペーンの追加、キャンペーン プロパティの表示、キャンペーンのコピーによる新しいキャンペーンの作成、キャンペーン プロパティの編集、広告の項目レベルまたはキャンペーン レベルの目標設定を使ったキャンペーンのスケジュール設定、キャンペーンの検索、およびキャンペーンの削除と復元を行うことができます。

新しいキャンペーンを追加するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、新しいキャンペーン作成の対象となる顧客を選択し、ツール バーの 新しいキャンペーン項目 をクリックします。次に、ドロップダウン リストの [新しいキャンペーン] をクリックします。

  3. [キャンペーン マネージャ - <顧客> 新規 (キャンペーン)] 画面の [キャンペーン プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [キャンペーン名] | 新しいキャンペーンの名前を入力します。
    [開始日] | ドロップダウン カレンダーからキャンペーンの開始日を選択します。
    [終了日] ドロップダウン カレンダーからキャンペーンの終了日を選択します。

    特に指定しない限り、キャンペーン項目の日付はキャンペーンの日付と同じ日付になります。ただし、キャンペーン項目の日付はキャンペーンの日付に優先します。このため、キャンペーン項目の日付にはキャンペーンの日付を越える日付を設定できます。
    [状態] | ドロップダウン リストからキャンペーンの状態を選択します。状態には、[アクティブ] と [非アクティブ] があります。
    [コメント] | 必要に応じてキャンペーンに関するコメントを入力します。

キャンペーン プロパティが作成されます。広告の項目レベルまたはキャンペーン レベルの目標設定を使ってキャンペーンのスケジュールを設定する方法については、「キャンペーンのスケジュールを設定する」を参照してください。

関連項目

キャンペーン管理のワークフロー

キャンペーンについて

顧客情報を追加する


キャンペーンのスケジュールを設定する

キャンペーンのスケジュールは、広告/キャンペーンの目標を使って設定します。スケジュールは、キャンペーン レベルまたは広告の項目レベルで設定できます。キャンペーン レベルで目標を設定し、新しいキャンペーンを作成する場合は、キャンペーン全体に対する要求の総数を指定します。たとえば、キャンペーン レベルで目標を設定していて、顧客から 25,000 回の広告要求の注文を受けたとします。キャンペーン項目レベルでは、一方の広告が広告要求の 60% 表示されるように設定し、もう一方の広告が広告要求の 40% 表示されるように設定します。顧客が広告要求の数を、たとえば 40,000 回に変更した場合でも、広告が表示される回数を手動で変更する必要はありません。表示回数は、それぞれ 60% と 40% のままになります。広告レベルでスケジュールを設定する場合は、要求数の目標を広告ごとに設定します。キャンペーン目標設定の詳細については、「キャンペーン目標設定」を参照してください。

キャンペーンでは、キャンペーン レベルで目標が設定されている広告に優先度が適用されます。自社広告では、優先度はすべての顧客およびすべてのキャンペーンで設定されているすべての自社広告との相関関係になります。有料広告では、優先度は同じキャンペーンのほかの有料広告との相関関係になります。

キャンペーンのスケジュールは、クリックと要求のどちらかを基準にして設定できます。クリックを基準にしてスケジュールを設定する場合は、ユーザーが実際に広告をクリックしたときにキャンペーンの目標が達成されます。要求を基準にしてスケジュールを設定する場合は、指定したページ グループに広告が表示されたときにキャンペーンの目標が達成されます。

キャンペーンのスケジュールを設定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、キャンペーンのスケジュールを設定する顧客をダブルクリックします。次に、キャンペーンを選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客名> - <キャンペーン名> (キャンペーン)] 画面の [広告/キャンペーンの目標] セクションで、次の操作を行います。
    項目 操作
    [目標] ドロップダウン リストから目標設定レベルを選択します。キャンペーンの目標には、[キャンペーン] レベルまたは [広告の項目] レベルがあります。

    [キャンペーン] レベルの目標設定を選択した場合、[目標] ボックスの下のフィールドで [目標値] を変更できます。キャンペーン マネージャでキャンペーンに広告キャンペーン項目を追加した後は、[広告/キャンペーンの目標] セクションの一番下にある動的テーブルを編集できます。このテーブルで広告の項目を選択し、[編集] をクリックして各広告の優先度を変更します。広告ごとの数量が、入力した優先度に基づいて再配分されます。

    [広告の項目] レベルの目標設定を選択した場合、目標値のフィールドは表示されません。広告の項目レベルで目標を設定したキャンペーンの要求数は、広告キャンペーン項目で入力します。キャンペーン マネージャでキャンペーンに広告キャンペーン項目を追加した後は、[広告/キャンペーンの目標] セクションの一番下にある動的テーブルを編集できます。このテーブルで広告の項目を選択し、[編集] をクリックして各広告の目標値を変更します。

    注

    • 目標設定の種類は、キャンペーン レベルから広告の項目レベルに、また広告の項目レベルからキャンペーン レベルに変更できます。

    • 割引とダイレクト メール キャンペーン項目の場合、このボックスの設定は不要です。
    [目標値] このキャンペーンで受けた注文の目標値を入力します。

    このボックスは、[目標] ボックスの一覧で [キャンペーン] をクリックした場合にのみ表示されます。
    [カウント方法] ドロップダウン リストの [要求数] または [クリック数] をクリックします。

    [要求数] を選択すると、指定したページ グループに広告が表示されたときにキャンペーンの目標が達成されます。

    [クリック数] を選択すると、ユーザーが実際に広告をクリックしたときにキャンペーンの目標が達成されます。

  4. スケジュールを保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

これで、スケジュールがキャンペーンに保存されました。次に、キャンペーンの広告キャンペーン項目を作成します。

関連項目

キャンペーン管理のワークフロー

キャンペーンについて

キャンペーン目標設定

キャンペーンを追加する


キャンペーン項目を作成する

キャンペーン項目の種類には、広告、割引、およびダイレクト メールの 3 つがあります。コンテンツ配信のスケジュールを設定するには、キャンペーン項目を作成する必要があります。サイト開発者は、これら 3 つのキャンペーン項目に加えて、インテリジェントなクロスセル項目やアップセル項目などの関連セル機能をサイトに追加できます。

注

  • サイトへのインテリジェントなクロスセル機能の追加については、「予測リソースの実行」と「予測オブジェクト」を参照してください。

  • サイトへのそのほかの関連セル機能の追加については、Commerce Server Software Development Kit を参照してください。

キャンペーン項目の作成については、次の各トピックを参照してください。

  • 広告キャンペーン項目を追加する

  • 割引キャンペーン項目を追加する

  • ダイレクト メール キャンペーン項目を追加する


キャンペーン項目をプレビューする

広告の表示を定義したら、広告をプレビューしてから Web サイトに発行します。クリックが可能な広告の場合は、ユーザーが広告をクリックしたときに表示される Web ページをプレビューすることもできます。

広告をプレビューするには

広告の Web ページを表示するには

広告をプレビューするには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、プレビューする広告が含まれる広告キャンペーンを選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <キャンペーン項目> (広告 ID:<番号>)] 画面の [広告の表示] セクションで、必要なフィールドに情報が入力されていることを確認し、[プレビュー] をクリックします。

  4. [プレビュー] ダイアログ ボックスの [はい] をクリックして、広告キャンペーン項目を保存します。

広告のコピーが [プレビュー] ボタンの下の表示領域に表示されます。

[広告の表示] セクションで広告の種類を設定する方法については、「広告の種類を設定する」を参照してください。

広告の Web ページを表示するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、プレビューする広告キャンペーン項目を選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <キャンペーン項目> (広告 ID:<番号>)] 画面の [広告の表示] セクションで、必要なフィールドに情報が入力されていることを確認し、[プレビュー] ボタンの下の表示領域で広告をクリックします。

広告に関連付けられている Web ページが、Internet Explorer の新しいウィンドウに表示されます。Web サイトへの広告の発行については、「キャンペーンの変更を Web サイトに発行する」を参照してください。

関連項目

広告キャンペーン項目を追加する

広告のサイズを指定する

広告の種類を設定する

キャンペーンの変更を Web サイトに発行する


キャンペーンの変更を Web サイトに発行する

Web サイトに追加した新しい情報でサイトを直ちに更新するには、キャンペーンの発行モジュールを使います。ただし、この手順を用いて広告キャンペーンの変更を発行しなくても、既定では 5 分以内に、広告キャンペーンに関する変更が Web サイトに反映されます。割引キャンペーン項目の変更は、キャンペーンの発行モジュールで発行しない限り、Web サイト上で更新されません。

多くの電子商取引ビジネスでは、まずテスト サイトで変更を行ってから、スケジュール設定された日時に運用サイトに変更を発行します。運用サイトに変更を行う時期と方法については、システム管理者に問い合わせてください。

キャンペーンの発行モジュールに含まれる検索機能を使うと、表示、発行、または削除を行う広告や割引を検索できます。

注

  • 新しい Web サイトで広告キャンペーンを更新するには、ユーザーがサイトを訪問していない場合、まずそのサイトを訪問する必要があります。キャンペーン項目を運用サイトに送信するには、Web ファームのすべてのサーバーをあらかじめ更新しておく必要があります。

運用サイトの項目を検索するには

キャンペーン項目を発行するには

運用サイトの項目を検索するには

  1. [キャンペーン] の [キャンペーンの発行] をクリックします。

  2. [キャンペーンの発行] 画面で、ツール バーの キャンペーン キャッシュの検索 をクリックします。

  3. [検索] ウィンドウの [検索対象] ボックスで、検索するキャンペーン項目の種類をドロップダウン リストから選択し、[検索開始] をクリックします。

検索条件に一致するキャンペーン項目が [サイトに発行する項目] ボックスに表示されます。

キャンペーン項目を発行するには

  1. [キャンペーン] の [キャンペーンの発行] をクリックします。

  2. [キャンペーンの発行] 画面で、発行する運用サイトの項目を選択し、ツール バーの 変更をサイトに発行し、キャッシュを更新 をクリックします。

キャンペーン項目が運用サイトに送信されます。サイトが更新され、新しい広告キャンペーンが追加されます。

関連項目

広告キャンペーン項目を追加する

キャンペーン項目をプレビューする


キャンペーン レベル目標設定と広告の項目目標設定を切り替える

キャンペーンのスケジュールは、キャンペーン目標設定を使って設定します。スケジュールは、キャンペーン レベルまたは広告の項目レベルで設定できます。キャンペーンでは、キャンペーン レベルで目標が設定されている広告に優先度が適用されます。自社広告では、優先度はすべての顧客およびすべてのキャンペーンで設定されているすべての自社広告との相関関係になります。有料広告では、優先度は同じキャンペーンのほかの有料広告との相関関係になります。キャンペーンのスケジュールを設定した後で、キャンペーン目標設定と広告の項目目標設定を切り替えることができます。これにより、広告の優先度の計算方法が決まります。

ここでは、有料広告の目標を設定する 3 つのシナリオを示します。最初のシナリオでは、顧客がキャンペーン レベルで目標を設定する 2 つの広告を注文します。2 番目のシナリオでは、顧客が 2 つの広告の一方に要求を追加したために、広告の項目目標設定に切り替えます。3 番目のシナリオでは、顧客が 2 つの広告を 3 対 1 の割合で表示するように求めてきたために、キャンペーン レベルの目標設定に戻します。

  • シナリオ 1 : 顧客が秋物セールに向けて、合計で 1,000 回の目標値を均等に実行する 2 つの有料広告を注文してきました。広告ごとの目標値は 500 回になります。キャンペーンの目標は、キャンペーン レベルで設定します。
    キャンペーン目標設定 - 等しい優先度

    図をクリックすると、拡大または縮小します。

  • シナリオ 2 : その後、顧客が 1 つ目の広告の要求を 500 回追加するように求めてきました。キャンペーンを広告の項目レベルの目標設定に変更し、1 つ目の広告の目標値に 500 回の要求を追加して合計で 1,000 回の要求にします。2 つ目の広告の要求は 500 回のままです。

    図をクリックすると、拡大または縮小します。

  • シナリオ 3 : 顧客は、1 つ目の広告と 2 つ目の広告を 3 対 1 の優先度で実行するように注文を再配分することに決めました。キャンペーンを、合計の目標値が 1,500 回のキャンペーン レベルの目標設定に戻します。広告キャンペーン項目の優先度を、1 つ目の広告については 3、2 つ目の広告については 1 に変更すると、新しいキャンペーンの優先度は 1 つ目の広告が 1,125 回、2 つ目の広告が 375 回になります。
    キャンペーン目標設定 - 3:1 の優先度

    図をクリックすると、拡大または縮小します。

注意

  • 2 番目のシナリオのあとで、顧客が注文を再配分することに決め、さらに優先度が 1 の 3 つ目の広告を追加する場合は、すべての広告の優先度を再設定する必要があります。広告を、広告の項目で目標設定されたキャンペーンからキャンペーンで目標設定されたキャンペーンに変更するため、すべての広告の優先度を変更する必要があります。優先度を変更しない場合は、広告の配信にゆがみが生じることになります。


広告キャンペーン項目を追加する

広告の配信スケジュールを設定するには、広告キャンペーン項目を作成します。通常、広告キャンペーン項目には、配信目標、日付の範囲、および対象の属性があります。広告キャンペーンを作成した後は、広告のスケジュールを設定したり、広告を表示する Web ページを指定したり、広告の対象となる特定のグループのユーザーを指定することができます。また、広告の表示を指定することもできます。たとえば、テキストとイメージの両方を含んでいる広告を表示したり、テキストのみの広告を表示することができます。広告の表示を指定したら、実際にどのように表示されるかをプレビューできます。

ここでは、次のトピックについて説明します。

  • 広告キャンペーン項目を作成する

  • 広告キャンペーン項目のスケジュールを設定する

  • 広告の対象となるページ グループを指定する

  • 広告の対象となるユーザーのグループを指定する

  • 広告の表示を指定する

  • 広告キャンペーン項目をコピーする


広告キャンペーン項目を作成する

特定のキャンペーン用の広告キャンペーン項目を作成するには、キャンペーン マネージャ モジュールを使います。まず、広告の種類を選択します。これは、表示頻度 (NOD) のスケジュールに必要な、有料広告または自社広告のどちらかを選択します。また、1 回のセッション中にユーザーにコンテンツを表示する回数の上限を設定することもできます。同じ業種で競合している複数の企業の広告が同じページに表示されないようにするには、広告の業種コードを選択します。

広告キャンペーン項目を作成するには

広告の表示を設定するには

広告キャンペーン項目を作成するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、新しい広告キャンペーンの作成対象となるキャンペーンを選択し、ツール バーの 追加 をクリックします。次に、ドロップダウン リストの [新しい広告] をクリックして、新しい広告を作成します。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - 新規 (広告)] 画面の [広告プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [広告名] 広告の名前を入力します。

    自社広告と有料広告を区別できるように、この 2 種類の広告には明確な名前付け規則を適用します。たとえば、自社広告には Business Books_HA、有料広告には Business Software_PA などの名前を使います。
    [状態] ドロップダウン リストから広告キャンペーンの状態を選択します。

    選択できる状態には、[アクティブ] と [非アクティブ] があります。
    [種類] 広告の種類を選択します。

    選択できる種類には、[有料広告] と [自社広告] があります。
    [要求数またはクリック数/優先度] キャンペーンの目標がキャンペーン レベルで設定されている場合は、[自社広告] または [有料広告] の [優先度] をクリックします。

    キャンペーンの目標が要求数による広告の項目レベルで設定されている場合は、次の操作を行います。

    • 広告の種類で [有料広告] を選択した場合は、広告に対する広告の要求数を入力します。

    • 広告の種類で [自社広告] を選択した場合は、自社広告の優先度の値を入力します。自社広告の既定の優先度は 1 です。

    キャンペーンの目標がクリック数による広告の項目レベルに設定している場合は、次の操作を行います。

    • 広告の種類で [有料広告] を選択した場合は、広告に対するクリック数を入力します。

    • 広告の種類で [自社広告] を選択した場合は、自社広告の優先度の値を入力します。自社広告の既定の優先度は 1 です。
    [表示上限回数] 1 回のセッション中にユーザーに広告を表示できる回数をドロップダウン リストから選択します。

    ユーザーに広告を表示できる回数の上限は、1 セッションあたり 10 回です。
    [受信日時] 特に指定しない限り、このボックスには現在の日付が入ります。広告が受信される日付を入力するか、またはドロップダウン カレンダーから選択します。

    広告キャンペーン項目を保存した後で、日付を変更することはできません。

    [業種] | 広告の業種を選択します。
    [コメント] | 必要に応じてこの広告に関するコメントを入力します。

注

  • 広告キャンペーン項目を保存する前に、広告の表示を設定する必要があります。

広告の表示を設定するには

  1. [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | ドロップダウン リストから広告のコンテンツ サイズを選択します。
    [種類] | ドロップダウン リストから広告の種類を選択します。

    注

    • [種類] ボックスの下に表示されるボックスは、選択した広告の種類によって異なります。広告キャンペーン項目を保存する前に、[広告の表示] セクションに必要な情報を入力する必要があります。特定の種類の広告用に広告キャンペーンの表示を設定する方法については、「広告の種類を設定する」を参照してください。
  2. 広告を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

キャンペーン マネージャのツリーで、指定した顧客とキャンペーンの下に新しい広告が表示されます。

関連項目

キャンペーンを追加する

業種コードを追加する

コンテンツ サイズを指定する

広告の表示を指定する

広告キャンペーン項目のスケジュールを設定する

広告の対象となるページ グループを指定する

広告の対象となるユーザーのグループを指定する


広告キャンペーン項目のスケジュールを設定する

新しい広告キャンペーン項目を作成したら、広告を掲載する開始日と終了日を選択します。広告の掲載中に、終了日を変更できます。たとえば、終了日を 1 日前や後にずらすことができます。この場合は、スケジュールの残りの数量と期間に基づいて、表示頻度 (NOD) が再計算されます。

広告キャンペーン項目のスケジュールを設定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、スケジュールを設定する広告を選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告のスケジュール] セクションで、次の操作を行います。
    項目 | 操作
    [開始日] | 広告を開始する日付を入力するか、またはドロップダウン カレンダーから選択します。
    [終了日] | 広告を終了する日付を入力するか、またはドロップダウン カレンダーから選択します。
    [曜日] | 広告を掲載する曜日のチェック ボックスをオンにします。
    [開始時刻] | 広告を開始する時刻をサーバーの時刻に基づいて入力するか、またはドロップダウン リストから選択します。
    [終了時刻] | 広告を終了する時刻をサーバーの時刻に基づいて入力するか、またはドロップダウン リストから選択します。

注

  • 開始時刻を終了時刻よりも遅い時刻に設定した場合、広告は遅い方の時刻に開始され、終了時刻まで実行されます。たとえば、開始時刻を 11:00 に設定し、終了時刻を 9:00 に設定した場合、広告は 22 時間にわたって実行されます。

  • 開始時刻と終了時刻を同じ時刻に設定した場合は、24 時間にわたって表示されます。
  4. 広告を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

スケジュールが広告に保存されます。

関連項目

キャンペーンのスケジュールを設定する

広告キャンペーン項目を追加する


広告の対象となるページ グループを指定する

広告キャンペーン項目をサイトのすべてのページに表示するか、または割り当てられたページ グループだけに表示するかを指定できます。ページ グループを使うと、どの Web ページに広告キャンペーン項目を表示するかを指定できます。たとえば、オンライン新聞 Web サイトの場合、ゴルフ クラブの広告をスポーツ ページだけに表示するように指定できます。

広告は、すべてのページ グループに表示することも、参照テーブル モジュールの [ページ グループ] セクションで作成した利用可能なページ グループから選択することもできます。

注

  • 広告の対象となるページ グループを指定する前に、サイト開発者がページでの広告表示を有効にする必要があります。ページでの広告表示を有効にする方法については、Commerce Server 2000 Software Development Kit の Ad Sitelet サンプルを参照してください。

広告の対象となるページ グループを指定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、作成する新しいページ グループの対象となる広告を選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の対象] セクションで、次の操作を行います。
    項目 | 操作
    [すべてのページ グループで表示] このチェック ボックスをオンにすると、Web サイトのすべてのページ グループに広告が表示されます。

    広告キャンペーンを特定のページ グループに割り当てるには、このチェック ボックスをオフにして、これ以降の操作を行います。
    [ページ グループ: 利用可能] | 割り当てるページ グループを選択します。

  4. [追加] をクリックします。

選択したページが [割り当て] ボックスに移動します。

  5. 広告を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

対象として指定したページ グループに広告が表示されます。

関連項目

広告キャンペーン項目を追加する

ページ グループを追加する


広告の対象となるユーザーのグループを指定する

対象グループは、広告の対象を特定のユーザーのグループに指定するためのアクションに関連付けられた式です。1 つの対象グループには、複数の式やアクションを設定できます。グループの中の特定のユーザーだけを対象グループに含めたり、特定のユーザーをグループから除外することもできます。対象に指定するユーザーのグループは、既存のグループ リストから選択します。このリストは、対象グループ モジュールを使って作成します。対象グループの作成については、「対象グループを作成する」を参照してください。

広告の対象となるユーザーのグループを指定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、新しい対象グループを割り当てる広告を選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の対象] セクションで、次の操作を行います。
    項目 | 操作
    [対象グループ: 利用可能] | 割り当てる対象グループを選択します。

  4. [追加] をクリックします。

対象グループが [割り当て] ボックスに移動します。

  5. 広告を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

選択した対象グループが広告の対象になります。

関連項目

広告キャンペーン項目を追加する

対象式を作成する

対象グループを作成する


広告の表示を指定する

広告を表示するには、主に 2 つの手順を実行します。この手順は次のとおりです。

  • 広告のサイズを指定する

  • 広告の種類を設定する

広告のサイズを指定する

Commerce Server 2000 には、広告に適用できる標準的なコンテンツ サイズのセットが用意されています。また、カスタム コンテンツ サイズを独自に指定することもできます。標準のサイズとカスタム サイズのどちらを適用する場合でも、広告にサイズを適用するときには次の手順を実行します。

注

  • カスタム コンテンツ サイズを指定するには、参照テーブル モジュールを使います。詳細については、「コンテンツ サイズを指定する」を参照してください。

広告のサイズを指定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、サイズを指定する広告が含まれる広告キャンペーンを選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | ドロップダウン リストから広告のサイズを選択します。

これで、広告のコンテンツ サイズが指定されました。次に、広告の種類を設定します。

広告の種類を設定する

広告キャンペーンに特定の種類の広告が必要になることがあります。たとえば、イメージを含んでいる広告を表示したり、テキストのみの広告を表示したりすることができます。

広告の種類を設定するには

イメージ広告を設定するには

テキスト広告を設定するには

HTML 広告を設定するには

クリックできないイメージ広告を設定するには

Buy Now 広告を設定するには

Windows メディア サービス広告を設定するには

方向付きビネット広告を設定するには

広告の種類を設定するには

  • [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、[種類] ボックスの一覧から広告の種類を選択します。

    注

    • [種類] ボックスの下に表示されるボックスは、選択した広告の種類によって異なります。特定の種類の広告に対する広告キャンペーンの表示の設定については、「広告の表示を指定する」の残りの手順を参照してください。

イメージ広告を設定するには

イメージ広告を、広告の表示スケジュールを設定するときに表示先として指定した Web ページにリンクします。この広告が表示されるページをユーザーが訪問すると、イメージが表示されます。

  1. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | 広告のサイズを選択します。
    [種類] | [イメージ] を選択します。
    [イメージの保存場所] | 広告に表示するイメージの URL を入力します。
    [クリック時のリンク先] | 表示される広告のリンク先の URL を入力します。
    [代替テキスト] | ユーザーのコンピュータでグラフィックスが有効になっていないときに表示される代替テキストを入力します。

  2. 広告を保存した後も [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目>(広告 ID: <番号>)] 画面で作業するには、ツール バーの 広告の保存 をクリックします。

広告がイメージ広告として設定され、キャンペーン項目に保存されます。

テキスト広告を設定するには

テキスト広告は、テキストだけで構成されます。この広告が表示されるページをユーザーが訪問すると、テキストが表示されます。

  1. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | 広告のサイズを選択します。
    [種類] | [テキスト] をクリックします。
    [テキスト] | 広告に表示するテキストを入力します。
    [クリック時のリンク先] | 表示される広告のリンク先の URL を入力します。

  2. 広告を保存した後も [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目>(広告 ID: <番号>)] 画面で作業するには、ツール バーの 広告の保存 をクリックします。

広告がテキスト広告として設定され、キャンペーン項目に保存されます。

HTML 広告を設定するには

HTML 広告は、HTML コードで構成されます。この広告が表示されるページをユーザーが訪問すると、HTML コードから生成されたテキストが表示されます。

  1. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | 広告のサイズを選択します。
    [種類] | [HTML] をクリックします。
    [HTML テキスト] | 広告に表示する HTML テキストを HTML 形式で入力します。

  2. 広告を保存した後も [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目>(広告 ID: <番号>)] 画面で作業するには、ツール バーの 広告の保存 をクリックします。

広告が HTML 広告として設定され、キャンペーン項目に保存されます。

クリックできないイメージ広告を設定するには

クリックできないイメージ広告 (グラフィックス イメージ) は、この広告の表示対象として指定された Web ページにユーザーが訪問すると表示されます。この広告は、Web ページにリンクされません。

  1. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | 広告のサイズを選択します。
    [種類] | [クリックできないイメージ] をクリックします。
    [イメージの保存場所] | 広告に表示するイメージの URL を入力します。
    [代替テキスト] | ユーザーのコンピュータでグラフィックスが有効になっていないときに表示される代替テキストを入力します。

  2. 広告を保存した後も [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目>(広告 ID: <番号>)] 画面で作業するには、ツール バーの 広告の保存 をクリックします。

広告がクリックできないイメージ広告として設定され、キャンペーン項目に保存されます。

Buy Now 広告を設定するには

Buy Now 広告を使うと、ユーザーはインターネット上のどの Web ページからでも商品を購入できます。ユーザーが商品のイメージをクリックすると、送付先とクレジット カード情報の入力を求めるダイアログ ボックスが表示されます。

  1. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | 広告のサイズを選択します。
    [種類] | [Buy Now] をクリックします。
    [イメージの保存場所] | 広告に表示するイメージの URL を入力します。
    [クリック時のリンク先] | 表示される広告のリンク先の URL を入力します。
    [代替テキスト] | ユーザーのコンピュータでグラフィックスの表示が無効になっている場合に表示する代替テキストを入力します。
    [ウィンドウの幅] | 広告の幅をピクセル数で入力します。
    [ウィンドウの高さ] | 広告の高さをピクセル数で入力します。

  2. 広告を保存した後も [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目>(広告 ID: <番号>)] 画面で作業するには、ツール バーの 広告の保存 をクリックします。

広告が Buy Now 広告として設定され、キャンペーン項目に保存されます。

Windows メディア サービス広告を設定するには

Windows メディア サービス広告は、高品質のオーディオとビデオによる広告を表示します。

  1. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | 広告のサイズを選択します。
    [種類] | [Windows メディア サービス] をクリックします。
    [Windows メディア サービス ASF] | 広告の Windows メディア サービス ASF を入力します。
    [クリック時のリンク先] | 表示される広告のリンク先の URL を入力します。

  2. 広告を保存した後も [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目>(広告 ID: <番号>)] 画面で作業するには、ツール バーの 広告の保存 をクリックします。

広告が Windows メディア サービス広告として設定され、キャンペーン項目に保存されます。

方向付きビネット広告を設定するには

ビネット広告は、広告を表示するイメージと、それに隣接して表示されるテキストで構成されます。

  1. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目> (広告 ID: <番号>)] 画面の [広告の表示] セクションで、次の操作を行います。
    項目 | 操作
    [サイズ] | 広告のサイズを選択します。
    [種類] [左側に画像を表示]、[右側に画像を表示]、[上側に画像を表示] のいずれかをクリックします。

    [左側に画像を表示] - 広告をテキストの左に配置します。

    [右側に画像を表示] - 広告をテキストの右に配置します。

    [上側に画像を表示] - 広告をテキストの上に配置します。
    [イメージの保存場所] | 広告に表示するイメージの URL を入力します。
    [テキスト] | 広告に隣接して表示するテキストを入力します。
    [クリック時のリンク先] | 表示される広告のリンク先の URL を入力します。
    [代替テキスト] | ユーザーのコンピュータでグラフィックスの表示が無効になっている場合に表示する代替テキストを入力します。

  2. 広告を保存した後も [キャンペーン マネージャ - <顧客> - <キャンペーン> - <広告キャンペーン項目>(広告 ID: <番号>)] 画面で作業するには、ツール バーの 広告の保存 をクリックします。

広告が方向付きビネット広告として設定され、キャンペーン項目に保存されます。

関連項目

広告キャンペーン項目を追加する

コンテンツ サイズを指定する

キャンペーン項目をプレビューする

キャンペーンの変更を Web サイトに発行する


広告キャンペーン項目をコピーする

既存の広告キャンペーン項目をコピーすると、顧客とそのキャンペーンの広告キャンペーン項目を簡単に追加できます。既存の広告をテンプレートとして使用し、そのプロパティを変更することで、新しい広告キャンペーン項目の目標を設定できます。

広告をコピーするには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、コピーする広告を選択し、ツール バーの キャンペーン項目のコピー をクリックします。

  3. [広告のコピー] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [顧客の選択] | 広告のコピー元となる顧客をドロップダウン リストから選択します。
    [キャンペーンの選択] | 広告のコピー元となるキャンペーンをドロップダウン リストから選択します。

  4. [OK] をクリックします。

  5. [キャンペーン マネージャ - <顧客> - <キャンペーン> - 新規 (広告)] 画面の [広告プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [広告名] | 新しい広告の名前を入力します。

  6. その他のプロパティを必要に応じて編集します。

  7. 広告を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

キャンペーン マネージャのツリーで、選択した顧客とキャンペーンの下に新しい広告が表示されます。

関連項目

広告キャンペーン項目を追加する


割引キャンペーン項目を追加する

割引キャンペーン項目を作成し、カタログ内の任意の項目に適用できます。キャンペーン マネージャ モジュールで、新しい割引項目を作成し、サイトに割引を表示するスケジュールを設定し、割引を適用する商品、ページ グループ、または対象グループを指定し、割引の表示を指定することができます。また、指定した Web サイトやページ グループで割引項目がどのように表示されるかをプレビューすることもできます。

ここでは、次のトピックについて説明します。

  • 割引キャンペーン項目を作成する

  • 割引の表示をプレビューする

  • 割引キャンペーン項目をコピーする


割引キャンペーン項目を作成する

キャンペーンを作成したら、割引キャンペーン項目を作成します。割引は、カタログ内の任意の項目またはカテゴリに適用できます。たとえば、Hardware カタログの Keyboard カテゴリに 20% の割引を適用することができます。割引キャンペーン項目を作成するときは、割引をユーザーに表示する方法と形式を指定します。

割引の対象となる特定のユーザーを指定するには、対象式を使います。たとえば、優待客がショッピング バスケットに入れた最初の 2 つの項目に、10% の割引を適用できます。また、1 回のセッション中に特定の割引を表示する回数を指定することもできます。割引の表示を指定したら、保存する前にキャンペーン マネージャで表示をプレビューできます。

割引キャンペーン プロパティを追加する

割引の条件、特典、および必要な資格を指定する

割引の対象となるページ グループを指定する

割引キャンペーンの表示を指定する

割引キャンペーン プロパティを追加する

複数の割引を作成したときは、割引が適用される優先順位を設定できます。また、割引キャンペーン項目の開始日と終了日も指定できます。

割引キャンペーン プロパティを追加するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、新しい割引キャンペーン項目の作成対象となるキャンペーンを選択し、ツール バーの 追加 をクリックします。次に、ドロップダウン リストの [新しい割引] をクリックします。

  3. [キャンペーン マネージャ - <顧客名> - <キャンペーン名> - 新規 (割引)] 画面の [割引プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [割引名] | 割引キャンペーン項目の名前を入力します。
    [状態] ドロップダウン リストから割引キャンペーンの状態を選択します。

    状態には、[アクティブ] と [非アクティブ] があります。

    [優先順位] ドロップダウン リストから割引キャンペーンの優先順位を選択します。

    割引の優先順位によって、バスケットでどの割引が適用されるかが決まります。たとえば、優先順位が 10 の割引は、優先順位が 20 の割引よりも優先して適用されます。

    [コメント] | 必要に応じてこの割引キャンペーンに関するコメントを入力します。
    [開始日] | 割引キャンペーン項目の開始日を入力するか、またはドロップダウン カレンダーから選択します。
    [終了日] | 割引キャンペーンの終了日を入力するか、またはドロップダウン カレンダーから選択します。

注

  • 割引キャンペーン項目を保存する前に、割引の表示を設定する必要があります。割引の表示の設定については、「割引キャンペーンの表示を指定する」を参照してください。

割引の条件、特典、および必要な資格を指定する

割引を適用するカタログの商品またはカテゴリを特定し、割引の金額を (値段または数量で) 指定します。割引の対象となるユーザーと、割引を受けるために必要な項目の購入数を指定します。また、割引が適用されたときにユーザーが受ける特典 (商品価格の値引率、商品の無料贈呈、送料免除など) も指定します。たとえば、40 歳以上のユーザーがカタログの CD カテゴリから 3 つの商品を購入した場合に、ジャズの CD に 20% の割引を適用する特典を提供できます。

シナリオの例

割引定義を指定するには

例 : 割引の条件、特典、および必要な資格を設定する

シナリオの例

次のシナリオは、各種の特典と、それぞれの特典に必要な資格を示します。

  • シナリオ 1: ユーザーがいずれかの商品を 100 円以上購入した場合は、送料が無料になります。
    割引 - 送料の免除

    図をクリックすると、拡大または縮小します。

  • シナリオ 2: ユーザーがカタログのいずれかの商品を購入した場合は、すべてのブランドのブルー ジーンズが 10% 引きになります。
    割引 - 10 % オフ ジーンズ

    図をクリックすると、拡大または縮小します。

  • シナリオ 3: 優待客は、バスケットに入れた最初の 2 つの商品が 10% 引きになります。
    割引 - 優待客

    図をクリックすると、拡大または縮小します。

  • シナリオ 4: ユーザーが割引イメージをクリックした場合、バス タオル セットの価格は 5 円引きになります。
    割引 - 500 円引き バス タオル セット

    図をクリックすると、拡大または縮小します。

  • シナリオ 5: CD カテゴリから 3 つの商品を購入した 40 歳以上のユーザーには、ジャズの CD の価格が 50% 引きになる特典が与えられます。
    割引 - 50 % オフ の jazz CD

    図をクリックすると、拡大または縮小します。

割引定義を指定するには

割引定義を指定するには、割引の条件、特典、および必要な資格を設定します。割引定義の例については、「例 : 割引の条件、特典、および必要な資格を設定する」を参照してください。

  1. [キャンペーン マネージャ - <顧客名> - <キャンペーン名> - 新規 (割引)] 画面の [割引定義] セクションで、次の操作を行います。
    項目 | 操作
    [対象: すべての商品] 割引をすべての商品に適用する場合は、このチェック ボックスをオンにします。

    割引を特定の商品またはカテゴリに適用する場合は、このチェック ボックスをオフのままにして、これ以降の操作を行います。

    [対象]
    • 1 番目のボックス ドロップダウン リストの [金額] または [数量] をクリックします。

    • 2 番目のボックス [対象] (1 番目のボックス) で選択した割引の基準に応じて、割引の金額または数量を入力します。

    • 3 番目のボックス ドロップダウン リストから、この割引に関係するオプションを選択します。選択できるオプションは、[[すべての商品]]、[[商品の選択]]、および [[式ビルダ]] です。

      [[すべての商品]] すべての商品にこの割引が関係する場合に選択します。

      [[商品の選択]] カタログ内の特定の商品またはカテゴリに編集中の割引が関係する場合に選択します。[商品の選択] ダイアログ ボックスを使って、カタログ内の特定の商品またはカテゴリを検索します。商品の選択の使い方については、「[新しい商品の選択]」を参照してください。

      - または -

      省略記号 [...] ボタンをクリックするか、または [[式ビルダ]] オプションを選択して、[カタログ式] ダイアログ ボックスを開きます。カタログ式を作成し、割引を適用するカテゴリまたは商品を指定できます。カタログ式の作成については、「カタログ式を作成する」を参照してください。

      注

      • 以前に選択した商品やカテゴリがある場合は、それらもドロップダウン リストに表示されます。
    [特典: 送料なし] このチェック ボックスをオンにすると、注文されたすべての商品の送料が、割引の特典として無料になります。

    割引の特典を適用する商品またはカテゴリを指定するには、[送料なし] チェック ボックスをオフのままにして、これ以降の操作を行います。

    [特典]
    • 1 番目のボックス 割引のルールに適合したときに、ユーザーが特典を受ける数量を入力します。

      2 番目のボックス ドロップダウン リストから、この割引に関係するオプションを選択します。選択できるオプションは、[[すべての商品]]、[[商品の選択]]、および [[式ビルダ]] です。

      [[すべての商品]] すべての商品にこの割引の特典が関係する場合に選択します。

      [[商品の選択]] カタログ内の特定の商品またはカテゴリにこの特典が関係する場合に選択します。[商品の選択] ダイアログ ボックスには、カタログ内の特定の商品またはカテゴリを検索するためのインターフェイスが用意されています。商品の選択の使い方については、「[新しい商品の選択]」を参照してください。

      - または -

      省略記号 [...] ボタンをクリックするか、または [[式ビルダ]] オプションを選択して、[カタログ式] ダイアログ ボックスを開きます。カタログ式を作成し、この特典を適用するカテゴリまたは商品を指定できます。カタログ式の作成については、「カタログ式を作成する」を参照してください。

      注

      • 以前に選択した商品やカテゴリがある場合は、それらもドロップダウン リストに表示されます。
    • 3 番目のボックス この割引の特典の基準をドロップダウン リストから選択します。

    • 4 番目のボックス 割引の特典の金額または数値を入力します。割引の特典は、選択した基準に応じて、金額またはパーセントで適用されます。
    [特典を利用できる制限回数] | ドロップダウン リストから割引の制限を選択します。[なし] を選択すると、割引の制限がなくなります。ユーザーごとに 10 特典まで割引を制限できます。
    [特典で指定された商品のみ割引を適用] このオプションを選択すると、割引が特典だけに適用されます。

    たとえば、ユーザーがテニス シューズ 1 足を含めて 2 足の靴を購入し、テニス シューズに 20% の割引を受ける場合、20% の割引は特典として受け取るテニス シューズにのみ適用されます。

    [特典および対象で指定された商品の両方に割引を適用] このオプションを選択すると、割引が正規の商品と特典の両方に適用されます。

    たとえば、ユーザーがテニス シューズ 1 足を含めて 2 足の靴を購入し、テニス シューズに 20% の割引を受ける場合、20% の割引は両方の靴に適用されます。

    [クリック必須の割引 : 割引広告がクリックされたときだけ割引を適用する] 顧客が実際に割引広告をクリックしたときだけに割引を適用するには、このチェック ボックスをオンにします。

    広告をクリックしなくても割引を適用する場合は、このチェック ボックスをオフのままにしておきます。

    [要求を適用: 利用可能な式] 利用可能な対象の一覧から割引対象を選択し、[追加] をクリックします。

    対象式の作成については、「対象式を作成する」を参照してください。

条件、特典、および必要な資格は、割引キャンペーン項目に指定されます。

注

  • 割引キャンペーン項目を保存する前に、割引の表示を設定する必要があります。割引の表示の設定については、「割引キャンペーンの表示を指定する」を参照してください。

例 : 割引の条件、特典、および必要な資格を設定する

次の例は、カタログ内のカテゴリから 3 つの商品を購入した 40 歳以上のユーザーを割引の対象に設定し、カタログ項目が 50% 引きになる特典を提供する方法を示します。

  1. [キャンペーン マネージャ - <顧客名> - <キャンペーン名> - 新規 (割引)] 画面の [割引定義] セクションで、次の操作を行います。
    項目 | 操作
    [対象: すべての商品] | 割引を特定の商品またはカテゴリに適用するには、このチェック ボックスがオフになっていることを確認し、これ以降の操作を行います。
    [対象]
    • 1 番目のボックス ドロップダウン リストの [数量] をクリックします。

      [商品の選択] ダイアログ ボックスで、使用するカタログをドロップダウン リストから選択します。[カテゴリ] ボックスで、割引を適用するカテゴリを選択し、[OK] をクリックします。

    • 2 番目のボックス 購入する数量として「3」と入力します。

    • 3 番目のボックス ドロップダウン リストの [[商品の選択]] をクリックします。
    [特典: 送料なし] | 割引の特典を適用する商品またはカテゴリを指定するには、このチェック ボックスがオフになっていることを確認し、これ以降の操作を行います。
    [特典]
    • 1 番目のボックス 割引のルールに適合したときにユーザーが特典を受ける数量として、「1」と入力します。

      2 番目のボックス ドロップダウン リストの [[商品の選択]] をクリックします。

      [商品の選択] ダイアログ ボックスで、使用するカタログをドロップダウン リストから選択します。[カテゴリ] ボックスの一覧から割引の特典を適用するカテゴリを選択します。[カテゴリ内の商品] ボックスの一覧から割引の特典を適用する商品を選択し、[OK] をクリックします。

      • 3 番目のボックス ドロップダウン リストの [パーセント (%)] をクリックします。

      • 4 番目のボックス 割引の特典の数値として「50」と入力します。
    [特典を利用できる制限回数] | 上限回数として [なし] が選択されていることを確認します。これにより、割引は無制限になります。
    [特典で指定された商品のみ割引を適用] | このオプションを選択すると、割引が特典だけに適用されます。
    [クリック必須の割引 : 割引広告がクリックされたときだけ割引を適用する] | 顧客が実際に割引広告をクリックしたときにだけ割引を適用するには、このチェック ボックスをオンにします。
    [要求を適用: 利用可能な式] 利用可能な対象式の一覧から割引対象の式を選択し、[追加] をクリックします。

    たとえば、40 歳以上のユーザーを対象に指定する対象式を作成できます。

これで、指定したカタログ カテゴリから 3 つの商品を購入した 40 歳以上のすべてのユーザーに、指定したカタログ項目の価格が 50% 引きになる特典が提供されるようになります。

割引の対象となるページ グループを指定する

割引キャンペーン項目は、サイトのすべてのページに表示されるように指定することも、特定のページ グループだけに表示されるように指定することもできます。ページ グループを使うと、割引キャンペーン項目を表示する Web ページを指定できます。たとえば、オンライン新聞 Web サイトの場合、ゴルフ クラブの割引をスポーツ ページだけに表示するように指定できます。

割引項目は、すべてのページ グループで表示できます。また、参照テーブル モジュールの [ページ グループ] セクションで作成したページ グループから選択することもできます。

注

  • 広告の対象となるページ グループを指定する前に、サイト開発者がページでの広告表示を有効にする必要があります。ページでの広告表示を有効にする方法については、Commerce Server 2000 Software Development Kit の Ad Sitelet サンプルを参照してください。

割引を適用する対象グループを指定することもできます。対象グループとは、特定のユーザーのグループを対象として指定する 2 つ以上の式の集まりです。対象グループを使うと、グループの中の特定のユーザーを対象グループに含めたり、特定のユーザーを除外することができます。対象グループの作成については、「対象グループを作成する」を参照してください。

割引の対象となるページ グループを指定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックし、割引対象を指定する割引を選択します。次に、ツール バーの 開く をクリックします。

  2. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <キャンペーン割引項目> (割引 ID: <番号>)] 画面の [割引表示対象] セクションで、次の操作を行います。
    項目 操作
    [割引定義で選択された対象式のほかに、対象グループで選択した式を使用する] [割引定義] セクションで選択した対象式に加え、ページ グループ、対象グループ、またはその両方を使う場合は、このオプションを選択します。

    ページ グループについては、「ページ グループを追加する」を参照してください。対象グループについては、「対象グループを作成する」を参照してください。

    [割引定義で選択された対象式の代わりに、対象グループで選択した式を使用する] [割引定義] セクションで選択した対象式の代わりに、ページ グループ、対象グループ、またはその両方を使う場合は、このオプションを選択します。

    ページ グループについては、「ページ グループを追加する」を参照してください。対象グループについては、「対象グループを作成する」を参照してください。

    [すべてのページ グループで表示] このチェック ボックスをオンにすると、Web サイトのすべてのページ グループに広告が表示されます。

    割引キャンペーン項目を特定のページ グループに割り当てるには、このチェック ボックスをオフにして、これ以降の操作を行います。

    [ページ グループ: 利用可能] 割り当てるページ グループを選択し、[追加] をクリックします。

    選択したページ グループが [割り当て] ボックスに移動します。[割り当て] ボックスからページ グループを削除するには、[削除] をクリックします。これにより、ページ グループが [利用可能] ボックスに移動します。

    [対象グループ: 利用可能] この割引を適用する対象グループを選択し、[追加] をクリックします。

    選択した対象グループが [割り当て] ボックスに移動します。[割り当て] ボックスから対象グループを削除するには、[削除] をクリックします。これにより、対象グループが [利用可能] ボックスに移動します。

    対象式の作成については、「対象式を作成する」を参照してください。

選択したページ グループと割引キャンペーンの対象に関する情報が、割引キャンペーン項目に指定されます。

注

  • 割引キャンペーン項目を保存する前に、割引の表示を設定する必要があります。割引の表示の設定については、「割引キャンペーンの表示を指定する」を参照してください。

割引キャンペーンの表示を指定する

ユーザーに割引を表示する方法と形式を指定できます。たとえば、カタログの全商品を 20% 割引で販売することを宣伝する大きな広告をホーム ページに表示できます。また、1 回のセッション中に特定の割引を表示する回数を指定することもできます。

割引キャンペーンの表示を指定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックし、割引キャンペーンの表示を指定する割引を選択します。次に、ツール バーの 開く をクリックします。

  2. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <キャンペーン割引項目> (割引 ID: <番号>)] 画面の [割引の表示] セクションで、次の操作を行います。
    項目 | 操作
    [表示上限回数] 1 回のセッション中にユーザーに割引を表示する回数をドロップダウン リストから選択します。

    特に指定しない限り、表示上限回数は「なし」 (ゼロ) に設定されます。つまり、表示回数は無制限です。表示上限回数は、1 セッション 1 ユーザーあたり 10 回にすることをお勧めします。

    [バスケットの表示] | 割引に関してバスケット ページに表示するテキストを入力します。
    [コンテンツサイズ] ドロップダウン リストに表示される利用可能な種類の中から、割引のコンテンツ サイズを選択します。

    割引キャンペーンに必要な特定の種類の広告を指定します。

    [コンテンツタイプ] | ドロップダウン リストに表示される利用可能な種類の中から、割引のコンテンツの種類を選択します。

    注

    • [コンテンツタイプ] ボックスの下に表示される割引のボックスは、選択したコンテンツの種類によって異なります。特定の種類の割引で広告キャンペーンの表示を設定する方法については、「広告の種類を設定する」を参照してください。
  3. 割引キャンペーンを保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

割引の表示が割引キャンペーンに保存されます。

Web サイトでの割引の発行については、「キャンペーンの変更を Web サイトに発行する」を参照してください。

関連項目

割引

割引の表示をプレビューする

対象式を作成する

対象グループを作成する

カタログ式を作成する

[新しい商品の選択]

ページ グループを追加する

キャンペーンの変更を Web サイトに発行する


割引の表示をプレビューする

割引の表示を定義したら、必要に応じて表示をプレビューしてから運用サイトに送信できます。

割引の表示をプレビューするには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、割引キャンペーンの表示をプレビューする割引を選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <キャンペーン割引項目> (割引 ID: <番号>)] 画面の [割引の表示] セクションで、[プレビュー] をクリックします。

  4. [プレビュー] ダイアログ ボックスの [はい] をクリックして、割引キャンペーン項目を保存します。

割引のコピーが [プレビュー] ボタンの下の表示領域に表示されます。

割引に関連付けられている Web ページが、Internet Explorer の新しいウィンドウに表示されます。

関連項目

割引キャンペーン項目を作成する

広告の表示を指定する

キャンペーン項目をプレビューする


割引キャンペーン項目をコピーする

既存の割引キャンペーン項目をコピーすると、顧客とそのキャンペーンの割引キャンペーン項目を簡単に追加できます。既存の割引をテンプレートとして使用し、そのプロパティを変更することで、新しい割引キャンペーン項目の目標を設定できます。

割引をコピーするには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、コピーする割引を選択し、ツール バーの コピー をクリックします。

  3. [割引のコピー] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [顧客の選択] | 割引のコピー元となる顧客をドロップダウン リストから選択します。
    [キャンペーンの選択] | 割引のコピー元となるキャンペーンをドロップダウン リストから選択します。

  4. [OK] をクリックします。

  5. [キャンペーン マネージャ - <顧客> - <キャンペーン> 新規 (割引)] 画面の [割引プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [割引名] | 新しい割引の名前を入力します。

  6. 残りのプロパティを必要に応じて編集します。割引を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

キャンペーン マネージャのツリーで、顧客とキャンペーンの下に新しい割引が表示されます。

関連項目

割引キャンペーン項目を作成する


広告または割引の対象を指定する

キャンペーン式モジュールを使うと、対象としての条件を満たすユーザーに表示するカテゴリ、商品、または商品プロパティを定義できます。キャンペーン式モジュールを使って、広告または割引の対象を特定のユーザーのグループに指定する式を作成します。

作成できる式の種類は次のとおりです。

  • カタログ式 割引を適用するカテゴリ、商品、または商品プロパティを定義します。たとえば、“もし本の値段が 2000 円以上の場合、割引を適用する” という式を作成します。カタログ式を作成したら、作成したキャンペーン式の条件を満たす商品を割引キャンペーンの対象として指定できます。

  • 対象式 広告または割引を配信する対象となるユーザーを定義します。たとえば、"もしユーザーが女性の場合、塗料が青の広告を配信する" という式を作成します。

  • 対象グループ いくつかの対象式を組み合わせ、その式の条件を満たすユーザーのグループを広告キャンペーンまたは割引キャンペーンの対象に指定します。対象式を使って、Web サイト上のページ グループを対象に指定することもできます。対象式を定義したら、いくつかの式を組み合わせて対象グループを作成できます。たとえば、"もしユーザーが女性の場合" という式と "もしユーザーが以前に塗料を購入したことがある場合" という式を組み合わせて、"女性の塗料ユーザー" という対象グループを作成できます。これにより、壁紙の広告や割引を "女性の塗料ユーザー" グループに表示できます。

ここでは、次のトピックについて説明します。

  • カタログ式を作成する

  • 対象式を作成する

  • 対象グループを作成する


カタログ式を作成する

割引を適用するカテゴリまたは商品を指定するには、カタログ式を作成します。式を作成するには、商品、商品プロパティ、カタログ内のカテゴリ、または演算子を一覧から選択したり、式が評価する値を必要に応じて入力します。カタログ式は、"書籍の価格が 2,000 円より大きい"、"カテゴリが小説に等しい" などの形になります。式の評価結果が "True" であれば、その商品またはカテゴリに割引が適用されます。

カタログ式を作成するには、[カタログ式] 画面で次のいずれかを選択します。

  • [新しい商品の選択] このオプションは、式の条件に使用するカタログ、商品、商品プロパティ、またはカテゴリを検索する場合に選択します。

  • [新しいカタログ式] このオプションは、式ビルダを開く場合に選択します。

[新しい商品の選択]

商品の選択を使うと、割引キャンペーンの対象とする商品またはカテゴリを検索したり選択することができます。商品とカテゴリは、次のいずれかの方法で検索できます。

  • 商品の選択を開くには

  • カタログを参照するには

  • キーワードで検索するには

  • 商品プロパティで検索するには

商品の選択を開くには

  1. [キャンペーン] の [キャンペーン式] をクリックします。

  2. [キャンペーン式: 対象式] 画面で、ツール バーの キャンペーン式の表示 をクリックし、ドロップダウン リストの [カタログ式] をクリックします。

  3. [キャンペーン式: カタログ式] 画面で、ツール バーの 新しいカタログ式 をクリックし、ドロップダウン リストの [新しい商品の選択] をクリックします。

カタログを参照するには

  1. [商品の選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [検索方法] | [カタログの参照] をクリックします。
    [カタログ] | 検索するカタログをドロップダウン リストから選択します。
    [カテゴリ] | 検索するカテゴリを選択します。

  2. [OK] をクリックします。

選択したカテゴリが [カタログ式] ボックスに表示されます。

キーワードで検索するには

  1. [商品の選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [検索方法] | [キーワード検索] をクリックします。
    [カタログ] | 検索するカタログをドロップダウン リストから選択します。
    [キーワード] | 検索する文字列を入力し、[検索開始] をクリックします。
    [商品] | 対象として指定する商品を選択します。

  2. [OK] をクリックします。

選択した商品が [カタログ式] ボックスに表示されます。

商品プロパティで検索するには

  1. [商品の選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [検索方法] | [プロパティによる検索] をクリックします。
    [カタログ] | 検索するカタログをドロップダウン リストから選択します。
    [次の条件に基づく対象] [新規] をクリックします。

    [次の条件に基づく対象] ボックスの 3 つのエディット ボックスのうち、1 番目のボックスがアクティブになり、式の句を選択または入力できるようになります。

    [次の条件に基づく対象]
    • 1 番目のボックス ドロップダウン リストからプロパティ グループを選択し、新しいカタログ式の作成に使用するプロパティを選択します。

    • 2 番目のボックス このカタログ式と共に使用する演算子をドロップダウン リストから選択します。

    • 3 番目のボックス カタログ式で評価するプロパティまたは値を入力します。

注

  • キャンペーン式では、セミコロン (;) を使って値を区切ります。カンマ (,) は使わないでください。カンマは区切り文字として認識されません。たとえば、数値のリストであれば「2,534; 3,485; 6,982」のように入力します。セミコロン自体を入力するためのエスケープ文字は、円記号(\) です。 たとえば、ABC;12 という値は「ABC\;12」と入力します。

たとえば、書籍のカタログで、"著者 (プロパティ) が右の項目を含む (演算子) Penn (文字列)" という式は、Daniel Penn が著した本にのみ割引を適用します。

図をクリックすると、拡大または縮小します。

  2. [適用] をクリックします。

対象の条件に一致する商品が [商品] ボックスに表示されます。

  3. [OK] をクリックします。

キャンペーン式モジュールの [キャンペーン式: カタログ式] 画面に式が追加されます。これで、この式を使ってユーザーのグループを割引キャンペーンの対象に指定できるようになります。

[新しいカタログ式]

[カタログ式] 画面で、式ビルダを使ってカタログ式を作成します。

カタログ式を作成するには

  1. [キャンペーン] の [キャンペーン式] をクリックし、ツール バーの 表示 をクリックし、ドロップダウン リストの [カタログ式] をクリックします。

  2. [キャンペーン式: カタログ式] 画面で、ツール バーの 新しいカタログ式 をクリックし、[新しいカタログ式] をクリックします。

  3. [カタログ式] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 新しいカタログ式の名前を入力します。
    [説明] 新しいカタログ式の説明を入力し、[新規] をクリックします。

    [次の条件に基づく対象] ボックスの 3 つのエディット ボックスのうち、1 番目のボックスがアクティブになります。式の句を選択または入力します。

    [次の条件に基づく対象]
    • 1 番目のボックス この式に関係するオプションをドロップダウン リストから選択します。選択できるオプションは、[商品] と [式] (存在する場合) です。
      • [商品] をクリックすると、商品プロパティの一覧が表示されます。新しいカタログ式の作成に使用するプロパティを選択します。

      • [式] をクリックすると、現在あるすべてのカタログ式の一覧が表示されます。新しいカタログ式の作成に使用するカタログ式を選択し、[OK] をクリックします。
    • 2 番目のボックス このカタログ式と共に使用する演算子をドロップダウン リストから選択します。

    • 3 番目のボックス カタログ式で評価するプロパティまたは値を入力します。

注

  • キャンペーン式では、セミコロン (;) を使って値を区切ります。カンマ (,) は使わないでください。カンマは区切り文字として認識されません。たとえば、数値のリストであれば「2,534; 3,485; 6,982」のように入力します。セミコロン自体を入力するためのエスケープ文字は、円記号(\) です。 たとえば、ABC;12 という値は「ABC\;12」と入力します。

たとえば、書籍のカタログで、"著者 (商品プロパティ) 右の項目を含む (演算子) Penn (プロパティ)" という式は、Daniel Penn が著した本にのみ割引を適用します。

図をクリックすると、拡大または縮小します。

  4. [適用] をクリックします。

    新しいカタログ式が [次の条件に基づく対象] ボックスに追加されます。

    注

    • 作成したカタログ式に条件を追加するには、手順 2. ～ 4. を繰り返し、ドロップダウン リストの [And] または [Or] をクリックします。
  5. カタログ式を保存して [キャンペーン式:カタログ式] 画面に戻るには、[保存] をクリックします。

式が [キャンペーン式: カタログ式] 画面に追加されます。これで、この式を使ってユーザーのグループを割引キャンペーンの対象に指定できるようになります。

関連項目

割引キャンペーン項目を作成する


対象式を作成する

広告と割引の対象となるユーザーを指定するには、対象式を作成します。対象式とは、プロパティ、演算子、および値を組み合わせたもので、評価すると結果を返します。式を作成するには、あらかじめ定義されている対象や演算子を一覧から選択します。必要な場合は、式が評価する値 (数値など) を入力します。対象式は、"アカウント クラスが 10 に等しい"、"女性ユーザーが True" などの形になります。対象式の作成には、[対象式] 画面の式ビルダを使います。

新しい対象式を作成するには

  1. [キャンペーン] の [キャンペーン式] をクリックします。

  2. [キャンペーン式: 対象式] 画面で、ツール バーの キャンペーン式の表示 をクリックし、ドロップダウン リストの [対象式] をクリックします。

  3. [キャンペーン式: 対象式] 画面で、ツール バーの 新しい対象式 をクリックします。

  4. [対象式] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [名前] | 新しい対象式の名前を入力します。
    [説明] 新しい対象式の説明を入力し、[新規] をクリックします。

    [次の条件に基づく対象] ボックスの 3 つのエディット ボックスのうち、1 番目のボックスがアクティブになり、式の句を選択または入力できるようになります。

    [次の条件に基づく対象]
    • 1 番目のボックス この式に関係するオプションをドロップダウン リストから選択します。選択できるオプションは、[ユーザー オブジェクト]、[対象とするコンテキスト]、および [式] (存在する場合) です。

      [ユーザー オブジェクト] をクリックすると、ユーザー オブジェクトのドロップダウン リストが表示されます。ユーザー オブジェクトを選択し、この式で使用するユーザー オブジェクトの種類を選択します。

      [対象とするコンテキスト] をクリックすると、ページ グループ プロパティと、対象とするコンテキスト プロファイル用に作成された追加のプロパティが表示されます。この式で使用するプロパティを選択します。プロファイル プロパティの追加については、「プロファイル定義にプロパティを追加する」を参照してください。

      [式] をクリックすると、[式の選択] ダイアログ ボックスが表示されます。式の一覧から使用する式を選択し、[OK] をクリックします。

      この一覧には、[対象式] ダイアログ ボックスを開く前に作成された式だけが表示されます。

    • 2 番目のボックス ドロップダウン リストに表示される利用可能な種類の中から、式の演算子の種類を選択します。

    • 3 番目のボックス 式で評価するプロパティまたは値を入力します。

      オブジェクトまたは関数が一覧に表示されない場合は、式ビルダを起動したコンテキストでオブジェクトまたは関数が有効ではありません。たとえば、対象がユーザー オブジェクトではなく式に基づいている場合は、別の演算子の集合が表示されます。

      1 番目のボックスの一覧で ユーザー カタログ セット オブジェクトを選択した場合は、式で評価するカタロ グセット プロパティを入力します。カタログ セット名のプロパティの追加については、「プロパティ定義を追加する」を参照してください。

    注

    • キャンペーン式では、セミコロン (;) を使って値を区切ります。カンマ (,) は使わないでください。カンマは区切り文字として認識されません。たとえば、数値のリストであれば「2,534; 3,485; 6,982」のように入力します。セミコロン自体を入力するためのエスケープ文字は、円記号(\) です。 たとえば、ABC;12 という値は「ABC\;12」と入力します。

      たとえば、"State (商品プロパティ) が右の項目と等しい (演算子) CA (文字列)" という式は、カリフォルニア州に住む顧客にのみ割引を適用します。

    図をクリックすると、拡大または縮小します。

  5. [適用] をクリックします。

    新しい対象式が [次の条件に基づく対象] ボックスに追加されます。

    注

    • 作成したカタログ式に条件を追加するには、手順 3. ～ 5. を繰り返し、ドロップダウン リストの [And] または [Or] をクリックします。
  6. 対象式を保存して [キャンペーン式: 対象式] 画面に戻るには、[保存] をクリックします。

式が [キャンペーン式: 対象式] 画面に追加されます。これで、いくつかの対象式を組み合わせて対象グループを作成できるようになります。作成した対象グループは、広告や割引の対象を指定するときに使います。

関連項目

広告キャンペーン項目を追加する

対象グループを作成する


対象グループを作成する

いくつかの式を組み合わせて、広告や割引をユーザーのグループに配信するには、対象グループ モジュールを使います。グループに含めるユーザーと、グループから除外するユーザーを指定することができます。たとえば、動物の飼い主で構成される対象グループの場合、対象式にアクションを適用することによって、猫の飼い主をグループに含め、犬の飼い主は除外するように指定できます。対象グループを定義すれば、広告または割引の対象とするユーザーのグループを指定するビジネス ルールを作成できます。

対象グループは、既存の対象式とアクションで構成されます。新しい対象式を作成するには、対象グループ モジュールの対象式ビルダを使います。対象グループ モジュールでは、式がホーム ページを対象としているか、適用しているか、除外しているか、またはそのスポンサーであるかどうかを指定できます。

新しい対象グループを作成するには

  1. [キャンペーン] の [対象グループ] をクリックします。

  2. [対象グループ] 画面で、ツール バーの 新しい対象グループ をクリックします。

  3. [対象グループ: 新規] 画面で、次の操作を行います。
    項目 | 操作
    [対象グループ名] | 新しい対象グループの名前を入力します。
    [式] 新しい対象グループの作成に使用する式をドロップダウン リストから選択します。

    新しい式を作成する場合は、[新しい式の作成] をクリックします。新しい対象式の作成については、「対象式を作成する」を参照してください。
    [アクション] 新しい対象グループのアクションをドロップダウン リストから選択します。

    選択できるアクションは次のとおりです。

    • [対象] 対象アクションは、プロパティの人口が非常に少ない場合でも、ユーザーが多くの要求を獲得する状況で使用できます。

    式の評価結果が True の場合、スコアは増加し、コンテンツが表示される確率も上がります。式の評価結果が False の場合、スコアは変わりません。いずれの場合でも、コンテンツの配信は有効です。

    • [スポンサー] 対象グループに関連付けられた広告が、サイトで排他的に表示されます。

    式の評価結果が True の場合、コンテンツの配信は有効です。ほかのコンテンツは、同じアクション = スポンサー の式がない限り無効です (スポンサーの乗数は 1 つだけです)。

    • [適用] 対象式のユーザーのグループが対象グループに含まれます。

    式の評価結果が True の場合、コンテンツの配信は有効です。False の場合、コンテンツの配信は無効です。

    • [除外] 対象式のユーザーのグループが対象グループから除外されます。

    式の評価結果が True の場合、コンテンツの配信は無効です。False の場合、コンテンツの配信は有効です。

    注意

    • アクションで [適用] または [除外] を選択すると、除外プロパティが定義されたユーザーに広告が表示されなくなります。また、必須プロパティまたは除外プロパティが定義されていないユーザーにも、広告は表示されません。たとえば、Hotmail のユーザーを除外する対象グループを作成すると、電子メール アカウントが定義されていないユーザーも対象グループから除外されます。したがって、電子メール アカウントが定義されていて、hotmail のアカウントを持っていないすべてのユーザーに広告が表示されます。
  4. [確認] をクリックします。

  5. 対象グループを保存して [対象グループ] 画面に戻るには、ツール バーの 保存して対象グループ リストに戻る をクリックします。

新しい対象グループは、利用可能な対象グループのリストに保存されます。これで、この対象グループを使って広告または割引の対象を指定できるようになります。

関連項目

  • 広告キャンペーン項目を追加する

  • 割引キャンペーン項目を作成する

  • 広告または割引の対象を指定する

  • 対象式を作成する


ダイレクト メール キャンペーン項目を追加する

ダイレクト電子メール広告キャンペーンを作成および管理するには、キャンペーン マネージャ モジュールを使います。リスト マネージャに格納されているメーリング リストを使うと、ダイレクト メール キャンペーンの対象として特定のユーザーを指定できます。キャンペーン マネージャ モジュールを使って、新しいダイレクト メール キャンペーンの作成、メッセージのパーソナライズ、ダイレクト メール メッセージへのアタッチメントの追加、およびダイレクト メール プロパティの変更を行います。また、ダイレクト メール リストは、運用環境に送信する前にテストすることもできます。

次のワークフローは、ダイレクト メール キャンペーンの作成と管理を行うシナリオの例を示します。

ダイレクト メール キャンペーンの作成と管理を行うシナリオのワークフロー
リスト マネージャ

ダイレクト メール キャンペーンにアタッチメントを追加する

キャンペーン マネージャ
メーリング リストを
インポートする
ダイレクト メール キャンペーンを作成する
ダイレクト メール キャンペーンのスケジュールを設定する
ダイレクト メール キャンペーンをテストする
ダイレクト メール メッセージをパーソナライズする

  1. リスト マネージャ モジュールで、メーリング リスト (たとえば、リピータのリスト) をインポートします。

  2. キャンペーン マネージャ モジュールで、リピータのメーリング リストを対象とするダイレクト メール キャンペーンを作成します。

  3. パーソナライズされたコンテンツを含む Hypertext Markup Language (HTML) ページの名前を入力します。

  4. ダイレクト メール キャンペーンにアタッチメントを追加します。

  5. ダイレクト メール キャンペーンの開始時刻と終了時刻のスケジュールを設定し、ダイレクト メール ジョブを送信する頻度を指定します。

  6. テスト リストにダイレクト メールを送信してテストし、パーソナライズされたページを表示します。

ここでは、次のトピックについて説明します。

  • メーリング リストを作成する

  • メーリング リストをインポートする

  • ダイレクト メール キャンペーンを作成する

  • ダイレクト メール メッセージをパーソナライズする

  • ダイレクト メール キャンペーンにアタッチメントを追加する

  • ダイレクト メール キャンペーンのスケジュールを設定する

  • ダイレクト メール キャンペーンをテストする

  • ダイレクト メール キャンペーン項目をコピーする


メーリング リストを作成する

ダイレクト メール キャンペーンを作成する前に、有効なメーリング リストをリスト マネージャ モジュールに格納する必要があります。メーリング リストは、あるリストから選ばれた受信者にダイレクト メーラーがメールを送信するときに使われます。

メーリング リストの作成には、任意のテキスト エディタを使用できます。メーリング リストとは、受信者のデータを記載したものです。SQL Server からリストをインポートする場合、リスト マネージャでは次の表に示すフィールド名が必要です。1 行につき 1 人の受信者について記載し、各行には次の要素をカンマ区切り形式で並べます。

フィールド名 | パラメータ | 説明
rcp_email | 電子メール アドレス | 必須。名前または "名前@ドメイン名" の書式で指定します。
rcp_guid | GUID | 省略可。グローバル一意識別子。パーソナライズされたメール メッセージにコンテンツを提供するときに使用する一意のユーザー ID です。
rcp_fmt | メッセージ形式 | 省略可。Collaboration Data Object (CDO) が結果をどのメッセージ形式に変換するかを制御します。たとえば、テキスト、MIME Encapsulation of Aggregate HTML Documents (MHTML)、または Multipurpose Internet Mail Extensions (MIME) 形式を指定します。
rcp_locale | 言語 | 省略可。メール メッセージのコード ページ値です。
rcp_url | URL | 省略可。ユーザーごとに個々の URL を CDO に渡すことができます。

注

  • フィールド名は、この表に示す順序で指定しなければなりません。省略可能なパラメータを省いて後続のパラメータを指定する場合は、区切り文字を入力する必要があります。

  • .pst ファイル (メッセージ、予定、連絡先などの Outlook アイテムが含まれるファイル) のプログラム情報を使ってリストを作成するには、Microsoft Outlook のオンライン ヘルプの「ファイルや個人用フォルダ ファイルにアイテムをエクスポートする」を参照してください。


メーリング リストをインポートする

ダイレクト メール キャンペーンを作成する前に、有効なメーリング リストをリスト マネージャ モジュールに格納する必要があります。リスト マネージャ モジュールを使うと、ユーザー リストをインポートし、ダイレクト メール キャンペーンの対象として指定できます。インポートできるのは、ASCII 形式のテキスト ファイル、Microsoft Excel のファイル、または SQL Server データベースのテーブルです。

リストをインポートするには

  1. [キャンペーン] の [リスト マネージャ] をクリックします。

  2. [リスト マネージャ] 画面で、ツール バーの リストのインポート をクリックします。

  3. [リストのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [リストの種類] リストの種類を選択します。

    選択できるオプションは、[静的] と [動的] です。

    • フラット テキスト ファイルの静的リストをインポートするには、[静的] をクリックします。

    • 動的リスト (SQL Server データベースからのリストなど、変化するリスト) をインポートするには、[動的] を選択します。
    [コピー先のリスト名を入力] | インポートするリストの名前を入力します。
    [リストのソース] リストのソースの種類を選択します。

    選択できるオプションは、[ファイルから] または [SQL データベースから] です。

    • 静的リストの場合は [ファイルから] を選択します。

    • [SQL データベースから] を選択した場合は、次の操作を行います。
      1. [接続文字列] ボックスに、データベース接続文字列を入力します。この文字列で、データベースの場所と接続方法を定義します。

      2. [SQL クエリ] ボックスに、目的の情報を取得するための SQL クエリを入力します。

        例 :SQL クエリ :

        SELECT u_email_address AS rcp_email FROM UserObject WHERE d_date_registered >= '03/01/2000'

        リスト マネージャのフィールド名の要件については、「メーリング リストを作成する」を参照してください。

      注

      • データベース プロパティおよび SQL クエリの情報については、システム管理者に問い合わせてください。SQL クエリの記述方法については、SQL Server Books Onlineの「クエリ - SQL Server, 基礎」を参照してください。
    [ファイル名] | インポートするリストのパス、ファイル名、および拡張子を入力します。

  4. [OK] をクリックします。

新しいリストがインポートされ、リスト マネージャに表示されます。これで、このリストをダイレクト メール キャンペーンで使用できるようになります。

関連項目

ユーザー レコード リストを管理する

リストをインポートおよびエクスポートする


ダイレクト メール キャンペーンを作成する

ダイレクト メール キャンペーンは、広告をユーザーに見てもらう方法の一つです。リスト マネージャに格納されているメーリング リストを使うと、ダイレクト メール キャンペーンの対象として特定のユーザーを指定できます。リスト マネージャには、ASCII 形式のテキスト ファイル、SQL Server データベースのテーブル、および分析レポートをインポートできます。これらのリストを使ってダイレクト メーラー ジョブを実行すれば、メールの送信対象となるユーザーをより的確に特定できます。

ダイレクト メール キャンペーンを作成するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、作成するダイレクト メール キャンペーンの対象となるキャンペーンを選択し、ツール バーの 新しいキャンペーン項目 をクリックします。次に、ドロップダウン リストの [新しいダイレクト メール] をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - 新規 (ダイレクト メール)] 画面の [ダイレクト メールのプロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [ダイレクト メール名] | ダイレクト メーラー ジョブの名前を入力します。
    [送信元電子メール アドレス] | ダイレクト メールの送信元のアドレスを入力します。
    [返信先電子メール アドレス] 返信先が既定のアドレスと異なる場合に、返信先のアドレスを入力します。

    特に指定しない限り、このボックスにはダイレクト メールの送信元のアドレスが入ります。
    [メッセージの件名] | このダイレクト メーラー ジョブの件名を入力します。
    [メッセージ本文を含むファイル パスまたは URL] ダイレクト メール メッセージの表示に使用するファイルのパスまたは URL を入力します。

    パーソナライズされたメッセージ本文の URL には、HTML コンテンツの種類として有効な拡張子 (.htm、または .asp など) が含まれている必要があります。無効な拡張子 (.xml など) が含まれている場合は、Collaboration Data Objects (CDO) エラーが発生し、メッセージは送信されません。

    パーソナライズされたページを表示する方法については、「ダイレクト メール キャンペーンをテストする」を参照してください。

    注意

    • サイズが 2 MB を超えるファイルは切り捨てられます。データの先頭の 2 MB だけがダイレクト メールで使われます。
    [アタッチメント] メッセージと共に送信するアタッチメントのファイル パスと名前を入力します。

    アタッチメントを送信しない場合は、このボックスを空のままにします。
    [メーリング リスト] | このダイレクト メール キャンペーンで使用するメーリング リストをドロップダウン リストから選択します。
    [ユーザーごとにパーソナライズするダイレクト メール] このチェック ボックスをオンにすると、このダイレクト メール キャンペーンのパーソナライズが有効になります。

    このダイレクト メール キャンペーンのパーソナライズを無効にする場合は、このチェック ボックスをオフのままにします。
    [メールの形式] このメールの形式を選択します。

    選択できるオプションは次のとおりです。

    • [テキスト] - メールの形式を ASCII 形式に設定します。

    • [MHTML] - メールの形式を多言語 HTML に設定します。

    • [MIME] - メールの形式を Multipurpose Internet Mail Extensions (MIME) に設定します。
    [コメント (メッセージには含まれない)] | このダイレクト メール ジョブに関するコメントを必要に応じて入力します。

  4. ダイレクト メール キャンペーンを保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

ダイレクト メール キャンペーンがキャンペーン マネージャに追加されます。これで、ダイレクト メール キャンペーンのスケジュールを設定し、テストを実施できるようになります。

注

  • [メッセージ本文を含むファイル パスまたは URL] ボックスで、メッセージ本文の URL パスが有効かどうかを確認するには、まず、パスとファイルまたは URL を選択し、Ctrl キーを押しながら C キーを押して選択範囲をコピーします。次に、ブラウザを開き、Ctrl キーを押しながら V キーを押して選択範囲を [アドレス] ボックスに貼り付け、Enter キーを押します。ファイルまたは URL が正しければ、該当するページがブラウザに表示されます。

ダイレクト メール キャンペーンのスケジュールの設定については、「ダイレクト メール キャンペーンのスケジュールを設定する」を参照してください。ダイレクト メール キャンペーンのテストについては、「ダイレクト メール キャンペーンをテストする」を参照してください。

関連項目

キャンペーンを追加する

ユーザー レコード リストを管理する

リストをインポートおよびエクスポートする


ダイレクト メール メッセージをパーソナライズする

パーソナライズ用に設計された Active Server Page (ASP) を使うと、ユーザーに送る電子メール メッセージをパーソナライズできます。たとえば、文頭のあいさつでユーザーごとに名前を変えたメッセージを送信できます。また、ASP ページに特殊なテキストを追加して配信することもできます。パーソナライズを指定しない場合、ダイレクト メール メッセージは通常の HTML ページとして配信されます。

ダイレクト メール メッセージをパーソナライズするには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、パーソナライズするダイレクト メール キャンペーンを選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <ダイレクト メール項目> (ダイレクト メール ID: <番号>] 画面で、次の操作を行います。
    項目 | 操作
    [メッセージ本文を含むファイル パスまたは URL] | パーソナライズされたコンテンツが含まれている HTML ページの名前を入力します。
    [ユーザーごとにパーソナライズするダイレクト メール] このチェック ボックスをオンにすると、このダイレクト メール キャンペーンのパーソナライズが有効になります。

    このダイレクト メール キャンペーンのパーソナライズを無効にする場合は、このチェック ボックスをオフのままにします。
    [メールの形式] このメールの形式を選択します。

    選択できるオプションは次のとおりです。

    • [テキスト] - メールの形式を ASCII 形式に設定します。

    • [MHTML] - メールの形式を多言語 HTML に設定します。

    • [MIME] - メールの形式を Multipurpose Internet Mail Extensions (MIME) に設定します。

  4. パーソナライズしたダイレクト メール キャンペーンを保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

注

  • パーソナライズされたページを表示する方法については、「ダイレクト メール キャンペーンをテストする」を参照してください。

ダイレクト メール メッセージは、パーソナライズされて送信されます。

関連項目

ダイレクト メール キャンペーンを作成する

ダイレクト メール キャンペーンをテストする


ダイレクト メール キャンペーンにアタッチメントを追加する

[キャンペーン マネージャ - <顧客> - <キャンペーン> - <ダイレクト メール項目> (ダイレクト メール ID: <番号>)] 画面の [ダイレクト メールのプロパティ] セクションを使うと、ダイレクト メール キャンペーンにアタッチメントを追加できます。アタッチメントには、ダイレクト メール キャンペーンと共に送信する情報が含まれる任意のファイルを使用できます。

ダイレクト メール キャンペーンにアタッチメントを追加するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、アタッチメントを追加するダイレクト メール キャンペーンを選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <ダイレクト メール項目> (ダイレクト メール ID: <番号>] 画面で、次の操作を行います。
    項目 | 操作
    [アタッチメント] | メール メッセージと共に送信するアタッチメントのパスを入力します。

  4. アタッチメントをダイレクト メール キャンペーンに保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

アタッチメントがダイレクト メーラー ジョブに保存されます。

関連項目

ダイレクト メール キャンペーンを作成する


ダイレクト メール キャンペーンのスケジュールを設定する

ダイレクト メール キャンペーンの開始時刻と終了時刻を設定し、ダイレクト メールを送信する頻度を指定するには、[キャンペーン マネージャ] 画面の [メール スケジュール] セクションを使います。

ダイレクト メール キャンペーンのスケジュールを設定するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、スケジュールを設定するダイレクト メール キャンペーンを選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <ダイレクト メール項目> (ダイレクト メール ID: <番号>] 画面の [メール スケジュール] セクションで、次の操作を行います。
    項目 | 操作
    [開始日] | キャンペーンの開始日を入力するか、またはドロップダウン カレンダーから選択します。
    [終了日] キャンペーンの終了日を入力するか、またはドロップダウン カレンダーから選択します。

    ダイレクト メールの送信間隔が 1 回限りに設定されている場合、[終了日] ボックスは使用できません。
    [開始時刻] | ドロップダウン リストからキャンペーンの開始時刻を選択します。
    [メールの間隔] | ドロップダウン リストから、メールを送信する間隔を選択します。

    注

    • メールの送信間隔については、いくつかのオプションが用意されています。選択したオプションによっては、キャンペーンでのメール送信の繰り返しパターンを選択するボックスが表示されます。
  4. スケジュールをダイレクト メール キャンペーンに保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

スケジュールはダイレクト メール キャンペーンに保存されます。

注

  • スケジュールが設定されたダイレクト メーラー ジョブの実行中に SQL Server エージェントが停止すると、ダイレクト メーラー ジョブは実行を停止し、再起動できなくなります。スケジュールが設定されたジョブがこの状態で停止すると、ジョブの失敗を示すメッセージは表示されません。SQL Server エージェントを再起動した後、ダイレクト メーラー ジョブを再起動する必要があります。

関連項目

ダイレクト メール キャンペーンを作成する


ダイレクト メール キャンペーンをテストする

ダイレクト メール キャンペーンを大規模なメーリング リストに送信する前に、テスト リストに送信してテストすることができます。また、テスト メールを送信することで、パーソナライズされたページが正確かどうかを確認することもできます。

ダイレクト メール キャンペーンをテストするには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、テストするダイレクト メール キャンペーンを選択し、ツール バーの 開く をクリックします。

  3. [キャンペーン マネージャ - <顧客> - <キャンペーン> - <ダイレクト メール項目> (ダイレクト メール ID: <番号>] 画面の [テスト] セクションで、次の操作を行います。
    項目 | 操作
    [テスト リスト] | ダイレクト メール キャンペーンのテストに使用するメーリング リストを選択します。

  4. [テスト メールの送信] をクリックします。

選択したテスト リストに対して、ダイレクト メーラーがメールを送信します。

関連項目

ダイレクト メール キャンペーンを作成する


ダイレクト メール キャンペーン項目をコピーする

既存のダイレクト メール キャンペーン項目をコピーすると、その顧客とキャンペーンに対してダイレクト メール項目を簡単に追加できます。既存のダイレクト メール項目をテンプレートとして使用して、既存のダイレクト メール キャンペーンのプロパティを、新しいダイレクト メール キャンペーンの目標に合わせて変更できます。

ダイレクト メール キャンペーン項目をコピーするには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、コピーするダイレクト メール キャンペーンを選択し、ツール バーの コピー をクリックします。

  3. [ダイレクト メールのコピー] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [顧客の選択] | ダイレクト メール項目のコピー元となる顧客をドロップダウン リストから選択します。
    [キャンペーンの選択] | ダイレクト メール項目のコピー元となるキャンペーンをドロップダウン リストから選択します。

  4. [OK] をクリックします。

  5. [キャンペーン マネージャ - <顧客> - <キャンペーン> - 新規 (ダイレクト メール)] 画面の [ダイレクト メールのプロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [ダイレクト メール名] | 新しいダイレクト メール項目の名前を入力します。

  6. その他のプロパティを必要に応じて編集します。

  7. ダイレクト メール項目を保存して [キャンペーン マネージャ] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

キャンペーン マネージャのツリーで、指定した顧客とキャンペーンの下に新しいダイレクト メール項目が表示されます。


ユーザー レコード リストを管理する

リストの作成と管理を行うには、リスト マネージャを使います。リストには、汎用リストとメーリング リストの 2 種類があります。汎用リストは、レポート モジュール、セグメント ビューア モジュール、SQL Server テーブル、または ASCII 形式のテキスト ファイルからリスト マネージャにインポートされたリストです。汎用リストに電子メール アドレスの行が含まれていると、リスト マネージャはその汎用リストを自動的にメーリング リストに変換しようとします。メーリング リストは、リストから選ばれた受信者に対してダイレクト メーラーがメールの作成と送信を行うときに使われます。汎用リストに電子メール アドレスが含まれておらず、ユーザー リストの要件が満たされていると、その汎用リストはユーザー リストとしてインポートされます。ユーザー リストの要件の詳細については、Commerce Server 2000 のヘルプの「リストマネージャ オブジェクト」を参照してください。

リスト マネージャにインポートされたリストを使ってダイレクト メーラー ジョブを実行すると、対象となるユーザーをより的確に指定できます。たとえば、ユーザーの特性や過去の操作を調べるレポートを実行し、そのユーザーを広告や商品の対象とするダイレクト メール キャンペーンを作成できます。

個々の受信者は、キャンペーン レベルとサイト レベルのどちらの脱退リストに配置されるのかを要求することができます。特定のキャンペーン項目の一部として作成されたダイレクト メール メッセージを受信しないことを要求した受信者は、キャンペーン レベルの脱退リストに配置されます。キャンペーン レベルの脱退リストの名前は、"Opt Out <キャンペーン項目 ID>" になります。脱退リストへの配置を要求したユーザーは、サイトのダイレクト メール キャンペーンで作成されたダイレクト メール メッセージを一切受信しなくなります。[リスト マネージャ] 画面で、サイト レベルの脱退リストの名前は "Opt Out" と表示されます。脱退リストの詳細については、「脱退リスト」を参照してください。

リストを作成するには、Microsoft SQL Server (SQL テーブルを作成する場合)、メモ帳 (ASCII 形式のテキスト ファイルを作成する場合)、Microsoft Excel (スプレッドシートを作成する場合)、Microsoft Outlook (メッセージ、予定、連絡先などの Outlook アイテムが含まれる .pst ファイルを作成する場合) などのアプリケーションで作成したリストをリスト マネージャにインポートします。

また、リスト マネージャを使って、ファイルまたは SQL Server データベースへのリストのエクスポート、リストの追加や削除、リストのコピー、リストの抽出、およびリスト自体の削除を行うこともできます。

ここでは、次のトピックについて説明します。

  • リストをインポートおよびエクスポートする

  • エクスポートしたリストを表示する

  • リストを追加および削除する

  • メーリング リストをコピーする

  • メーリング リストを抽出する


リストをインポートおよびエクスポートする

リストを作成するには、Microsoft SQL Server (SQL テーブルを作成する場合)、メモ帳 (ASCII 形式のテキスト ファイルを作成する場合)、Microsoft Excel (スプレッドシートを作成する場合)、Microsoft Outlook (メッセージ、予定、連絡先などの Outlook アイテムが含まれる .pst ファイルを作成する場合) などのアプリケーションで作成したリストをリスト マネージャにインポートします。また、分析レポートやセグメント ビューア リストをリスト マネージャにインポートすることもできます。これらのリストを使ってダイレクト メーラー ジョブを実行すると、メールを送る対象となるユーザーをより的確に特定できます。

また、リスト マネージャからファイルまたは SQL Server データベースにリストをエクスポートし、そのリストのメンバーを検索したり表示することもできます。

注

  • 次に示すようなヘッダー行のある汎用リストは、リスト マネージャでインポートできません。
    Productid | ProductName | Unit
    1 | Socks | 100
    2 | Shirts | 20

ヘッダー行のある汎用リストを使う場合は、BULK INSERT コマンドなどの SQL Server のインポート ツールを使ってリストを SQL Server にインポートしてから、リスト マネージャにインポートします。SQL Server のインポート ツールの詳細については、SQL Server Books Online を参照してください。

リストをインポートするには

リストをエクスポートするには

リストをインポートするには

  1. [キャンペーン] の [リスト マネージャ] をクリックします。

  2. [リスト マネージャ] 画面で、ツール バーの リストのインポート をクリックします。

  3. [リストのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [リストの種類] リストの種類を選択します。

    選択できるオプションは、[静的] と [動的] です。

    • フラット テキスト ファイルの静的リストをインポートするには、[静的] をクリックします。

    • 動的リスト (SQL Server データベースからのリストなど、変化するリスト) をインポートするには、[動的] を選択します。
    [コピー先のリスト名を入力] | インポートするリストの名前を入力します。
    [リストのソース] ドロップダウン リストからリストのソースの種類を選択します。

    選択できるオプションは、[ファイルから] または [SQL データベースから] です。

    • 静的リストの場合は [ファイルから] を選択します。

    • [SQL データベースから] を選択した場合は、次の操作を行います。
      1. [接続文字列] ボックスに、データベース接続文字列を入力します。この文字列で、データベースの場所と接続方法を定義します。

      2. [SQL クエリ] ボックスに、目的の情報を取得するための SQL クエリを入力します。

        例 :SQL クエリ :

        SELECT u_email_address AS rcp_email FROM UserObject WHERE d_date_registered >= '03/01/2000'

        リスト マネージャのフィールド名の要件については、「メーリング リストを作成する」を参照してください。

      注

    • データベース プロパティおよび SQL クエリの情報については、システム管理者に問い合わせてください。SQL クエリの記述方法については、SQL Server Books Onlineの「クエリ - SQL Server,基礎」を参照してください。
    [ファイル名] | インポートするリストのパス、ファイル名、および拡張子を入力します。

  4. [OK] をクリックします。

新しいリストがリスト マネージャに表示されます。これで、このリストをダイレクト メール キャンペーンで使用できるようになりました。

リストをエクスポートするには

  1. [キャンペーン] の [リスト マネージャ] をクリックします。

  2. [リスト マネージャ] 画面で、エクスポートするリストを選択し、ツール バーの リストのエクスポート をクリックします。

  3. [リストのエクスポート] ダイアログ ボックスで、次の操作を行います。
    項目 操作
    [リストのエクスポート先] ドロップダウン リストの [ファイル] または [SQL データベース] をクリックします。
    • リストをファイルにエクスポートするには、[ファイル] をクリックします。

    • リストを SQL Server データベースにエクスポートするには、[SQL データベース] をクリックします。

    [ファイル] をクリックした場合は、リストのエクスポート先となるファイルのパスを [ファイル名] ボックスに入力します。

    [SQL データベース] をクリックした場合は、SQL Server データベースの接続文字列名を [接続文字列] ボックスに入力します。[テーブル名] ボックスに、リストのエクスポート先となるテーブルの名前を入力します。

    注

    • データベース プロパティの情報については、システム管理者に問い合わせてください。

  4. [OK] をクリックします。

選択したエクスポート先にリストがエクスポートされます。

関連項目

セグメントのデータをリスト マネージャにエクスポートする

静的レポートをエクスポートする

動的レポートをエクスポートする

ユーザー プロファイルの一覧をインポートする


エクスポートしたリストを表示する

エクスポートしたメーリング リストは、メンバーを検索したり表示することができます。個別の電子メール アドレスを検索したり、特定のリストのすべてのアドレスを表示することもできます。

SQL Server テーブルにエクスポートしたリストを表示するには

  1. [スタート] メニューから SQL Enterprise Manager を開きます。まず、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  2. 左側のペインで、[Microsoft SQL Servers]、[SQL Server グループ]、[(サーバー名)]、[データベース] の順に展開し、リストが含まれているテーブルが所属するデータベースを展開します。

  3. 詳細ペインで、テーブルをマウスの右ボタンでクリックし、[テーブルを開く] をポイントします。次に、[全行を返す] をクリックして、テーブルのすべてのデータを表示します。

SQL Server テーブルを検索する方法については、SQL Server Enterprise Manager の Books Online の「検索基準の指定」を参照してください。

注

  • カンマ区切り (CSV) ファイルにエクスポートしたリストでレコードを並べ替えたり検索したりするには、並べ替え機能や検索機能を持つアプリケーションでファイルを開いてください。

関連項目

ダイレクト メール キャンペーン項目を追加する

静的レポートをエクスポートする

静的レポートを表示する


リストを追加および削除する

リスト マネージャの複数のリストを組み合わせて、1 つの新しいリストにまとめることができます。また、既にリスト マネージャの複数のリストを 1 つのリストにまとめてある場合に、その中から 1 つのリストを削除することもできます。リスト マネージャには、複数のリストを管理する機能が用意されています。

リストをほかのリストに追加するには

  1. [キャンペーン] の [リスト マネージャ] をクリックします。

  2. [リスト マネージャ] 画面で、ほかのリストと組み合わせるリストを選択し、ツール バーの リストの追加/削除 をクリックします。

  3. [リストの追加/削除] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [操作] | ドロップダウン リストの [追加先] をクリックします。
    [対象リスト] | 元のリストの追加先となるリストを選択します。
    [新しいリストの名前] | 新しいリストの名前を入力します。
    [説明] | 新しいリストの説明を入力します。

  4. [OK] をクリックします。

新しいリストがリスト マネージャに表示されます。

リストから 1 つのリストを削除するには

  1. [キャンペーン] の [リスト マネージャ] をクリックします。

  2. [リスト マネージャ] 画面で、情報を削除するリストを選択し、ツール バーの リストの追加/削除 をクリックします。

  3. [リストの追加/削除] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [操作] | ドロップダウン リストの [削除元] をクリックします。
    [対象リスト] | 情報を削除するリストを選択します。
    [新しいリストの名前] | 新しいリストの名前を入力します。
    [説明] | 新しいリストの説明を入力します。

  4. [OK] をクリックします。

削除されたリストを除いた新しいリストがリスト マネージャに表示されます。

関連項目

ユーザー レコード リストを管理する


メーリング リストをコピーする

既存のメーリング リストがある場合は、それを使って新しいメーリング リストを作成できます。リスト マネージャで、既存のメーリング リストをコピーし、簡単に変更することができます。たとえば、コピーしたリストを既存のリストと組み合わせて、大規模なメーリング リストを作成できます。

メーリング リストをコピーするには

  1. [キャンペーン] の [リスト マネージャ] をクリックします。

  2. [リスト マネージャ] 画面で、コピーするリストを選択し、ツール バーの リストのコピー をクリックします。

  3. [リストのコピー] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [コピーする既存のリストの選択] | メーリング リストのコピー先となる既存のリストを選択します。
    [コピー先のリスト名を入力] | メーリング リストのコピー先となる新しいリストの名前を入力します。

  4. [OK] をクリックします。

リストがコピーされ、コピーされたリストを変更できるようになります。


メーリング リストを抽出する

リスト マネージャで、重複していたり空白になっている電子メール アドレスを汎用リストから削除し、メールの送信に必要なフィールドだけを残すことができます。削除後のリストには、一意の電子メール アドレスの数がより正確に反映されるので、リストがさらに有用になり、実行時のパフォーマンスも向上します。

メーリング リストを抽出するには

  1. [キャンペーン] の [リスト マネージャ] をクリックします。

  2. [リスト マネージャ] 画面で、抽出するリストを選択し、ツール バーの メーリング リストの抽出 をクリックします。

  3. [メーリング リストの抽出] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [コピー先のリスト名を入力] | メーリング リストの抽出先となる新しいリストの名前を入力します。
    [説明] | 抽出するリストの説明を入力します。

  4. [OK] をクリックします。

一意の電子メール アドレスを含むリストが抽出されます。


キャンペーンを分析する

キャンペーン マネージャ モジュールを使ってキャンペーン レポートを実行すると、価格、マーケティング、広告、およびビジネスのその他の側面に関する決断を行うときの参考になります。また、キャンペーンを分析すれば、最も効果的なキャンペーンを推進できるようになります。

ここでは、次のトピックについて説明します。

  • キャンペーン レポートを実行する

  • レポートをリスト マネージャにエクスポートする


キャンペーン レポートを実行する

キャンペーン データが含まれるインポート ログ ファイルをデータ ウェアハウスにインポートすると、レポートを実行して広告キャンペーンの効果を分析できます。ログ ファイルのインポートは、毎日、毎週、または毎月実行できます。サイトのログ ファイルをインポートするスケジュールについては、システム管理者に問い合わせてください。

キャンペーン マネージャ モジュールを使うと、レポートを一覧表示できます。レポートを一覧表示すると、キャンペーン マネージャ モジュールの上にある分析レポート モジュールが表示されます。分析レポート モジュールでは、動的レポートと静的レポートのどちらでも実行できます。特に指定しない限り、分析レポート モジュールを最初に開くと、"すべてのレポート" を検索するように設定されます。検索条件を詳細に指定すれば、一覧に表示されるレポートを限定することもできます。広告のレポートについては、「広告のレポート」を参照してください。

キャンペーン レポートを検索するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの キャンペーン レポートの表示 をクリックし、レポートを一覧表示します。

    注

    • レポートの一覧の全体を表示するには、一覧の下にあるページ スクロール用のボタンを使います。
  3. [レポート] 画面で、ツール バーの 分析レポートの検索 をクリックします。

  4. [検索] ウィンドウで、次の操作を行います。
    項目 操作
    [検索条件] ドロップダウン リストから検索条件を選択します。

    [検索条件] ボックスの下に表示されるボックスは、選択した条件の種類によって異なります。

    [検索条件] ボックスの下のボックスで、選択した条件に対応する特定の値 (名前、カテゴリ、作成者、種類など) を入力するか、または一覧から選択します。

  5. [検索開始] をクリックします。

検索条件に一致するレポートの一覧が、[検索] ウィンドウの下部に表示されます。

キャンペーン レポートを実行するには

  • [レポート] の利用可能なレポートの一覧から、実行するレポートを選択し、ツール バーの <レポート名> の実行 をクリックします。

動的レポートの実行中は、分析レポート モジュールのウィンドウの手前に Internet Explorer の新しいウィンドウが表示されます。レポートが実行されている間でも、このウィンドウを最小化すれば、Commerce Server ビジネス デスクで作業を続行できます。

静的レポートの実行中は、分析レポート モジュールが画面にそのまま表示され、作業を続行できます。レポートの実行については、「レポートを実行する」を参照してください。

レポートの状態を調べるには

  • [分析] の [完成したレポート] をクリックします。

完成したレポートの一覧が [完成したレポート] 画面に表示されます。レポートの状態は、ここで調べることができます。

関連項目

レポートを実行する

レポートを検索する


レポートをリスト マネージャにエクスポートする

静的な分析レポートをリスト マネージャ モジュールにエクスポートし、エクスポートされたリストを使ってダイレクト メーラー ジョブを実行できます。サイトの利用状況を分析して登録済みユーザーのリストを生成すると、キャンペーン マネージャ モジュールを使って、ダイレクト メールによる広告の対象に指定できます。たとえば、サイクリングに関する新しい書籍の広告を掲載するとします。レポート モジュールを使うと、サイクリングを好む登録済みユーザーのリストを生成できます。そうすれば、この登録済みユーザーのリストを広告の対象に指定できるようになります。

静的レポートを検索するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの キャンペーン レポートの表示 をクリックしてレポートを一覧表示します。

  3. [レポート] 画面で、ツール バーの 分析レポートの検索 をクリックします。

  4. [検索] ウィンドウで、次の操作を行います。
    項目 | 操作
    [検索条件] | ドロップダウン リストの [種類] をクリックします。
    [種類] | ドロップダウン リストの [静的] をクリックします。

  5. [検索開始] をクリックします。

静的レポートの一覧が [検索] ウィンドウに表示されます。

レポートをリスト マネージャにエクスポートするには

  • [レポート] 画面で、エクスポートするレポートを選択し、ツール バーの <レポート名> のエクスポート をクリックします。

レポートがリスト マネージャにエクスポートされます。

関連項目

レポートを検索する

ユーザー レコード リストを管理する


キャンペーンを削除および復元する

不要になった顧客、キャンペーン、またはキャンペーン項目は、キャンペーン マネージャ モジュールから削除できます。キャンペーン マネージャは、顧客、キャンペーン、キャンペーン項目の順で階層化されています。顧客、キャンペーン、またはキャンペーン項目を削除すると、その下の階層にある項目も削除されます。たとえば、顧客を削除すると、その顧客のキャンペーンとキャンペーン項目も削除されます。キャンペーン項目を復元するときは、その上の階層も復元する必要があります。たとえば、キャンペーン項目を復元する場合は、その上の階層のキャンペーンと顧客のレコードも復元する必要があります。

顧客を削除すると、キャンペーンとキャンペーン項目も同時にアーカイブされます。削除した顧客、キャンペーン、またはキャンペーン項目は、キャンペーン マネージャを使って復元できます。

ここでは、次のトピックについて説明します。

  • 顧客を削除および復元する

  • キャンペーンを削除および復元する

  • キャンペーン項目を削除および復元する


顧客を削除および復元する

顧客はキャンペーン マネージャ モジュールを使って削除できます。顧客を削除すると、キャンペーンとキャンペーン項目も同時にアーカイブされます。削除した顧客は、キャンペーン マネージャで復元できます。

顧客を削除するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、削除する顧客を選択し、ツール バーの キャンペーン項目の削除 をクリックします。

  3. [削除しますか?] ダイアログ ボックスの [はい] をクリックします。

顧客はキャンペーン マネージャから削除され、キャンペーンとキャンペーン項目も同時にアーカイブされます。

顧客を復元するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの キャンペーン項目の検索 をクリックします。

  3. [検索] ウィンドウで、次の操作を行います。
    項目 | 操作
    [顧客] 復元する顧客の名前を入力します。

    注

    • 文字列を入力して検索対象を絞り込むことができます。たとえば、「ar」と入力すると、Arbor Shoes、School of Fine Art など、名前に "ar" が含まれる顧客だけが取得されます。
    [削除済み] | ドロップダウン リストの [両方] をクリックします。

  4. [検索開始] をクリックします。

[フィルタ ビュー] ボックスの一覧に顧客が表示されます。状態は "削除済み" と表示されます。

  5. [フィルタ ビュー] ボックスの一覧から顧客を選択し、ツール バーの キャンペーン項目の復元 をクリックします。

  6. [復元しますか?] ダイアログ ボックスの [はい] をクリックします。

顧客の状態が "アクティブ" に戻ります。

  7. [リセット] をクリックして [フィルタ ビュー] ボックスを元の状態に戻し、[キャンペーン項目の検索] をクリックします。

顧客が復元され、キャンペーン マネージャの [フィルタ ビュー] ボックスの一覧に表示されます。

関連項目

キャンペーンについて

キャンペーンを削除および復元する

キャンペーン項目を削除および復元する

キャンペーンを検索する


キャンペーンを削除および復元する

キャンペーンはキャンペーン マネージャ モジュールを使って削除できます。キャンペーンを削除すると、キャンペーン項目も同時にアーカイブされます。削除したキャンペーンは、キャンペーン マネージャで復元できます。

キャンペーンを削除するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、削除するキャンペーンを選択し、ツール バーの キャンペーン項目の削除 をクリックします。

  3. [削除しますか?] ダイアログ ボックスの [はい] をクリックします。

キャンペーンはキャンペーン マネージャから削除され、キャンペーン項目も同時にアーカイブされます。

キャンペーンを復元するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの キャンペーン項目の検索 をクリックします。

  3. [検索] ウィンドウで、次の操作を行います。
    項目 | 操作
    [顧客] | 復元するキャンペーンの顧客名を入力します。
    [削除済み] | ドロップダウン リストの [両方] をクリックします。
    [開始日] | キャンペーンの作成日を入力するか、またはドロップダウン カレンダーから選択します。
    [終了日] | キャンペーンの削除日を入力するか、またはドロップダウン カレンダーから選択します。

  4. [検索開始] をクリックします。

[フィルタ ビュー] ボックスの一覧にキャンペーンが表示されます。状態は "削除済み" と表示されます。

  5. [フィルタ ビュー] ボックスの一覧からキャンペーンを選択し、ツール バーの キャンペーン項目の復元 をクリックして、キャンペーンの状態をアクティブに復元します。

  6. [復元しますか?] ダイアログ ボックスの [はい] をクリックします。

キャンペーンの状態が "アクティブ" に変わります。

  7. [リセット] をクリックして [フィルタ ビュー] ボックスを元の状態に戻し、[キャンペーン項目の検索] をクリックします。

キャンペーンが復元され、キャンペーン マネージャの [フィルタ ビュー] ボックスの一覧に表示されます。

関連項目

キャンペーンについて

顧客を削除および復元する

キャンペーン項目を削除および復元する

キャンペーンを検索する


キャンペーン項目を削除および復元する

キャンペーン項目はキャンペーン マネージャ モジュールを使って削除できます。キャンペーン項目を削除すると、アーカイブされます。削除したキャンペーン項目は、キャンペーン マネージャで復元できます。

キャンペーン項目を削除するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、削除するキャンペーン項目を選択し、ツール バーの キャンペーン項目の削除 をクリックします。

  3. [削除しますか?] ダイアログ ボックスの [はい] をクリックします。

キャンペーン項目がキャンペーン マネージャから削除されます。

キャンペーン項目を復元するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの キャンペーン項目の検索 をクリックします。

  3. [検索] ウィンドウで、次の操作を行います。
    項目 | 操作
    [項目の種類] | 復元するキャンペーン項目の種類を選択します。
    [顧客] | 復元するキャンペーン項目の顧客名を入力します。
    [削除済み] | ドロップダウン リストの [両方] をクリックします。
    [開始日] | キャンペーン項目の作成日を入力するか、またはドロップダウン カレンダーから選択します。
    [終了日] | キャンペーン項目の削除日を入力するか、またはドロップダウン カレンダーから選択します。

  4. [検索開始] をクリックします。

[フィルタ ビュー] ボックスの一覧にキャンペーン項目が表示されます。状態は "削除済み" と表示されます。

  5. [フィルタ ビュー] ボックスの一覧からキャンペーンを選択し、ツール バーの キャンペーン項目の復元 をクリックして、キャンペーン項目の状態をアクティブに復元します。

  6. [復元しますか?] ダイアログ ボックスの [はい] をクリックします。

キャンペーン項目の状態が "アクティブ" に変わります。

  7. [リセット] をクリックして [フィルタ ビュー] ボックスを元の状態に戻し、[キャンペーン項目の検索] をクリックします。

キャンペーン項目が復元され、キャンペーン マネージャの [フィルタ ビュー] ボックスの一覧に表示されます。

関連項目

キャンペーンについて

顧客を削除および復元する

キャンペーンを削除および復元する

キャンペーンを検索する


キャンペーンを検索する

キャンペーン マネージャのツリー構造は、大規模になる場合があります。キャンペーン マネージャ モジュールの [検索] ウィンドウを使うと、フィルタ条件を使ってキャンペーンを検索できます。フィルタ条件を使うと、キャンペーン マネージャのツリーに表示される項目数が減り、目的のキャンペーンを探したり管理することが簡単になります。

キャンペーンは、キャンペーン項目、顧客名、または状態 (アクティブまたは非アクティブ) に基づいて検索できます。また、削除したキャンペーンを検索することもできます。削除したキャンペーンは、キャンペーン項目と共にアーカイブされているため、必要に応じて復元できます。

キャンペーン項目を検索するには

削除した割引キャンペーン項目を検索するには

キャンペーン項目を検索するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの キャンペーン項目の検索 をクリックします。

  3. [検索] ウィンドウで、次の操作を行います。
    項目 | 操作
    [項目の種類] | ドロップダウン リストからキャンペーン項目の種類を選択するか、または [すべて] をクリックしてすべてのキャンペーン項目を検索対象とします。
    [顧客] | 検索するキャンペーンの顧客名を入力します。
    [状態] | ドロップダウン リストの [アクティブ] または [すべて] をクリックします。
    [削除済み] | ドロップダウン リストの [いいえ] または [両方] をクリックします。
    [開始日] | キャンペーンの開始日を入力するか、またはドロップダウン カレンダーから選択します。
    [終了日] | キャンペーンの終了日または終了予定日を入力するか、またはドロップダウン カレンダーから選択します。

  4. [検索開始] をクリックします。

検索条件に一致するキャンペーン項目が [フィルタ ビュー] ボックスに表示されます。

注

  • 既定の検索条件に戻すには、[リセット] をクリックします。

削除した割引キャンペーン項目を検索するには

  1. [キャンペーン] の [キャンペーン マネージャ] をクリックします。

  2. [キャンペーン マネージャ] 画面で、ツール バーの キャンペーン項目の検索 をクリックします。

  3. [検索] ウィンドウで、次の操作を行います。
    項目 | 操作
    [項目の種類] | ドロップダウン リストの [割引] をクリックします。
    [顧客] | 割引キャンペーンの顧客名を入力します。
    [状態] | ドロップダウン リストの [すべて] をクリックします。
    [削除済み] | ドロップダウン リストの [両方] をクリックします。
    [開始日] | キャンペーンの開始日を入力するか、またはドロップダウン カレンダーから選択します。
    [終了日] | キャンペーンの終了日または終了予定日を入力するか、またはドロップダウン カレンダーから選択します。

  4. [検索開始] をクリックします。

検索条件に一致するキャンペーン項目が [フィルタ ビュー] ボックスに表示されます。

注

  • 既定の検索条件に戻すには、[リセット] をクリックします。

関連項目

キャンペーンについて

キャンペーンを削除および復元する


ビジネス デスク カタログ

カタログ モジュールを使うと、製品のカタログを作成したり、製品データを追加および更新したりすることができます。商品のカタログを複数のサプライアなどの異なるソースから集める場合でも、商品データを格納するデータベースに関する専門知識は必要ありません。

ここでは、次のトピックについて説明します。

  • カタログ管理のワークフロー カタログを作成および管理するワークフローを示します。

  • カタログについて カタログのコンポーネントについて説明し、カタログ スキーマを作成する手順の概要を示します。

  • カタログをインポートする カンマ区切り値 (CSV) 形式のカタログ ファイルまたは拡張マークアップ言語 (XML) 形式のカタログ ファイルをインポートする方法について説明します。

  • カタログ スキーマを作成する カタログのカテゴリ定義、商品定義、およびプロパティ定義を定義する方法について説明します。

  • カタログを作成する カタログとカタログ セットの作成方法、カタログに項目を追加する方法、およびカタログの商品に価格を設定する方法について説明します。

  • 商品の価格を設定する カタログの商品価格を商品レベルおよび商品バリエーション レベルで設定する方法について、および商品のグループの価格を設定する方法について説明します。また、カスタム カタログで価格を設定する方法についても説明します。

  • 商品価格に割引を適用する 商品価格に割引を適用するいくつかの方法について説明します。

  • カテゴリ階層を作成する カタログ内にカテゴリ階層を作成する方法について説明します。

  • カテゴリと商品の関連付けを作成する カタログに関連付けを作成する方法について説明します。

  • カタログを更新および公開する カタログを Web サイトで公開する方法、およびキャッシュとフルテキスト インデックスをすべて更新する方法について説明します。

  • カタログを取引先に送信する カタログを取引先に送信する方法について説明します。これを行うには、企業と取引先の両方のコンピュータ システムに Microsoft BizTalk Server がインストールされている必要があります。

  • カタログをエクスポートする カタログを共有フォルダにエクスポートする方法について説明します。

  • カタログ スキーマを管理する プロパティ定義、商品定義、およびカテゴリ定義を変更したり削除したりする方法について説明します。

  • 商品、カテゴリ、カタログ、およびカタログ セットを管理する 商品、カテゴリ、カタログ、およびカタログ セットを変更したり削除したりする方法について説明します。

  • カテゴリと商品の関連付けを管理する カテゴリと商品の関連付けを編集したり削除したりする方法について説明します。


カタログ管理のワークフロー

次の図は、カタログを作成するサンプルのシナリオを示します。この図には、XML 形式のカタログ ファイルや CSV 形式のカタログ ファイルをインポートするか、またはカタログ スキーマを作成して、カタログを作成する方法が示されています。また、カタログ スキーマを作成した後で、カテゴリを追加し、商品を追加し、その商品に商品バリエーションを追加する方法も示されています。1 つまたは複数のカタログを作成したら、カタログ セットを作成します。最後に、カタログに変更を加えてから Web サイトで公開します。

XML または CSV
カタログのインポート
カタログ スキーマの作成
カタログの作成
プロパティ定義
商品定義
カテゴリ定義
商品の価格設定
カスタム カタログの価格設定
商品の価格設定
商品バリエーション レベルでの価格設定
新しいカタログの作成
カタログ セットの作成
カタログへのカテゴリの追加
カタログへの商品の追加
商品への商品バリエーションの追加
関連付けと階層
カテゴリ階層の作成
カテゴリと商品の関連付けの作成
カタログの更新と発行


カタログについて

カタログは、販売する商品を系統立てる手段です。カタログを簡単に作成して整理できるように、ビジネス デスクは各種のカタログ項目に必要なプロパティの記述を保持しています。この記述をカタログ スキーマと呼びます。スキーマには、カタログで許可されるすべての種類のカテゴリ、商品、およびプロパティが列挙されます。

Commerce Server 2000 では、カタログを使って、サイトで公開するデータベースの商品データを整理および管理したり、商品の対象ユーザーを特定します。

Web サイトの管理にカタログを使用する

カタログに商品データを取り込む

BizTalk Server を使ってカタログを交換する

カタログの構造

カタログの構成 : 階層と関連付け

カタログの一意識別子

基本カタログ、カスタム カタログ、およびカタログ セット

商品価格の設定方法

カタログによる売り上げを分析する

Web サイトの管理にカタログを使用する

カタログを保守、分析、および拡張するには、Commerce Server ビジネス デスクのカタログ モジュールを使います。たとえば、サイトの運用中に、ビジネス デスクからレポートを実行して売れ行きの良くない商品を特定し、これらの商品の売り上げを拡大するための割引キャンペーンを作成できます。

ビジネス デスクを使うと、次のようなことができます。

  • ほかのデータ ソースからカタログをインポートする   拡張マークアップ言語 (XML) 形式またはカンマ区切り値 (CSV) 形式のカタログを外部ソースからインポートできます。たとえば、ほかのデータベースにカタログがある場合は、それらを Commerce Server データベースにインポートし、ビジネス デスクを使って管理できます。

    カタログを XML 形式または CSV 形式に変換するには、既存のデータベース管理システムを使って XML 形式または CSV 形式でカタログを保存するか、カタログを変換する Microsoft Visual Basic スクリプトの作成をサイト開発者に依頼します。

    カタログをインポートするには、システム管理者があらかじめ Commerce Server 上に共有フォルダを作成しておく必要があります。Windows エクスプローラを使ってカタログを共有フォルダにコピーしてから、ビジネス デスクを使って Commerce Server データベースにインポートします。

  • カタログをエクスポートするカタログを XML 形式でエクスポートできます。たとえば、商品を卸で販売している場合、小売業者にカタログを提示するには、カタログをエクスポートします。また、在庫管理システムや価格設定システムなどのアプリケーションに、カタログをエクスポートすることもできます。

    カタログをエクスポートするには、システム管理者が Commerce Server 上にあらかじめ共有フォルダを作成しておくか、またはサーバー上でアクセスできるディレクトリの名前を知っておく必要があります。次に、ビジネス デスクを使って、カタログを共有フォルダまたはアクセスできるディレクトリにエクスポートします。

    カタログを定期的に Commerce Server にインポートまたはエクスポートする場合は、サイト開発者がその機能を提供できます。

  • 商品に割引を適用する 割引は、カテゴリのすべての商品に適用することも、指定した条件を満たす特定の商品に適用することもできます。たとえば、Product.price = 20.00 であれば、ユーザーがこの商品をショッピング バスケットに追加したときに、商品の価格に 10% の割引が適用されます。商品への割引の適用については、「キャンペーン : 広告、割引、および ダイレクト メール」を参照してください。割引キャンペーンを追加する方法については、「割引キャンペーン項目を追加する」を参照してください。

  • カタログの商品を編集する 商品名、価格、説明などを変更できます。

  • 商品情報をリアルタイムで更新する 商品価格などの商品情報を更新し、変更を Web サイトで公開できます。たとえば、買物客がバスケットに商品を追加し、その支払いの前にサイトが更新された場合は、バスケットに新しい価格が適用されます。買物客がバスケットを保存し、価格の更新後にバスケットに戻ると、新しい価格が表示されます。

  • 売れている商品を特定する Commerce Server のレポートを実行すると、最もよく売れている商品を数量または売上額に基づいて特定できます。また、最もよく売れているカテゴリも、数量または売上額に基づいて特定できます。分析結果を利用して、売れ行きのよくない商品に割引を適用したり、よく売れている商品の付属品の販売を促進することもできます。さらに、サイト開発者は、アップセルやインテリジェントなクロスセルなどの関連セルをサポートするようにサイトをカスタマイズできます。

  • 商品を検索する プロパティによる検索やフリー テキスト検索を実行し、商品を簡単に検索できます。

カタログに商品データを取り込む

ビジネス デスクのカタログ エディタ モジュールを使って、商品データを手動で入力することも、XML ファイルや CSV ファイルからデータをインポートすることもできます。たとえば、既にほかのデータベースにカタログがある場合は、システム管理者に XML ファイルとしてエクスポートするよう依頼し、カタログ エディタ モジュールを使って Commerce Server データベースにインポートできます。

BizTalk Server を使ってカタログを交換する

BizTalk Server 2000 は、企業と取引先 (製造元) の間でビジネス文書を送信するためのゲートウェイとして機能します。企業と取引先がすべて BizTalk Server を使用すると、カタログ、注文、文書、およびその他の電子書式を交換できます。たとえば、製造元から送られてきたカタログを、自社のカタログと共に Web サイトに掲載できます。ユーザーが Web サイトで注文を入力すると、注文が製造元に直接送られます。

各取引先は、1 つまたは複数の商品カタログを送信できます。サイトの設定によって、これらのカタログを Web サイトに 1 つのカタログとして表示することも、個別のカタログとして表示することもできます。BizTalk Server の使い方の詳細については、「BizTalk Server を使う」を参照してください。

カタログの構造

Commerce Server のカタログは、2 つの主要な要素で構成されます。

  • カタログ スキーマ サイトのカテゴリと商品を記述したものです。カタログ スキーマは、サイトのすべてのカタログに適用できます。

  • カタログ   カタログ スキーマの単一のインスタンスで、データが格納されます。

次の表は、カタログ スキーマの例 Clothes と、Sports Clothes カタログのデータが格納された Clothes カタログ スキーマの単一のインスタンスを示します。

カタログ スキーマ | カタログ :Sports Clothes
カテゴリ定義 :Department カテゴリ プロパティ Name Description Image_filename Image_width Image_height | カテゴリ :Sport Shirts Department Sport Shirts Department 2000 catalog of sports shirts Sports_shirts.gif 100 200
商品定義 :Shirts 商品プロパティ : Name Manufacturer Price 商品バリエーション プロパティ : Size Color SKU | 商品 :Ace Soccer Shirt Ace Soccer Shirt Ace Shirts $20.00 M Green 23354

カタログ スキーマ

カタログ スキーマは、特定の種類のカタログにおけるカテゴリと商品の特性を記述したものです。たとえば、Sports Clothes カタログのカタログ スキーマには、Shirt、Pants、Shoes などの商品定義が含まれることが考えられます。カタログ スキーマを作成するには、ビジネス デスクのカタログ デザイナ モジュールを使います。

カタログ スキーマは、カテゴリ定義、商品定義、およびプロパティ定義で構成されます。カテゴリ定義と商品定義は、プロパティ定義を使って作成されます。次の図は、カタログ スキーマの例の一部を示します。

Name (テキスト)
Manufacturer (テキスト)
Price (通貨)
カテゴリ定義
Color (複数選択) Description (テキスト) Image_filename (ファイル名) Image_width (数値) Image_height (数値) Manufacture (テキスト)
Name (テキスト)
Price (通貨)
Size (複数選択)
SKU (数値)
プロパティ
商品定義
Color (複数選択) Description (テキスト) Image_filename (ファイル名) Image_width (数値) Image_height (数値) Manufacture (テキスト)
Name (テキスト)
Price (通貨)
Size (複数選択)
SKU (数値)
Name (テキスト) Description (テキスト) Image_file name (ファイル名) Image_width (数値) Image_height (数値)
Variant プロパティ
Size (複数選択)
Color (複数選択)
SKU (数値)
カタログ スキーマ

カテゴリ定義は、カタログの各カテゴリの特性を記述したものです。これらの特性は、"カテゴリ プロパティ" と呼ばれます。カテゴリ定義を作成するには、カテゴリ定義にカテゴリ プロパティを割り当てます。たとえば、Department カテゴリ定義に Name、Description、Image File Name、Image Height、Image Width などのカテゴリ プロパティを割り当てます。Department カテゴリ定義に基づいてカテゴリを作成する場合は、カテゴリ プロパティの値を入力します。たとえば、Name カテゴリ プロパティに "Sport Shirts Department" と指定します。

商品定義は、特定の商品の特性を記述したものです。これらの特性は、"商品プロパティ" と呼ばれます。商品定義を作成するには、商品定義に商品プロパティを割り当てます。たとえば、Shirt という商品定義を作成し、Name、Manufacturer、および Price という 3 つの商品プロパティを割り当てます。Shirt 商品定義に基づいて商品を作成する場合は、商品プロパティの値を入力します。たとえば、Name 商品プロパティは "Ace Soccer Shirt" とします。

商品プロパティとカテゴリ プロパティは、いずれもプロパティ定義に基づいています。プロパティ定義は、プロパティに関する情報を記述したものです。プロパティのデータ型 (整数、テキスト、10 進など)、プロパティの名前、およびプロパティの最小値を記述します。たとえば、Small、Medium、Large のいずれかの値を取る Shirt_Size という名前のプロパティを作成したり、最小値が 10 で最大値が 120 である Length という名前のプロパティを作成することができます。

カタログ スキーマは変更できます。カタログにデータを登録した後でも、カタログ スキーマは編集できます。たとえば、プロパティ定義を追加または削除したり、プロパティ定義の名前を変更したり、プロパティのデータ型を数値から文字列などに変更することもできます。

カタログ スキーマの作成方法については、「カタログ スキーマを作成する」を参照してください。

カタログ

カタログはカタログ スキーマのインスタンスであり、個別の商品およびその商品が属するカテゴリに関するデータが格納されます。カタログを作成するには、ビジネス デスクのカタログ エディタ モジュールを使います。

カタログは、カテゴリ、商品、商品バリエーション、およびプロパティで構成されます。次の図は、カタログ スキーマの例の各要素と、それらがカタログの各要素にどのようにマップされるかを示します。プロパティは、カテゴリ定義と商品定義で使われています。"Dept" カテゴリ定義は、"Soccer Shirts" カテゴリに使われています。"Soccer Shirt" 商品定義は、"Ace Soccer Shirt" 商品に使われています。

カタログ スキーマ
カタログ データ
カテゴリ定義
カテゴリ タイプ 'DEPT'
プロパティ 'Name'
プロパティ 'Size'
プロパティ 'Color'
プロパティ 'SKU'
価格: 20
[プロパティ]
商品定義
サッカー シャツ
サッカー シャツ
カテゴリ
Ace サッカー シャツ 価格: 20
スポーツ ウェア
カタログ
サイズ:S
サイズ:S
サイズ:M
サイズ:M
サイズ:L
色:グリーン
SKU:115
カテゴリ
カタログ
商品ファミリ 一意識別子 = Name
商品バリエーション 一意識別子 = SKU

カテゴリは、カテゴリ定義の個別のインスタンスです。たとえば、Department という名前のカテゴリ定義を使って、Soccer Shirts カテゴリを作成できます。

商品は、カタログの中の 1 項目です。商品は、プロパティ定義の組み合わせによって定義されます。たとえば、Soccer Shirts という名前の商品定義が存在し、Name、Color、および Size という 3 つのプロパティが定義されている場合は、名前、色、およびサイズの組み合わせをカタログに登録するごとに商品を 1 つ作成します。

関連性の強い商品をグループにまとめることもできます。これらのグループは "商品グループ" といいます。商品グループは、商品バリエーションを含む商品のグループです。たとえば、サイズが L、色がグリーン、SKU が 114 のシャツは、Soccer Shirt 商品の商品バリエーションの 1 つです。この場合、サイズ、色、および SKU の組み合わせが商品バリエーションを構成します。商品バリエーションには、SKU などの一意識別子と価格が必ず含まれます。各商品バリエーションは、同じ商品定義に基づいています。

カタログの作成方法については、「カタログを作成する」を参照してください。

カタログの構成 : 階層と関連付け

カタログの商品を整理して、ユーザーが目的の項目に移動しやすいようにするには、カテゴリと商品の間でカテゴリの階層と関連付けを作成できます。たとえば、子カテゴリと呼ばれるカテゴリを 2 つ含む親カテゴリを作成できます。ユーザーが親カテゴリに移動すると、子カテゴリが表示され、目的の商品をすぐに見つけられます。

次の図は、親カテゴリに含まれる複数の子カテゴリが、同時に親カテゴリにもなっているようすを示します。

カタログ
コレクション
カタログ B
カタログ C
スポーツ ウェア
カタログ
パンツ
シャツ
サッカー シャツ
ツーピースの
トラックスーツ
Ace サッカー
シャツ
Ace サッカー
ショーツ
アクセサリ

サイズ:
色:
SKU:

サイズ:
色:
SKU:

サイズ:
色:
SKU:

S
ブラック
113

M
ブルー
114

L
グリーン
115

上の図で、Sports Clothes カタログには Shirts と Pants という 2 つのカテゴリがあります。Shirts カテゴリには、Soccer Shirts と Two-piece Track Suits という 2 つの子カテゴリがあります。このように構成することによって、ユーザーは Two-piece Track Suits カテゴリに 2 つの経路で移動できます。つまり、Shirts カテゴリ経由と Pants カテゴリ経由になります。この図は、Ace Soccer Shirt と Ace Soccer Shorts の間のアクセサリの関連付けも示しています。シャツに関心を示すユーザーは、ショートパンツにも関心を示す可能性があります。

階層の作成方法については、「カテゴリ階層を作成する」を参照してください。関連付けの作成方法については、「カテゴリと商品の関連付けを作成する」を参照してください。

カタログの一意識別子

商品と商品バリエーションは、いずれも一意の識別子を持ちます。一意の識別子は、テキスト型または数値型のプロパティです。たとえば、書籍のカタログの場合、書名を商品の一意の識別子とし、ISBN 番号を商品バリエーションの一意の識別子とすることができます。『The Quest Ahead』という書籍の場合、ハード カバー版が第 1 のバリエーション、ペーパーバック版が第 2 のバリエーション、オーディオ版が第 3 のバリエーションになります。これら 3 つの商品バリエーションは、いずれも商品グループ "The Quest Ahead" の一部となります。

次の例は、商品グループ "The Quest Ahead" のコンポーネントを示します。

Product Family = The Quest Ahead
Unique ID = Title:The Quest Ahead

Product Variant = The Quest Ahead hardback
Unique ID = ISBN:1102334
Price = 20.00

Product Variant = The Quest Ahead paperback
Unique ID = ISBN:1102335
Price = 10.00

Product Variant = The Quest Ahead audio
Unique ID = ISBN:1102336
Price = 15.00

カタログを作成するときには、商品と商品バリエーションの一意識別子となるプロパティを指定します。

基本カタログ、カスタム カタログ、およびカタログ セット

作成できるカタログの種類は 2 つあります。また、複数のカタログをカタログ セットに結合することもできます。

  • 基本カタログは、カテゴリと商品が含まれますが、特定の価格設定ルールは含まれません。基本カタログの作成については、「新しいカタログを作成する」を参照してください。

  • カスタム カタログは基本カタログから派生したものですが、そのカタログの商品に関する特定の価格設定ルールが含まれます。カスタム カタログの価格は基本カタログの価格に優先します。カスタム カタログは、たとえば Supplir サイトで、一部の企業に対して特定の商品を特別価格で提供する場合に使います。また、たとえば Retail サイトで顧客に複数の会員レベルを設定していて、会員レベルに応じて異なる価格設定を行う場合にも使います。リピータに対して特別価格を提供するときにも使用できます。カスタム カタログの作成については、「カスタム カタログを作成する」を参照してください。

カタログ セットを作成すると、サイトでユーザーに対して表示するカタログを決定できます。カタログ セットとは、さまざまなユーザーや組織に対して公開する 1 つまたは複数のカタログのグループのことです。たとえば、カスタム カタログを 1 つ作成し、それを一般のカタログと組み合わせて、特定の組織のメンバーにそのカタログ セットを表示することができます。次の図は、特別価格が設定されたチーム ウェアのカタログを、サッカー クラブのメンバーが表示できるようにするしくみを示します。

スポーツ ウェア カタログ
冬物衣料カタログ
スポーツ ウェア カタログ
冬物衣料カタログ
チーム ウェア カタログ (カテゴリ レベルでの特別価格)
サッカー メンバ用のカタログ セット
サッカー クラブのメンバ
すべてのユーザー
一般のカタログ セット

カタログ セットの作成については、「カタログ セットを作成する」を参照してください。

ユーザーに表示するカタログ セットは、ビジネス デスクのユーザー モジュールで指定します。新しいユーザーを作成するときに、カタログ セットの名前を指定します。新しいユーザーの作成とカタログ セットの指定については、「ユーザーを追加する」を参照してください。

商品価格の設定方法

カタログの商品の価格は、次の 3 つの方法で設定できます。

  • 直接価格設定商品の価格を商品定義で定義します。商品を作成または編集するときに価格を設定できます。直接価格設定の適用方法については、「商品の価格を設定する」および「商品バリエーション レベルで価格を設定する」を参照してください。

  • 間接価格設定 価格は、特定の価格カテゴリとの関連付けによって決定されます。商品が価格カテゴリに関連付けられていると、商品の価格は価格カテゴリで定義された価格で上書きされます。すべての商品が 200 円の特別なカテゴリを作成するなど、商品のグループに同じ価格設定をする場合は、通常、間接価格設定を使います。間接価格設定の適用方法については、「カテゴリの商品の価格を設定する」を参照してください。

  • 特別価格設定 価格をカテゴリに適用します。これを行うと、カスタム カタログを作成することになります。カスタム カタログに適用できる特別価格設定には、次の 3 種類があります。
    • パーセンテージの適用 価格をカテゴリに適用します。商品を課金する標準価格のパーセンテージを指定します。たとえば、10 パーセント割引を適用するには、「90」 を入力し、標準価格の 90 パーセントでその商品を販売することを示します。

    • 定数調整 標準価格を上げるため、または下げるために正確な金額を指定します。たとえば、200 円割引するには、「-200」を入力し、その商品を 200 円引きで販売することを示します。200 円割り増しするには、「2」を入力し、その商品を 200 円割り増しで販売することを示します。

    • 設定価格 商品の正確な値段を指定します。たとえば、商品をちょうど 1000 円で販売します。

    特別価格の設定を適用することに関する説明は、「カスタム カタログで価格を設定する」 を参照してください。

カタログによる売り上げを分析する

  • 次の表では、カタログによる売り上げデータの分析するために使用する Commerce Server に含まれているレポートを一覧表示しています。
レポート | 説明
顧客別の売り上げ | 顧客の詳細、合計販売数、および合計注文数を確認します。この情報を使用してダイレクト メールによる販売促進などのオンライン キャンペーンで顧客を対象にすることができます。
買い物バスケット イベント | 品目がショッピング バスケットに追加された日時、またはショッピング バスケットから削除された日時を調べます。
買い物客の参照の状況 | ユーザーの訪問パターンを分析します。このレポートから、平均訪問数、購入あたりの訪問数、売上額、売上のカウント、訪問者のカウントなどのデータが得られます。
商品別売り上げ | 日付ごとの商品販売量と収益を分析します。このレポートから、数量と収益のデータが得られます。
注文イベント | サイトでいつ注文が行われているかを分析します。このレポートから、日付、時刻、イベント、ユーザーの種類などのデータが得られます。
顧客の消費の要約 | 顧客ごとの販売量と収益を分析します。

Commerce Server のすべてのレポートの一覧については、「Commerce Server のレポート」を参照してください。レポートの実行については、「レポートを実行する」を参照してください。

関連項目

カタログをインポートする

カタログ スキーマを作成する

カタログを作成する

商品の価格を設定する

BizTalk Server を使う


カタログをインポートする

拡張マークアップ言語 (XML) ファイル形式またはカンマ区切り値 (CSV) ファイル形式の外部ソースからカタログをインポートするには、カタログ エディタ モジュールを使います。カタログをインポートすることで、別のソースにある既存のカタログをデータベースに統合できるようになります。

インポートに必要な時間は、カタログのサイズによって異なります。カタログ サイズが非常に大きくなることがあるため、インポートとエクスポートの処理は非同期的に行われます。このため、処理を実行中でも Commerce Server ビジネス デスクのほかの部分の作業は継続できます。また、ビジネス デスクの作業を終了して、後から作業に戻ることもできます。

ここでは、次のトピックについて説明します。

  • XML カタログ ファイルをインポートする

  • CSV カタログ ファイルをインポートする


XML カタログ ファイルをインポートする

拡張マークアップ言語 (XML) ファイル形式の Commerce Server カタログには、カタログ スキーマと商品データの両方が含まれます。Commerce Server カタログの XML ファイルをインポートし、カタログ エディタを使って商品データを変更できます。

ローカル コンピュータにあるカタログを、サーバーの CommerceCatalogs 共有フォルダにコピーできます。ファイルを共有フォルダにコピーするには、Windows エクスプローラを使います。CommerceCatalogs 共有フォルダを使う場合は、インポート処理時に完全なパスとファイル名を指定する必要はありません。

注

  • CommereCatalogs 共有フォルダがサーバーに存在するかどうかは、システム管理者に確認してください。

XML のカタログ ファイルをインポートするには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、ツール バーの カタログのインポート をクリックし、ドロップダウン リストの [XML のインポート] をクリックします。

  3. [XML カタログのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ファイル名] | インポートするカタログの完全なパスとファイル名を入力します。ファイルがサーバーの CommerceCatalogs 共有フォルダにある場合は、ファイル名だけを入力します。たとえば、サーバーの CommerceCatalogs 共有フォルダにファイルがある場合は「SportsCatalog.xml」のように入力します。ファイルがそれ以外のフォルダにある場合は、インポートするカタログの完全なファイル名とパスを入力する必要があります。たとえば、「C:\CatalogsforBusiness\SportsCatalogs.xml」のように入力します。
    [このカタログの既存のデータを削除する] | Commerce Server データベースに既に存在するカタログをインポートする場合、このチェック ボックスをオンにすると、既存のカタログのデータが削除されてから、新しいデータがインポートされます

  4. [OK] をクリックします。

注

  • カタログに含まれる商品定義が、同じ名前の既存の商品定義と異なるプロパティを持つ場合、そのカタログはインポートできません。

  • インポート処理の状態を調べるには、システム管理者にイベント ビューアの確認を依頼します。インポートの処理で問題が発生した場合は、イベント ビューアのアプリケーション ログにエラー エントリが作成されます。インポート処理が成功した場合は、カタログ エディタの一覧にカタログが表示されます。

これで、Commerce Server カタログの XML ファイルがインポートされたので、新しいカタログを Web サイトで公開できます。Web サイトでの変更内容の公開については、「カタログを更新および公開する」を参照してください。

関連項目

カタログについて

カタログを更新および公開する

CSV カタログ ファイルをインポートする


CSV カタログ ファイルをインポートする

カンマ区切り値 (CSV) カタログ ファイルには、商品データは含まれますが、カタログ スキーマは含まれません。商品はカテゴリに分類されず、CSV カタログ ファイルの商品はすべて 1 つの商品定義.にマップされます。CSV カタログ ファイルには、商品 ID と価格の列が必要です。CSV カタログ ファイルには個別の商品だけが含まれ、商品バリエーションはサポートされません。CSV カタログ ファイルでサポートされるデータ型は、文字列データ型だけです。文字列データ型の詳細については、システム管理者に問い合わせてください。

CSV カタログ ファイルをインポートすると、ファイルに含まれる列に基づいて、商品定義が自動的に作成されます。個々の商品は、自動的に作成された商品定義のインスタンスとしてインポートされます。商品定義には、インポートするカタログと同じ名前が付けられます。

CSV カタログ ファイルをインポートしたら、カタログ エディタを使ってカテゴリを作成し、カテゴリに商品を追加します。

CSV カタログ ファイルをインポートするには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、ツール バーの カタログのインポート をクリックし、ドロップダウン リストの [CSV のインポート] をクリックします。

  3. [CSV カタログのインポート] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [ファイル名] | インポートするカタログの完全なパスとファイル名を入力します。ファイルがサーバーの CommerceCatalogs 共有フォルダにある場合は、ファイル名だけを入力します。たとえば、サーバーの CommerceCatalogs 共有フォルダにファイルがある場合は「SportsCatalog.csv」のように入力します。ファイルがそれ以外のフォルダにある場合は、インポートするカタログの完全なファイル名とパスを入力する必要があります。たとえば、「C:\CatalogsforBusiness\SportsCatalogs.csv」のように入力します。
    [カタログ名] | インポートするカタログの名前を入力します。この名前は、インポート処理時に作成される商品定義の名前にも使われます。
    [商品 ID] | ID の列の名前を入力します。
    [価格の列] | 価格の列の名前を入力します。
    [このカタログ内の任意の既存データを削除する] | Commerce Server データベースに既に存在するカタログをインポートする場合、このチェック ボックスをオンにすると、既存のカタログからデータが削除された後で、新しいデータがインポートされます

  4. [OK] をクリックします。

注

  • 商品定義と同じ名前のカタログをインポートすると、元の商品定義は上書きされます。

  • カタログに含まれる商品定義が、同じ名前の既存の商品定義と異なるプロパティを持つ場合、そのカタログはインポートできません。

  • インポートの状態を調べるには、システム管理者にイベント ビューアの確認を依頼します。インポート処理で問題が発生すると、ビューアのアプリケーション ログにエラーが表示されます。インポート処理が成功した場合は、カタログ エディタの一覧にカタログが表示されます。

関連項目

カタログについて

XML カタログ ファイルをインポートする

カタログにカテゴリを追加する

カタログに商品を追加する


カタログ スキーマを作成する

カタログをインポートするのではなく、独自に作成する場合は、最初にカタログ スキーマを作成する必要があります。カタログ スキーマを作成したら、カタログにカテゴリ、商品、およびプロパティを追加します。カタログ スキーマとカタログの作成方法に例については、「ビジネス デスク チュートリアル」の「カタログを作成する」を参照してください。

ここでは、次のトピックについて説明します。

  • プロパティ定義を追加する

  • 商品定義を追加する

  • カテゴリ定義を追加する


プロパティ定義を追加する

プロパティ定義は、カタログのカテゴリ定義または商品定義の特性を 1 つ指定します。1 つのプロパティ定義を複数のカテゴリ定義と商品定義で使ったり、カタログ間で共有したりすることができます。たとえば、カテゴリと商品に説明を追加する際に、"Description" プロパティ定義をすべての商品定義とカテゴリ定義で使用できます。

プロパティ定義を作成したら、カテゴリ定義または商品定義に追加します。

プロパティ定義を追加するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [プロパティ定義] をクリックします。

  3. [カタログ デザイナ: プロパティ定義] 画面で、ツール バーの 新規プロパティ定義 をクリックし、新しいプロパティ定義で使用するプロパティ型を選択します。

    [カタログ デザイナ: プロパティ定義] 画面に表示されるボックスは、選択したプロパティ定義の型によって異なります。

  4. [プロパティ定義] 画面で、次の操作を行います。
    項目 | プロパティ型 | 操作
    [名前] すべて プロパティの名前を入力します。

    注

    このプロパティを保存した後で、プロパティ名を変更することはできません。

    [サイトに表示] | すべて | このチェック ボックスをオンにすると、指定したプロパティが Web サイト上のユーザーに表示されます。内部で使用する一部のプロパティを非公開にする場合は、このチェック ボックスをオフにします。
    [表示名] | すべて | このプロパティのラベルとして Web サイトに表示する名前を入力します。たとえば、"ShirtColor" という名前のプロパティであれば、"Color" などのラベルを付けます。
    [フリー テキスト検索可能] テキスト、複数選択 このチェック ボックスをオンにすると、このプロパティに格納されている値が、カタログのフリー テキスト検索の対象になります。

    [フリー テキスト検索可能] チェック ボックスをオンにすると、カタログのフル インデックスにプロパティ定義が追加されます。カタログで検索対象に指定されている項目を変更したときは、フルテキスト インデックスを更新する必要があります。フルテキスト インデックスの更新については、「カタログを更新および公開する」を参照してください。
    [条件指定可能] | テキスト、数値、10 進、貨幣/通貨、日付/時刻、複数選択 | このチェック ボックスをオンにすると、条件指定検索でこのプロパティが使われます。条件指定検索を使うと、ユーザーは特定の商品の検索に役立つ値を選択できます。
    [最小文字数] | テキスト | このプロパティ型の値の最小長を入力します。既定の最小長はゼロ (0) 文字です。ゼロ以外の長さを指定すると、このプロパティは商品定義またはカテゴリ定義の必須プロパティになります。
    [最大文字数] | テキスト | このプロパティ型の値の最大長を入力します。最大長の上限は 3,600 文字です。
    [最小値] | 数値、10 進、貨幣/通貨 | このプロパティの最小値を入力します。既定の最小値はゼロ (0) です。
    [最大値] | 数値、10 進、貨幣/通貨 | このプロパティ型の最大値を入力します。たとえば、貨幣のプロパティを追加する場合は、商品に適用する最高金額が収まるような値を指定します。小数や端数を指定することもできます。
    [最も早い日付] | 日付/時刻 | このプロパティの有効期間で最も早い日付を入力します。たとえば、ユーザーが新しいレコードを注文できる最も早い日付を指定します。
    [最も早い時刻] | 日付/時刻 | このプロパティの有効期間で最も早い時刻を 00:00 形式 (午後 1:00 であれば 13:00 など) で入力しますたとえば、開始時刻を指定します。
    [最も遅い日付] | 日付/時刻 | このプロパティの有効期間で最も遅い日付を入力します。たとえば、ユーザーが販売促進商品を注文できる最も遅い日付を指定します。
    [最も遅い時刻] | 日付/時刻 | このプロパティの有効期間で最も遅い時刻を 00:00 形式 (午後 10:00 であれば 22:00 など) で入力しますたとえば、期限切れの時刻を指定します。
    [既定値] | テキスト、数値、10 進、貨幣/通貨、日付/時刻、複数選択 | このプロパティ型の既定値を入力します。値の形式は、追加するプロパティ型によって異なります。
    [すべての商品の種類に割り当てる] | すべて | すべての種類の商品にこのプロパティを割り当てるには、このチェック ボックスをオンにします。名前、説明、重量などの汎用の商品プロパティの場合に指定します。
    [データ ウェアハウスにエクスポート] | すべて | このプロパティをデータ ウェアハウスにエクスポートするには、このチェック ボックスをオンにします。データ ウェアハウスにエクスポートしたデータは、レポート処理に利用できます。
    [商品リストに表示] | すべて | 商品リストにこのプロパティを表示するには、このチェック ボックスをオンにします。

  5. プロパティ定義を保存して [カタログ デザイナ: プロパティ定義] 画面に戻るには、ツール バーの 保存してプロパティ定義リストに戻る をクリックします。

これで、プロパティ定義をカテゴリ定義、商品定義、またはその両方に追加できるようになります。

注

  • [すべての商品の種類に割り当てる] オプションのチェックボックスをオンにすると、このプロパティがこれから作成するすべての定義に自動的に継承されます。

  • プロパティ定義の名前に、特殊記号の矢印 (< >)、アンパサンド (&)、またはかっこ (()) を使うことはできません。

  • プロパティ名の先頭に数字を使うことはできません。

関連項目

カタログについて

商品定義を追加する

カテゴリ定義を追加する


商品定義を追加する

カタログ内のすべての商品は、商品定義のインスタンスです。商品定義は、特定の種類の商品のプロパティを指定します。たとえば、音楽 CD を販売するサイトであれば、"Compact Disks" という種類の商品の商品定義を作成し、Artist、Title、List Price の各プロパティを割り当てることができます。

商品定義を作成したら、カタログにこの商品定義のインスタンスを追加します。

ここでは、既にプロパティ定義が作成されていて、それを商品定義に追加するという前提で説明を行います。ただし、商品定義を追加するときに、プロパティ定義を作成することもできます。プロパティ定義の作成の詳細については、「プロパティ定義を追加する」を参照してください。

商品定義を追加するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [商品定義] をクリックします。

  3. [カタログ デザイナ: 商品定義] 画面で、ツール バーの 新規商品定義 をクリックします。

  4. [商品定義: 新規] 画面で、[名前] ボックスに新しい商品定義の名前を入力します。

  5. [商品プロパティ] セクションで、[利用できるプロパティ] ボックスの一覧から、新しい商品定義に割り当てる 1 つまたは複数のプロパティを選択し、[追加] をクリックします。

    選択したプロパティは、[商品プロパティ] セクションの [割り当てられたプロパティ] ボックスに表示されます。

    図をクリックすると、拡大または縮小します。

    注

    • プロパティの中には、すべてに割り当てる属性が設定されているものがあります。この場合、各商品定義にそのプロパティが自動的に組み込まれて、割り当て済みとして表示され、黄色で強調表示されます。これらのプロパティを商品定義から削除しようとしても、商品プロパティを保存するときに、プロパティは自動的に [割り当てられたプロパティ] ボックスに戻ります。list price プロパティ ("価格") は組み込み済みのプロパティであり、すべての商品がこのプロパティを持ちます。
  6. 新しい商品にバリエーションがある場合は、[商品バリエーション プロパティ] セクションで、[利用できるプロパティ] ボックスの一覧から 1 つまたは複数のプロパティを選択し、[追加＞] をクリックします。

    選択したプロパティが [割り当てられたプロパティ] ボックスに表示されます。

    注

    • カタログに表示されるプロパティの順序は、[割り当てられたプロパティ] ボックスに表示されるプロパティの順序と同じになります。プロパティの順序を変更するには、移動するプロパティを選択し、[1 つ上に移動] または [1 つ下に移動] をクリックして目的の位置に移動します。
  7. 商品定義を保存して [カタログ デザイナ: 商品定義] 画面に戻るには、ツール バーの 保存して商品定義リストに戻る をクリックします。

プロパティ定義、商品定義、およびカテゴリ定義を作成したら、カタログを作成し、カテゴリと商品を追加します。詳細については、「カタログを作成する」を参照してください。

関連項目

カタログについて

プロパティ定義を追加する

カテゴリ定義を追加する

カタログを作成する


カテゴリ定義を追加する

カテゴリには、名前、説明、イメージなど、1 つまたは複数のプロパティを割り当てることができます。これらのプロパティはカテゴリ定義で定義されます。

Commerce Server には、編集したりそのまま使用したりできる部門という名前のカテゴリ定義が用意されています。また、ほかのカテゴリ定義を作成することもできます。部門カテゴリ定義には、説明、イメージ ファイル名、イメージの幅、およびイメージの高さを示すプロパティがあります。部門カテゴリ定義をそのまま使うことも、必要に応じてプロパティを編集して使うこともできます。また、別の種類のカテゴリを作成することもできます。たとえば、メーカーに関する情報を保存して、商品をメーカー別に整理する場合は、Manufacturer カテゴリ定義を作成し、Manufacturer Name、Country、Address、Contact Person などの異なるプロパティを割り当てることができます。

カテゴリ定義を作成したら、そのカテゴリ定義に基づいてカテゴリを作成します。

ここでは、既にプロパティ定義が作成されていて、それをカテゴリ定義に追加するという前提で説明を行います。ただし、カテゴリ定義を追加するときに、プロパティ定義を作成することもできます。プロパティ定義の作成の詳細については、「プロパティ定義を追加する」を参照してください。

カテゴリ定義を追加するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [カテゴリ定義] をクリックします。

  3. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの 新規カテゴリ定義 をクリックします。

  4. [カテゴリ定義: 新規] 画面で、[名前] ボックスに新しいカテゴリ定義の名前を入力します。

  5. [カテゴリ プロパティ] セクションで、[利用できるプロパティ] ボックスの一覧から新しいカテゴリ定義に追加する 1 つまたは複数のプロパティを選択し、[追加＞] をクリックします。

    選択したプロパティが [カテゴリ プロパティ] セクションの [割り当てられたプロパティ] ボックスに表示されます。

  6. プロパティの順序を変更するには、移動するプロパティを選択し、[1 つ上に移動] または [1 つ下に移動] をクリックして目的の位置に移動します。

    図をクリックすると、拡大または縮小します。

  7. 新しいカテゴリ定義を保存して [カタログ デザイナ: カテゴリ定義] 画面に戻るには、ツール バーの 保存してカテゴリ定義リストに戻る をクリックします。

プロパティ定義、商品定義、およびカテゴリ定義を作成したら、カタログを作成し、カテゴリと商品を追加します。詳細については、「カタログを作成する」を参照してください。

注

  • カタログに表示されるプロパティの順序は、[割り当てられたプロパティ] ボックスに表示されるプロパティの順序と同じになります。

関連項目

カタログについて

カタログを作成する


カタログを作成する

カタログを作成するには、カタログ エディタを使います。インポートできる既存のカタログがない場合は、新しいカタログを作成できます。既存のカタログ スキーマでは不十分な場合は、新しいカタログを作成する前または後に、既存のプロパティ定義、カテゴリ定義、および商品定義を必要に応じて変更できます。

注意

  • カタログ スキーマを変更すると、そのスキーマを使用する既存のカタログにも変更が反映されます。既存のカタログに変更が反映されないようにするには、新しいカタログのプロパティ定義、カテゴリ定義、または商品定義を新しく作成する必要があります。

ここでは、次のトピックについて説明します。

  • 新しいカタログを作成する

  • カスタム カタログを作成する

  • カタログ セットを作成する

  • カタログにカテゴリを追加する

  • カタログに商品を追加する

  • 商品バリエーションを商品に追加する


新しいカタログを作成する

カタログ スキーマ (プロパティ定義、商品定義、およびカテゴリ定義) を作成したら、そのカタログ スキーマを使って新しいカタログを作成します。

新しいカタログを作成するときは、商品の価格設定に使用する通貨 (USD など)、カタログで商品の識別に使用する一意の ID (商品名など)、および商品バリエーションの識別に使用する一意の ID (在庫保管単位など) を指定します。プロパティに指定する値は、カタログ スキーマによって異なります。たとえば、カタログ スキーマで、一意の ID が商品名になるように指定することがあります。

ここでは、ユーザーまたはサイト開発者によって、既にカタログ スキーマが作成されていることを前提に説明を行います。まだ作成していない場合は、「カタログ スキーマを作成する」を参照してください。

注

  • Microsoft BizTalk Server を使ってこのカタログを製造元と交換する場合は、カタログの製造元 ID を指定する必要があります。

新しいカタログを作成するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、ツール バーの 新しいカタログ をクリックし、ドロップダウン リストの [新しいカタログ] をクリックします。

  3. [カタログ: 新規] 画面の [カタログ プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] 新しいカタログの名前を入力します。この名前は一意でなければなりません。Commerce Server データベースの既存のカタログと同じ名前は指定できません。既にデータベースに存在する名前を使うと、カタログ名を保存するときにエラー メッセージが表示されます。

    注

    • カタログ データを格納する別々のデータベースを備えた複数の Commerce Server サイトが存在し、サイト間で同じデータ ウェアハウスを共有している場合は、それぞれのサイトの別々のカタログに同じ名前を付けないでください。同じ名前のカタログが複数存在する場合、データ ウェアハウスはこれらを 1 つのカタログとして処理します。
    [開始日] | カタログの開始日を入力します。この日付が Web サイトに影響を及ぼすことはありません。ただし、カタログを取引先と交換する場合、取引先はこの日付から、カタログが有効になる最初の日付を知ることができます。
    [終了日] | カタログの終了日を入力します。取引先は、この日付を使ってカタログの有効期限を調べます。既定では、終了日は現在の日付から 3 か月後に設定されます。たとえば、カタログを 12 月に作成している場合、カタログの終了日は 3 月になります。
    [通貨] | 通貨の省略形を 3 文字以内で入力します (USD、DM、FF など)。既定値は USD です。
    [重量測定単位] | このカタログの商品の重量測定単位が表示されます。この値は、Commerce Server の設定時にシステム管理者が指定します。値の変更が必要な場合は、システム管理者に連絡してください。
    [商品の一意の ID] | ドロップダウン リストから一意の識別子を選択します。バリエーションのない商品の場合は、SKU を指定できます。バリエーションがある商品の場合は、ここに名前またはタイトルを指定し、[商品のバリエーションの一意の ID] に SKU を指定できます。[商品の一意の ID] ボックスの最大長は 256 文字です。
    [商品のバリエーションの一意の ID] | ドロップダウン リストから商品バリエーションの一意の識別子を選択します。たとえば、SKU やその他の一意の ID を指定します。バリエーションのない商品の場合は、[商品の一意の ID] ボックスで選択したのと同じプロパティを選択します。[商品のバリエーションの一意の ID] ボックスの最大長は 256 文字です。
    [製造元 ID] このプロパティは、BizTalk Server との組み合わせでのみ使います。省略記号 [...] ボタンをクリックすると、BizDesk Server Messaging Manager 内で識別されている製造元の一覧が表示されます。カタログの商品を供給する製造元の該当する製造元 ID を選択します。BizTalk Server を使って取引先に注文を送信する場合は、このボックスの値を指定する必要があります。

    システム管理者が BizTalk Server を使って製造元との新しい契約を作成するたびに、製造元の一覧は自動的に更新されます。目的の製造元の製造元 ID が表示されない場合は、システム管理者に依頼し、その製造元との契約を設定します。

    BizTalk Server および Biztalk Server Messaging Manager の詳細については、システム管理者に問い合わせてください。

  4. カタログを保存して [カタログ] 画面に戻るには、ツール バーの 保存してカタログ リストに戻る をクリックします。

これでカタログが作成されたので、商品とカテゴリをカタログに追加できます。詳細については、「カタログにカテゴリを追加する」および「カタログに商品を追加する」を参照してください。

関連項目

カタログについて

カタログ スキーマを作成する

カタログに商品を追加する

カタログにカテゴリを追加する

BizTalk Server を使う


カスタム カタログを作成する

カスタム カタログを作成するには、カタログ エディタ モジュールを使用します。カスタム カタログは、カタログの特定のカテゴリに特別価格を割り当てるときに作成します。たとえば、特定のユーザー グループ (リピータのグループなど) には商品を割引価格で販売する一方で、基本カタログは変更しないようにする場合に、カスタム カタログを作成します。カスタム カタログを使うと、商品とカテゴリの情報を 1 か所で管理しながら、ユーザーごとに異なる価格で商品を提供できます。

カスタム カタログを作成したら、カタログ セット モジュールを使って 1 つまたは複数のカタログ セットにカスタム カタログを追加します。次に、ユーザー モジュールを使って、カタログの対象となるユーザーまたは組織にカタログ セットを関連付けます。

注

  • カスタム カタログに新しいカテゴリや商品を追加したり、削除したりすることはできません。

新しいカスタム カタログを作成するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、ツール バーの 新しいカタログ をクリックし、ドロップダウン リストの [新しいカスタム カタログ] をクリックします。

  3. [新しいカスタムカタログ] ダイアログ ボックスで、作成するカスタム カタログの基となるカタログをドロップダウン リストから選択し、[OK] をクリックします。

  4. [カスタム カタログ - 新規] 画面の [カスタム カタログ プロパティ] セクションおよび [カスタム価格] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | カスタム カタログの名前を入力します。
    [カテゴリ] | 特別価格を適用するカテゴリを選択します。
    [特別価格の使用] | 特別価格を有効にするには、このチェック ボックスをオンにします。
    [価格の設定方法] 次の 3 つの価格設定方法のいずれかを選択します。

    割合調整 標準価格に対する商品価格の割合を指定します。

    定数調整 標準価格から増減する金額を指定します。

    設定価格 正確な商品価格を指定します。

    価格の設定方法の詳細については、「商品の価格を設定する」を参照してください。
    [値] | 値を入力します。[価格の設定方法] で選択した方法に応じて、標準価格に適用する割合、調整金額、または設定価格を指定します。たとえば、[割合調整] を選択した場合、10 パーセントの割引をするときは、「90」と入力します。この場合、カスタム カタログの商品は定価の 90 パーセントで販売されます。

  5. カスタム カタログを保存して [カタログ] 画面に戻るには、ツール バーの [image] をクリックします。

  6. [カタログ エディタ] 画面で、基本カタログとして使用したカタログの下にカスタム カタログが表示されます。カスタム カタログを表示するには、基本カタログの左側の矢印をクリックします。

これでカスタム カタログが作成されたので、1 つまたは複数のカタログ セットに追加できます。カタログをカタログ セットに追加する方法の詳細については、「カタログ セットを作成する」を参照してください。ユーザーをカタログ セットに関連付ける方法については、「ユーザーを追加する」を参照してください。

関連項目

カタログについて

カタログ セットを作成する

ユーザーを追加する

商品の価格を設定する

カスタム カタログで価格を設定する


カタログ セットを作成する

特定のカタログのグループを作成し、グループに一意の名前を付けるには、カタログ セットを使います。たとえば、リピータ用のプログラムを用意しており、一般の顧客には提供しない割引や特典をこのプログラムの会員に提供する場合は、会員用のカスタム カタログを含むカタログ セットを作成し、このプログラムの会員だけがこれらのカタログにアクセスできるようにすることができます。少数の限られたユーザーにのみアクセスを許可するいくつかの商品が別々のカタログにある場合は、そのカタログを特定のユーザーだけがアクセスできる特別なカタログ セットの一部にすることができます。カタログ セットへのアクセス権は、ユーザー モジュールで割り当てます。

カタログ セットは、必ずしも作成する必要はありません。カタログ セットの作成によって個別のカタログが変更されることはありません。

カタログ セットを作成するには

  1. [カタログ] 画面の [カタログ セット] をクリックし、ツール バーの カタログ セットの追加 をクリックします。

  2. [新しいカタログ セット] 画面で、次の操作を行います。
    項目 | 操作
    [名前] | カタログ セットの名前を入力します。
    [説明] | カタログ セットの説明を入力します。
    [すべてのカタログの追加] | このチェック ボックスをオンにすると、新しいカタログが追加されても、このカタログ セットがすべてのカタログを表すようになります。このカタログ セットに追加するカタログを個別に指定する場合は、このチェック ボックスをオンにしないでください。
    [利用できるカタログ] カタログ セットに追加するカタログを個別に選択し、[追加] をクリックします。

    選択したカタログは、[利用できるカタログ] ボックスから [割り当てられたカタログ] ボックスに移動します。
    [割り当てられたカタログ] | このカタログ セットに追加したカタログが表示されます。[割り当てられたカタログ] ボックスから削除したカタログは、自動的に [利用できるカタログ] ボックスに移動します。

  3. カタログ セットを保存して [カタログ セット] 画面に戻るには、ツール バーの 保存してキャンペーン マネージャ リストに戻る をクリックします。

これでカタログ セットが作成されたので、カタログ セットにアクセスできるユーザーを追加できます。ユーザーの追加については、「ユーザーを追加する」を参照してください。

関連項目

カタログについて

ユーザーを追加する

カタログ セットを変更する

カタログ セットを削除する


カタログにカテゴリを追加する

カタログにカテゴリを追加するには、カタログ エディタ モジュールを使います。カタログに商品を追加するときに、新しいカテゴリの追加が必要なことに気付く場合があります。

カテゴリ名は、それぞれのカタログ内で一意でなければなりません。CSV ファイル形式のカタログをインポートした場合は、カタログのカテゴリを作成し、商品を割り当てる必要があります。

注

  • カスタム カタログに新しいカテゴリを追加することはできません。

新しいカテゴリを追加するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、新しいカテゴリを作成するカタログを一覧から選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [カテゴリ] セクションで、[新規] をクリックします。

  4. [新しいカテゴリ] ダイアログ ボックスで、カテゴリの基になるカテゴリ定義を選択し、[継続] をクリックします。

  5. [カタログ エディタ – <カタログ名> - 新規 (<カテゴリ名>)] 画面で、次の操作を行います。
    項目 | 操作
    [名前] 新しいカテゴリの名前を入力します。入力できる文字数は、最大 100 文字です。

    注

    [名前] フィールドでは、矢印 (< >) やかっこ (()) を使わないでください。

    [価格] | カテゴリの価格を入力します。このカテゴリのすべての商品に価格を割り当てるときに使います。商品または商品バリエーションに直接価格を割り当てる方法については、「商品の価格を設定する」を参照してください。
    [検索可能] | このカテゴリを条件指定検索の開始点にする場合に、このチェック ボックスをオンにします。チェック ボックスをオンにすると、このカテゴリが Web サイトの[拡張検索] ページに表示されます。

    注

    • 選択するカテゴリ定義によっては、これ以外のボックスが画面に表示されることがあります。
  6. 作成したカテゴリを保存し、別の新しいカテゴリを作成するには、ツール バーの 保存して新しいカテゴリを作成 をクリックします。

    注

  • この画面では、親カテゴリと子カテゴリを割り当てたり、カテゴリの関連付けを設定したりすることもできます。詳細については、「カテゴリと商品の関連付けを作成する」および「カテゴリ階層を作成する」を参照してください。

関連項目

カタログについて

カタログを更新および公開する

商品の価格を設定する

カテゴリ定義を追加する


カタログに商品を追加する

既存のカタログに新しい商品を追加するには、カタログ エディタを使います。ただし、カスタム カタログに新しい商品を追加することはできません。

ここでは、ユーザーまたはサイト開発者によって、カタログに追加する商品の商品定義が既に作成されていることを前提に説明を行います。さらに、既にカタログが作成されていて、1 つまたは複数のカテゴリが追加されていることを想定します。これらの前提がまだ満たされていない場合は、「商品定義を追加する」、「カタログを作成する」、および「カタログにカテゴリを追加する」を参照してください。

カタログに新しい商品を追加するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、新しい商品を追加するカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、[新規] をクリックします。

  4. [新しい商品] ダイアログ ボックスで、この商品の基になる商品定義を選択し、[OK] をクリックします。

    注

    • 商品プロパティと商品バリエーションで利用できるオプションは、設定する条件、および追加する商品の種類によって異なります。
  5. [カタログ エディタ - <カタログ名> 新規 (<商品定義>)] 画面の [商品プロパティ] セクションで、利用可能なプロパティの情報を入力します。

  6. [カタログ エディタ - <カタログ名> 新規 (<商品定義>)] 画面の [商品のバリエーション] セクションで、[新規] をクリックし、利用可能なプロパティの情報を入力します。

  7. [カタログ エディタ - <カタログ名> 新規 (<商品定義>)] 画面の [割り当てられたカテゴリ] で、次の操作を行います。
    項目 操作
    [利用できるカテゴリ] 商品に割り当てるカテゴリを選択し、[追加＞] をクリックします。

    割り当てられているカテゴリを削除する場合は、[＜削除] をクリックします。
    [割り当てられたカテゴリ] 割り当てられたカテゴリを編集する場合は、カテゴリを選択して、[編集...] をクリックします。

    新しいカテゴリを作成する場合は、[新規] をクリックします。
    [価格カテゴリ] 商品に適用する価格が設定されたカテゴリを選択し、[価格の設定] をクリックします。

    選択したカテゴリの価格をクリアするには、[価格のクリア] をクリックします。

  8. [商品グループの関係] セクションの [新規] をクリックし、次の操作を行います。

    項目 | 操作
    [関連付け] | 関連付けの名前を入力します。
    [項目] | 省略記号 [...] ボタンをクリックして [商品の選択] ダイアログ ボックスを開きます。

    注

    • 商品バリエーションのある商品を作成する場合、ここで指定する価格が、追加する各バリエーションの既定の価格として使われます。商品バリエーションを作成するときに、この既定の価格とは異なる価格を優先することができます。商品バリエーションの追加については、「商品バリエーションを商品に追加する」を参照してください。商品の価格設定については、「商品の価格を設定する」を参照してください。
  9. 商品を保存して、別の商品を追加するには、ツール バーの 保存して新しい商品を作成 をクリックします。

関連項目

カタログについて

カテゴリと商品の関連付けを作成する

送料をカスタマイズする


商品バリエーションを商品に追加する

カタログの商品に、商品バリエーションを割り当てることができます。たとえば、T シャツの商品バリエーションとしては、色やサイズなどが考えられます。L サイズでブルーの T シャツは、T シャツという商品グループのバリエーションの 1 つになります。S サイズでブルーの T シャツは、同じファミリの別のバリエーションになります。

商品バリエーションには、それぞれ一意の ID が必要です。商品バリエーションに一意の ID を追加する方法の詳細については、「カタログを作成する」を参照してください。

商品バリエーションを商品に追加するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、商品バリエーションを追加するカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ エディタ - <カタログ名>] 画面の [商品] セクションで、商品バリエーションを追加する商品を選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> - <商品名>(商品定義)] 画面の [商品のバリエーション] セクションで、[新規] をクリックします。

  5. [商品のバリエーション] セクションで、[バリエーション価格] ボックスに商品の価格を入力します。

  6. SKU など、一意の ID プロパティの一意の値を含むプロパティをボックスに入力し、[終了] をクリックします。

    商品バリエーションの情報が、[商品バリエーション] テーブルに表示されます。

  7. 変更を保存して [カタログ] 画面に戻るには、ツール バーの 保存してカテゴリ プロパティに戻る をクリックします。

関連項目

カタログについて

商品の関連付けを作成するには

商品の価格を設定する


商品の価格を設定する

カタログの商品の価格を設定するには、カタログ エディタ モジュールを使います。カタログの商品の価格は、直接価格設定、間接価格設定、および特別価格設定のいずれかの方法で設定できます。

  • 直接価格設定商品の価格を商品自体に定義します。商品を作成または編集するときに価格を設定できます。商品の直接価格設定については、「商品の価格を設定する」を参照してください。

  • 間接価格設定 価格は、特定の価格カテゴリとの関連によって決定されます。商品が価格カテゴリに関連付けられていると、商品の価格はそのカテゴリで指定された価格に置き換えられます。特定の価格カテゴリとの関連付けがなくなると、商品の価格は元に戻ります。すべての商品が 200 円の特別なカテゴリを作成するなど、商品のグループに同じ価格設定をする場合は、通常、間接価格設定を使います。商品の間接価格設定については、「商品バリエーション レベルで価格を設定する」および「送料をカスタマイズする」を参照してください。

  • 特別価格設定 カスタム カタログでは、カテゴリに価格調整要素を適用できます。カスタム カタログのカテゴリに適用できる特別価格設定には、次の 3 種類があります。
    • 割合調整 標準価格に対する商品価格の割合を指定します。たとえば、10% の割引を適用する場合は「90」と入力します。これは、標準価格の 90% で販売されることを示します。

    • 定数調整 標準価格に対して値上げまたは値下げする金額を指定します。たとえば、200 円値下げして販売する場合は、価格を定価よりも 200 円減らすので「–200」と入力します。200 円値上げして販売する場合は、価格を定価よりも 200 円増やすので「200」と入力します。

    • 設定価格 正確な商品価格を指定します。たとえば、商品の販売価格を 1,000 円ちょうどにします。この価格は、商品自体に指定された価格に優先します。

    カタログの商品の特別価格設定については、「カスタム カタログで価格を設定する」を参照してください。

各カテゴリに指定した価格調整要素は、各カテゴリのすべての商品に適用されます。1 つの商品が、相反する価格調整要素が指定された 2 つのカテゴリに属している場合、その商品の価格は変更されず、競合を示す警告メッセージが Windows イベント ビューアのアプリケーション ログに記録されます。

商品価格に割引を適用するには、割引キャンペーン項目を作成します。商品の割引については、「割引キャンペーン項目を作成する」を参照してください。

ここでは、次のトピックについて説明します。

  • 商品の価格を設定する

  • 商品バリエーション レベルで価格を設定する

  • 送料をカスタマイズする

  • カスタム カタログで価格を設定する


商品の価格を設定する

商品の価格は、商品プロパティの作成時に設定します。ただし、価格変更の通知を受けるたびに商品の価格を変更することもできます。たとえば、黒の革ジャケットの価格が 39,900 円から 42,900 円に値上がりした場合に、商品プロパティで価格を変更することができます。

注

  • 特別な理由で商品の価格を一時的に変更する場合は、商品に割引を適用します。割引は、一定の期間、限られたユーザー グループに対して設定できます。割引の設定の詳細については、「商品価格に割引を適用する」を参照してください。

商品の価格を設定するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、価格を設定する商品が含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、価格を設定する商品を一覧から選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> - <商品名>(商品定義)] 画面の [商品プロパティ] セクションで、[価格] ボックスに商品の新しい価格を入力します。

  5. 変更を保存して [カタログ] 画面に戻るには、ツール バーの 保存してカテゴリ プロパティに戻る をクリックします。

関連項目

商品バリエーション レベルで価格を設定する

カテゴリの商品の価格を設定する

カスタム カタログで価格を設定する

割引キャンペーン項目を作成する


商品バリエーション レベルで価格を設定する

商品グループの商品バリエーションごとに異なる価格を設定できます。また、バリエーション価格を設定した後で、市場の動向を反映するために価格を編集することもできます。たとえば、ジャケットの商品グループがあり、その中に黒のジャケットと茶色のジャケットの商品バリエーションが含まれているとします。レポートを実行して売り上げを分析すると、黒のジャケットのほうが茶色のジャケットより売れ行きがよいことがわかります。この情報に基づいて、茶色のジャケットの売り上げを伸ばすために、バリエーション レベルで茶色のジャケットの価格を引き下げる一方で、黒のジャケットの価格はそのままにしておくことができます。

バリエーションのレベルで価格を割り当てるには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、価格を設定する商品が含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、価格を設定する商品を一覧から選択し、[編集] をクリックします。

  4. 変更を保存して [カタログ エディタ] 画面に戻るには、ツールバーの 保存してカテゴリ プロパティに戻る をクリックします。

関連項目

商品の価格を設定する

カテゴリの商品の価格を設定する

カスタム カタログで価格を設定する

割引キャンペーン項目を作成する


カテゴリの商品の価格を設定する

同じカテゴリのすべての商品に単一の価格を設定できます。これは、たとえばある範囲の商品が同じ価格の範囲に収まる場合などに便利です。この設定を使うと、商品の価格を個別に変更する代わりに、商品のグループ全体の価格を一度に変更できます。

商品のグループに同一の価格を割り当てるには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、価格を設定する商品が含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名> （<カテゴリ定義>）] 画面の [カテゴリ] セクションで、価格を設定するカテゴリを選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> - <カテゴリ名>] 画面の [カテゴリ プロパティ] セクションで、[価格] ボックスに価格を入力します。

  5. カテゴリへの変更を保存して [カタログ - <カタログ名>] 画面に戻るには、 保存して戻る をクリックします。

  6. [カタログ - <カタログ名> - <商品名> (<商品定義>] 画面の [商品] セクションで、価格を設定したカテゴリから商品を選択し、[編集] をクリックします。

  7. [カタログ エディタ - <カタログ名> (商品)] 画面の [割り当てられたカテゴリ] セクションで、[割り当てられたカテゴリ] ボックスの一覧からこの商品の価格を定義しているカテゴリを選択し、[価格の設定] をクリックします。

    選択したカテゴリ名が、次の図のように [価格カテゴリ] ボックスに表示されます。

    図をクリックすると、拡大または縮小します。

  8. 価格を保存して [カタログ] 画面に戻るには、ツール バーの 保存してカテゴリ プロパティに戻る をクリックします。

注

  • カテゴリ内で価格と商品レベルを割り当てたすべての項目について、価格カテゴリを割り当てる必要があります。必要な回数だけ手順 6. ～ 8. を繰り返してください。たとえば、作成時に商品レベルで 2,499 円の価格を割り当てたオーディオ CD を、2,000 円の予算カテゴリに入れる場合、新しい価格を有効にするためには、そのオーディオ CD を予算カテゴリに割り当てる必要があります。

  • カテゴリ レベルで割り当てた価格は、そのカテゴリのすべての商品および商品バリエーションの価格に優先します。

関連項目

商品の価格を設定する

カスタム カタログで価格を設定する

割引キャンペーン項目を作成する


カスタム カタログで価格を設定する

カスタム カタログに、特別価格設定を追加できます。特定のユーザーに対して、特別価格設定の設定価格、定数調整、または割合調整を提供できます。たとえば、常連客に割引を提供したり、季節物の商品を割引価格で提供することができます。価格は、カテゴリ レベルでのみ変更できます。カスタム カタログでは、商品レベルや商品バリエーション レベルで価格を変更することはできません。

ここでは、既にカスタム カタログが作成されていることを前提に説明を行います。まだ作成していない場合は、「カスタム カタログを作成する」を参照してください。

カスタム カタログで価格を割り当てるには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、価格を設定するカスタム カタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カスタム カタログ - <カスタム カタログ名>] 画面の [カスタム価格] セクションで、次の操作を行います。
    項目 | 操作
    [カテゴリ] | 特別価格を適用するカテゴリを選択します。
    [特別価格の使用] | 特別価格設定を有効にするには、このチェック ボックスをオンにします。選択したカテゴリに既に特別価格が設定されている場合は、このチェック ボックスをオフにすると特別価格設定が解除されます。
    [価格の設定方法] 次の 3 つの価格設定方法のいずれかを選択します。

    割合調整 標準価格に対する商品価格の割合を指定します。

    定数調整 標準価格から増減する金額を指定します。

    設定価格 正確な商品価格を指定します。
    [値] | 値を入力します。[価格の設定方法] で選択した方法に応じて、標準価格に適用する割合、調整金額、または設定価格を指定します。たとえば、[割合調整] を選択した場合、10 パーセントの割引をするときは、「90」と入力します。この場合、カスタム カタログの商品は定価の 90 パーセントで販売されます。

  4. 変更を保存して [カタログ] 画面に戻るには、ツール バーの [image] をクリックします。

更新した価格設定は、カスタム カタログを公開するまで Web サイトに適用されません。カタログの公開については、「カタログを更新および公開する」を参照してください。ユーザーの追加については、「ユーザーを追加する」を参照してください。

関連項目

カタログについて

カスタム カタログを作成する

商品バリエーション レベルで価格を設定する

商品の価格を設定する

カテゴリの商品の価格を設定する

割引キャンペーン項目を作成する


商品価格に割引を適用する

割引は、個別の商品、またはカテゴリのすべての商品に適用できます。また、式を作成して、特定の条件を満たす商品に割引を適用することもできます。たとえば、次の状況で適用される割引を作成できます。

  • 商品の価格が 2,000 円を超えている割引条件式です。 割引条件式は、商品プロパティに基づいています。

  • 商品を 2 点購入した 必要な割引条件基準の一部です。

  • 商品を 2 点購入した 必要な割引条件基準の一部です。

  • 登録済みユーザーである割引資格要件式です。 割引資格要件式は、ユーザー プロファイルとコンテキスト プロファイルに基づいています。

1 つの商品に、複数の割引を同時に適用することはできません。

商品価格に割引を適用するには、割引キャンペーン項目を作成します。商品の割引については、「割引キャンペーン項目を作成する」を参照してください。


カテゴリ階層を作成する

カテゴリ階層を作成するには、カタログ エディタ モジュールを使います。カテゴリ階層を作成すると、カタログの商品を整理しやすくなり、ユーザーも Web サイトを移動しやすくなります。親カテゴリと子カテゴリを割り当てたり、商品を階層的に整理したりできます。たとえば、CDs というカテゴリの子カテゴリとして、Rock、R&B、および Classical を設定できます。また、子カテゴリの子カテゴリを設定することもできます。たとえば、Rock カテゴリの子カテゴリとして、 Pop と Alternative を設定できます。

親カテゴリと子カテゴリを割り当てるには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、親カテゴリまたは子カテゴリを割り当てるカテゴリが含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [カテゴリ] セクションで、親カテゴリまたは子カテゴリを割り当てるカテゴリを選択し、[編集] をクリックします。

  4. [割り当てられたカテゴリ] セクションで、子カテゴリとして割り当てるカテゴリを [利用できる子カテゴリ] ボックスの一覧から選択し、[追加] をクリックします。

    カテゴリが [利用できる子カテゴリ] ボックスの一覧から [割り当てられた子カテゴリ] ボックスの一覧に移動します。

  5. 親カテゴリと子カテゴリの割り当てを保存して [カタログ] 画面に戻るには、ツール バーの [image] をクリックします。

    注

    • 子カテゴリを子カテゴリに割り当てることもできます。この場合は、複数レベルの入れ子が作成されます。

関連項目

カタログについて

カテゴリと商品の関連付けを作成する


カテゴリと商品の関連付けを作成する

カテゴリと商品の関連付けを作成するには、カタログ エディタ モジュールを使います。カテゴリや商品は、ほかのカテゴリや商品と関連付けることができます。たとえば、商品どうしの関連付けでは、ある映画のビデオを購入したユーザーに、同じ映画のサウンドトラックも提供するような関係を考えます。これは明示的な関連付けです。

カテゴリどうしの関連付けでは、カテゴリ間の関連付けを作成できます。たとえば、CD のカテゴリと伝記本のカテゴリの間の関連付けを設定できます。クラシック音楽の CD と作曲家の伝記の両方を販売するような場合に利用できます。

商品グループの関連付けを作成する手順は、商品の関連付けを作成する手順と同じです。ただし、商品グループの関連付けは、商品にバリエーションがある場合に作成します。

注

  • Commerce Server のソリューション サイトでは、関連付けは表示されません。サイト開発者がソリューション サイトを使ってサイトを構築した場合は、カテゴリと商品の関連付けを作成できないことがあります。Web サイトでの関連付けの表示については、サイト開発者に問い合わせてください。

カテゴリの関連付けを作成するには

商品の関連付けを作成するには

カテゴリの関連付けを作成するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、関連付けを作成するカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [カテゴリ] セクションで、関連付けを追加するカテゴリを選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> (カテゴリ)] 画面の [カテゴリの関連付け] セクションで、[新規] をクリックし、次の操作を行います。
    項目 | 操作
    [関連付け] | 関連付けの名前を入力します。
    [項目] | 省略記号 [...] ボタンをクリックし、[商品の選択] ダイアログ ボックスを開きます。

  5. [商品の選択] ダイアログ ボックスで、関連付けを作成するカテゴリを [カテゴリ] ボックスの一覧から選択し、[OK] をクリックします。

    選択したカテゴリが [カテゴリの関連付け] セクションの [項目] ボックスに表示されます。次の図では、これがカテゴリの関連付けであることを示す "カテゴリ" が [項目の種類] ボックスに表示されています。

    図をクリックすると、拡大または縮小します。

  6. [確認] をクリックし、カテゴリの関連付けを保存します。

  7. 変更を保存して [カタログ] 画面に戻るには、ツール バーの 保存して戻る をクリックします。

商品の関連付けを作成するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] の [カタログ エディタ] をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、関連付けを追加する商品を選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> - <商品名> (商品定義)] 画面の [カテゴリの関連付け] セクションで、次の操作を行います。
    項目 | 操作
    [関連付け] | 関連付けの名前を入力します。
    [項目] | 省略記号 [...] ボタンをクリックし、[商品の選択] ダイアログ ボックスを開きます。

  5. [商品の選択] ダイアログ ボックスの [カテゴリ] ボックスの一覧からカテゴリを選択し、[カテゴリ内の商品] ボックスの一覧から商品を選択して、[OK] をクリックします。

[商品の選択] ダイアログ ボックスの [カテゴリ] ボックスの一覧からカテゴリを選択し、[カテゴリ内の商品] ボックスの一覧から商品を選択して、[OK] をクリックします。

  6. [確認] をクリックし、商品の関連付けを保存します。

  7. 変更を保存して [カタログ エディタ - <カタログ名>] 画面に戻るには、ツール バーの [image] をクリックします。


カタログを更新および公開する

Web サイトに追加した新しい情報でサイトを更新するには、カタログ エディタ モジュールを使います。電子商取引ビジネスでは、このような変更はまずテスト用のサイトで行われるのが一般的です。その後、あらかじめ決められたスケジュールに従って、運用サイトに発行されます。運用サイトに変更を行う時期と方法については、システム管理者に問い合わせてください。

カタログ エディタ モジュールを使って、Web サイトのカタログを更新および公開します。変更が必ず Web サイトに反映されるように、変更を行うたびにカタログを更新および公開する必要があります。

カタログを更新および公開するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、ツール バーの [image] をクリックします。

更新したカタログが Web サイトで公開され、すべてのカタログ キャッシュが更新されます。


カタログを取引先に送信する

カタログを取引先に送信するには、カタログ エディタ モジュールを使います。取引先は、BizTalk メッセージ マネージャを使って設定します。カタログを送信する前に設定しておく必要があります。取引先にカタログを送信するようにサイトを設定する方法については、システム管理者に問い合わせてください。

カタログを取引先に送信するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、送信するカタログを選択し、ツール バーの [image] をクリックします。

  3. [ベンダの選択] ダイアログ ボックスで、カタログの送信先となる取引先を選択し、[OK] をクリックします。

関連項目

BizTalk Server を使う

カタログをエクスポートする


カタログをエクスポートする

カタログは、Commerce Server がインストールされているコンピュータの既知のパス、または CommerceCatalogs という名前の共有フォルダにエクスポートできます。カタログをエクスポートすることで、カタログが移動可能になります。たとえば、提携先とカタログを共有したり、カタログの作成と保守を外部に委託できるようになります。

カタログをエクスポートするには、Commerce Server コンピュータ上に共有フォルダを用意する必要があります。共有フォルダの設定はシステム管理者に依頼してください。

カタログは、拡張マークアップ言語 (XML) ファイル形式またはカンマ区切り値 (CSV) ファイル形式でエクスポートできます。

カタログをエクスポートするには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、エクスポートするカタログを選択し、ツール バーの [image] をクリックします。

  3. カタログをエクスポートするファイル形式として、XML 形式と CSV 形式のどちらかをドロップダウン リストから選択します。

  4. カタログをエクスポートするファイル形式として、XML 形式と CSV 形式のどちらかをドロップダウン リストから選択します。

    Commerce Server がインストールされている CommerceCatalogs 共有フォルダにエクスポートする場合は、完全なパスを指定する必要はありません。たとえば、「SportsCatalogs.xml」のように入力できます。

指定した場所にエクスポートされたカタログは、コピーして別の場所で使用できます。

関連項目

カタログについて

カタログを取引先に送信する

カタログをインポートする


カタログ スキーマを管理する

ビジネス ニーズの変化に伴い、カタログ スキーマの変更が必要になる場合もあります。新しいプロパティ定義を追加したり、既存のプロパティ定義を編集したり、不要になったプロパティ定義を削除したりできます。また、新しい商品定義やカタログ定義を追加したり、変更したりすることもできます。

カタログ スキーマを変更すると、変更または削除するプロパティ定義に関連付けられている既存のカテゴリや商品に影響を及ぼすことがあります。たとえば、CD 商品定義に製造元 ID を追加した場合、同じ CD 商品定義を使用しているすべての商品のインスタンスに製造元 ID のボックスが追加されます。

ここでは、次のトピックについて説明します。

  • カタログ スキーマを検索および表示する

  • カタログ スキーマを変更する

  • カタログ スキーマをコピーする

  • カタログ スキーマを削除する


カタログ スキーマを検索および表示する

プロパティ定義 、カテゴリ定義、および商品定義を検索したり表示したりするには、カタログ デザイナ モジュールを使います。

プロパティ定義を検索するには

プロパティ定義を一覧表示するには

カテゴリ定義を一覧表示するには

商品定義を一覧表示するには

プロパティ定義を検索するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [プロパティ定義] をクリックします。

  3. [カタログ デザイナ: プロパティ定義] 画面で、 [image] をクリックして [検索] ボックスを表示します。

  4. [検索対象] ボックスで、ドロップダウン リストからプロパティ定義の特性を選択し、次の操作を行います。
    項目 | 操作
    [名前] | プロパティの名前またはその一部を入力します。
    [種類] | ドロップダウン リストからプロパティ型を選択します。
    [すべての商品の種類に割り当てられている] | ドロップダウン リストの [はい] または [いいえ] をクリックします。[はい] をクリックすると、すべての商品の種類に共通するプロパティだけが検索対象となります。
    [すべての定義] | 既存のすべての定義を検索します。

    注

    • [すべての定義] を選択すると、[以下のリストだけ検索します。] チェック ボックスが無効になり、フィルタがすべて削除され、すべての定義が検査されます。
  5. [検索開始] をクリックします。

    [検索] ボックスの下のリスト ボックスに、検索結果が表示されます。

プロパティ定義を一覧表示するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの [image] をクリックし、[プロパティ定義] をクリックして [カタログ デザイナ: プロパティ定義] 画面を表示します。

    この画面には、カタログにあるすべてのプロパティの定義と型がアルファベット順に表示されます。

カテゴリ定義を一覧表示するには

  • [カタログ] の [カタログ デザイナ] をクリックし、[カタログ デザイナ: カテゴリ定義] 画面を表示します。

    この画面には、カタログにあるすべてのカテゴリ定義が一覧表示されます。

商品定義を一覧表示するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの [image] をクリックし、[商品定義] をクリックして [カタログ デザイナ: 商品定義] 画面を表示します。

    この画面には、カタログにあるすべての商品定義が一覧表示されます。


カタログ スキーマを変更する

カタログ スキーマを変更するには、カタログ デザイナ モジュールを使います。新しいカタログを作成したり、既存のカタログを更新する場合は、カタログ スキーマを変更できます。新しいカタログ用にスキーマを変更するときは、カタログに商品やカテゴリを追加する前に変更する必要があります。

カタログに商品やカテゴリを登録した後でもスキーマは変更できますが、Web サイトでユーザーに表示されるカタログに影響を及ぼす可能性があります。多くの組織では、データベースの概念に詳しい人物がカタログ スキーマを作成します。

カテゴリ定義を変更するには

商品定義を変更するには

プロパティ定義を変更するには

注

  • カタログ スキーマでは、プロパティの名前と型は変更できません。プロパティを一度削除した後、新しい名前または型を指定してプロパティを追加してください。

カテゴリ定義を変更するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログの表示 をクリックし、ドロップダウン リストの [カテゴリ定義] をクリックします。

  3. 変更するカテゴリを選択し、ツール バーの カテゴリ定義を開く をクリックします。

  4. [カテゴリ定義] 画面で、[カテゴリ プロパティ] セクションの [割り当てられたプロパティ] ボックスから変更するプロパティを選択し、次のいずれかの操作を行います。
    • カテゴリ定義にプロパティを追加するには、追加するプロパティを [利用できるプロパティ] ボックスから選択し、[追加＞] をクリックします。必要なプロパティが存在しない場合は、[新規] をクリックして作成できます。

    • カテゴリ定義からプロパティを削除するには、削除するプロパティを [割り当てられたプロパティ] ボックスから選択し、[＜削除] をクリックします。

    • カテゴリに割り当てられているプロパティの順序を変更するには、移動するプロパティを [割り当てられたプロパティ] ボックスから選択し、[1 つ上に移動] または [1 つ下に移動] をクリックしてプロパティの順序を変更します。
  • カテゴリに割り当てられているプロパティの順序を変更するには、移動するプロパティを [割り当てられたプロパティ] ボックスから選択し、[1 つ上に移動] または [1 つ下に移動] をクリックしてプロパティの順序を変更します。

商品定義を変更するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツールバーの カタログ定義の表示 をクリックし、ドロップダウン リストの [商品定義] をクリックします。

  3. 変更したい商品定義を選択し、ツールバーの 商品定義を開く をクリックします。

  4. [カタログ デザイナ: 商品定義] 画面の [商品プロパティ] セクションで、変更するプロパティを [割り当てられたプロパティ] ボックスから選択し、次のいずれかの操作を行います。
    • 商品定義にプロパティを追加するには、追加するプロパティを [利用できるプロパティ] ボックスから選択し、[追加＞] をクリックします。必要なプロパティが存在しない場合は、[新規] をクリックして作成できます。

    • 商品定義からプロパティを削除するには、削除するプロパティを [割り当てられたプロパティ] ボックスから選択し、[＜削除] をクリックします。

    • 商品に割り当てられているプロパティの順序を変更するには、移動するプロパティを [割り当てられたプロパティ] ボックスから選択し、[1 つ上に移動] または [1 つ下に移動] をクリックしてプロパティの順序を変更します。
  5. 変更を保存して [カタログ デザイナ] 画面に戻るには、ツール バーの [image] をクリックします。

プロパティ定義を変更するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ] 画面で、ツールバーの カタログ定義の表示 をクリックし、ドロップダウン リストの [プロパティ定義] をクリックします。

  3. [プロパティ定義] 画面で、変更したいプロパティを選択し、ツールバーの プロパティ定義を開く をクリックします。

  4. [プロパティ定義 - <プロパティ名>] 画面で、次の操作を行います。
    項目 | プロパティ型 | 操作
    [名前] | すべて | このプロパティは変更できません。
    [サイトに表示] | すべて | このチェック ボックスをオンにすると、指定したプロパティが Web サイト上のユーザーに表示されます。
    [表示名] | すべて | このプロパティのラベルとして Web サイトに表示する名前を入力します。たとえば、"ShirtColor" という名前のプロパティであれば、"Color" などのラベルを付けます。
    [フリー テキスト検索可能] テキスト、複数選択、ファイル チェック ボックスをオンにすると、このプロパティに格納されている値が、カタログのフリー テキスト検索の対象になります。

    [フリー テキスト検索可能] チェック ボックスをオンにすると、カタログのフル インデックスにプロパティ定義が追加されます。カタログで検索対象に指定されている項目を変更したときは、フルテキスト インデックスを更新する必要があります。フルテキスト インデックスの更新については、「カタログを更新および公開する」を参照してください。
    [条件指定可能] | すべて | このチェック ボックスをオンにすると、条件指定検索でこのプロパティが使われます。条件指定検索を使うと、ユーザーは特定の商品の検索に役立つ値を選択できます。
    [最小文字数] | テキスト | このプロパティ型の値の最小長を入力します。既定の最小長はゼロ (0) 文字です。ゼロ以外の長さを指定すると、このプロパティは商品定義またはカテゴリ定義の必須プロパティになります。
    [最大文字数] | テキスト | このプロパティ型の値の最大長を入力します。最大長の上限は 3,600 文字です。
    [最小値] | 数値、10 進、貨幣/通貨 | このプロパティの最小値を入力します。既定の最小値はゼロ (0) です。
    [最大値] | 数値、10 進、貨幣/通貨 | このプロパティ型の最大値を入力します。たとえば、通貨のプロパティを追加する場合は、商品に適用する最高金額が収まるように値を指定します。
    [最も早い日付] | 日付/時刻 | プロパティに関連付ける最も早い日付を入力します。たとえば、ユーザーが新しいレコードを注文できる最も早い日付を指定します。
    [最も早い時刻] | 日付/時刻 | プロパティに関連付ける最も早い時刻を 00:00 形式で入力します。たとえば、開始時刻を指定します。
    [最も遅い日付] | 日付/時刻 | プロパティに関連付ける最も遅い日付を入力します。たとえば、ユーザーが販売促進商品を注文できる最も遅い日付を指定します。
    [最も遅い時刻] | 日付/時刻 | プロパティに関連付ける最も遅い時刻を 00:00 形式で入力します。たとえば、期限切れの時刻を指定します。
    [既定値] | テキスト、数値、10 進、貨幣/通貨、日付/時刻、複数選択 | このプロパティ型の既定値を入力します。この値は、追加するプロパティ型によって変わります。
    [すべての商品の種類に割り当てる] | すべて | すべての種類の商品にこのプロパティを割り当てるには、このチェック ボックスをオンにします。名前、説明、重量などの汎用の商品プロパティの場合に指定します。
    [データ ウェアハウスにエクスポート] | すべて | プロパティをデータ ウェアハウスにエクスポートするには、このチェック ボックスをオンにします。データ ウェアハウスにエクスポートしたデータは、レポート処理に利用できます。
    [商品リストに表示] | すべて | 商品リストにこのプロパティを表示するには、このチェック ボックスをオンにします。

  5. 変更を保存して [カタログ デザイナ] 画面に戻るには、ツール バーの [image] をクリックします。


カタログ スキーマをコピーする

既存のプロパティ定義、商品定義、またはカテゴリ定義をコピーするには、カタログ デザイナ モジュールを使います。たとえば、既存の定義によく似た新しい定義を作成するときに、既存の定義をコピーできます。

カテゴリ定義をコピーするには

商品定義をコピーするには

プロパティ定義をコピーするには

カテゴリ定義をコピーするには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [カテゴリ定義] をクリックします。

  3. [カタログ デザイナ: カテゴリ定義] 画面で、コピーするカテゴリを選択し、ツール バーの [image] をクリックします。

  4. [カテゴリ定義: 新規] 画面で、[名前] ボックスに新しいカテゴリ定義の名前を入力します。入力できる文字数は最大 128 文字です。

  5. 新しいカテゴリ定義用に現在のカテゴリ プロパティを変更する必要がある場合は、[割り当てられたプロパティ] ボックスのプロパティを編集します。

  6. 新しいカテゴリ定義を保存して、[カタログ デザイナ: カテゴリ定義] 画面に戻るには、ツールバーの 保存してカテゴリ定義リストに戻るをクリックします 。

商品定義をコピーするには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [商品定義] をクリックします。

  3. [カタログ デザイナ: 商品定義] 画面で、コピーする商品定義を選択し、ツール バーの 商品定義のコピー をクリックします。

  4. [商品定義のプロパティ] セクションの [名前] ボックスに、新しい商品定義の名前を入力します。入力できる文字数は、最大 128 文字です。

  5. 新しい商品定義用に現在の商品プロパティを変更する必要がある場合は、[割り当てられたプロパティ] ボックスでプロパティを変更します。

  6. 新しい商品定義を保存し、[カタログ デザイナ: 商品定義] 画面に戻るには、ツールバーの 保存して商品定義リストに戻る をクリックします。

プロパティ定義をコピーするには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [プロパティ定義] をクリックします。

  3. [カタログ デザイナ: プロパティ定義] 画面で、コピーするプロパティを選択し、ツール バーの [image] をクリックします。

  4. [プロパティ定義: 新規] 画面で、次の操作を行います。
    項目 | プロパティ型 | 操作
    [名前] すべて プロパティの名前を入力します。

    注

    このプロパティを保存した後で、プロパティ名を変更することはできません。
    [サイトに表示] | すべて | このチェック ボックスをオンにすると、指定したプロパティが Web サイト上のユーザーに表示されます。内部で使用する一部のプロパティを非公開にする場合は、このチェック ボックスをオフにします。
    [表示名] | すべて | このプロパティのラベルとして Web サイトに表示する名前を入力します。たとえば、"ShirtColor" という名前のプロパティであれば、"Color" などのラベルを付けます。
    [フリー テキスト検索可能] テキスト、複数選択、ファイル チェック ボックスをオンにすると、このプロパティに格納されている値が、カタログのフリー テキスト検索の対象になります。

    [フリー テキスト検索可能] チェック ボックスをオンにすると、カタログのフル インデックスにプロパティ定義が追加されます。カタログで検索対象に指定されている項目を変更したときは、フルテキスト インデックスを更新する必要があります。フルテキスト インデックスの更新については、「カタログを更新および公開する」を参照してください。
    [条件指定可能] | すべて | このチェック ボックスをオンにすると、条件指定検索でこのプロパティが使われます。条件指定検索を使うと、ユーザーは特定の商品の検索に役立つ値を選択できます。
    [最小文字数] | テキスト | このプロパティ型の値の最小長を入力します。既定の最小長はゼロ (0) 文字です。ゼロ以外の長さを指定すると、このプロパティはプロパティ定義の必須プロパティになります。
    [最大文字数] | テキスト | このプロパティ型の値の最大長を入力します。指定できる最大長の上限は 3,600 文字です。
    [最小値] | 数値、10 進、貨幣/通貨 | このプロパティ型の最小値を入力します。既定の最小値はゼロ (0) です。
    [最大値] | 数値、10 進、貨幣/通貨 | このプロパティ型の最大値を入力します。たとえば、通貨のプロパティを追加する場合は、商品に適用する最高金額が収まるような値を指定します。
    [最も早い日付] | 日付/時刻 | このプロパティの有効期間で最も早い日付を入力します。たとえば、ユーザーが新しいレコードを注文できる最も早い日付を指定します。
    [最も早い時刻] | 日付/時刻 | このプロパティの有効期間で最も早い時刻を 00:00 形式で入力します。たとえば、開始時刻を指定します。
    [最も遅い日付] | 日付/時刻 | このプロパティの有効期間で最も遅い日付を入力します。. たとえば、ユーザーが販売促進商品を注文できる最も遅い日付を指定します。
    [最も遅い時刻] | 日付/時刻 | このプロパティの有効期間で最も遅い時刻を 00:00 形式で入力します。たとえば、期限切れの時刻を指定します。
    [既定値] | テキスト、数値、10 進、貨幣/通貨、日付/時刻、複数選択 | このプロパティ型の既定値を入力します。この値は、追加するプロパティ型によって変わります。
    [すべての商品の種類に割り当てる] | すべて | すべての種類の商品にこのプロパティを割り当てるには、このチェック ボックスをオンにします。
    [データ ウェアハウスにエクスポート] | すべて | このプロパティをデータ ウェアハウスにエクスポートするには、このチェック ボックスをオンにします。データ ウェアハウスにエクスポートしたデータは、レポート処理に利用できます。
    [商品リストに表示] | すべて | 商品リストにこのプロパティを表示するには、このチェック ボックスをオンにします。

  5. 変更を保存して [カタログ デザイナ: プロパティ定義] 画面に戻るには、ツール バーの 保存してプロパティ定義リストに戻る をクリックします。


カタログ スキーマを削除する

プロパティ定義、商品定義、およびカテゴリ定義を削除するには、カタログ デザイナ モジュールを使います。定義を削除する前に、削除する定義がカタログの既存のプロパティ、商品、またはカテゴリによって使用されていないことを確認する必要があります。商品定義やカテゴリ定義を削除する場合、その定義に基づく商品やカテゴリが存在するときは、警告メッセージが表示されます。

カテゴリ定義を削除するには

商品定義を削除するには

プロパティ定義を削除するには

カテゴリ定義を削除するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [カテゴリ定義] をクリックします。

  3. [カタログ デザイナ: カテゴリ定義] 画面で、削除するカテゴリ定義を選択し、ツール バーの [image] をクリックします。

  4. [カテゴリ定義の削除の確認] ダイアログ ボックスの [はい] をクリックして定義を削除します。

商品定義を削除するには

  1. [カテゴリ定義の削除の確認] ダイアログ ボックスの [はい] をクリックして定義を削除します。

  2. [カタログ] の [カタログ デザイナ] をクリックします。

  3. [カタログ デザイナ: カテゴリ定義] 画面で、ツール バーの カタログ定義の表示 をクリックし、ドロップダウン リストの [商品定義] をクリックします。

  4. [カタログ デザイナ: 商品定義] 画面で、削除する商品定義を選択し、ツール バーの 商品定義の削除 をクリックします。

プロパティ定義を削除するには

  1. [カタログ] の [カタログ デザイナ] をクリックします。

  2. [カタログ デザイナ: カテゴリ定義] 画面で、ツールバーの カタログ定義の表示 をクリックし、ドロップダウン リストの [プロパティ定義] を選択します。

  3. [カタログ デザイナ: プロパティ定義] 画面で、削除したいプロパティ定義を選択し、ツールバーの プロパティ定義の削除 をクリックします。

  4. [プロパティ定義の削除の確認] ダイアログ ボックスの [はい] をクリックして定義を削除します。


商品、カテゴリ、カタログ、およびカタログ セットを管理する

既存の商品、カテゴリ、カタログ、およびカタログ セットを表示、検索、編集、削除するには、カタログ エディタ モジュールを使います。

ここでは、次のトピックについて説明します。

  • カタログを一覧表示する

  • カタログのカテゴリを一覧表示する

  • カタログで項目を検索する

  • カタログ プロパティを編集する

  • カテゴリを編集する

  • 商品を編集する

  • カテゴリ階層を編集する

  • 商品バリエーションを編集する

  • カタログ セットを変更する

  • カタログからカテゴリを削除する

  • カタログから商品を削除する

  • カタログを削除する

  • カタログ セットを削除する

  • 商品バリエーションを削除する


カタログを一覧表示する

既存のすべてのカタログを一覧表示するには、カタログ エディタ モジュールを使います。いずれかのカタログを選択し、カタログ名の左側の矢印をクリックすると、選択しているカタログが基本カタログとして作成された、任意のカスタム カタログを表示できます。

既存のカタログを一覧表示するには

  • [カタログ] の [カタログ エディタ] をクリックします。

    [カタログ] 画面が表示され、既存のすべてのカタログが一覧表示されます。


カタログのカテゴリを一覧表示する

選択したカタログのカテゴリとカテゴリ階層を表示できます。カテゴリ間の親子関係を表示すると、カテゴリの追加が必要な箇所や、既存のカテゴリの変更または削除が必要な箇所を特定できます。たとえば、音楽関連のビデオのカテゴリを追加する場合に、カテゴリの一覧を調べて、新しいカテゴリを親カテゴリにするかどうか、または新しいカテゴリを既存のカテゴリに関連付けるかどうかを判断できます。

カタログに割り当てられているカテゴリを一覧表示するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、表示するカテゴリが含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

    [カタログ - <カタログ名>] 画面が表示されます。.カタログに割り当てられているすべてのカテゴリが [カテゴリ] セクションに表示されます。


カタログで項目を検索する

カタログを検索するには、カタログ エディタ モジュールを使います。次の検索が実行できます。

  • プロパティによる検索 特定の値を持つプロパティを検索できます。たとえば、Price プロパティの値が 1,000 円よりも小さく、Color プロパティの値が Red である項目を検索できます。既定では、すべてのプロパティがプロパティによる検索の対象となります。

  • フリーテキスト検索 カタログにプロパティ定義を追加するときに、そのプロパティ定義がフリー テキスト検索の対象になるように指定するには、[フリー テキスト検索可能] チェック ボックスをオンにします。フリー テキスト検索では、カタログ内のプロパティのすべてのインスタンスが取得されます。これらのプロパティ定義はインデックスに記録されます。検索可能に指定されているカタログを変更したときは、フルテキスト インデックスを更新する必要があります。フルテキスト インデックスの更新については、「カタログを更新および公開する」を参照してください。

  • フリーテキスト検索 カタログにプロパティ定義を追加するときに、そのプロパティ定義がフリー テキスト検索の対象になるように指定するには、[フリー テキスト検索可能] チェック ボックスをオンにします。フリー テキスト検索では、カタログ内のプロパティのすべてのインスタンスが取得されます。これらのプロパティ定義はインデックスに記録されます。検索可能に指定されているカタログを変更したときは、フルテキスト インデックスを更新する必要があります。フルテキスト インデックスの更新については、「カタログを更新および公開する」を参照してください。

カタログの商品をプロパティで検索するには

カタログの商品をキーワードで検索するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、検索するカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、[検索方法] ドロップダウン リストの [キーワード検索] をクリックします。

  4. 検索に使用するキーワードを [キーワード] ボックスに入力し、[検索開始] をクリックします。

    キーワード検索の結果が、[商品] テーブルに表示されます。

カタログの商品をプロパティで検索するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、検索するカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、[検索方法] ドロップダウン リストの [プロパティによる検索] をクリックします。

  4. [次の条件に基づく対象] テーブルで、次の操作を行います。
    項目 | 操作
    1 番目のボックス [ここでプロパティを選択します。] | プロパティ型を選択します。
    2 番目のボックス [ここで演算子を選択します。] | 検索の演算子を選択します。

  5. 最後のテキスト ボックスに、検索する値を入力します。

  6. [検索開始] をクリックします。

    図をクリックすると、拡大または縮小します。

関連項目

カタログを更新および公開する


カタログ プロパティを編集する

カタログ プロパティを編集するには、カタログ エディタ モジュールを使います。たとえば、カタログのカテゴリとプロパティの情報や、特定のカタログの開始日と終了日を編集できます。

注

  • カタログの名前は編集できません。

カタログ プロパティを編集するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、編集するカタログを選択し、ツール バーの カタログを開く をクリックします。

    [カタログ - <カタログ名>] 画面が表示されます。.この画面に表示されるプロパティは、Commerce Server によって割り当てられたものを除いて、どれでも編集できます。編集内容を保存して [カタログ] 画面に戻るには、ツール バーの 保存してカタログ リストに戻る をクリックします。

編集を行った後で、編集内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。編集内容の更新および公開については、「カタログを更新および公開する」を参照してください。


カテゴリを編集する

カタログの既存のカテゴリを編集するには、カタログ エディタ モジュールを使います。たとえば、特定のカテゴリに割り当てられている価格を編集できます。編集した価格は、このカテゴリに関連付けられているすべての商品の価格設定に適用されます。

注

  • カテゴリの名前は変更できません。

カテゴリのプロパティを編集するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、編集するカテゴリが含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ エディタ - <カタログ名>] 画面の [カテゴリ] セクションで、編集するカテゴリを [カテゴリ] ボックスの一覧から選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> (カテゴリ)] 画面の [カテゴリ プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [Description] | カテゴリ プロパティの説明を入力します。
    [Image_filename] | Web サイトでこのカテゴリに使用するイメージのファイル名を入力します。
    [Image_width] | イメージの幅 (ピクセル数) を入力します。
    [Image_height] | イメージの高さ (ピクセル数) を入力します。
    [価格] | カテゴリ価格を入力します。
    [検索可能] | このチェック ボックスをオンにすると、サイトを訪問するユーザーがカタログを検索できるようになります。

  5. 現在のいずれかのカテゴリ プロパティを変更する必要がある場合は、[割り当てられたプロパティ] ボックスでプロパティ値を編集します。

  6. 編集内容を保存して [カタログ - <カタログ名>] 画面に戻るには、ツール バーの 保存して戻る をクリックします。

編集を行った後で、編集内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。編集内容の更新および公開については、「カタログを更新および公開する」を参照してください。


商品を編集する

カタログの既存の商品を編集するには、カタログ エディタ モジュールを使います。たとえば、Web サイトに表示される商品のイメージを編集する場合は、新しいイメージに合わせてファイル名を編集できます。

注

  • 商品の名前は編集できません。

商品を編集するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、編集するカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、[商品] ボックスの一覧から編集する商品を選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> - <商品名>(<商品定義>)] 画面で、次の操作を行います。
    項目 | 操作
    [説明] | 商品プロパティの説明を入力します。
    [Image_filename] | Web サイトでこの商品に使用するイメージのファイル名を入力します。
    [Image_width] | イメージの幅 (ピクセル数) を入力します。
    [Image_height] | イメージの高さ (ピクセル数) を入力します。
    [価格] | 必要な場合は、商品の価格を入力します。

    注

    • 画面に表示されるプロパティのボックスは、選択した商品の種類によって異なる場合があります。この画面に表示されるプロパティは、読み取り専用のものと Commerce Server 2000 によって割り当てられたものを除いて、どれでも編集できます。
  5. 変更を保存して [カタログ - <カタログ名>] 画面に戻るには、ツール バーの をクリックします。 保存してカテゴリ プロパティに戻る

編集を行った後で、編集内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。編集内容の更新および公開については、「カタログを更新および公開する」を参照してください。


カテゴリ階層を編集する

選択したカタログの既存のカテゴリ階層を編集できます。密接に関連する 2 つの親カテゴリがあり、一方のカテゴリが他方に論理的に従属する可能性がある場合は、カテゴリの割り当てを変更できます。たとえば、Classical と Composers という名前の 2 つの親カテゴリが存在する場合に、Composers を Classical の子カテゴリにすることができます。

カテゴリ階層を編集するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、編集するカテゴリ階層が含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [カテゴリ] セクションで、編集する階層を持つカテゴリを選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カテゴリ> (商品定義)] 画面の [割り当てられたカテゴリ] セクションで、[カテゴリ] ボックスの一覧からこのサブカテゴリを関連付けるカテゴリを選択します。

  5. 変更を保存して [カタログ - <カタログ名>] 画面に戻るには、ツール バーの をクリックします。 保存してカテゴリ プロパティに戻る

編集を行った後で、編集内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。編集内容の更新および公開については、「カタログを更新および公開する」を参照してください。


商品バリエーションを編集する

既存の商品バリエーションを編集するには、カタログ エディタ モジュールを使います。たとえば、T シャツを販売していて、在庫保管単位 (SKU) 番号を変更する必要が生じた場合は、選択した T シャツの既存のバリエーションを編集できます。

商品バリエーションを編集するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、編集する商品バリエーションが含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、商品バリエーションを編集する商品を選択し、[編集] をクリックします。

  4. [カタログ エディタ: - <商品名> （商品定義）] 画面の [商品のバリエーション] セクションで、編集する商品バリエーションを [商品のバリエーション] ボックスから選択します。

    [商品のバリエーション] セクションに表示されるプロパティのボックスは、編集する商品バリエーションの種類によって異なります。

  5. 各ボックスでプロパティを編集し、[終了] をクリックします。

  6. 編集を保存し、[カタログ – <カタログ名>] 画面に戻るには、ツールバーの 保存してカテゴリ プロパティに戻る をクリックします。

関連項目

商品バリエーションを削除する

商品の価格を設定する


カタログ セットを変更する

既存のカタログ セットを変更できます。既存のカタログ セットに対してカタログの削除や追加を行うと、ユーザーに表示するカタログを変更できます。カタログ セットに対する変更が、個別のカタログの内容に影響を与えることはありません。

カタログ セットを変更するには

  1. [カタログ] の [カタログ セット] をクリックします。

  2. [カタログ セット] 画面で、変更するカタログ セットを選択し、ツール バーの カタログ セットを開く をクリックします。

  3. [カタログ セット] 画面で、必要に応じてカタログ セット プロパティを変更します。

  4. [割り当てられたカタログ] ボックスからカタログを削除する場合は、[削除] をクリックします。

    カタログは [利用できるカタログ] ボックスに戻ります。

  5. 変更を保存して [カタログ セット] 画面に戻るには、ツール バーの [image] をクリックします。

変更を加えた後で、変更内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。変更内容の更新および公開については、「カタログを更新および公開する」を参照してください。


カタログからカテゴリを削除する

カタログからカテゴリを削除するには、カタログ エディタ モジュールを使います。カタログからカテゴリを削除すると、関連付けまたは階層によってそのカテゴリに関連付けられていたすべてのカテゴリが影響を受けます。カテゴリがカテゴリ価格を通じて商品に関連付けられている場合は、カテゴリを削除するとそれらの商品が影響を受けます。たとえば、"たった 500 円" というカテゴリがあり、このカテゴリを価格カテゴリとして使用している 15 枚の CD があるとします。このカテゴリを削除すると、CD の価格は商品レベルで割り当てられた価格に戻ります。

カタログからカテゴリを削除するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、削除するカテゴリが含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [カテゴリ] セクションで、削除するカテゴリを選択し、[削除] をクリックします。

    注意

  4. [カタログ] 画面に戻るには、ツールバーの 保存してカタログ リストに戻る をクリックしてください。

変更を加えた後で、変更内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。変更内容の更新および公開については、「カタログを更新および公開する」を参照してください。

関連項目

カタログにカテゴリを追加する

カテゴリを編集する


カタログから商品を削除する

カタログから商品を削除するには、カタログ エディタ モジュールを使います。たとえば、既に在庫がなく、今後販売する予定もない商品がカタログにある場合は、その商品をカタログから削除できます。

注

  • 商品の関連付けの一部になっている商品を削除すると、関連付けが影響を受けます。

商品を削除するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、削除する商品が含まれているカタログを選択し、ツールバーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、削除する商品を [商品] ボックスの一覧から選択し、[削除] をクリックします。

    注意

    • 商品を削除する場合、削除の前に確認を求められることはありません。商品を誤って削除した場合は、カタログに追加し直す必要があります。
  4. [カタログ] 画面に戻るには、ツールバーの 保存してカタログ リストに戻る をクリックしてください。

関連項目

カタログに商品を追加する

商品を編集する


カタログを削除する

古くなったカタログを削除するには、カタログ エディタ モジュールを使います。

注意

  • 削除するカタログを基本カタログとして使用しているカスタム カタログが存在する場合、カスタム カタログは、関連付けられている基本カタログと共に削除されます。カスタム カタログを保持しておくには、カスタム カタログをエクスポートし、基本カタログを削除した後で、元の Commerce Server データベースにカスタム カタログをインポートする必要があります。

カタログを削除するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、削除するカタログを選択し、ツール バーの カタログの削除 をクリックします。

  3. [削除しますか?] ダイアログ ボックスで、[はい] をクリックしてカタログを削除します。

変更を加えた後で、変更内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。変更内容の更新および公開については、「カタログを更新および公開する」を参照してください。

注意

  • 一度削除したカタログは元に戻せません。

  • カタログは、Web サイトを更新するまでサイトに表示され続けます。

関連項目

カタログをエクスポートする

新しいカタログを作成する

カタログ プロパティを編集する

カタログ セットを変更する

カタログ スキーマを変更する


カタログ セットを削除する

不要になった既存のカタログ セットは削除できます。カタログ セットを削除しても、カタログ セットに含まれるカタログに影響を与えることはありません。削除されるのは、カタログ間のグループ関係だけです。既存のユーザーに関連付けられているカタログ セットを削除すると、ユーザーとの関連付けは消滅します。

カタログ セットを削除するには

  1. [カタログ] の [カタログ セット] をクリックします。

  2. [カタログ セット] 画面で、削除するカタログ セットを選択し、ツール バーの カタログセットの削除 をクリックします。

  3. [削除] ダイアログ ボックスで、[はい] をクリックしてカタログ セットを削除します。


商品バリエーションを削除する

商品バリエーションは、いつでも商品から削除できます。

商品から商品バリエーションを削除するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、削除する商品バリエーションが含まれているカタログを選択し、ツール バーの カタログ セットを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、商品バリエーションを削除する商品を選択し、[編集] をクリックします。

  4. [カタログ エディタ - <商品名> (商品定義)] 画面の [商品バリエーション] セクションで、削除する商品バリエーションを [商品バリエーション] テーブルから選択し、[削除] をクリックします。

    商品バリエーションが [商品バリエーション] テーブルから削除されます。

    注意

    • カタログから商品バリエーションを削除する場合、削除の前に確認を求められることはありません。商品バリエーションを誤って削除した場合は、カタログに追加し直す必要があります。
  5. 削除を保存して [カタログ - <カタログ名>] 画面に戻るには、ツールバーの 保存してカテゴリ プロパティに戻る をクリックします。


カテゴリと商品の関連付けを管理する

カテゴリや商品は、ほかのカテゴリや商品と関連付けることができます。たとえば、商品どうしの関連付けでは、ある映画のビデオを購入したユーザーが、同じ映画のサウンドトラックも購入するような関係を考えます。カテゴリどうしの関連付けでは、CD のカテゴリと伝記本のカテゴリの間の関連付けを設定できます。クラシック音楽の CD と作曲家の伝記の両方を販売するような場合に利用できます。

既存の商品やカテゴリの関連付けは、編集したり削除したりすることができます。映画の最新版のサウンドトラックを追加する場合は、既存のサウンドトラックの商品の関連付けを編集し、新しくリリースされたサウンドトラックをユーザーに提示できます。Web サイトの商品を再構成する場合は、いくつかの商品の関連付けを削除できます。

ここでは、次のトピックについて説明します。

  • カテゴリの関連付けを編集する

  • 商品の関連付けを編集する

  • カテゴリの関連付けを削除する

  • 商品の関連付けを削除する


カテゴリの関連付けを編集する

関連付けに変更がある場合は、いつでもカテゴリの関連付けを編集できます。たとえば、クラシック音楽と作曲家の伝記本の間にカテゴリの関連付けが存在し、伝記の販売をやめて作曲家のドキュメンタリの販売を開始する場合は、関連付けをクラシック音楽とドキュメンタリの間に変更する必要があります。

カテゴリの関連付けを編集するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面の編集したい関連付けを含むカタログを選択し、ツールバーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名> <カテゴリ名>(カテゴリ定義)] 画面の [カテゴリ] セクションで、関連付けを編集するカテゴリを選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> (カテゴリ)] 画面の [カテゴリの関連付け] セクションで、カテゴリの関連付けを編集し、[確認] をクリックして関連付けを保存します。

  5. 編集内容を保存して [カタログ - <カタログ名>] 画面に戻るには、ツール バーの 保存して戻る をクリックします。

編集を行った後で、編集内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。編集内容の更新および公開については、「カタログを更新および公開する」を参照してください。


商品の関連付けを編集する

関連付けに変更がある場合は、いつでも商品の関連付けを編集できます。たとえば、映画のビデオと、同じ映画のサウンドトラックの間に作成した商品の関連付けに、新たにミキシングし直したサウンドトラックを追加する場合は、商品の関連付けを編集します。

商品の関連付けを編集するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、商品の関連付けを編集するカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、関連付けを編集する商品を選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カタログ名> - <商品名> (<商品定義>)] 画面の [商品の関係] セクションで、商品の関連付けを編集し、[確認] をクリックして関連付けを保存します。

  5. 編集内容を保存して [カタログ - <カタログ名>] 画面に戻るには、ツール バーの 保存してカテゴリ プロパティに戻る をクリックします。

編集を行った後で、編集内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。編集内容の更新および公開については、「カタログを更新および公開する」を参照してください。


カテゴリの関連付けを削除する

あるカテゴリの商品の販売をやめたり、Web サイトの商品を再構成するような場合は、いつでもカテゴリの関連付けを削除できます。

カテゴリの関連付けを削除するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、削除するカテゴリの関連付けが含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [カテゴリ] セクションで、関連付けを削除するカテゴリを選択し、[編集] をクリックします。

  4. [カタログ エディタ - <カテゴリ名> (<カテゴリ定義>)] 画面の [カテゴリの関連付け] セクションで、削除する関連付けを選択し、[削除] をクリックします。

    注意

    • カテゴリの関連付けを削除する場合、確認を求められることはありません。関連付けを誤って削除した場合は、カタログに追加し直す必要があります。

変更を加えた後で、変更内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。変更内容の更新および公開については、「カタログを更新および公開する」を参照してください。


商品の関連付けを削除する

商品の関連付けからは、いつでも商品を削除できます。たとえば、Web サイトの商品を再構成する場合に、いくつかの商品の関連付けを削除することがあります。

商品の関連付けを削除するには

  1. [カタログ] の [カタログ エディタ] をクリックします。

  2. [カタログ] 画面で、削除する商品の関連付けが含まれているカタログを選択し、ツール バーの カタログを開く をクリックします。

  3. [カタログ - <カタログ名>] 画面の [商品] セクションで、関連付けを削除する商品を選択し、[編集] をクリックします。

  4. [カタログ エディタ - <商品名> (<商品定義>)] 画面の [商品の関係] セクションで、削除する商品の関連付けを選択し、[削除] をクリックします。

    注意

    • 商品の関連付けを削除する場合、確認を求められることはありません。関連付けを誤って削除した場合は、カタログに追加し直す必要があります。

変更を加えた後で、変更内容が Web サイトに表示されるように、Web サイトを更新して公開する必要があります。変更内容の更新および公開については、「カタログを更新および公開する」を参照してください。


ビジネス デスク注文

注文モジュールは、Commerce Server データベースの既存の注文情報を検索するときや、使われていない保存済みバスケットを削除するときに使います。たとえば、注文状況コードを使って注文が注文処理のどの段階にあるかを追跡し、どの部分で注文が滞っているか、または未解決の問題に直面しているかを特定できます。また、税率や送料を追加してから、Web サイトの情報を更新することもできます。

ここでは、次のトピックについて説明します。

  • 注文管理のワークフロー 注文を管理するためのワークフローについて説明します。

  • 注文について 注文のコンポーネントについて説明します。

  • 注文状況コードを追加する 注文状況コードを追加する方法について説明します。

  • 国/地域コードを追加する 国/地域コードを追加する方法について説明します。

  • 都道府県/州コードを追加する 都道府県/州コードを追加する方法について説明します。

  • 送料をカスタマイズする Microsoft Commerce Server 2000 に用意されている 3 種類の送料と、それらを Web サイトに合わせてカスタマイズする方法について説明します。

  • 税率を追加する 税率テーブルを追加する方法について説明します。

  • Web サイトでトランザクションを発行する 変更済みの注文、新しい税率、および新しい送料など、新しいトランザクション情報や変更したトランザクション情報を Web サイトに公開する方法を説明します。

  • データ コード プロパティを編集する データ コードのプロパティを変更する方法を説明します。

  • バスケットを検索する 保存済みバスケットの表示および並べ替えを行う方法について説明します。

  • バスケットを削除する 使われていない保存済みバスケットを削除する方法について説明します。

  • 注文を検索する、並べ替える 注文の検索および並べ替えを行う方法について説明します。

  • 注文を削除する Commerce Server データベースから注文を削除する方法について説明します。

  • データ コードと税率を管理する データ コードや税率を編集および削除する方法を説明します。


注文管理のワークフロー

次の図は、注文状況コード、国/地域コード、都道府県/州コードの追加、送料のカスタマイズ、および税率の追加のシナリオの例を示します。

注文状況
送料をカスタマイズする
注文状況
注文状況コードを追加する
国/地域コードを追加する
税率を追加する
Web サイトでトランザクションを発行する
都道府県/地域コードを
追加する
新規注文
注文の保存
バスケット
重量で課金
数量で課金
代金で課金
注文状況
送料
税率
トランザクションの発行

  1. 注文状況モジュールで、ユーザーによる Web サイトでの注文を追跡するための注文状況コードを追加します。この手順は、既定の注文状況コードではビジネス上のニーズに対応できない場合にのみ実行してください。

  2. 注文状況モジュールで、ユーザーの送付オプションとして Web サイトに表示する国/地域コードを追加します。

  3. 注文状況モジュールで、ユーザーの送付オプションとして Web サイトに表示する都道府県/州コードを追加します。

  4. 送付方法モジュールで、Web サイトに表示される送料をカスタマイズします。

  5. 税率モジュールで、税率を追加します。

  6. トランザクションの発行モジュールで、Web サイトに加えた変更を公開します。

関連項目

注文について

注文状況コードを追加する

国/地域コードを追加する

都道府県/州コードを追加する

送料をカスタマイズする


注文について

注文状況の情報の表示、注文に関連するデータ コードの管理、および Web サイトからのユーザーの注文の管理を行うには、Commerce Server ビジネス デスクの注文モジュールを使います。たとえば、ユーザーが放棄したバスケットを削除するには、バスケット マネージャ モジュールを使います。税率の追加、および送料のカスタマイズを行うには、注文モジュールを使います。

データ コード

送料

注文

放棄されたバスケット

データ コード

Web サイトに表示されるコードを追加して、ユーザーによる注文を追跡できるようにするには、データ コード モジュールを使います。

注文状況コード

注文コードを使って、注文が注文処理のどの段階にあるかを追跡し、注文がどの部分で滞っているか、または未解決の問題に直面しているかを特定することができます。既定の注文状況コードには、4 (新規注文)、2 (保存済みの注文)、および 1 (バスケット) の 3 つがあります。

ユーザーがバスケットに項目を追加したり、Web サイトから注文を送信すると、注文に注文状況コードが割り当てられます。たとえば、未処理の新しい注文には、状況コード 4 (新規注文) が割り当てられます。注文状況コードは、個々の注文が注文処理のどの段階にあるのかを追跡する場合に役立ちます。

注文状況コードなど、Commerce Server に含まれている既定のコードを使用できる場合もありますが、既定のコードでは不十分で新しいコードが必要な場合は、ビジネス デスクのデータ コード モジュールで追加できます。注文状況コードの追加については、「注文状況コードを追加する」を参照してください。

国/地域コードと都道府県/州コード

国/地域コードと都道府県/州コードを使うと、送付および請求用の地理情報を表示できます。国/地域コードは、サイトで商品を注文するユーザーが商品の送付先として指定する国または地域を識別します。都道府県/州コードは、注文の送付先の都道府県および地域を識別します。

データ コードを追加する場合は、コードを特定の順序で入力する必要があります。

  1. 新しい都道府県/州コードを追加する前に、国/地域コードを追加します。

  2. 都道府県/州コードを追加します。

  3. 税率を設定します。

サイトで商品を注文するユーザーは、送付先などが含まれるプロファイル フォームに記入する必要があります。Web サイト上のプロファイル フォームには、指定した都道府県/州コードと国/地域コードが含まれています。

送料

ユーザーが Web サイトで注文を出せるように、少なくとも 1 つの送料を用意しておく必要があります。Commerce Server 2000 には、3 種類の規定の送料 (重量で課金、数量で課金、および代金で課金) が用意されています。ほかの方法で請求する必要がある場合、またはサードパーティ アプリケーションを提供する配送サービス (UPS、DHL など) を利用する場合は、サイト開発者に問い合わせてください。配送サービスから提供されたサードパーティ アプリケーションを使う必要がある場合は、Commerce Server データベースに国/地域コードを追加する前に、その配送サービスに問い合わせて、使用されている標準の国/地域コード (ドイツは DE、フランスは FR など) を確認してください。送料の詳細については、「送料をカスタマイズする」を参照してください。

カスタム送料またはサードパーティ アプリケーションの追加については、サイト開発者に問い合わせてください。

注文

ユーザーが Web サイトに注文を送信すると、注文は Commerce Server 注文処理パイプラインによって処理されます。注文処理パイプライン (OPP) は、作業のカテゴリを表すいくつかのステージに注文処理を分割します。一般的な OPP には、買物客情報ステージ、支払いステージ、および送料ステージが含まれ、それぞれ適切に処理されます。たとえば、Commerce Server データベースから商品説明と送付先が取得され、税金が計算されます。これらの情報と合計金額は、注文のために Commerce Server データベースに保存されます。

注文状況の情報を確認し、注文ヘッダーや項目情報など、注文に関連するすべての詳細を表示するには、注文状況モジュールを使います。サイトを訪問するユーザーが出した注文を検索できます。たとえば、品目の説明、商品 ID、または注文番号によって、注文を検索できます。また、注文を並べ替えて、探している情報をわかりやすく表示することもできます。たとえば、注文状況やユーザーの姓を基準に注文を並べ替えることができます。

Microsoft BizTalk Server 2000 とビジネス デスクの注文モジュールを併用すると、ユーザーが Commerce Server Web サイトで出した注文を処理できます。たとえば、サイトでコンピュータ ハードウェアを販売しているとします。販売するハードウェアには、自社製品と取引先から供給されている商品の両方があります。BizTalk Server を使うと、このサイトで販売するハードウェアを供給する取引先ごとに、取引契約を作成できます。ユーザーがサイトを訪問し、取引先から供給されている商品のいずれかを注文すると、Commerce Server は注文を処理して BizTalk Server に送信し、BizTalk Server はその商品の取引先に注文を送信します。BizTalk Server とビジネス デスク注文モジュールの統合の詳細については、システム管理者に問い合わせてください。

放棄されたバスケット

ユーザーが購入しようとしている項目は、仮想 "バスケット" に入ります。それらの項目はすべて、支払いの際にバスケットの中に表示されます。サイトからログオフする場合、必ずしもそのバスケットの項目の支払いを行ったり、バスケットを空にする必要はありません。これらの放棄されたバスケットは、管理者が削除するか、またはユーザーが再びログインしてバスケットを空にするまで、Commerce Server データベースに残ります。ユーザーはバスケットを保存して、そのバスケットを Commerce Server データベースに無期限に置いておくことができます。

Commerce Server データベースに放棄または保存された大量のバスケットが置かれていると、収集がつかなくなります。これを避けるため、一定期間以上放棄または保存されたバスケットを定期的に削除する必要があります。バスケット マネージャ モジュールの検索ウィンドウを使うと、フィルタ条件を使って削除するバスケットを検索できます。たとえば、2 週間以上にわたって放棄または保存されているバスケットを検索し、それらのバスケットを削除できます。バスケットの削除の詳細については、「バスケットを削除する」を参照してください。

関連項目

送料をカスタマイズする

データ コード プロパティを編集する

注文状況コードを追加する

国/地域コードを追加する

都道府県/州コードを追加する

バスケットを検索する

注文を検索する、並べ替える


注文状況コードを追加する

注文コードを使って、注文が注文処理のどの段階にあるかを追跡し、注文がどの部分で滞っているか、または未解決の問題に直面しているかを特定することができます。注文状況コードを使うと、注文処理の段階をコードで識別できます。たとえば、ユーザーが 8 週間前に 2 枚の CD と 2 着の T シャツを注文した場合、注文状況コードを確認することによって、その注文が注文処理のどの段階にあるかを追跡できます。既定の注文状況コードには、4 (新規注文)、2 (保存済みの注文)、および 1 (バスケット) の 3 つがあります。

注文状況コードを追加するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [注文状況コード] をクリックします。次に、ツール バーの 追加 をクリックします。

  3. [データ コード – 注文状況コード] 画面で、次の操作を行います。
    項目 | 操作
    [コード] | 作成する注文状況コードを整数で入力します。
    [コード名] | 注文状況コードの名前を入力します。
    [説明] | 注文状況コードの説明を入力します。

  4. 注文状況コードを保存して、新しい注文状況コードの入力を続けるには、ツール バーの 保存して新規作成 をクリックします。

次の新しい注文状況コードを入力できます。

注文状況コードを保存して [注文状況コード] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

注

  • システム管理者は、注文状況コードを追加した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードして変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

注文管理のワークフロー

注文について

国/地域コードを追加する

都道府県/州コードを追加する

データ コードと税率を管理する


国/地域コードを追加する

国/地域コードは、ユーザーがサイトから注文した項目の送付先となる国/地域を識別するために作成します。国/地域コードは、Web サイトに表示される国/地域を識別します。Commerce Server には、米国、日本、ドイツ、カナダなど、いくつかの国/地域コードがあらかじめ用意されています。

注

  • 国/地域に含まれる都道府県/州コードを追加する前に、国/地域コードを Commerce Server データベースに追加する必要があります。データベースに国/地域を追加する前に都道府県/州コードを追加しようとすると、エラー メッセージが表示されます。

  • 配送サービスから提供されたプラグイン アプリケーションを使う必要がある場合は、データベースに国/地域コードを追加する前に、その配送サービスに問い合わせて、使用されている標準の国/地域コード (ドイツは DE、フランスは FR など) を確認してください。

国/地域コードを追加するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [国/地域コード] をクリックします。次に、ツール バーの 追加 をクリックします。

  3. [国/地域コード] 画面で、次の操作を行います。
    項目 | 操作
    [国/地域コード] | 国/地域のコードを入力します。
    [表示名] | 国/地域コードの表示名を入力します。
    [説明] | 必要に応じて、国/地域コードの説明を入力します。

  4. 国/地域コードを保存して [国/地域コード] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

[国/地域コード] 画面に新しい国/地域コードが表示されます。

注

  • システム管理者は、国/地域コードを追加した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

注文管理のワークフロー

注文について

都道府県/州コードを追加する

データ コードと税率を管理する


都道府県/州コードを追加する

注文の送付先の都道府県および地域を識別するには、Commerce Server データベースに都道府県/州コードを追加します。都道府県/州コードは、Web サイトに表示される都道府県と地域を識別します。

注

  • 国/地域に含まれる都道府県/州コードを追加する前に、国/地域コードを Commerce Server データベースに追加する必要があります。データベースに国/地域を追加する前に都道府県/州コードを追加しようとすると、エラー メッセージが表示されます。国/地域コードの追加の詳細については、「国/地域コードを追加する」を参照してください。

都道府県/州コードを追加するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [都道府県/州コード] をクリックします。次に、ツール バーの 追加 をクリックします。

  3. [都道府県/州コード] 画面で、次の操作を行います。
    項目 | 操作
    [都道府県/州コード] | 都道府県/州のコードを入力します。
    [表示名] | 都道府県/州コードの表示名を入力します。
    [説明] | 必要に応じて、都道府県/州コードの説明を入力します。

  4. 変更を保存して [都道府県/州コード] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

Commerce Server データベースに新しい都道府県/州コードが保存されます。

注

  • システム管理者は、都道府県/州コードを追加した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。

関連項目

注文管理のワークフロー

注文について

国/地域コードを追加する

データ コードと税率を管理する


送料をカスタマイズする

Commerce Server ビジネス デスクでは、次の 3 種類の送料をサポートしています。

  • 重量で課金 注文の重量で送料を請求します。重量の範囲に対して料金を指定するには、この方法を使います。たとえば、重量が 1 ～ 1.5 kg の商品の送料を 400 円に設定したとします。重量が 5 キロの商品の送料は 800 円に設定できます。

    注

    • 重量で請求するには、カタログ内のすべての商品について重量が定義されている必要があります。重量が定義されていない商品があると、Web サイトでこのオプションが正しく機能しません。商品定義、およびカタログへの商品の追加については、「カタログに商品を追加する」を参照してください。
  • 数量で課金 注文された商品の数量で送料を請求します。商品の正確な個数または数量の範囲のいずれかに対して料金を指定できます。たとえば、商品が 3 個までの注文の送料を 200 円に設定したとします。4 個以上の商品を含む注文の場合は、送料を 400 円に設定できます。

  • 代金で課金 注文の代金で送料を請求します。たとえば、総額 7,000 円になる 4 枚の CD の注文の送料を 300 円に設定したとします。1,799 円の CD 1枚の注文の場合は、送料を 200 円に設定できます。

また、送付方法プロパティを変更することもできます。たとえば、運賃が変更された場合、送料ごとにコストを変更できます。

さまざまな送付オプションを用意している配送サービス (UPS や Federal Express など) や、重量と地域で料金を計算する配送サービス (UPS など) を使っている場合は、その配送サービスから提供されるサードパーティ製パイプライン コンポーネントを使う必要があります。カスタム送料、またはサードパーティ製パイプライン コンポーネンのインストールについては、システム管理者に問い合わせてください。

重量で課金する送料を追加するには

数量で課金する送料を追加するには

代金で課金する送料を追加するには

送付方法プロパティを編集するには

重量で課金する送料を追加するには

  1. [注文] の [送付方法] をクリックします。

  2. [送付方法] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [重量で課金] をクリックします。

  3. [重量で課金 - 新規] 画面の [送付方法プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 送料の名前を入力します。
    [説明] | 送料の説明を入力します。
    [有効] | この送料を有効にするには、このチェック ボックスをオンにします。送料を Web サイトに表示するには、ここで [はい] をクリックして、その送料を有効にする必要があります。

  4. [料金] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [重量 (～まで)] | 送料に対応する重量を入力します。
    [送料] | 送料を入力します。

  5. [確認] をクリックします。

  6. すべての送料を入力し終わったら、送料リストの最後の行 ([<入力された最大値> を超える]) をクリックし、[編集] をクリックします。

    重要

    • 送料を保存するには、[料金] の下の最後の行を編集する必要があります。
  7. この送料の最高金額を入力し、[確認] をクリックします。

  8. 送料を保存して [送付方法] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

重量で課金する送料が保存されます。

注

  • 送料を重量で課金するには、すべてのカタログのすべての商品に重量が定義されていることが必要です。つまり、商品の商品定義ごとに Weight プロパティが割り当てられている必要があります。商品定義の追加の詳細については、「商品定義を追加する」を参照してください。

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。

数量で課金する送料を追加するには

  1. [注文] の [送付方法] をクリックします。

  2. [送付方法] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [数量で課金] をクリックします。

  3. [数量で課金 - 新規] 画面の [送付方法プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 送料の名前を入力します。
    [説明] | 送料の説明を入力します。
    [有効] | この送料を有効にするには、このチェック ボックスをオンにします。送料を Web サイトに表示するには、ここで [はい] をクリックして、その送料を有効にする必要があります。

  4. [料金] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [数量 (～まで)] | 送料に対応する数量を入力します。
    [送料] | 送料を入力します。

  5. [確認] をクリックします。

  6. すべての送料を入力し終わったら、送料リストの最後の行 ([<入力された最大値> を超える]) をクリックし、[編集] をクリックします。

    重要

    • 送料を保存するには、[料金] の下の最後の行を編集する必要があります。
  7. この送料の最高金額を入力し、[確認] をクリックします。

  8. 送料を保存して [送付方法] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

数量で課金する送料が保存されます。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。

代金で課金する送料を追加するには

  1. [注文] の [送付方法] をクリックします。

  2. [送付方法] 画面で、ツール バーの 追加 をクリックし、ドロップダウン リストの [代金で課金] をクリックします。

  3. [代金で課金 - 新規] 画面の [送付方法プロパティ] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 送料の名前を入力します。
    [説明] | 送料の説明を入力します。
    [有効] | この送料を有効にするには、このチェック ボックスをオンにします。送料を Web サイトに表示するには、ここで [はい] をクリックして、その送料を有効にする必要があります。

  4. [料金] セクションの [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [代金 (～まで)] | 送料に対応する代金を入力します。
    [送料] | 送料を入力します。

  5. [確認] をクリックします。

  6. すべての送料を入力し終わったら、送料リストの最後の行 ([<入力された最大値> を超える]) をクリックし、[編集] をクリックします。

    重要

    • 送料を保存するには、[料金] の下の最後の行を編集する必要があります。
  7. この送料の最高金額を入力し、[確認] をクリックします。

  8. 送料を保存して [送付方法] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

代金で課金する送料が保存されます。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。

送付方法プロパティを編集するには

  1. [注文] の [送付方法] をクリックします。

  2. [送付方法] 画面で、編集する送料を選択し、ツール バーの [image] 開く をクリックします。

  3. [<請求方法>で課金 - <請求方法の名前>で開きます] 画面で、送料のプロパティを編集します。

  4. 編集内容を保存して [送付方法] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集した送料が保存されます。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。

関連項目

注文管理のワークフロー

注文について

Web サイトでトランザクションを発行する

データ コードと税率を管理する


税率を追加する

税金の額は国/地域や都道府県/州によって異なり、税金がまったくかからない場合もあります。国/地域や都道府県/州に対応する税率を追加するには、税率モジュールを使います。

注

  • 税率を追加する前に、国/地域コードと都道府県/州コードを設定しておく必要があります。国/地域コードと都道府県/州コードの追加の詳細については、「国/地域コードを追加する」および「都道府県/州コードを追加する」を参照してください。

税率を追加するには

  1. [注文] の [税率] をクリックします。

  2. [税] 画面の [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [国/地域] | ドロップダウン リストから国/地域を選択します。
    [都道府県/州] | ドロップダウン リストから都道府県/州を選択します。
    [税率] | 小数を使ったパーセンテージの形式で税率を入力します。たとえば、税率が 8.6% の場合は、「8.6」と入力します。

    注

    • 都道府県/州ごとに設定された税率は、その国/地域の都道府県/州全体に対して設定された税率より優先されます。
  3. [確認] をクリックします。

  4. 税率を保存して [ビジネス デスクのようこそ] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

税率が保存されます。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。

関連項目

注文管理のワークフロー

注文について

データ コードと税率を管理する

Web サイトでトランザクションを発行する


Web サイトでトランザクションを発行する

変更された注文、新しい税率や送料など、新たに追加した情報についてその場でサイトを更新するには、トランザクションの発行モジュールを使います。

注

  • 国/地域コード、都道府県/州コード、注文状況コードを発行した場合は、システム管理者がメモリからアプリケーションをアンロードする必要があります。トランザクションの発行モジュールは使用しないでください。

税金、送料、および注文情報を公開するには

  1. [注文] の [トランザクションの発行] をクリックします。

[トランザクションの発行] 画面には、アクティブなキャッシュだけが表示されます。画面にキャッシュが表示されない場合は、公開する情報がありません。

  2. アクティブなキャッシュの一覧から、サイトで更新するキャッシュを選択し、ツール バーの カタログの発行 をクリックします。

新規注文、変更された注文、税金、および送料など、すべての注文情報がサイト上で直ちに更新されます。

関連項目

注文について

送料をカスタマイズする

税率を追加する


データ コード プロパティを編集する

選択したデータ コードのプロパティを表示し、それらのプロパティを編集することができます。ただし、コードの実際の数値を編集することはできません。データ コードの削除の詳細については、「データ コードと税率を管理する」を参照してください。

注意

  • 誤ってデータ コードを変更した場合、間違いを修正するには、変更したデータ コードに既存のデータ コードが使用していない番号を割り当てます。次に、前のデータ コード番号を追加し直して、誤って追加した番号を置き換えます。

データ コード プロパティを編集するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、表示するデータ コードの種類をドロップダウン リストから選択します。

  3. 編集するデータ コードを選択し、ツール バーの 開く をクリックします。

  4. [<データ コード>] 画面で、データ コード プロパティを編集し、ツール バーの 保存して前の画面に戻る をクリックします。

編集したデータ コードが保存されます。

注

  • システム管理者は、データ コードを編集した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。

  • また、Web サイトでデータ コードの変更を実装する場合は、システム管理者に問い合わせてください。

関連項目

注文について


バスケットを検索する

既存のバスケットは、日付や組織で検索できます。また、現在 Web サイトにあるすべてのバスケットを表示することもできます。最後にアクセスされた日付でバスケットを並べ替えると、どのバスケットが放棄されているかを判断し、それらを削除することができます。

バスケットを並べ替えるには

  1. [注文] の [バスケット マネージャ] をクリックします。

  2. [バスケット マネージャ] 画面の [検索条件] ボックスの下向き矢印をクリックし、ドロップダウン リストから次のいずれかの項目を選択します。
    項目 | 操作
    [最終アクセス日] 日付で検索するには
    • ドロップダウン リストの [次の日から] をクリックします。日付の範囲を入力するか、[次の日から] および [次の日まで] ドロップダウン カレンダーから日付を選択します。

      または

    • ドロップダウン リストの [次の日以前] をクリックします。日付を入力するか、ドロップダウン カレンダーから選択します。
    [組織] | 組織で検索するには、組織名を入力します。
    [すべてのバスケット] | Commerce Server データベースのすべてのバスケットを、ユーザーの姓の順に一覧で表示します。

  3. [検索開始] をクリックします。

[バスケット マネージャ] 画面の一覧で、結果を確認できます。

関連項目

注文について

バスケットを削除する


バスケットを削除する

放棄されたバスケットは Commerce Server データベースから削除できます。通常は、ユーザーが支払いをせずに、またはバスケットを空にせずにサイトからログオフした場合、バスケットを削除します。

バスケットを削除するには

  1. [注文] の [バスケット マネージャ] をクリックします。

  2. 放棄されたバスケットを [最終アクセス日] で検索するには、日付の条件として [次の日以前] を選択し、日付を入力するか、またはドロップダウン カレンダーから選択します。次に、[検索開始] をクリックします。

  3. バスケットのリストで、削除するバスケットを選択し、ツール バーの 削除 をクリックします。

  4. [削除] の確認ダイアログ ボックスで [はい] をクリックします。

バスケットが削除されます。

注意

削除したバスケットは元に戻せません。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。

関連項目

注文について

バスケットを検索する

データ コードと税率を管理する


注文を検索する、並べ替える

サイトを訪問するユーザーが出した注文を検索できます。8 つのオプションを使って検索対象を絞り込むことも、すべての注文を表示することもできます。既定では、番号を基準とする降順で表示されますが、並べ替えの順序を変更することもできます。たとえば、注文状況やユーザーの姓を基準に注文を並べ替えることができます。

注文を検索するには

リストの注文を並べ替えるには

注文を検索するには

  1. [注文] の [注文状況] をクリックします。

  2. [注文状況] 画面の [検索条件] ボックスで、次のいずれかを選択します。
    項目 | 操作
    [注文日] | 特定の日までに、または特定の日以降に発注された注文をすべて一覧に表示するときに選択します。日付を入力するか、またはドロップダウン カレンダーから選択します。
    [ユーザー名] | 特定のユーザーが作成した注文をすべて一覧に表示するときに選択します。[名] ボックスと [姓] ボックスには、ユーザーの名、姓、またはその両方の最初の数文字を入力してください。
    [注文番号] | 特定の注文番号の注文を一覧に表示するときに選択します。[注文番号] ボックスに、注文番号を正確に入力してください。
    [組織] | 特定の組織による注文をすべて一覧に表示するときに選択します。[組織] ボックスに、組織名を入力してください。
    [注文書番号] | 特定の注文書 (PO) 番号からの注文をすべて一覧に表示するときに選択します。[注文書番号] ボックスに、注文書番号を正確に入力してください。
    [商品 ID] | 特定の商品 ID 番号が含まれる注文をすべて一覧に表示するときに選択します。[商品 ID] ボックスに、商品 ID 番号を正確に入力してください。
    [品目の説明] | 特定の説明のある注文をすべて一覧に表示するときに選択します。
    [情報] | すべての検索条件を開くときに選択します。注文の詳細の一部またはすべてを入力できます。
    [すべての注文] | 保存されている注文で、未処理のものをすべて表示するときに選択します。

  3. [検索開始] をクリックします。

[注文状況] 画面に検索結果が表示されます。

リストの注文を並べ替えるには

  1. [注文] の [注文状況] をクリックします。

  2. 注文のリストで、注文の並べ替えに使用する列見出しをクリックします。

列見出しをクリックすると、リストが動的に並べ替えられます。

関連項目

注文について

注文を削除する


注文を削除する

既存の注文は、注文状況モジュールを使って削除できます。これは、たとえば注文をキャンセルする必要があるとき、ユーザーが誤って重複する注文を作成したとき、ユーザーの求める項目が入手できないときなどに役立ちます。

注文を削除するには

  1. [注文] の [注文状況] をクリックします。

  2. 削除する注文を注文結果リストから選択し、ツール バーの 削除 をクリックします。

  3. 削除の確認を求めるダイアログ ボックスで、[OK] をクリックして削除を確認します。

注文がサイトから削除されます。

注意

  • 削除した注文は元に戻せません。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。

関連項目

注文について

注文を検索する、並べ替える

データ コードと税率を管理する


データ コードと税率を管理する

データ コードや税率を管理するには、データ コード モジュールと税率モジュールを使います。

ここでは、次のトピックについて説明します。

  • 注文状況コードを編集する

  • 注文状況コードを削除する

  • 国/地域コードを編集する

  • 国/地域コードを削除する

  • 都道府県/州コードを編集する

  • 都道府県/州コードを削除する

  • 税率を編集する

  • 税率を削除する


注文状況コードを編集する

データ コード モジュールを使うと、既存の注文状況コードの名前と説明を編集できます。

注文状況コードを編集するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの をクリックし、ドロップダウン リストの [注文状況コード] をクリックします。

  3. 編集する注文状況コードを選択し、ツール バーの 開く をクリックします。

  4. [注文状況コード - <注文状況コード>] 画面で、次の操作を行います。
    項目 | 操作
    [コード名] | 注文状況コードの名前を新しく入力します。
    [説明] | 注文状況コードの説明を新しく入力します。

  5. 編集内容を保存して [注文状況コード] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集した注文状況コードが保存されます。

注

  • [コード] ボックスでは、実際のコード番号は編集できません。コード番号を変更する場合は、注文状況コードを削除し、[コード] ボックスで必要な変更を行った新しいコードを追加する必要があります。注文状況コードの削除および追加の詳細については、「注文状況コードを削除する」および「注文状況コードを追加する」を参照してください。

  • システム管理者は、注文状況コードを編集した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。


注文状況コードを削除する

既存の注文状況コードは、データ コード モジュールを使って削除できます。これは、たとえば、特定のオブジェクトの識別に注文状況コードを必要としない場合などに役立ちます。

注文状況コードを削除するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [注文状況コード] をクリックします。

  3. 削除する注文状況コードを選択し、ツール バーの 削除 をクリックします。

  4. 確認用の [注文状況コード] ダイアログ ボックスで [OK] をクリックします。

注文状況コードがサイトから削除されます。

注意

  • 削除した注文状況コードは元に戻せません。削除した注文状況コードが必要な場合は、コードを作成し直す必要があります。

注

  • システム管理者は、注文状況コードを削除した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。


国/地域コードを編集する

データ コード モジュールを使うと、既存の国/地域コードの名前と説明を編集できます。

国/地域コードを編集するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [国/地域コード] をクリックします。

  3. 編集する国/地域コードを選択し、ツール バーの 開く をクリックします。

  4. [国/地域コード - <国>] 画面で、次の操作を行います。
    項目 | 操作
    [表示名] | 国/地域コードの表示名を入力します。
    [説明] | 必要に応じて、国/地域コードの説明を入力します。

  5. 編集内容を保存して [国/地域コード] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集した国/地域コードが保存されます。

注

  • [コード] ボックスでは、実際のコード番号は編集できません。コード番号を変更する場合は、国/地域コード全体を削除し、[コード] ボックスで必要な変更を行った新しいコードを追加する必要があります。国/地域コードの削除および追加の詳細については、「国/地域コードを削除する」および「国/地域コードを追加する」を参照してください。

  • システム管理者は、国/地域コードを編集した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。


国/地域コードを削除する

既存の国/地域コードは、データ コード モジュールを使って削除できます。これは、たとえば、特定の国や地域に商品を送付していないときに、そのオプションを非表示にする場合などに役立ちます。

国/地域コードを削除するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [国/地域コード] をクリックします。

  3. 削除する国/地域コードを選択し、ツール バーの 削除 をクリックします。

  4. 確認用の [関連コードの削除] ダイアログ ボックスで [OK] をクリックします。

  5. 確認用の [国/地域コード] ダイアログ ボックスで [OK] をクリックします。

国/地域コードがサイトから削除されます。

注意

  • 国/地域コードを削除すると、その国/地域に関連付けられた都道府県/州コードもすべて削除されます。

  • 削除した国/地域コードは元に戻せません。削除した国/地域コードが必要な場合は、コードを作成し直す必要があります。

注

  • システム管理者は、国/地域コードを削除した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。


都道府県/州コードを編集する

データ コード モジュールを使うと、既存の都道府県/州コードの名前と説明を編集できます。

都道府県/州コードを編集するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [都道府県/州コード] をクリックします。

  3. 編集する都道府県/州コードを選択し、ツール バーの 開く をクリックします。

  4. [都道府県/州コード - <都道府県/州>] 画面で、次の操作を行います。
    項目 | 操作
    [表示名] | 都道府県/州コードの表示名を入力します。
    [説明] | 必要に応じて、都道府県/州コードの説明を入力します。

  5. 編集内容を保存して [都道府県/州コード] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集した都道府県/州コードが保存されます。

注

  • [コード] ボックスでは、実際のコード番号は編集できません。コード番号を変更する場合は、都道府県/州コードを削除し、[コード] ボックスで必要な変更を行った新しいコードを追加する必要があります。都道府県/州コードの削除および追加の詳細については、「都道府県/州コードを削除する」および「都道府県/州コードを追加する」を参照してください。

  • システム管理者は、都道府県/州コードを編集した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。


都道府県/州コードを削除する

既存の都道府県/州コードは、データ コード モジュールを使って削除できます。これは、たとえば、特定の都道府県/州に商品を送付していないときに、そのオプションを非表示にする場合などに役立ちます。

都道府県/州コードを削除するには

  1. [注文] の [データ コード] をクリックします。

  2. [注文状況コード] 画面で、ツール バーの 表示 をクリックし、ドロップダウン リストの [都道府県/州コード] をクリックします。

  3. [都道府県/州コード] 画面で、削除するコードを選択し、ツール バーの 削除 をクリックします。

  4. 確認用の [都道府県/州コード] ダイアログ ボックスで [OK] をクリックします。

都道府県/州コードがサイトから削除されます。

注意

  • 削除した都道府県/州コードは元に戻せません。削除した都道府県/州コードが必要な場合は、コードを作成し直す必要があります。

注

  • システム管理者は、国/地域コードを削除した後で、各 Web サーバーのメモリから Commerce Server アプリケーションをアンロードし、変更を有効にする必要があります。詳細については、Commerce Server 2000 のヘルプの「メモリからアプリケーションをアンロードする」を参照してください。


税率を編集する

税率モジュールを使うと、既存の税率を編集できます。これは、たとえば、政府が税率を変更した場合などに役立ちます。

税率を編集するには

  1. [注文] の [税率] をクリックします。

  2. 編集する税率を選択し、[編集] をクリックします。

  3. 税率を編集し、[確認] をクリックします。

  4. 編集内容を保存してビジネス デスクの [ようこそ] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集した税率が保存されます。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。


税率を削除する

税率モジュールを使うと、既存の税率を削除できます。これは、たとえば、政府が税を廃止した場合などに役立ちます。

税率を削除するには

  1. [注文] の [税率] をクリックします。

  2. 削除する税率を選択し、[削除] をクリックします。

  3. 変更を保存して [ビジネス デスクへようこそ] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

税率がサイトから削除されます。

注意

  • 削除した税率は元に戻せません。削除した税率が必要な場合は、コードを作成し直す必要があります。

注

  • サイトを更新するには、トランザクションの発行モジュールを使う必要があります。トランザクションの発行の詳細については、「Web サイトでトランザクションを発行する」を参照してください。


ビジネス デスクユーザー

Commerce Server 2000 の Web サイトでのデータの収集を管理するには、ユーザー モジュールを使います。たとえば、ユーザーから収集するデータや、データ ウェアハウスにエクスポートするデータなどを定義することができます。ユーザー モジュールは、ユーザー プロファイルと組織プロファイルを管理するとき、たとえば、ユーザー パスワードや組織の管理連絡先を変更するときにも使用します。

ここでは、次のトピックについて説明します。

  • ユーザー管理のワークフロー ユーザー プロファイルと組織プロファイルの管理、プロファイル定義のデザイン、およびサイト用語の編集のワークフローについて説明します。

  • ユーザーについて ユーザー プロファイル、組織プロファイル、プロファイル定義、およびサイト用語について説明します。また、Commerce Server でそれらを扱う方法についても説明します。

  • サイト用語を追加する 新しいサイト用語を追加する方法について説明します。

  • サイト用語グループを追加する 新しいサイト用語グループを追加する方法について説明します。

  • プロファイル定義にプロパティを追加する プロファイル定義に新しいプロパティを追加する方法について説明します。

  • プロファイル定義にプロパティ グループを追加する プロファイル定義にプロパティ グループを追加してプロパティを整理する方法について説明します。

  • プロファイル定義への変更内容を Web サイトに発行する プロファイル定義への変更内容を Web サイトと同期させる方法について説明します。

  • ユーザーを追加する Web サイトに新しいユーザー プロファイルを追加する方法について説明します。

  • ユーザー プロファイルの一覧をインポートする ユーザー プロファイルの一覧をリスト マネージャ モジュールからユーザー モジュールにインポートする方法について説明します。

  • 組織を追加する Web サイトに新しい組織プロファイルを追加する方法について説明します。

  • ユーザー パスワードをリセットする 登録済みユーザーのパスワードをリセットする方法について説明します。

  • サイト用語とサイト用語グループを管理する サイト用語とサイト用語グループを編集、整理、および削除する方法について説明します。また、サイト用語から用語 (値) を削除する方法についても説明します。

  • プロファイル定義を管理する プロファイル定義を検索、コピー、および編集する方法と、プロファイル プロパティを削除する方法について説明します。

  • ユーザーを管理する ユーザー プロファイルを編集、検索、コピー、および削除する方法について説明します。

  • 組織を管理する 組織プロファイルを検索、コピー、編集、および削除する方法について説明します。


ユーザー管理のワークフロー

次の図は、ユーザー プロファイルと組織プロファイルの管理、プロファイル定義のデザイン、およびサイト用語の編集のシナリオの例を示しています。

プロファイルの発行
プロファイル定義への変更内容を Web サイトに発行する
プロファイル デザイナ
サイト用語を追加する
プロファイル定義にプロパティを追加する
組織を追加する
ユーザーを追加する
カタログ デザイナ
組織
プロパティ定義を追加する
キャンペーン式
ユーザー
対象式を作成する
サイト用語エディタ

  1. 新しいサイト用語を追加するには、サイト用語エディタ モジュールを使います。追加したサイト用語をプロファイル定義で使うと、そのプロパティに対するユーザー入力を制限できます。

  2. プロファイル定義に新しいプロパティを追加するには、プロファイル デザイナ モジュールを使います。

  3. プロファイル定義への変更内容をサイトに発行するには、プロファイルの発行モジュールを使います。

  4. Web サイトに新しいユーザー プロファイルを追加するには、ユーザー モジュールを使います。

  5. Web サイトに新しい組織プロファイルを追加するには、組織モジュールを使います。


ユーザーについて

プロファイル定義、ユーザー プロファイル、組織プロファイル、およびサイト用語を管理するには、ユーザー モジュールを使います。たとえば、サイト用語を使って、ユーザーが好きな色を選ぶときに選択できる色を制限できます。収集したユーザー プロファイル データの格納先や、データ ウェアハウスにエクスポートするユーザー プロファイル データの種類を定義できます。ユーザー オブジェクト プロファイル定義にプロパティを追加し、収集されたデータに基づいて、広告や割引を配信するユーザーを絞り込むことができます。

ここでは、次のトピックについて説明します。

  • ユーザー

  • 組織

  • プロファイル

  • プロファイル デザイナ

  • サイト用語エディタ


ユーザー

サイトを訪れるゲスト ユーザーと登録済みユーザーに関する情報を入力および管理するには、ユーザー モジュールを使います。たとえば、パスワードを忘れた登録済みユーザーのために、パスワードを変更することができます。ユーザーに関する情報を収集するには、ユーザー モジュールでユーザー オブジェクト プロファイル定義を使います。プロファイル デザイナを使うと、サイトのニーズに合わせて、ユーザー オブジェクト プロファイル定義をカスタマイズできます。

Commerce Server がサポートするユーザーには次の 2 種類があります。

  • ゲスト ユーザー Web サイトを訪問しているときに個人情報を提供しないユーザーです。

  • 登録済みユーザー Web サイトにサインアップしてアカウントを取得しているユーザーで、通常はログイン名とパスワードを持ちます。登録済みユーザーは、サイトとより簡単かつ迅速に対話できるように、追加情報を提供することがあります。

ゲスト ユーザーと登録済みユーザーを識別して Commerce Server データベース内のユーザー プロファイルに関連付けるためには、Cookie という機能を使います。システム管理者は、Cookie が自動的に発行されるように、Commerce Server を設定できます。ユーザーが、Cookie を拒絶するようにシステムを設定している場合、Commerce Server ではこのようなユーザーにグローバル一意識別子 (GUID) を割り当てます。GUID を使うと、再訪問しているユーザーを識別できます。

システム管理者は、Commerce Server がデータベースに収集したユーザー データと Web サーバーのログ ファイルを、データ ウェアハウスにインポートします。インポートが終了したら、その情報に基づいたレポートを実行して、ユーザーの特性と行動を分析できます。たとえば、レポートを実行して、ユーザー統計情報、商品に対する嗜好、および購買行動を分析できます。

ユーザーのレポートは、リスト マネージャにエクスポートして、ダイレクト メール キャンペーンのメーリング リストとして使用できます。また、リスト マネージャからユーザー モジュールにインポートすれば、ユーザー情報を更新できます。ユーザーのレポートのリスト マネージャへのインポートは、レポート モジュールから行うことができます。また、ユーザーごとに電子メール アドレスと GUID が先頭 2 つのフィールドとして記載されている ASCII 区切りリストからインポートすることもできます。

次の図は、ユーザー データの流れを示します。レポートの実行に始まり、メーリング リストにエクスポートされたり、Web サイトの更新に使用されます。

ユーザー リストのインポートとユーザー プロファイルの変更
静的 (ユーザー)
レポートのエクスポート
レポート
リスト マネージャ
ユーザー
Web サイトで利用
可能な変更済み
ユーザー データ
リスト マネージャに
インポートされた ASCII
区切りのユーザー リスト
ユーザー リストの
ユーザーの編集
リスト マネージャからの
ユーザー リストのインポート
リスト マネージャにエクス
ポートされたユーザー リスト

関連項目

リストをインポートおよびエクスポートする

ユーザー プロファイルの一覧をインポートする

ユーザーを編集する

複数のユーザーを編集する


組織

サイトに組織を追加して組織に関する情報を指定するには、組織モジュールを使います。組織とは、部門や課などの会社内の業務単位、または取引先となる外部企業のことです。ビジネス デスクでは、組織は、ビジネス情報交換の送付元または送付先としての役割を担っています。

Commerce Server に BizTalk Server を統合している場合は、Commerce Server の Web サイトで出された注文を、BizTalk Server と Commerce Server を併用して処理できます。たとえば、自社の在庫品と取引先の在庫品の両方を Commerce Server の Web サイトから販売できます。BizTalk Server を使うと、サイトで販売する商品の供給元となる取引先ごとに、取引契約を作成できます。取引先から供給される商品が注文されると、Commerce Server はその注文を処理して BizTalk Server に送信します。BizTalk Server は、その商品の供給元である取引先に注文を送信します。BizTalk Server については、「BizTalk Server を使う」を参照してください。

組織プロファイルを追加、削除、および管理するには、組織モジュールを使います。組織を追加するときには、その組織に関する情報を指定できます。たとえば、主な連絡先の名前、住所、電話番号、購買マネージャの名前、その組織で利用できるカタログ セットなどを指定できます。組織に関する情報を収集するには、組織モジュールで組織プロファイル定義を使います。プロファイル デザイナ モジュールを使うと、サイトのニーズに合わせて、組織プロファイル定義をカスタマイズできます。

ユーザーを組織の管理連絡先、商品の正当な受取人、または購買マネージャとして指定する場合は、前もって次の操作を行う必要があります。

  1. 組織モジュールを使って、組織を作成します。

  2. ユーザー モジュールでユーザーを作成し、そのユーザーに作成した組織を割り当てます。

  3. 組織モジュールで、上記のユーザーをその組織の管理連絡先、受取人、または購買マネージャに指定します。

関連項目

ユーザーを追加する

組織を追加する

BizTalk Server を使う


プロファイル

プロファイルとは、ユーザー、会社、コンテキスト (日付と時刻) などのビジネス関連項目を定義する一連の特性です。たとえば、ユーザー プロファイルに定義される特性には、名、姓、市町村、性別、年齢、電子メール アドレスなどがあります。会社プロファイルに定義される特性には、会社名、連絡先、市町村、電子メール アドレスなどがあります。コンテキスト プロファイルに定義される特性には、ページが表示された日時、ユーザーがそのページにたどり着くまでの経路などがあります。

次の図は、各種のプロファイルを示しています。

クリック履歴
セッションの長さ
会社名
連絡先
市町村
電子メール アドレス
クリック履歴
セッションの長さ
名
姓
市町村
性別
年齢
電子メール アドレス
クリック履歴
セッションの長さ

会社のプロファイル

匿名ユーザーの
プロファイル

登録済みユーザーの
プロファイル

Commerce Server では、プロファイルを使って、ビジネス関連項目に関する情報を保存しています。たとえば、Web サイトでユーザーからデータを収集するときにプロファイルを使います。また、ビジネス デスクを使うと、ユーザー プロファイルおよび組織プロファイルにデータを直接入力できます。

  • Web サイトの管理にプロファイルを使用する

  • プロファイルを収集および保存する

  • ユーザー データを分析する

Web サイトの管理にプロファイルを使用する

プロファイルには、サイトを訪問するユーザーや、それらのユーザーがサイトをどのように使うかといった情報が収められているため、、Web サイトの管理には必要不可欠です。プロファイルを使うとユーザー データを分析し、分析結果に基づいてコンテンツの配信対象となるユーザーを絞り込むことができます。

Commerce Server ビジネス デスクでは、次のことができます。

  • サイトを訪問するユーザーについて収集する情報の決定

  • プロファイル情報の分析

  • コンテンツをユーザーに合わせるための対象式の作成

  • 特定のユーザー グループを対象とした広告、割引、ダイレクト メールの各キャンペーンの作成

  • パーソナライズしたダイレクト メール メッセージのユーザーへの配信

たとえば、サイトでスポーツ用品を販売しているとします。次のワークフローは、ビジネス デスクを使ってユーザーの利用状況を分析し、コンテンツをユーザーに合わせて対象化する方法の例を示します。

  1. システム管理者は、登録済みユーザーとゲスト ユーザーのプロファイル定義を作成します。

  2. サイトを一定期間運用した後で、プロファイル データを分析して、サイトを訪問しているユーザーを調べます。
    • サイトを訪問しているユーザー層を分析するレポートを実行します。

    • カタログ内のよく売れている商品とあまり売れていない商品を分析するレポートを実行します。
  3. 分析結果に基づいて、コンテンツをユーザーに合わせて対象化したキャンペーンを作成します。
    • プロファイルを使って、対象式と対象グループを作成します。

    • この特定のユーザー層に割引を提供する割引キャンペーンを作成します。
  4. 割引を一定期間実施した後で、そのキャンペーンの結果を分析します。
    • キャンペーンの成果を分析するレポートを実行します。

    • このユーザー グループによる割引項目の購入が増えたかどうかを調査するレポートを実行します。
  5. 割引項目の購入が増えていない場合は、ダイレクト メール キャンペーンを作成し、ユーザーに特定の商品の割引を提供するパーソナライズされたメッセージを配信します。

式の作成、およびユーザーに合わせたコンテンツの対象化については、「対象化とパーソナライズ」を参照してください。

プロファイルを収集および保存する

プロファイル データは、Commerce サイトで 2 とおりの方法で収集されます。サイトを訪問しているユーザーが自分自身に関して提供したプロファイル データを明示プロファイルといいます。たとえば、ユーザーがサイトで商品を購入するときには、通常、名前、住所、電話番号、および電子メール アドレスを入力します。この情報をユーザー プロファイルの生成に使います。

また、黙示プロファイルという方法でデータを収集することもできます。黙示プロファイルでは、ユーザー (匿名ユーザーと登録済みユーザー) が Web サイトで対話的な操作を実行すると、その操作内容が Web ログ ファイルに記録されます。たとえば、匿名ユーザーがクリックしたリンク、検索した商品、セッションの長さ、特定の Web ページで費やした時間などが記録されます。ユーザーは匿名なので名前や電子メール アドレスなどの情報はわかりませんが、ユーザーのサイトの利用傾向は貴重な情報になります。たとえば、クリック履歴には訪問した Web ページの経路が示されるので、この情報を使ってユーザーの興味対象の組み合わせを知ることができます。

黙示プロファイルには、Commerce Server 予測リソースで実行する方法もあります。ユーザーに関するなんらかの情報が欠けている場合、その情報を予測リソースで推測できます。たとえば、ユーザーの音楽嗜好に関する情報が欠けていた場合は、サイトを訪問したすべてのユーザーのプロパティの集計とユーザーが購入した CD に関する情報に基づいて、推測が行われます。

特定のユーザー セッションで収集された情報はすべて、1 つのプロファイル、つまりプロファイル定義の 1 つのインスタンスにまとめられます。

プロファイル データが最初に収集されたときには、データはまず Commerce Server データベースと Web サーバー ログに保存されます。次に、システム管理者が、プロファイル データを定期的にデータ ウェアハウスにインポートします。データ ウェアハウスにプロファイル データがインポートされた後で、ビジネス デスクを使ってユーザー データを分析し、その分析結果に基づいて Web サイトを更新したり、ユーザー プロファイルのプロパティに値を適用することができます。

ユーザー データを分析する

ユーザー データを分析するには、レポートまたはセグメント モデルを使います。セグメント モデルを分析する方法については、「ユーザーのセグメントを分析する」を参照してください。

次の表は、Commerce Server に用意されているレポートのうち、ユーザー データの分析に使用するレポートを示します。

レポート | 説明
[ユーザー数と訪問数 (週単位)] | 少数のユーザーが何度もサイトを訪れているのか、多数のユーザーが同時にサイトを訪れているのかを調べます。
[ユーザー数 (日単位)] | 特定の日にサイトに訪れている一意のユーザーの数を調べます。
[新規登録済みユーザー] | 新規登録済みユーザーを割り出します。このデータは、特別販売促進キャンペーンを作成するのに利用できます。たとえば、このレポートをリスト マネージャにエクスポートして、新規登録済みユーザーにダイレクト メールを送信できます。
[登録済みユーザーのプロパティ] | 登録済みユーザーから提供された情報を調べます。このデータは、特別販売促進キャンペーンを作成するのに利用できます。たとえば、特定のプロパティが設定されているユーザーを広告配信または割引の対象にすることができます。
[登録済みユーザー数 (登録日別)] | ユーザーの登録に関わる行動を調べます。
[ユーザー登録までの日数] | ゲスト ユーザーがサイトに登録するまでに要した平均日数を追跡します。
[ユーザーの登録状況] | ゲスト ユーザーがどの程度サイトに登録しているかを調べます。
[ユーザーの傾向] | リピート ユーザーをどの程度惹き付けているかを調べます。

関連項目

対象化とパーソナライズ

ユーザーのセグメントを分析する

レポートを実行する


プロファイル デザイナ

プロファイル定義を編集および管理するには、プロファイル デザイナ モジュールを使います。プロファイル定義とは、ユーザー、会社、ビジネス プロセスなどのビジネス関連項目を定義する一連の特性です。プロファイルは、プロファイル定義の 1 つのインスタンスです。プロファイルには、プロファイル定義に従って収集されたデータが収められます。たとえば、ユーザー データを収集するのにプロファイル定義をデザインできます。プロファイル定義をデザインするには、ユーザー モジュールを使います。Web サイトでデータを提供した特定のユーザー向けにユーザー プロファイルを編集することもできます。

プロファイルの構造

プロファイル定義

プロファイル プロパティ

属性

サンプルのプロファイル定義

プロファイルの構造

Commerce Server のプロファイルは、次の要素で構成されています。

  • プロファイル定義 特定の種類のプロファイルについて収集するデータの詳細です。1 つのプロファイル定義に基づいて、複数のプロファイルを作成できます。プロファイル定義の例としては、"ユーザー" や "住所" などがあります。システム管理者は、Commerce Server マネージャのプロファイル リソースを使ってプロファイル定義を作成します。

  • プロファイル プロパティ Web サイトを訪問しているユーザーのどのプロファイル データを収集するかを指定する特性です。たとえば、名プロパティは、ユーザーの名を収集することを指定します。プロファイル プロパティを作成してプロファイル定義に追加するには、ビジネス デスクのプロファイル デザイナ モジュールを使います。

  • 属性 プロファイル プロパティに関する情報を指定する特性です。たとえば、プロファイル プロパティのデータ型には、数値、文字列、10 進数、サイト用語などがあります。

  • プロファイル データを含むプロファイル定義の独立した 1 つのインスタンスです。どのプロファイルも、1 つのプロファイル定義に基づいています。

次の表は、ユーザー プロファイル定義とそのインスタンスの一例です。インスタンスには、Sean Chai のデータを使っています。

プロファイル定義:ユーザー | プロファイル:Sean Chai
[名] | Sean
[姓] | Chai
[市町村] | Seattle
[性別] | 男
[年齢] | 52
[電子メール アドレス] | seanchai@microsoft.com

プロファイル定義

サイトのプロファイル定義を作成するには、システム管理者の協力が必要です。システム管理者は、プロファイル データを格納する Commerce Server データベース内の場所を決めます。この作業を、Commerce Server データベースにプロファイル定義をマップすると言います。たとえば、新しいプロファイル定義を Music という名前で作成し、プロファイル プロパティとして First Concert、Last Concert、Favorite CD、および未定のプロパティ 2 つを保存するとします。

システム管理者は、後で追加されることになる 2 つのプロパティ用のプレースホルダと 3 つの既知のプロパティを含む新しいプロファイル定義を Music という名前で作成し、格納先となる Commerce Server データベースにマップします。システム管理者にプロファイル定義と新しいプロパティを作成してもらったら、プロファイル デザイナ モジュールを使って、プロファイル定義に 3 つのプロパティをすべて追加できます (この作業も、システム管理者が Commerce Server マネージャを使って行うことができます)。後日、Music プロファイル定義を使って収集する残り 2 つの情報が決まったら、プロファイル デザイナを使って、2 つのプロパティを新規に作成し、システム管理者が作成したプレースホルダにマップします。

Commerce Server ソリューション サイトには、サンプルのプロファイル定義として、住所、一括注文数、組織、ユーザー オブジェクト、対象とするコンテキストなどが用意されています。ユーザー オブジェクトには名前が未定のプロパティが 5 つあるので、システム管理者に連絡してデータベースを拡張しなくても、ユーザー プロファイル定義にプロパティを追加できます。各プロファイル定義に用意されているプロパティの一覧については、「サンプルのプロファイル定義」を参照してください。

プロファイル プロパティ

システム管理者にプロファイル定義を作成してもらったら、ビジネス デスクのプロファイル デザイナ モジュールを使って、そのプロファイル定義にプロファイル プロパティを追加できます。プロファイルにどのような情報が収集されるかは、プロファイル プロパティによって決まります。たとえば、ユーザー プロファイル定義に追加できるプロパティには、名、姓、市町村、性別、年齢、電子メール アドレスなどがあります。関連性のある複数のプロファイル プロパティを 1 つのグループに整理することもできます。

次の図は、サンプルのユーザー プロファイル定義の一部を示します。

プロファイル
プロパティ
プロファイル
属性
ユーザー プロファイル定義
名
単一値 必須 インデックス付き
姓
単一値 必須 インデックス付き
市町村
(サイト用語:市町村)
(文字列)
(文字列)
(サイト用語:市町村)
メキシコ シティ モントリオール
ニューヨーク
性別
(サイト用語:性別)
性別
男性
女性
不明
年齢
(数値)
電子メール アドレス
(文字列)
電子メール アドレス
電子メール アドレス
データ型

プロファイル プロパティは、次の型で作成できます。

プロパティ型 | 説明
[文字列] | 文字列型のプロパティには、最大 4,000 文字を保存できます。文字列型のプロパティは、 String型のデータ メンバにマップされます。
[長い文字列] | 長い文字列型のプロパティには、最大 2 の 17 乗 (2^17) の文字を保存できます。長い文字列型のプロパティは、 String型のデータ メンバにマップされます。
[数値] | 数値型のプロパティには、整数を保存できます。保存できる最大の長さは、データ ストアによって決まります。数値型のプロパティは、Number型のデータ メンバにマップされます。
[10 進] | 10 進型のプロパティには、浮動小数点数を保存できます。保存できる最大の長さは、データ ストアによって決まります。10 進型のプロパティは、Number型のデータ メンバにマップされます。
[ブール値] | ブール値型のプロパティには、2 つの値 (True/False、Yes/No、または 1/0) のどちらか一方だけを保存できます。ブール値型のプロパティは、Boolean型のデータ メンバにマップされます。
[バイナリ] | バイナリ型のプロパティには、最大 4 KB のバイナリ データを保存できます。バイナリ型のプロパティは、Binary型のデータ メンバにマップされます。
[ロング バイナリ] | ロング バイナリ型のプロパティには、最大 128 KB のコンテンツ (スプレットシート、ドキュメント、グラフィック、サウンドなど) を保存できます。ロング バイナリ型のプロパティは、Binary型のデータ メンバにマップされます。
[日付/時刻] | 日付/時刻型のプロパティは、日付と時刻を組み合わせた値です。使用する形式と最大の長さは、データ ストアによって決まります。日付/時刻型のプロパティは、Date/Time のデータ メンバにマップされます。
[日付] | 日付型のプロパティには、1950/1/1 から 2049/12/31 までの範囲の日付を保存できます。使用する形式と最大の長さは、データ ストアによって決まります。日付型のプロパティは、Date/Time のデータ メンバにマップされます。
[時刻] | 時刻型のプロパティには、時、分、秒、およびミリ秒の値を保存できます。使用する形式と最大の長さは、データ ストアによって決まります。時刻型のプロパティは、Date/Time 型のデータ メンバにマップされます。
[通貨] | 通貨型のプロパティには、通貨の形式の数値を使用できます。使用する通貨の形式と最大の長さは、データ ストアによって決まります。通貨型のプロパティは、Currency 型のデータ メンバにマップされます。
[パスワード] | パスワード型のプロパティには、テキストを使用できます。プロファイル リソースでは、文字列型と同じように扱われます。Commerce Server ビジネス デスクでは、パスワード型のプロパティに保存されている値をアスタリスク (*) で表示します。パスワード型のプロパティは String 型のデータ メンバにマップされ、保存できる最大の長さは Unicode 文字で 255 文字です。
[サイト用語] | サイト用語型のプロパティは、サイト用語と関連付けられます。このプロパティの値は、そのサイト用語に関連付けられた用語名の一覧にある有効な値であることが必要です。サイト用語型のプロパティは String 型のデータ メンバにマップされ、保存できる最大の長さは Unicode 文字で 255 文字です。
[プロファイル] | プロファイル型のプロパティは、プロファイル定義と関連付けられます。このプロパティの値は、関連付けられたプロファイル固有のインスタンスのプライマリ キーの値に対応していることが必要です。プロファイル型のプロパティは String 型のデータ メンバにマップされ、保存できる最大の長さは Unicode 文字で 255 文字です。

属性

各プロファイル プロパティには、属性があります。属性は、プロパティに関する情報を提供します。たとえば、名プロパティには、名前、表示名、説明、型の各属性があります。

属性で提供される情報には、プロファイル プロパティのデータ型 (数値、テキスト、10 進、サイト用語など) や、プロパティが単一の値 (たとえば、名プロパティにはユーザーごとに 1 つの値しか指定できない) か複数値かなどがあります。また、データをエクスポート可能に指定することもできます。たとえば、データをデータ ウェアハウスにエクスポートできます。

属性には、カスタム属性と詳細属性という 2 つの特殊な属性があります。

  • カスタム属性 アプリケーション固有の属性です。プロパティにはカスタム属性を定義できます。たとえば、Web サイト ページ上でのプロパティの表示方法を制御するカスタム属性を作成できます。

  • 詳細属性 アプリケーションによるプロファイル プロパティの使い方を変更するには、詳細属性を使います。たとえば、[データ ウェアハウスにエクスポート] 属性は、プロパティをデータ ウェアハウスにインポートするかどうかを決定します。

次の表は、詳細属性とその用途を示します。

属性 | 目的
[アクティブ] | プロファイル サービスでこのプロパティを利用できるかどうかを示します。非アクティブなプロパティはビジネス デスクに表示されません。
[データへのマップ] | プロパティがマップするデータ メンバです。
[キーの種類] 4 種類のキーを割り当てることができます。
  • 一意キー このプロパティの値はすべてのメンバに対して一意になります。一意キーとして指定された属性は、SQL Server データベースの一意のフィールド、または Lightweight Directory Access Protocol (LDAP) ソースの一意の属性にマップします。

  • プライマリ キー このプロパティの値はすべてのメンバに対して一意になります。プライマリ キーとして指定された属性は、SQL Server データベースのプライマリ フィールド、または LDAP ソースの一意の属性にマップします。

  • 結合キー プロファイル サービスの共通のプロパティによって、複数のデータ ストアを関連付けます。

  • 2 重の (プライマリおよび結合) キー このプロパティの値は一意になります。また、このプロパティをほかのデータ ストアにあるプロパティに関連付けます。
[必須] | 編集中のプロパティは必須のプロパティになります。
[エデータ ウェアハウスにエクスポート] | 編集中のプロパティはデータ ウェアハウスにインポートされます。
[キャッシュ読み込みの遅延] | 編集中のプロパティが初めて読み込まれるのは、プロファイルを取得したときではなく、このプロパティにアクセスしたときになります。
[複数値] | 編集中のプロパティと関連性のある複数の値を取り込めるようにします。
[検索可能] | 基になるデータ ストア内で編集中のプロパティにインデックスを付けて、[検索条件] 機能でこのプロパティを検索できるようにします。検索可能な属性は、SQL Server データベースまたは LDAP ソースのインデックス付きフィールドにマップします。
[RDN] | ディレクトリ ストアの相対識別名 (RDN) を入力します。プロパティにこの属性が設定された場合、このメンバは基になるデータ ストア内の LDAP クラスの RDN 属性にマップされます。これは、OLE DB Provider for Microsoft Commerce Server (OLE DB) ソースなどのデータ ソースには適用されません。
[ハッシュ キー] | 複数のパーティションにプロファイルのインスタンスを配布するときに、このプロパティが使われます。このプロファイルを取得するには、このキーに対するクエリを実行する必要があります。

サンプルのプロファイル定義

Commerce Server ソリューション サイトには、サンプルのプロファイル定義が用意されています。サイト開発者がソリューション サイトを使ってサイトを構築した場合は、次の表に示す 5 つのプロファイル定義があらかじめ用意されています。

プロファイル定義 | プロパティ (データ型) | 説明
[住所] | [住所 ID] (文字列) | 住所の識別子
 | [ID] (文字列) | 組織/ユーザーの識別子
 | [姓] (文字列) | ユーザーの姓
 | [名] (文字列) | ユーザーの名
 | [住所名] (文字列) | この住所の名前
 | [住所の種類] (数値) | 住所/送付先/請求先
 | [説明] (文字列) | この住所の説明
 | [住所欄 1] (文字列) | 住所の 1 行目
 | [住所欄 2] (文字列) | 住所の 2 行目
 | [市町村] (文字列) | 市町村名
 | [地域コード] (文字列) | 都道府県または州のコード
 | [都道府県名] (文字列) | 都道府県または州の名前
 | [郵便番号] (文字列) | 郵便番号
 | [国/地域コード] (文字列) | 国/地域の International Standards Organization (ISO) コード
 | [国/地域名] (文字列) | 国/地域名
 | [電話番号] (文字列) | この住所の電話番号
 | [内線番号] (文字列) | この住所の電話内線番号
 | [ロケール ID] (数値) | 住所フォームを表示するロケール
 | [変更者] (文字列) | このプロファイルを最後に変更した人の名前
 | [最終変更日時] (日付/時刻) | このプロファイルの最終変更日
 | [作成日時] (日付/時刻) | このプロファイルの作成日
[一括注文数] | [注文書 ID] (文字列) | 一括注文を示すグローバル一意識別子 (GUID)
 | [組織 ID] (文字列) | 組織の ID
 | [注文書番号] (文字列) | 一括注文書の番号
 | [説明] (文字列) | 注文の説明
 | [変更者] (文字列) | このプロファイルを最後に変更した人の名前
 | [最終変更日時] (日付/時刻) | このプロファイルの最終変更日
 | [作成日時] (日付/時刻) | このプロファイルの作成日
[組織] | [組織 ID] (文字列) | 組織の ID
 | [名前] (文字列) | 組織の名前
 | [取引先番号] (文字列) | 取引先の番号
 | [管理連絡先] (文字列) | 管理連絡先の GUID
 | [受取人] (文字列) | サプライアから送られてくる商品を受け取る担当者のユーザー ID
 | [組織カタログ セット] (文字列) | 組織カタログ セット
 | [変更者] (文字列) | このプロファイルを最後に変更した人の名前
 | [購買マネージャ] (文字列) | 購入側組織の購買マネージャのユーザー ID
 | [最終変更日時] (日付/時刻) | このプロファイルの最終変更日
 | [作成日時] (日付/時刻) | このプロファイルの作成日
[ユーザー オブジェクト] | [ユーザー ID] (文字列) | ユーザーの ID
 | [ログオン名] (文字列) | ログオン名
 | [ユーザー パスワード] (パスワード) | ユーザーのパスワード
 | [電子メール] (文字列) | ユーザーの電子メール アドレス
 | [ユーザーの種類] (数値) | ユーザーの種類
 | [ユーザー タイトル] (文字列) | ユーザーのタイトル
 | [姓] (文字列) | ユーザーの姓
 | [名] (文字列) | ユーザーの名
 | [電話番号] (文字列) | ユーザーの電話番号
 | [内線番号] (文字列) | ユーザーの電話内線番号
 | [FAX 番号] (文字列) | ユーザーの FAX 番号
 | [FAX 内線番号] (文字列) | ユーザーの FAX 内線番号
 | [変更者] (文字列) | このプロファイルを最後に変更した人の名前
 | [組織 ID] (文字列) | 組織の ID
 | [アカウントの状態] (数値) | アカウントの状態
 | [ユーザー カタログ セット] (文字列) | ユーザーのカタログ セット
 | [登録日] (日付/時刻) | ユーザーの登録日
 | [キャンペーン履歴] (文字列) | キャンペーンの履歴
 | [取引先サービス ロール フラグ] (数値) | 取引先サービス ロール
 | [最終変更日時] (日付/時刻) | このプロファイルの最終変更日
 | [作成日時] (日付/時刻) | このプロファイルの作成日
[対象とするコンテキスト] | [ページ グループ] (文字列) | ページ グループの名前 (Sports ページなど)

関連項目

プロファイル定義にプロパティを追加する

プロファイル定義にサイト用語を追加する


サイト用語エディタ

サイト用語を作成および管理するには、サイト用語エディタ モジュールを使います。サイト用語とは、新規に作成できるデータ型の一種です。サイトに関連する特定の値の一覧であり、個々の値を用語と言います。サイト用語は、この一覧を属性としてプロパティに割り当てて使います。

たとえば、好きな色のサイト用語を作成する場合、ユーザーが選択できる色の一覧を用意します。この "Favorite Color(好きな色)" サイト用語では、色の選択肢はサイト用語の作成者があらかじめ定義した色に制限されます。そのため、紫系統の色 (モーブ、バイオレット、ラベンダーなど) が好きなユーザーは、選択肢に紫系統の色が「紫」しかない場合は、「紫」を選択することになります。

サイト用語は、次の目的で使います。

  • サイトでユーザーに入力を要求するときに、選択肢を標準化および制限する。

  • ユーザーの入力ミスを避ける。

  • 値どうし (商品の色とユーザーの好きな色など) を対応付ける。これにより、特定のユーザーにコンテンツを配信できます。たとえば、商品の色のプロパティが "紫" の場合、このプロパティを "Favorite Color (好きな色)" サイト用語に対応付ければ、紫色の商品を選択したユーザーに広告を配信できます。

Web サイトのフォームでは、サイト用語はリスト ボックスとして表示されます。

サイト用語グループ

サイト用語エディタでサイト用語を整理するには、サイト用語グループを使います。たとえば、サイト用語が 50 あり、ユーザーが好む商品に関する情報の収集に 10、ユーザーのライフスタイルに関する情報の収集に 20、現在のイベントに対するユーザーの意見の収集に 20 使っているとします。この場合、商品嗜好のサイト用語を "Product (商品)" というサイト用語グループに、ライフスタイルのサイト用語を "Lifestyle (ライフスタイル)" というサイト用語グループに、意見のサイト用語を "Opinion (意見)" というサイト用語グループに、それぞれまとめることができます。

サンプルのサイト用語

Commerce Server ソリューション サイトには、サンプルのサイト用語が用意されています。サイト開発者がソリューション サイトを使って Web サイトを構築した場合、次の表に示すサイト用語があらかじめ用意されています。

サイト用語 用語
[アカウントの状態] [アクティブなアカウント]
[非アクティブなアカウント]
[ユーザー ロール] [標準ユーザー]
[管理者]
[ユーザーの種類] [ゲスト ユーザー]
[登録済みユーザー]
[曜日] [日曜日]
[月曜日]
[火曜日]
[水曜日]
[木曜日]
[金曜日]
[土曜日]
[月] [1 月]
[2 月]
[3 月]
[4 月]
[5 月]
[6 月]
[7 月]
[8 月]
[9 月]
[10 月]
[11 月]
[12 月]

関連項目

サイト用語を追加する


サイト用語を追加する

サイト用語を作成して、サイト用語に用語 (値) を追加するには、サイト用語エディタ モジュールを使います。

サイト用語を追加するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、サイト用語を追加するグループをクリックし、[追加] をクリックします。

  3. [追加] ダイアログ ボックスで、[新しいサイト用語の追加] をクリックし、[OK] をクリックします。

  4. [サイト用語エディタ] 画面の [サイト用語の属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 新しいサイト用語のプログラム上の定義名(Favorite_Color など) を入力します。名前には、最大 128 文字の英数字とアンダ スコア(_) を使用できます。名前にスペースは使用できません。
    [表示名] | 新しいサイト用語の表示名を入力します。たとえば、「好きな色」と入力します。表示名は最大 128 文字です。
    [説明] | 新しいサイト用語の内容を示す説明を入力します。

  5. [用語] セクションで、次の操作を行います。
    項目 | 操作
    [用語の名前] | [新規] をクリックし、新しい用語のプログラム上の定義名を入力します。用語とは、サイト用語の値です。たとえば、Favorite_Color (好きな色)サイト用語の場合、用語として「Red」、「Blue」、「Green」、「Yellow」などを入力します。名前には、最大 128 文字の英数字とアンダ スコア(_) を使用できます。名前にスペースは使用できません。
    [表示名] | 新しい用語の表示名を入力します(「赤」、「青」、「緑」、「黄」など)。表示名は最大 128 文字まで入力できます。

  6. [確認] をクリックします。

    注

    • 新しいサイト用語には、必要なだけ用語を追加できます。用語を追加するには、[新規] をクリックします。
  7. 新しいサイト用語を保存して [ビジネス デスク] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

編集したサイト用語が保存されます。これで、サイト用語をプロファイル プロパティに追加して、サイト用語をプロファイル プロパティの値として使用できるようになります。たとえば、Favorite_Color サイト用語を作成した場合は、ユーザー オブジェクト プロファイル定義で Favorite_Color サイト用語を 「好きな色」 プロパティの値として追加します。ユーザーが Web サイトの "好きな色" という質問に答えるときには、Favorite_Color サイト用語で設定した値が並べられたドロップダウン リストで、好きな色を選択することになります。

関連項目

ユーザーについて

サイト用語グループを追加する

プロファイル定義にサイト用語を追加する


サイト用語グループを追加する

サイト用語グループを作成して関連性のあるサイト用語を整理するには、サイト用語エディタ モジュールを使います。たとえば、郵便番号のサイト用語を作成している場合は、都道府県または地域ごとにサイト用語グループを 1 つ作成できます。各都道府県または地域のグループには、市町村ごとにその市町村の郵便番号を記載したサイト用語を作成します。サイト用語グループは、[サイト用語エディタ] 画面のサイト用語の構成の一覧に表示されます。グループ名の左には、矢印が表示されます。矢印をクリックすると、サイト用語の一覧が展開します。

サイト用語グループを作成するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、[追加] をクリックします。

  3. [追加] ダイアログ ボックスで、[グループの新規追加] をクリックし、[OK] をクリックします。[サイト用語エディタ] 画面の [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 新しいサイト用語グループのプログラム上の定義名を入力します。名前には、最大 128 文字の英数字とアンダ スコア(_) を使用できます。名前にスペースは使用できません。
    [表示名] | 新しいサイト用語グループの表示名を入力します。表示名は最大 128 文字まで入力できます。
    [説明] | 新しいサイト用語グループの説明を入力します。

  4. 新しいサイト用語グループを保存してメインの [ビジネス デスク] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

編集したサイト用語グループが保存されます。これで、このサイト用語グループを使ってサイト用語を整理できるようになります。

関連項目

ユーザーについて

サイト用語を追加する

サイト用語を編集する


プロファイル定義にプロパティを追加する

プロファイル定義にプロパティを追加し、追加したプロパティの属性を定義するには、プロファイル デザイナ モジュールを使います。プロファイル プロパティでは、Web サイトを訪問しているユーザーに関してどのようなデータを収集するかを指定します。たとえば、名プロファイル プロパティはユーザーの名を収集します。

各プロファイル プロパティには属性があり、それらの属性はそのプロパティで収集する情報の特性を定義します。たとえば「名」プロファイル プロパティの属性で、このプロパティをデータ ウェアハウスにエクスポートできる単一の値の文字列を収集するプロパティとして定義することができます。プロファイル デザイナは、プロファイル プロパティにカスタム属性を追加するのにも使用できます。既存の属性にはないプロファイル プロパティの特性を定義するには、カスタム属性を使います。プロファイル プロパティ属性については、「プロファイル デザイナ」を参照してください。

新しいプロパティを追加するには

カスタム属性を追加するには

新しいプロパティを追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面で、プロパティを追加するプロファイル定義をクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル: <プロファイル名>] 画面の [プロパティ] 一覧で、プロパティを追加するグループをクリックし、[追加] をクリックします。

  4. [追加] ダイアログ ボックスで、[プロパティの新規追加] をクリックし、[OK] をクリックします。

  5. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | プロパティのプログラム名を入力します。名前には、最大 128 文字の英数字とアンダス コア(_) を使用できます。名前にスペースは使用できません。
    [表示名] | プロパティの表示名を入力します。表示名は最大 128 文字まで入力できます。
    [説明] | プロパティの説明を入力します。
    [型] ドロップダウン リストでプロパティ型を選択します。次のプロパティ型があります。
    • 文字列

    • 長い文字列

    • 数値

    • 10 進

    • ブール値

    • バイナリ

    • ロング バイナリ

    • 日付/時刻

    • 通貨

    • パスワード

    • サイト用語

    • プロファイル

    プロファイル定義にサイト用語型のプロパティを追加する方法については、「プロファイル定義にサイト用語を追加する」を参照してください。

    プロファイル定義にプロファイル型のプロパティを追加する方法については、「プロファイル定義にほかのプロファイル定義を追加する」を参照してください。

  6. [詳細属性] セクションで、次の操作を行います。
    項目 | 操作
    [アクティブ] | 新しいプロパティがアクティブか非アクティブかを選択します。
    [データへのマップ] 省略記号 [...] ボタンをクリックすると、[データ ソースの選択] ダイアログ ボックスが開きます。

    [データ ソースの選択] ダイアログ ボックスでは、プロパティのデータ メンバを選択します。プロパティのデータ メンバとして利用できるのは、編集中のプロファイル定義でまだ使用していないデータ メンバだけです。プロファイル定義で既に使用されているプロパティは利用できません。

    データ メンバにマップしていないプロパティは固定されていないプロパティになりますが、メモリで利用できます。たとえば、ユーザーが Web サイトを訪問している間の状態情報を保存できます。

    [キーの種類] ドロップダウン リストでキーの種類を選択します。

    一意キー 編集中のプロパティの値はすべてのメンバに対して一意になります。一意キーとして指定された属性は、SQL Server データベースの一意のフィールド、または Lightweight Directory Access Protocol (LDAP) ソースの一意の属性にマップします。

    プライマリ キー 編集中のプロパティの値はすべてのメンバに対して一意になります。プライマリ キーとして指定された属性は、SQL Server データベースのプライマリ フィールド、または LDAP ソースの一意の属性にマップします。

    結合キー 編集中のプロパティを、プロファイル サービスのほかのデータ ストアにあるほかのプロパティに関連付けます。

    2 重の (プライマリおよび結合) キー 編集中のプロパティの値は一意になります。また、このプロパティをほかのデータ ストアにあるプロパティに関連付けます。
    [必須] | ユーザーが値を入力する必要があるプロパティになります。
    [データウェアハウスにエクスポート] | 編集中のプロパティはデータ ウェアハウスにインポートされます。
    [キャッシュ読み込みの遅延] | 編集中のプロパティは、明示的に要求するまで返されません。
    [複数値] | 編集中のプロパティに複数値の属性を取り込めるようにします。
    [検索可能] | Web サイトの検索機能で編集中のプロパティを検索できるようにします。
    [RDN] | 編集中のプロパティを、LDAP ソースにマップされるすべてのプロファイルの相対識別名 (RDN) としてマークします。これは、OLE DB Provider for Microsoft Commerce Server (OLE DB) ソースなどのデータ ソースには適用されません。
    [ハッシュ キー] | 編集中のプロパティ値はハッシュされ、プロファイル データの保存先となるデータ ソースのパーティションを判断するのに使われます。

  7. 追加したプロパティを保存するには、[適用] をクリックし、ツール バーの 保存 をクリックしてプロファイルを保存します。

プロファイル定義が新しいプロパティとともに保存されます。プロファイル定義にプロパティを追加したら、その変更内容を Web サイトに発行する必要があります。変更内容を発行する方法については、「プロファイル定義への変更内容を Web サイトに発行する」を参照してください。

カスタム属性を追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面で、カスタム属性を追加するプロパティが含まれているプロファイル定義をクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル : <プロファイル名>] 画面の [プロパティ] 一覧で、カスタム属性を追加するプロパティが含まれているグループを展開し、そのプロパティをクリックします。

  4. [カスタム属性] セクションで [新規] をクリックし、次の操作を行います。
    項目 | 操作
    [名前] | 属性のプログラム名を入力します。名前には、最大 128 文字の英英数字とアンダ スコア(_) を使用できます。名前にスペースは使用できません。
    [表示名] | 属性の表示名を入力します。表示名は最大 128 文字まで入力できます。
    [説明] | 属性の説明を入力します。
    [値] | 属性の値を入力します。

  5. [確認] をクリックします。

    注

    • このプロパティに必要なだけのカスタム属性を追加するには、手順 4. および 5. を繰り返します。
  6. 新しいカスタム属性とともにプロファイル定義を保存して [プロファイル] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

新しいカスタム属性と共にプロファイル定義が保存されます。プロファイル定義にカスタム属性を追加したら、その変更内容を Web サイトに発行する必要があります。変更内容を発行する方法については、「プロファイル定義への変更内容を Web サイトに発行する」を参照してください。

関連項目

ユーザーについて

プロファイル定義にプロパティ グループを追加する

プロファイル定義にサイト用語を追加する


プロファイル定義にプロパティ グループを追加する

プロファイル定義にプロパティ グループを追加するには、プロファイル デザイナ モジュールを使います。プロパティ グループは、プロファイル デザイナでプロファイル プロパティを整理するために使います。たとえば、Web サイトを訪れているユーザーの商品嗜好、ライフスタイル、現在のイベントに対する意見などのデータを収集するために、ユーザー オブジェクト プロファイル定義に 50 のプロパティを追加するとします。この場合、"Product(商品)"、"Lifestyle(ライフスタイル)"、"Opinion(意見)" などのプロパティ グループを作成して 50 のプロパティを整理すれば、[プロファイル デザイナ] 画面のプロパティの一覧でプロパティを簡単に検索できます。

プロパティ グループは、[プロファイル デザイナ] 画面の [プロパティ] 一覧に表示されます。グループ名の左には、矢印が表示されます。矢印をクリックすると、プロパティの一覧が展開します。

新しいプロパティ グループを追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面で、新しいプロパティ グループを追加するプロファイル定義をクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル : <プロファイル名>] 画面の [プロパティ] 一覧で新しいプロパティ グループを追加するグループをクリックし、[追加] をクリックします。

    注

    • 既存のグループに属さないプロパティ グループを作成する場合は、既存のグループを選択せずに [追加] をクリックします。
  4. [追加] ダイアログ ボックスで、[グループの新規追加] をクリックし、[OK] をクリックします。

  5. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 新しいプロパティ グループのプログラム上の定義名を入力します。名前には、最大 128 文字の英数字と下線 (_) を使用できます。名前にスペースは使用できません。
    [表示名] | 新しいプロパティ グループの表示名を入力します。表示名は最大 128 文字まで入力できます。
    [説明] | 新しいプロパティ グループの説明を入力します。

  6. プロファイル定義を保存して [プロファイル] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

新しいプロパティ グループとともにプロファイル定義が保存されます。これで、既存のプロパティを新しいプロパティ グループに移動したり、新しいグループの中にプロパティを新規に作成することができるようになります。グループにプロファイル定義を追加したら、その変更内容を Web サイトに発行する必要があります。変更内容を発行する方法については、「プロファイル定義への変更内容を Web サイトに発行する」を参照してください。

関連項目

ユーザーについて

プロファイル定義にプロパティを追加する

プロファイル プロパティを編集する


プロファイル定義への変更内容を Web サイトに発行する

新しいプロファイル プロパティにデータを追加するには、プロファイル定義への変更内容を Web サイトに発行する必要があります。最新の変更内容で Web サイトを更新するには、プロファイルの発行モジュールを使います。電子商取引ビジネスでは、このような変更はまずテスト用のサイトで行われるのが一般的です。その後、あらかじめ決められたスケジュールに従って、運用サイトに発行されます。変更内容を運用サイトに発行する時期と方法については、システム管理者に問い合わせてください。

プロファイルへの変更内容を発行するには

  1. [ユーザー] の [プロファイルの発行] をクリックします。

  2. [プロファイルの発行] 画面で、プロファイル定義への変更内容を発行するサイトをクリックし、ツール バーの 変更をサイトに発行し、キャッシュを更新 をクリックします。

    注

    • そのサイトが複数の Web サーバーからサービスを受けている場合は、各 Web サーバーにプロファイル定義への変更内容を発行する必要があります。

    • 更新状況をリセットするには、ツール バーの 更新状況のリセット をクリックします。更新状況をリセットしても、既に発行した変更内容はリセットまたはロールバックされません。

プロファイル定義への変更内容が Web サイトに発行されます。

関連項目

プロファイル デザイナ

プロファイル定義を管理する


ユーザーを追加する

Web サイトに新しいユーザーのプロファイルを追加するには、ユーザー モジュールを使います。そのユーザーを組織に関連付ける場合は、まず組織モジュールで組織のプロファイルを作成し、次にユーザー プロファイルをその組織プロファイルに関連付けます。

注

  • [新しいユーザー] 画面では、以下の手順で示すプロパティと同じプロパティが表示されない場合があります。これは、[新しいユーザー] 画面に表示されるプロパティが、ユーザー オブジェクト プロファイル定義によって制御されるためです。ユーザー オブジェクト プロファイル定義でプロパティを変更した場合は、その変更内容が [新しいユーザー] 画面に反映されます。プロファイル定義のプロパティを変更する方法については、「プロファイル定義を管理する」を参照してください。

新しいユーザーを追加するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、ツール バーの 追加 をクリックします。

  3. [新しいユーザー] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 新しいユーザーのログオン名を入力します。
    [ユーザー パスワード] | 新しいユーザーのパスワードを入力します。
    [電子メール] | 新しいユーザーの電子メール アドレスを入力します。
    [ユーザーの種類] | ドロップダウン リストで、新しいユーザーが [登録済みユーザー] か [ゲスト ユーザー] かを選択します。通常、作成するのは登録済みユーザーです。
    [ユーザー タイトル] | 「Mr.」、「Mrs.」など、新しいユーザーの敬称を入力します。
    [姓] | 新しいユーザーの姓を入力します。
    [名] | 新しいユーザーの名を入力します。
    [電話番号] | 新しいユーザーの電話番号を入力します。
    [内線番号] | 新しいユーザーの電話内線番号を入力します。
    [FAX 番号] | 新しいユーザーの FAX 番号を入力します。
    [FAX 内線番号] | 新しいユーザーの FAX 内線番号を入力します。

  4. [アカウント情報] セクションで、次の操作を行います。
    項目 | 操作
    [アカウントの状態] | ドロップダウン リストで、このユーザーのアカウントの状態が [アクティブなアカウント] か [非アクティブなアカウント] かを選択します。既定の状態は、[アクティブなアカウント] です。アカウントの状態が非アクティブになっているユーザーは、サイトにログオンできません。
    [ユーザー カタログ セット] | ドロップダウン リストで、このユーザーにアクセスを許可するカタログ セットを選択します。

    注

    • ユーザーに組織 ID を設定する場合は、まず組織モジュールでその組織を作成し、次にユーザーをその組織に関連付けます。
  5. [ビジネス デスク] セクションで、次の操作を行います。
    項目 | 操作
    [取引先サービス ロール フラグ] | ドロップダウン リストで、このユーザーが [標準ユーザー] か [管理者] かを選択します。既定のロール フラグは、[標準ユーザー] です。[管理者] を選択した場合、このユーザーは代理管理者になります。代理管理者は、代理管理者に対応しているサイトでの組織への拡大されたアクセス権をもち、注文を調べたり、ユーザー プロファイルを作成することができます。

  6. 新しいユーザー プロファイルを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しいユーザー プロファイルが保存されます。

関連項目

ユーザーについて

ユーザーを削除する

ユーザーを検索する

組織を追加する


ユーザー プロファイルの一覧をインポートする

リスト マネージャ モジュールからユーザー プロファイルの一覧をインポートするには、ユーザー モジュールを使います。ユーザー リストを作成するには、静的なユーザー レポートをレポート モジュールからリスト マネージャ モジュールにエクスポートします。たとえば、新規登録済みユーザー レポートや登録済みユーザーのプロパティ レポートを、リスト マネージャにリストとしてエクスポートします。また、ASCII 区切りのユーザー リストをリスト マネージャ モジュールにインポートすることもできます。ユーザー リストがリスト マネージャ モジュールにインポートされたら、ユーザー モジュールの検索機能で、そのユーザーのリストを使うことができます。

ユーザー プロファイルの一覧をリスト マネージャにインポートするには

  1. [ユーザー] の [ユーザー] をクリックします。[ユーザー] 画面に [検索] ウィンドウが開いていない場合は、ツール バーの 検索 をクリックします。

  2. [検索条件] ドロップダウン リストの [ユーザー リスト] をクリックします。

  3. リスト マネージャにあるユーザー リストの一覧が、検索ペインに表示されます。

  4. ユーザー モジュールで開きたいユーザー リストをクリックします。

  5. [検索開始] をクリックします。

リスト マネージャにあるユーザー プロファイルが、ユーザー モジュールで利用できるようになります。これらのユーザー プロファイルは、個別に、またはグループ単位で編集できます。ユーザー プロファイルに加えた変更内容を保存すると、変更後のデータを Web サイトで利用できます。

関連項目

ユーザーを編集する

複数のユーザーを編集する

静的レポートをエクスポートする


組織を追加する

サイトに組織プロファイルを追加し、組織の情報 (識別情報や連絡先情報など) や、組織で利用できるカタログ セットを指定するには、組織モジュールを使います。組織プロファイルに管理連絡先や受取人を追加する場合は、まず組織プロファイルを作成し、次にその組織に所属するユーザーのユーザー プロファイルを作成します。組織に所属するユーザー プロファイルが作成されると、そのユーザー プロファイルを、管理連絡先または受取人として組織プロファイルに追加できるようになります。

組織プロファイルを追加するには

ユーザー プロファイルを既存の組織プロファイルに関連付けるには

組織プロファイルを既存のユーザー プロファイルに関連付けるには

組織プロファイルを追加するには

  1. [ユーザー] の [組織] をクリックします。

  2. [組織] 画面で、ツール バーの 追加 をクリックします。

  3. [新しい組織] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 組織の名前を入力します。組織名は、53 文字以内の英数字で設定します。スペースを含めることもできます。
    [取引先番号] | 組織または取引先の番号を入力します。
    [組織カタログセット] | ドロップダウン リストで、この組織にアクセスを許可するカタログ セットを選択します。

  4. 組織プロファイルを保存して [組織] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しい組織プロファイルが保存されます。これで、ユーザー プロファイルをこの組織プロファイルに関連付けることができるようになります。

ユーザー プロファイルを既存の組織プロファイルに関連付けるには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、編集するユーザー プロファイルをクリックし、ツール バーの 開く をクリックします。

  3. [ユーザーの更新: ユーザー <ユーザー名>] 画面の [アカウント情報] セクションで、[組織 ID] ボックスの省略記号 [...] ボタンをクリックして [組織の選択] ダイアログ ボックスを表示します。

  4. [組織の選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [このユーザーが所属する組織を選択してください] | 一覧で、このユーザーが所属する組織をクリックします。
    [名前] 目的の組織名が [このユーザーが所属する組織を選択してください] 一覧にない場合は、その組織名を入力し、[検索開始] をクリックします。

    目的の組織名が [このユーザーが所属する組織を選択してください] 一覧に表示されている場合は、その組織名をクリックします。

  5. [OK] をクリックします。

  6. ユーザー プロファイルを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集したユーザー プロファイルが保存されます。これで、このユーザー プロファイルを、管理連絡先、受取人、または購買マネージャとして組織プロファイルに追加できるようになります。ユーザー プロファイルは、保存済みの組織プロファイルにだけ追加できます。

組織プロファイルを既存のユーザー プロファイルに関連付けるには

  1. [ユーザー] の [組織] をクリックします。

  2. [組織] 画面で、ユーザー プロファイルに関連付ける組織プロファイルをクリックし、ツール バーの 開く をクリックします。

    注

    • 検索ペインでは、[名前]、[最終変更日時]、または [作成日時] で組織プロファイルを検索できます。組織プロファイルを検索する方法については、「組織を検索する」を参照してください。
  3. [組織の更新: <組織名> 組織] 画面の [一般情報] セクションで、[管理連絡先] ボックスの省略記号 [...] ボタンをクリックして [ユーザーの選択] ダイアログ ボックスを開きます。

  4. [ユーザーの選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [既存のユーザーの選択] | 管理連絡先として追加するユーザーの名前をクリックし、[OK] をクリックします。
    [ログオン名] 管理連絡先として追加するユーザーの名前が [既存のユーザーの選択]一覧にない場合は、そのユーザー名を入力し、[検索開始] をクリックします。

    目的のユーザー名が [既存のユーザーの選択]一覧に表示されている場合は、そのユーザー名をクリックします。

  5. [OK] をクリックします。

  6. [一般情報] セクションで、[受取人] ボックスの省略記号 [...] ボタンをクリックして [ユーザーの選択] ダイアログ ボックスを開きます。

  7. [ユーザーの選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [既存のユーザーの選択] | 受取人として追加するユーザーの名前をクリックし、[OK] をクリックします。
    [ログオン名] 受取人として追加するユーザーの名前が [既存のユーザーの選択]一覧にない場合は、そのユーザー名を入力し、[検索開始] をクリックします。

    目的のユーザー名が [既存のユーザーの選択]一覧に表示されている場合は、そのユーザー名をクリックします。

  8. [OK] をクリックします。

  9. [購入] セクションで、[購買マネージャ] ボックスの省略記号 [...] ボタンをクリックして [ユーザーの選択] ダイアログ ボックスを開きます。

  10. [ユーザーの選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [既存のユーザーの選択] | 購買マネージャとして追加するユーザーの名前をクリックし、[OK] をクリックします。
    [ログオン名] 購買マネージャとして追加するユーザーの名前が [既存のユーザーの選択] 一覧にない場合は、そのユーザー名を入力し、[検索開始] をクリックします。

    目的のユーザー名が [既存のユーザーの選択] 一覧に表示されている場合は、そのユーザー名をクリックします。

  11. [OK] をクリックします。

  12. 組織を保存して [組織] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

管理連絡先、受取人、および購買マネージャを含む組織プロファイルが保存されます。

関連項目

ユーザーについて

組織を編集する

組織を検索する


ユーザー パスワードをリセットする

パスワードを忘れた登録済みユーザーのパスワードをリセットするには、ユーザー モジュールを使います。登録済みユーザーのパスワードをリセットしたら、新しいパスワードをそのユーザーに通知する必要があります。

ユーザー パスワードをリセットするには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、パスワードをリセットするユーザーのプロファイルをクリックし、ツール バーの 開く をクリックします。

    注

    • 特定のユーザーのプロファイルを表示するには、[ユーザー] 画面の最上部にある検索ペインを使います。ユーザー プロファイルを検索する方法については、「ユーザーを検索する」を参照してください。
  3. [ユーザーの更新 : ユーザー <ユーザー名>] 画面の [一般情報] セクションの [ユーザー パスワード] ボックスで、現在のパスワードをドラッグして選択します。実際のパスワードの代わりに、アスタリスク (*)で表示されています。

  4. 新しいパスワードを入力します。

    注

    • パスワードは 7 ～ 14 文字の英数字で設定する必要があります。スペースを含めることはできません。
  5. 新しいパスワードを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しいパスワードを含んだユーザー プロファイルが保存されます。ユーザーに新しいパスワードを通知する必要があります。


サイト用語とサイト用語グループを管理する

サイト用語を作成および更新するには、サイト用語エディタ モジュールを使います。サイト用語は、ユーザーに入力を要求する場面で、選択肢を標準化および制限するために使います。また、コンテンツをユーザーに合わせて対象化するためにも使います。たとえば、好きな色を選ぶという場面で、ユーザーが選択できる色を制限することもできます。

ここでは、次のトピックについて説明します。

  • プロファイル定義にサイト用語を追加する

  • サイト用語を編集する

  • サイト用語から用語を削除する

  • サイト用語を整理する

  • サイト用語を削除する


プロファイル定義にサイト用語を追加する

作成したサイト用語は、プロファイル定義に追加することができます。

プロファイル定義にサイト用語を追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面で、編集するプロパティが含まれているプロファイル定義をクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル: <プロファイル名>] 画面の [プロパティ]一覧で、サイト用語を追加するプロパティをクリックします。

    注

    • 目的のプロパティが [プロパティ] 一覧に表示されていない場合は、そのプロパティが含まれているプロパティ グループを展開し、そのプロパティをクリックします。
  4. [属性] 画面の [属性] セクションで、[型] ドロップダウン リストの [サイト用語] をクリックします。

  5. [型参照] ボックスの省略記号 [...] ボタンをクリックして、[サイト用語の選択] ダイアログ ボックスを開きます。

  6. [サイト用語の選択] ダイアログ ボックスの [サイト用語の選択]一覧で、プロパティ定義に追加するサイト用語が含まれているサイト用語グループを展開し、そのサイト用語をクリックします。

  7. [OK] をクリックします。

  8. 編集したプロファイル定義を保存して [プロファイル] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

編集したプロファイル定義が保存されます。プロファイル定義への変更内容はWeb サイトに発行する必要があります。変更内容を発行する方法については、「プロファイル定義への変更内容を Web サイトに発行する」を参照してください。

関連項目

サイト用語を追加する

プロファイル定義にプロパティを追加する

プロファイル プロパティを編集する

サイト用語を編集する


サイト用語を編集する

既存のサイト用語とサイト用語グループを編集するには、サイト用語エディタ モジュールを使います。

サイト用語を編集するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、編集するサイト用語をクリックします。

  3. [属性] セクションで、次の操作を行います。
    項目 | 操作
    [表示名] | サイト用語の表示名を編集します。表示名は最大 128 文字まで入力できます。
    [説明] | サイト用語の説明を編集します。

    注

    • サイト用語の表示名は変更できますが、サイト用語のプログラム上の定義名は変更できません。サイト用語のプログラム上の定義名を変更する場合は、いったんサイト用語を削除してから、希望する名前で新しいサイト用語を作成する必要があります。
  4. [用語] セクションで、編集する用語をクリックし、[編集] をクリックします。

  5. 必要に応じて用語を編集し、[確認] をクリックします。

    注

    • 用語は必要な数だけ編集できます。ほかの用語を編集するには、用語を選択してから [編集] をクリックします。用語を追加および削除することもできます。新しい用語を追加するには、[新規] をクリックします。選択した用語を削除するには、[削除] をクリックします。
  6. サイト用語を保存して [ビジネス デスク] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

編集したサイト用語が保存されます。

関連項目

ユーザーについて

サイト用語を追加する

サイト用語グループを追加する

プロファイル定義にサイト用語を追加する


サイト用語から用語を削除する

用語を削除するには、サイト用語エディタ モジュールを使います。たとえば、「Color (色)」 というサイト用語から "紫" という用語を削除するのに使います。

用語を削除するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、用語を削除するサイト用語をクリックします。

  3. [用語] セクションで、用語の一覧から削除する用語をクリックし、[削除] をクリックします。

    [用語] 一覧からその用語が削除されます。

  4. [適用] をクリックして、サイト用語の属性の変更を保存します。

  5. 編集したサイト用語を保存して [ビジネス デスク] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集したサイト用語が保存されます。

関連項目

ユーザーについて

サイト用語を追加する

サイト用語グループを追加する


サイト用語を整理する

サイト用語とサイト用語グループを整理するには、サイト用語エディタ モジュールを使います。[サイト用語の構成] 一覧では、サイト用語およびサイト用語グループを上下に移動させることができます。グループ間でサイト用語を移動させて、サイト用語の所属先のグループを変更することができます。

サイト用語を移動するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、移動するサイト用語またはサイト用語グループをクリックします。

  3. [サイト用語の構成] 一覧の下にある上向き矢印または下向き矢印をクリックして、サイト用語またはサイト用語グループをほかの場所に移動します。

  4. 変更内容を保存して [ビジネス デスク] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集したサイト用語が保存されます。

関連項目

ユーザーについて

サイト用語を追加する

サイト用語グループを追加する


サイト用語を削除する

サイト用語とサイト用語グループを削除するには、サイト用語エディタ モジュールを使います。

サイト用語を削除するには

  1. [ユーザー] の [サイト用語エディタ] をクリックします。

  2. [サイト用語エディタ] 画面で、削除するサイト用語またはサイト用語グループをクリックし、[削除] をクリックします。

  3. [削除] ダイアログ ボックスで、[OK] をクリックしてそのサイト用語を削除します。

    注意

    • サイト用語グループを削除すると、そのグループ内のすべてのサイト用語も削除されます。
  4. 変更内容を保存して [ビジネス デスク] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

関連項目

ユーザーについて

サイト用語を追加する

サイト用語グループを追加する


プロファイル定義を管理する

プロファイル プロパティを追加、編集、および削除するには、プロファイル デザイナ モジュールを使います。必要なユーザー情報や組織情報が変わった場合は、既存のプロファイル定義を編集して新しい要求に合わせることができます。

ここでは、次のトピックについて説明します。

  • プロファイル定義にほかのプロファイル定義を追加する

  • プロファイル プロパティを編集する

  • プロファイル定義からプロパティを削除する


プロファイル定義にほかのプロファイル定義を追加する

プロファイル定義にほかのプロファイル定義を追加することもできます。プロファイル定義にプロパティをプロファイルとして定義し、そのプロパティがプロファイル定義を参照するように設定できます。たとえば、ユーザー オブジェクト プロファイル定義に住所の情報を関連付けることができます。そのためには、まず "住所" という名前のユーザー オブジェクト プロファイル定義にプロパティを追加し、型属性でその住所プロパティの型をプロファイルに定義します。次に、住所プロパティの型参照として住所プロファイル定義を選択します。この新しい住所プロパティを、文字列型のデータ メンバにマップします。このデータ メンバは、ユーザーの住所が記載されているプロファイルのインスタンス名を格納するためのものです。この手順を使うと、複数の住所をユーザー オブジェクト プロファイル定義に関連付けることができます。たとえば、請求先と送付先のプロパティを作成した場合、そのどちらのプロパティでも、住所プロファイル定義を使ってユーザーの住所の情報を収集できるようにします。

この例では、ユーザー プロファイルの住所用プロパティの値が、ユーザーの住所が記載されている住所用プロファイルの名前になります。システム管理者は、ユーザー プロファイルの住所用プロパティを使って、ユーザーのプロファイル情報とともにユーザーの住所を表示できます。

プロファイル定義にほかのプロファイル定義を追加するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル : <プロファイル名>] 画面で、プロファイル定義を追加するプロファイル定義をクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル : <プロファイル名>] 画面の [プロパティ] 一覧で、プロファイル定義を追加するプロパティをクリックします。

    注

    • 目的のプロパティが [プロパティ] 一覧に表示されていない場合は、そのプロパティが含まれているプロパティ グループを展開し、そのプロパティを選択します。
  4. [属性] セクションで、[型] ドロップダウン リストの [プロファイル] をクリックします。

  5. [型参照] ボックスの省略記号 [...] ボタンをクリックして、[プロファイルの選択] ダイアログ ボックスを開きます。

  6. [プロファイルの選択] ダイアログ ボックスの [プロファイルの選択] 一覧で、[プロファイル カタログ] を展開し、プロパティに追加するプロファイル定義をクリックします。

  7. [OK] をクリックします。

  8. 編集したプロパティを保存して [プロファイル] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

編集したプロファイル定義が保存されます。

関連項目

プロファイル デザイナ

プロファイル定義にプロパティを追加する

プロファイル プロパティを編集する


プロファイル プロパティを編集する

プロファイル定義で使用されるプロファイル プロパティとプロパティ グループを編集するには、プロファイル デザイナ モジュールを使います。

プロファイル プロパティを編集するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面で、編集するプロパティが含まれているプロファイルをクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル : <プロファイル名>] 画面の [プロパティ] 一覧で、編集するプロパティまたはプロパティ グループをクリックします。

    注

    • 目的のプロパティが [プロパティ] 一覧に表示されていない場合は、そのプロパティが含まれているプロパティ グループを展開し、そのプロパティをクリックします。
  4. プロパティの属性を編集します。

    注

    • プロパティを作成した後で、そのプロパティの名前を編集することはできません。表示名は編集できますが、実際のプログラム上の定義名は変わりません。プログラム上の定義名を変更する場合は、対応するプロパティを削除し、新しいプログラム上の定義名でもう一度そのプロパティを追加する必要があります。
  5. 編集したプロパティを保存して [プロファイル] 画面に戻るには、[適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

編集したプロファイル定義が保存されます。プロファイル定義でプロパティを編集したら、その変更内容を Web サイトに発行する必要があります。変更内容を発行する方法については、「プロファイル定義への変更内容を Web サイトに発行する」を参照してください。

関連項目

ユーザーについて

プロファイル定義にプロパティを追加する

プロファイル定義にプロパティ グループを追加する

プロファイル定義からプロパティを削除する

プロファイル定義にサイト用語を追加する


プロファイル定義からプロパティを削除する

プロファイル定義からプロパティとプロパティ グループを削除するには、プロファイル デザイナ モジュールを使います。

プロファイル プロパティを削除するには

  1. [ユーザー] の [プロファイル デザイナ] をクリックします。

  2. [プロファイル] 画面で、プロパティを削除するプロファイル定義をクリックし、ツール バーの 開く をクリックします。

  3. [プロファイル : <プロファイル名>] 画面の [プロパティ] 一覧で、削除するプロパティをクリックします。

    注

    • 目的のプロパティが [プロパティ] 一覧に表示されていない場合は、そのプロパティが含まれているプロパティ グループを展開し、そのプロパティをクリックします。
  4. [削除] をクリックします。

  5. [削除] ダイアログ ボックスで、[OK] をクリックしてそのプロパティを削除します。

  6. 変更内容を保存して [プロファイル] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集したプロファイル定義が保存されます。プロファイル定義からプロパティを削除したら、その変更内容を Web サイトに発行する必要があります。変更内容を発行する方法については、「プロファイル定義への変更内容を Web サイトに発行する」を参照してください。

関連項目

ユーザーについて

プロファイル定義にプロパティを追加する

プロファイル定義にプロパティ グループを追加する

プロファイル プロパティを編集する

サイト用語とサイト用語グループを管理する


ユーザーを管理する

ユーザー情報を検索、編集、および管理するには、ユーザー モジュールを使います。

ここでは、次のトピックについて説明します。

  • ユーザーを検索する

  • ユーザーを編集する

  • 複数のユーザーを編集する

  • ユーザーをコピーする

  • ユーザーを削除する


ユーザーを検索する

Web サイトでユーザー プロファイルを個別に、またはグループ単位で検索するには、ユーザー モジュールを使います。[検索] ペインでは、ユーザー オブジェクト プロファイル定義のプロパティやユーザー プロファイルの値を使って、検索対象を絞り込むことができます。たとえば、"名" というプロファイル プロパティに "Mike" という値が含まれているユーザー プロファイルだけを検索することができます。検索ペインに返された検索結果には、検索条件に一致するすべてのユーザー プロファイルが表示されます。

ユーザー プロファイルを検索するには

ユーザー プロファイルを検索するための式を作成するには

ユーザー プロファイルを検索するには

  1. [ユーザー] の [ユーザー] をクリックします。[ユーザー] 画面に [検索] ペインが開いていない場合は、ツール バーの 検索 をクリックします。

  2. [検索条件] ドロップダウン リストで、次の中から検索条件を選択します。
    項目 | 操作
    [ログオン名] | ログオン名でユーザー プロファイルを検索します。
    [電子メール] | 電子メール アドレスでユーザー プロファイルを検索します。
    [姓] | 姓でユーザー プロファイルを検索します。
    [名] | 名でユーザー プロファイルを検索します。
    [アカウントの状態] | アカウントの状態がアクティブまたは非アクティブになっているユーザー プロファイルを検索します。
    [登録日] | ユーザーが登録した日付でユーザー プロファイルを検索します。
    [取引先サービス ロール フラグ] | [標準ユーザー] または [管理者] であるユーザーのユーザー プロファイルを検索します。
    [最終変更日時] | 特定の日付に編集されたユーザー プロファイルを検索します。
    [作成日時] | 特定の日付に作成されたユーザー プロファイルを検索します。
    [ユーザー リスト] | リスト マネージャ モジュールからユーザー リストを開きます。

  3. 表示されたプロパティ値のボックスで、選択したプロパティの特定の値 (検索対象のユーザー プロファイルの姓や電子メール アドレスなど) を入力するか、または一覧から選択します。

  4. より複雑な検索が必要な場合は、[検索条件] ドロップダウン リストの [プロパティで検索] をクリックし、検索式を作成します。

    注

    • 検索には、任意の数の文字に一致するワイルドカード エントリ (*) を含めることができます。たとえば、"t*"を入力すると、名前が文字 "t" で始まるすべてのユーザーが検索の対象になります。
  5. [検索開始] をクリックします。

注意

  • ユーザー プロファイルを検索する場合は、検索条件を限定して、検索パラメータに一致するユーザー プロファイルの数を制御することが重要です。多数のユーザー プロファイルが検索条件に一致すると、Commerce Server ビジネス デスクのパフォーマンスが大幅に低下する場合があります。

検索が実行されます。検索条件に一致するユーザー プロファイルが見つかった場合は、それらのユーザーがユーザー リストに表示されます。検索条件に一致するユーザー プロファイルが見つからなかった場合は、"この検索で一致する項目はありません。" というメッセージがユーザー リストに表示されます。

ユーザー プロファイルを検索するための式を作成するには

  1. [ユーザー] の [ユーザー] をクリックします。ユーザー リストの最上部に [検索] ペインが開いていない場合は、ツール バーの 検索 をクリックします。

  2. [検索条件] ドロップダウン リストの [プロパティで検索] をクリックします。

  3. [検索] ペインの [新規] をクリックします。

  4. 1 番目のボックスの下矢印をクリックします。ドロップダウン リストで、プロファイル定義の右側にある矢印をクリックし、プロパティ グループをダブルクリックします。次に、検索に使用するプロパティをクリックします。

    注

    • 検索に使用できる演算子は、選択するプロパティの型によって決まります。たとえば、文字列型のプロパティを選択した場合は、演算子には [が右の項目と等しい]、[が右の項目を含む]、または [が右の項目で始まる] を設定できます。サイト用語型のプロパティを選択した場合は、演算子には [が右の項目と等しい] または [が右の項目と等しくない] を設定できます。
  5. 2 番目のドロップダウン リストで演算子を選択します。

    注

    • 検索条件の入力方法は、選択するプロパティの型によって決まります。たとえば、文字列型のプロパティを選択した場合は、検索文字列を 3 番目のボックスに入力します。サイト用語型のプロパティを選択した場合は、省略記号 [...] ボタンをクリックして [サイト用語の選択] ダイアログ ボックスを開き、検索対象の用語を選択します。
  6. 3 番目のボックスで、検索条件を入力するか、または一覧から選択します。

  7. [適用] をクリックし、[検索開始] をクリックします。

検索が実行されます。検索条件に一致するユーザー プロファイルが見つかった場合は、それらのユーザーがユーザー リストに表示されます。検索条件に一致するユーザー プロファイルが見つからなかった場合は、"この検索で一致する項目はありません。" というメッセージがユーザー リストに表示されます。

関連項目

ユーザーについて

ユーザーを追加する

ユーザーを編集する

ユーザーをコピーする

ユーザーを削除する


ユーザーを編集する

既存のユーザー プロファイルを編集するには、ユーザー モジュールを使います。

ユーザーを編集するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、編集するユーザー プロファイルをクリックし、ツール バーの 開く をクリックします。

    注

    • 特定のユーザー プロファイルを表示するには、[ユーザー] 画面の最上部にある [検索] ペインを使います。ユーザー プロファイルを検索する方法については、「ユーザーを検索する」を参照してください。
  3. [ユーザーの更新: ユーザー <ユーザー名>] 画面で、ユーザー プロファイルを編集します。

  4. ユーザー プロファイルを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

編集したユーザー プロファイルが保存されます。

関連項目

ユーザーについて

ユーザーを追加する

ユーザーをコピーする

ユーザーを削除する

ユーザーを検索する


複数のユーザーを編集する

複数のユーザー プロファイルを編集するには、ユーザー モジュールを使います。複数のユーザー プロファイルを編集するときには、編集対象のすべてのユーザー プロファイルに同じ変更が加えられます。

複数のユーザーを編集するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、編集する複数のユーザー プロファイルをクリックし、ツール バーの 開く をクリックします。

  3. [ユーザーの更新 : <数> ユーザー] 画面で、次の操作を行います。
    項目 | 操作
    [新規] | 新しい更新クエリを作成します。更新クエリは、複数のユーザー プロファイルのプロパティの値を変更するときに使います。
    最初のドロップダウン リスト (左) | ドロップダウン リストで、更新するプロパティを選択します。
    2 番目のドロップダウン リスト (中央) | 更新式の演算子を選択します。
    3 番目のドロップダウン リスト (右) | プロパティの新しい値を入力または選択します。プロパティへの変更内容を入力する方法は、1 番目のボックスで選択したプロパティの型によって決まります。たとえば、文字列型のプロパティを選択した場合は、検索文字列を 3 番目のボックスに入力します。サイト用語型のプロパティを選択した場合は、省略記号 [...] ボタンをクリックして [サイト用語の選択] ダイアログ ボックスを開き、プロパティに指定する用語を選択します。

  4. [適用] をクリックし、ツール バーの 保存して前の画面に戻る をクリックします。

新しい情報とともにユーザー プロファイルが保存されます。

関連項目

ユーザーを追加する

ユーザー プロファイルの一覧をインポートする

ユーザーを編集する


ユーザーをコピーする

既存のユーザー プロファイルをコピーするには、ユーザー モジュールを使います。追加しようとしているユーザー プロファイルが既存のユーザー プロファイルによく似ている場合は、その既存のユーザー プロファイルをコピーして、プロファイル情報に必要な変更を加えた上で、新しいユーザーのプロファイルとして保存できます。

ユーザーをコピーするには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、コピーするユーザー プロファイルをクリックし、ツール バーの コピー をクリックします。

  3. [新しいユーザー : <ユーザー名> のコピー] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [ログオン名] | 新しいユーザー プロファイルのログオン名を入力します。
    [ユーザー パスワード] | 新しいユーザー プロファイルのパスワードを入力します。パスワードは 7 ～ 14 文字の英数字で設定する必要があります。スペースを含めることはできません。

  4. 新しいユーザー プロファイルに合わせて、コピー先のユーザー プロファイルの既存の情報に変更を加えます。

  5. 新しいユーザー プロファイルを保存して [ユーザー] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しいユーザー プロファイルが保存されます。

関連項目

ユーザーについて

ユーザーを追加する

ユーザーを編集する

ユーザーを削除する

ユーザーを検索する


ユーザーを削除する

Commerce Server データベースから既存のユーザー プロファイルを削除するには、ユーザー モジュールを使います。

注意

  • 削除したユーザー プロファイルは元に戻せません。

Commerce Server データベースからユーザー プロファイルを削除するには

  1. [ユーザー] の [ユーザー] をクリックします。

  2. [ユーザー] 画面で、削除するユーザー プロファイルをクリックし、ツール バーの 削除 をクリックします。

  3. [次のユーザーを削除しますか?] ダイアログ ボックスで、[はい] をクリックしてそのユーザー プロファイルを削除します。

    選択したユーザー プロファイルが削除されます。

関連項目

ユーザーについて

ユーザーを追加する

ユーザーを編集する

ユーザーをコピーする

ユーザーを検索する


組織を管理する

組織プロファイルを管理および更新するには、組織モジュールを使います。

ここでは、次のトピックについて説明します。

  • 組織を検索する

  • 組織を編集する

  • 複数の組織を編集する

  • 組織をコピーする

  • 組織を削除する


組織を検索する

特定の組織プロファイルを検索するには、組織モジュールを使います。[検索] ダイアログ ボックスでは、組織プロファイルのプロパティを使って、検索対象を絞り込むことができます。検索結果の一覧には、検索条件に一致するすべての組織プロファイルが表示されます。

組織プロファイルを検索するには

組織を検索するための式を作成するには

組織プロファイルを検索するには

  1. [ユーザー] の [組織] をクリックします。組織リストの最上部に [検索]ペインが開いていない場合は、ツール バーの 検索 をクリックします。

  2. [検索条件] ドロップダウン リストで、次の中から検索条件を選択します。
    項目 | 操作
    [名前] | 組織プロファイルを名前で検索します。
    [最終変更日時] | 特定の日付に編集された組織プロファイルを検索します。
    [作成日時] | 特定の日付に作成された組織プロファイルを検索します。

  3. 表示されたプロパティ値のボックスで、選択したプロパティの特定の値 (検索する組織の名前など) を入力するか、または一覧から選択します。

    注

    • 検索には、任意の数の文字に一致するワイルドカード エントリ (*) を含めることができます。たとえば、"t*"を入力すると、名前が文字 "t" で始まるすべての組織が検索の対象になります。
  4. より複雑な検索が必要な場合は、[検索条件] ドロップダウン リストの [プロパティで検索] をクリックし、検索式を作成します。

  5. [検索開始] をクリックします。

検索が実行されます。検索条件に一致する組織プロファイルが見つかった場合は、それらの組織が組織リストに表示されます。検索条件に一致する組織プロファイルが見つからなかった場合は、"この検索で一致する項目はありません。" というメッセージが組織リストに表示されます。

組織を検索するための式を作成するには

  1. [ユーザー] の [組織] をクリックします。組織リストの最上部に [検索] ペインが開いていない場合は、ツール バーの 検索 をクリックします。

  2. [検索条件] ドロップダウン リストの [プロパティで検索] をクリックします。

  3. [検索] ペインの [新規] をクリックします。

  4. 1 番目のボックスの下矢印をクリックします。ドロップダウン リストで、[組織] の右側にある矢印をクリックし、プロパティ グループをダブルクリックします。次に、検索に使用するプロパティをクリックします

    注

    • 検索に使用できる演算子は、選択するプロパティの型によって決まります。たとえば、文字列型のプロパティを選択した場合は、演算子には [が右の項目と等しい]、[が右の項目を含む]、または [が右の項目で始まる] を設定できます。サイト用語型のプロパティを選択した場合は、演算子には [が右の項目と等しい] または [が右の項目と等しくない] を設定できます。
  5. 2 番目のドロップダウン リストで演算子を選択します。

    注

    • 検索条件の入力方法は、選択するプロパティの型によって決まります。たとえば、文字列型のプロパティを選択した場合は、検索文字列を 3 番目のボックスに入力します。サイト用語型のプロパティを選択した場合は、省略記号 [...] ボタンをクリックして [サイト用語の選択] ダイアログ ボックスを開き、検索対象の用語を選択します。
  6. 3 番目のボックスで、検索条件を入力するか、または一覧から選択します。

  7. [適用] をクリックし、[検索開始] をクリックします。

検索が実行されます。検索条件に一致する組織プロファイルが見つかった場合は、それらの組織が組織リストに表示されます。検索条件に一致する組織プロファイルが見つからなかった場合は、"この検索で一致する項目はありません。" というメッセージが組織リストに表示されます。

関連項目

ユーザーについて

組織を追加する

組織を編集する

複数の組織を編集する

組織を削除する


組織を編集する

既存の組織プロファイルを編集および更新するには、組織モジュールを使います。また、組織モジュールを使うと、既存のユーザーを組織の管理連絡先および受取人として関連付けることもできます。

組織プロファイルを編集するには

  1. [ユーザー] の [組織] をクリックします。

  2. [組織] 画面で、編集する組織プロファイルをクリックし、ツール バーの 開く をクリックします。

  3. [組織の更新 : <組織名> 組織] 画面の [一般情報] セクションで、次の操作を行います。
    項目 | 操作
    [名前] | 組織の名前を編集します。
    [取引先番号] | 組織の取引先番号を編集します。
    [管理連絡先] | 管理連絡先を変更するには、省略記号 [...] ボタンをクリックします。管理連絡先を選択する方法については、「組織プロファイルを既存のユーザー プロファイルに関連付けるには」を参照してください。
    [受取人] | 受取人を変更するには、省略記号 [...] ボタンをクリックします。受取人を選択する方法については、「組織プロファイルを既存のユーザー プロファイルに関連付けるには」を参照してください。
    [組織カタログセット] | ドロップダウン リストで、この組織のカタログ セットを選択します。

  4. [購入] セクションの [購買マネージャ] ボックスで、省略記号 [...] ボタンをクリックして [ユーザーの選択] ダイアログ ボックスを開きます。

  5. [ユーザーの選択] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [既存のユーザーの選択] | 購買マネージャとして追加するユーザーの名前をクリックし、[OK] をクリックします。
    [ログオン名] 購買マネージャとして追加するユーザーの名前が [既存のユーザーの選択] 一覧にない場合は、そのユーザー名を入力し、[検索開始] をクリックします。

    目的のユーザーが [既存のユーザーの選択] 一覧に表示されている場合は、そのユーザーをクリックし、[OK] をクリックします。

  6. 編集内容を保存し、ほかの組織プロファイルを追加するには、ツール バーの [image] をクリックします。

編集した組織プロファイルが保存され、新しい組織プロファイルを作成する画面が開かれます。

関連項目

ユーザーについて

ユーザーを追加する

組織を追加する

組織をコピーする

組織を検索する


複数の組織を編集する

複数の組織のプロファイルを編集するには、組織モジュールを使います。複数の組織のプロファイルを編集するときには、編集対象のすべての組織プロファイルに同じ変更が加えられます。

複数の組織プロファイルを編集するには

  1. [ユーザー] の [組織] をクリックします。

  2. [組織] 画面で、編集する複数の組織プロファイルをクリックし、ツール バーの 開く をクリックします。

  3. [組織の更新 : <数> 組織] 画面で、次の操作を行います。
    項目 | 操作
    [新規] | 新しい更新クエリを作成します。更新クエリは、複数の組織プロファイルでプロパティの値を変更するときに使います。
    1 番目のドロップダウン リスト (左) | ドロップダウン リストで、編集する情報が含まれているプロパティを選択します。
    2 番目のドロップダウン リスト (中央) | 編集の条件となる演算子を選択します。
    3 番目のドロップダウン リスト (右) | プロパティの新しい値を入力または選択します。プロパティへの変更内容を入力する方法は、1 番目のボックスで選択したプロパティの型によって決まります。たとえば、文字列型のプロパティを選択した場合は、検索文字列を 3 番目のボックスに入力します。

  4. 編集内容を保存して [組織] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しいデータとともに組織プロファイルが保存されます。


組織をコピーする

既存の組織プロファイルのコピーを作成するには、組織モジュールを使います。既存の組織プロファイルと共通のプロパティを持つ組織プロファイルを作成する場合は、既存の組織プロファイルのコピーを作成し、そのコピーに変更を加えて新しい組織プロファイルを作成することができます。

既存の組織プロファイルをコピーするには

  1. [ユーザー] の [組織] をクリックします。

  2. [組織] 画面で、コピーする組織プロファイルをクリックし、ツール バーの コピー をクリックします。

  3. [新しい組織 : <組織名> のコピー] 画面の [一般情報] セクションの [名前] ボックスに、新しい組織の名前を入力します。

  4. 新しい組織プロファイルを保存して [組織] 画面に戻るには、ツール バーの 保存して前の画面に戻る をクリックします。

新しい組織プロファイルが保存されます。ユーザーを管理連絡先、受取人、または購買マネージャとしてこの組織プロファイルに追加する場合は、まずこの組織に追加するユーザーのプロファイルを作成し、そのユーザー プロファイルをこの組織に関連付けます。次に、この組織のプロファイルを編集して、管理連絡先、受取人、または購買マネージャとなるユーザーのプロファイルを追加します。

関連項目

ユーザーについて

組織を追加する

組織を編集する

組織を削除する

組織を検索する


組織を削除する

組織の一覧から組織プロファイルを削除するには、組織モジュールを使います。

組織を削除するには

  1. [ユーザー] の [組織] をクリックします。

  2. [組織] 画面で、削除する組織プロファイルをクリックし、ツール バーの 削除 をクリックします。

  3. [次の組織を削除しますか?] ダイアログ ボックスで、[はい] をクリックしてその組織プロファイルを削除します。

その組織プロファイルが削除されます。

注意

  • 削除した組織プロファイルは元に戻せません。

関連項目

ユーザーについて

組織を追加する

組織を編集する

組織をコピーする

組織を検索する


ビジネス デスクに関するトラブルシューティング

ここでは、Commerce Server ビジネス デスクを使用しているときによく起きる問題について説明します。特定の分野ごとに発生する可能性のある問題が一覧表示されていますので、該当するリンクをクリックして詳細情報を参照してください。

技術的な支援が必要な場合は、まずシステム管理者またはサイト開発者に問い合わせてください。また、Microsoft オンライン ニュースグループにもアクセスできます。Commerce Server 2000 ニュースグループの詳細については、次の Web ページを参照してください。 www.microsoft.com/japan/commerceserver

次の表は、ビジネス デスクの分野ごとに、発生する可能性のある問題の一覧を示します。

分野 問題
インストール
  • ビジネス デスクをインストールできない
分析
  • レポートを実行できない

  • セグメント モデルを表示できない

  • 静的 SQL Server レポートのエクスポートに失敗する

  • レポートにデータが表示されない

  • 買い物客の参照の状況レポートのエラー

  • 静的レポートの実行に失敗する

  • キー番号に対して見つからないメンバ名

  • SQL Server ベースの動的レポートが大量のメモリを消費する
キャンペーン
  • ダイレクト メーラーのジョブを実行できない

  • ダイレクト メーラーのジョブがエラーを出さずに失敗する

  • キャンペーン項目が Web サイトに予想どおりに表示されない

  • リスト マネージャにデータが表示されない
カタログ
  • カタログをインポートできない

  • カタログを取引先へ送信できない
ビジネス デスク
  • ライブラリは登録されていません

  • ビジネス デスクを実行できない

  • ビジネス デスクへのアクセス エラー

  • ユーザーにページを表示する権限がない - 再認証要求

  • Web サイトに変更が反映されない

  • 同じビジネス デスクのインスタンスを 2 つ開けない

  • ヘルプのフルテキスト検索で検索結果が返されない


ビジネス デスクをインストールできない

説明

ビジネス デスクの Web サイトに接続してビジネス デスク クライアントをインストールしようとすると、次のメッセージが表示される場合があります。

ビジネス デスクのインストール エラー

解決方法

ビジネス デスクをインストールするには、Microsoft ActiveX コントロールを有効にする必要があります。

ビジネス デスクのセットアップを継続するには

  1. Internet Explorer で、[ツール] メニューの [インターネット オプション] をクリックします。

  2. [セキュリティ] タブをクリックします。

  3. [イントラネット ゾーン] ゾーンを選択し、[レベルのカスタマイズ] をクリックします。

  4. [ActiveX コントロールとプラグイン] で、[署名済み Active X コントロールのダウンロード] を有効にします。

  5. [OK] をクリックして [適用] をクリックし、もう一度 [OK] をクリックします。

  6. ツール バーの 更新 をクリックし、ブラウザのウィンドウにビジネス デスクの URL を入力して、ビジネス デスクのインストールを続けます。たとえば、「http://<servername>/myretailbizdesk」と入力します。


レポートを実行できない

説明

レポート モジュールからレポートを実行しようとしたときに、何も起きないことがあります。静的レポートを実行しようとした場合は、実行失敗のエラーが返されるか、またはレポートにデータが含まれません。

注

  • 動的レポートを実行している場合は、次のエラー メッセージが表示されます。

"BOF と EOF のいずれかが True になっているか、または現在のレコードが削除されています。"

解決方法

システム管理者に問い合わせてください。レポートを正常に実行するには、システム管理者がデータ ウェアハウスにデータをインポートする必要があります。


セグメント モデルを表示できない

説明

ビジネス デスクでセグメント ビューアを開いたときに、画面に何も表示されません。

解決方法

システム管理者に問い合わせてください。セグメント モデルを表示するには、システム管理者がセグメント モデルを構築しておく必要があります。


静的 SQL Server レポートのエクスポートに失敗する

説明

Commerce Server と共に Microsoft SQL Server 7.0 を使用しているときに、静的レポートをリストとしてリスト マネージャ モジュールへエクスポートし、エクスポートに失敗した場合は、SQL Server の列名に、~`!@#$%^&*()-_+={}[]|\:;<,>.?/' などの無効な文字が含まれている可能性があります。

解決方法

システム管理者に問い合わせて、SQL Server の列名の文字がすべて有効であるかどうかを確認してください。確認したら、もう一度レポートを実行します。


レポートにデータが表示されない

説明

ブラウザに動的レポートを表示したときに、データが表示されません。ビジネス デスクは、動的レポート内の 1 ディメンションにつき最大 25 万のメンバまでサポートしています。ディメンションあたり 25 万以上のメンバを含むデータ セットに対して動的レポートを実行した場合には、Office 2000 Web Components (OWC) のタイムアウトが発生し、ブラウザ ウィンドウにデータを含まないレポートが表示されます。

解決方法

25 万以上のメンバを持つディメンションがデータに含まれている場合は、システム管理者に問い合わせて、データを分析するためのカスタム静的レポートの作成を要求してください。


買い物客の参照の状況レポートのエラー

説明

買い物客の参照の状況レポートを実行しようとしたときに、エラー メッセージが表示されます。

解決方法

システム管理者に問い合わせてください。システム管理者は、Commerce Server 2000 ヘルプで、このエラーの解決方法を参照できます。


静的レポートの実行に失敗する

説明

静的レポートを実行しようとしたときに、レポートが生成されず、タスク バー ボタンがすべて無効になります。インターネット インフォメーション サービス (IIS) をリセットしたときに IIS Com エラーが発生したというエラー メッセージが表示されます。

解決方法

システム管理者に問い合わせて、静的レポートの実行中にインターネット インフォメーション サービス (IIS) 5.0 がリセットされていないかどうかを確認してください。IIS がリセットされていた場合は、いったんビジネス デスクを終了し、もう一度開いてください。次に、静的レポートを再実行します。


キー番号に対して見つからないメンバ名

説明

広告の利用状況 – ページグループ ディメンション レポート、または商品別売り上げ – 顧客ディメンション レポートを実行しているときに、レポートに "キー番号に対して見つからないメンバ名" と表示されることがあります。このエラーは、データ ウェアハウスにインポートされたデータに、必要な一意の値がないことが原因です。

解決方法

広告の利用状況レポート システム管理者に問い合わせて、キャンペーン データ インポート データ変換サービス (DTS) タスクを実行し、もう一度レポート準備 DTS タスクを実行してください。それでも問題が解決しない場合は、再度システム管理者に問い合わせてください。ソース データベースからデータが削除されている場合に、この現象が発生します。

商品別売り上げレポート ユーザー プロファイル データ インポート DTS タスクを実行し、もう一度レポート準備 DTS タスクを実行してください。それでも問題が解決しない場合は、システム管理者に問い合わせてください。ソース データベースからデータが削除されている場合に、この現象が発生します。


SQL Server ベースの動的レポートが大量のメモリを消費する

説明

SQL Server ベースの動的レポートを実行すると、ピボットコントロールが、レポートを表示する前にすべてのデータをメモリに読み込もうとします。たとえば、プライマリ テーブルの 1 つに 40 万の行がある場合、広告の表示回数とヒット率 (キャンペーン項目別) レポートを実行すると、システム メモリを約 700MB 消費します。

解決方法

SQL Server ベースの動的レポートを実行するときは、メモリ消費に注意して計画を立ててください。

関連項目

新しい動的レポートを作成する


ダイレクト メーラーのジョブを実行できない

説明

実行されないダイレクト メーラー ジョブがあるにもかかわらず、エラー メッセージが返されません。

解決方法

システム管理者に問い合わせてください。ダイレクト メーラー ジョブがパーソナライズされたダイレクト メール キャンペーンである場合は、システム管理者が、パフォーマンス上の理由でダイレクト メール ジョブを抑止している可能性があります。ダイレクト メール専用の Web サーバーがない場合、システム管理者が、トラフィックの低い時間帯にキャンペーン項目を開始するように設定している可能性があります。これは、ダイレクト メールがユーザーと同様に Web サーバーにも影響を及ぼすからです。ダイレクト メール リストの量によっては、Web サーバーのパフォーマンスに影響を与えることがあります。


ダイレクト メーラーのジョブがエラーを出さずに失敗する

説明

ダイレクト メーラー ジョブの開始に失敗したにもかかわらず、失敗の理由を通知するエラー メッセージが表示されません。

解決方法

システム管理者に問い合わせてください。この失敗には、いくつかの原因が考えられます。たとえば、スケジュールの設定されたダイレクト メール ジョブの実行予定時刻に SQL Server エージェントが停止している場合、ジョブは実行されず、失敗は記録されません。ジョブが実行されなかったことを示すメッセージは表示されません。システム管理者が、SQL Server Enterprise Manager の SQL Server エージェント コントロールから手動でジョブを開始する必要があります。


キャンペーン項目が Web サイトに予想どおりに表示されない

説明

作成された広告キャンペーン項目や割引キャンペーン項目が、Web サイトに表示されません。

解決方法

キャンペーン マネージャ モジュールを使って新しい広告を作成した場合、広告を発行するまで、または定期的な更新サイクルで広告が検出されるまで、広告は非アクティブになります。特に指定しない限り、広告は 5 分ごとに自動的に発行されます。ただし、割引は自動的には発行されないので、発行する必要があります。また、事前に広告または割引を作成して非アクティブにしていた場合は、再びその広告または割引を開いて、アクティブにする必要があります。

注

  • 新しい Web サイトの広告キャンペーンを更新するには、まずそのサイトを訪問する必要があります。キャンペーン項目を運用サイトに送信するには、Web ファームのすべてのサーバーをあらかじめ更新する必要があります。

次の表は、Web サイトに広告または割引が表示されない場合に確認する必要がある、その他の状況を示します。

説明 | 解決方法
キャンペーン項目は発行されていますか? | キャンペーンの発行モジュールを使ってキャンペーンを発行します。
広告またはキャンペーン項目の状態が非アクティブになっていませんか? | 広告またはキャンペーン項目を開き、状態をアクティブに変更します。
目標値または優先度を定義していますか? | 有料広告の場合、広告キャンペーンの目標値または優先度を指定する必要があります。
対象化、業種コード、または表示上限回数に矛盾はありませんか? | この広告に関連する対象化、業種コード、または表示上限回数が実行を妨げていないかどうかを確認してください。
広告またはキャンペーンの日付が範囲外ではありませんか? | 広告またはキャンペーンの日付が、遠い未来に設定されていないかどうかを確認してください。
表示しようとした広告の代わりにほかの広告が表示されていませんか? | 表示頻度の高いほかの広告が優先されていないかどうかを確認してください。
広告が古いページ グループで実行されるように設定されていませんか? | Web サイトのデザインを変更した場合、広告が前のページ グループで実行されるようにスケジュール設定されている可能性があります。新しい Web サイトの場合は、新しい広告を設定する必要があります。
広告は自社広告ですか? | 広告が自社広告として設定されている場合は、すべての有料広告が表示頻度を達成するまで、Web サイトに表示されません。
対象式が広告の表示を妨げていませんか? | サイト訪問者のプロパティが対象式の定義を満たしていない場合、広告は表示されません。
広告スペースのサイズが制限されていませんか? | Web サイトの広告スペースが特定のコンテンツ サイズに制限されており、広告がそのサイズに該当しない場合、広告は表示されません。


リスト マネージャにデータが表示されない

説明

ユーザー モジュールで大量のユーザー データ セットに対する更新操作または検索操作を実行すると、処理タイムアウトが発生することがあります。

操作のタイムアウトはさまざまな要因によって発生し、データが表示されないことがあります。多数のエンティティが取得されることも、要因の 1 つとなりえます。

解決方法

システム管理者に問い合わせてください。システム管理者は、Commerce Server 2000 ヘルプで、このエラーの解決方法を検索できます。


カタログをインポートできない

説明

カタログをインポートしようとすると、インポートに失敗することがあります。たとえば、カタログ ファイルが C:\Documents and Settings\<UserName>\Desktop にある場合、ファイルの場所が原因でインポートに失敗します。"カタログ インポート プロセスが正常に開始されました" というメッセージが表示されますが、[カタログ エディタ] をクリックしてページを再度読み込んでも、カタログがインポートされていません。

解決方法

システム管理者に問い合わせてください。インターネット インフォメーション サービス (IIS) のアプリケーションの保護が中 (プール) でビジネス デスクを実行している場合、Desktop などのシステム フォルダにアクセスできません。デスクトップからファイルをインポートするには、システム管理者がビジネス デスクを、アプリケーションの保護を低 (IIS プロセス) で実行している必要があります。

次の表は、カタログのインポートが完了しなかった場合に確認する必要がある、その他の状況を示します。

説明 | 解決方法
カタログをインポートし、インポートが進行中であるというメッセージが表示されます。しかし、[カタログ エディタ] をクリックしてページを再度読み込むと、カタログが表示されません。 | 同名の既存の商品定義とはプロパティが異なる商品定義を含むカタログをインポートすると、インポートに失敗します。すべてのカタログで商品定義のプロパティに矛盾がないことを確認してください。
カタログ エディタで XML カタログをインポートしようとしたときに、インポートに失敗します。 | カタログの完全なファイル パスとファイル名を使っていること、またはビジネス デスク アプリケーションを実行しているサーバーの共有 (CommerceCatalogs) にカタログがあることを確認してください。カタログをサーバーに置くように、システム管理者に依頼してください。


カタログを取引先へ送信できない

説明

作成した取引先のカタログを、取引先へ送信できません。

解決方法

システム管理者が Microsoft BizTalk Server 2000 をセットアップし、Commerce Server を文書交換用に正しく構成しているかどうかを確認してください。


ライブラリは登録されていません

説明

ビジネス デスクを使用しているときに "ライブラリは登録されていません" というメッセージが表示されます。

解決方法

\winnt\system32 ディレクトリにある Vbscript.dll の再登録が必要な場合があります。システム管理者に問い合わせてください。


ビジネス デスクを実行できない

説明

問題なくビジネス デスクを実行していたにもかかわらず、ビジネス デスクを起動しようとすると、次のいずれかのエラー メッセージが表示されます。

  • ビジネス デスクを読み込み中にエラーが発生しました。

  • ビジネス デスク アプリケーションを読み込み中にエラーが発生しました。

解決方法

ビジネス デスク アプリケーションを運用している Web サーバーでシステム管理者のパスワードが変更されると、その変更によって上記のエラーが発生する場合があります。システム管理者は、Commerce Server 2000 ヘルプで、このエラーの解決方法を検索できます。


ユーザーにページを表示する権限がない - 再認証要求

ユーザーにページを表示する権限がない – 再認証要求

説明

ビジネス デスクが予期しないときにユーザー名とパスワードの要求を表示するか、ユーザーにページを表示する権限がないというエラー メッセージを表示します。または、正しいログオン情報を入力した後に [ネットワーク パスワードの入力] ダイアログ ボックスが再表示されます。

解決方法

ビジネス デスクを Commerce Server とは別の Web サーバーで実行している場合は、Commerce Server を実行している Web サーバーのメモリが不足している可能性があります。システム管理者に問い合わせてください。


ビジネス デスクへのアクセス エラー

説明

問題なくビジネス デスクを実行していたにもかかわらず、ビジネス デスクを起動できません。特定のモジュールを開こうとすると、"ビジネス デスクへのアクセス エラー" というメッセージが表示されます。

解決方法

与えられていないユーザー権限を必要とするモジュールを開こうとしています。必要なアクセス権限を得るには、システム管理者に問い合わせてください。


Web サイトに変更が反映されない

説明

ビジネス デスクに変更を行った後で Web サイトを表示しても、変更が反映されません。

解決方法

Commerce Server のキャッシュの更新が必要な場合があります。キャンペーンの発行モジュール、トランザクションの発行モジュール、プロファイルの発行モジュールのいずれかを使ってサイトを更新してください。カタログ エディタ モジュールのツール バーの カスタム カタログの発行 ボタンを使ってカタログを発行することが必要な場合もあります。


同じビジネス デスクのインスタンスを 2 つ開けない

説明

同じサイト用の同じビジネス デスク クライアントの 2 つのインスタンスを開こうとしたときに、ビジネス デスクが開きません。

解決方法

同じサイト用の同じビジネス デスク クライアントの 2 つのインスタンスを開くことはできません。ただし、異なるサイト用の 2 つのビジネス デスク クライアントを同時に実行することはできます。


ヘルプのフルテキスト検索で検索結果が返されない

説明

ビジネス デスクのヘルプで検索を実行したときに、検索結果が返されません。

解決方法

システム管理者に、ビジネス デスク アプリケーションを運用している Web サーバーで Indexing Service を起動するように依頼してください。Indexing Service が起動してからヘルプのコンテンツを格納したフォルダが利用可能になるまで、時間がかかる場合があります。Indexing Service は必ず自動起動に設定してください。


Commerce Server の機能を拡張する

Microsoft Commerce Server 2000 は、さまざまな方法で機能を拡張することが可能です。次のようなことができます。

  • カスタム リソースやカスタム Commerce Server ビジネス デスク モジュールを作成し、それらを Commerce Server マネージャおよび Commerce Server ビジネス デスクに統合できます。

  • 新しいパイプライン コンポーネントを作成して統合することで、注文処理、コンテンツ選択、およびダイレクト メールで使われるパイプライン処理の機能を拡張できます。

  • データ ウェアハウスに新しい型のデータを格納し、新しいレポートを作成してそのデータを分析することができます。

ここでは、これらの機能拡張とその他の関連項目について説明します。

ここでは、次のトピックについて説明します。

  • カスタム リソースを統合する : Commerce Server にカスタム リソースを統合する方法について説明します。

  • ビジネス デスク モジュールを構築する : 新しいビジネス デスク モジュールを構築する方法について説明します。アーキテクチャの概略に関する情報、新しいモジュールの統合に関する情報、および新しいモジュールで使用できる HTML コンポーネントのリファレンスを提供します。

  • パイプライン コンポーネントを構築する : 新しいパイプライン コンポーネントの作成方法について、C++ の場合と Microsoft Visual Basic の場合に分けて説明します。

  • サード パーティの商品カタログを統合する : サードパーティの開発者の方々が独自のカタログ システムを簡単に統合できるように、Commerce Server での各種カタログの統合の要点について説明します。

  • コンテンツ選択フレームワークを拡張する : コンテンツ選択フレームワークをカスタマイズして、特定の個人向けのコンテンツを選択するアルゴリズムに変更を加える方法について説明します。

  • カスタム レポートを作成する : 新しい分析レポートを作成して、Commerce Server に用意されている標準レポートの機能を補う方法について説明します。

  • データ ウェアハウスを操作する : データ ウェアハウスを操作する方法について説明します。データ ウェアハウスの論理スキーマと物理データ ストアについても説明します。

  • Passport と統合する : Commerce Server の Web サイトに、シングル サイン インや wallet テクノロジを初めとする Microsoft Passport の機能を統合する方法について説明します。


カスタム リソースを統合する

Microsoft Commerce Server 2000 リソースは、Commerce Server サイトのアプリケーションに機能を提供するソフトウェア パッケージであり、リソースの 1 つ以上の構成オプションを、システム管理者に公開する必要があります。後者の要件を考えると、構成オプションを公開するための最良の方法は、Commerce Server マネージャを通して行うことです。ここでは、独自に開発したカスタム リソースを Commerce Server マネージャに統合し、それが他の Commerce Server リソースと同じように管理できるようにする方法について説明します。

統合処理に関してもう 1 つ重要な要素は、Commerce Server サイト パッケージャを使って、特定の構成設定を簡単に配置できるようにすることです。統合時の配置作業は、構成データの複雑さと、構成データをどこに保持するかによって、ほとんど手間がかからない場合から、特定の Component Object Model (COM) インターフェイスの実装が必要な場合までさまざまです。

ここでは、次のトピックについて説明します。

  • 管理データベース テーブル : 管理データベースと、その中でリソース構成データが定義および格納されているテーブルのサブセットについて説明します。

  • リソースを追加する : カスタム リソースに関連付けられた構成データを保持できるように管理データベースを構成する手順について説明します。

  • 統合レベル : カスタム リソースの開発者が利用できる統合のさまざまなレベルについて説明します。

  • MMC に関する参照先 : MMC スナップイン拡張を作成する方法など、Microsoft 管理コンソール (MMC) の詳細に関する参照先を示します。


管理データベース テーブル

Commerce Server で提供されている Microsoft Commerce Server 2000 リソースの構成データは、"MSCS_Admin" という名前の Microsoft SQL Server データベースに格納されます。このデータベースには、7 つのテーブルがあり、カスタム リソースに関連付けられた構成データをデータベース内で保持し、Commerce Server マネージャを通して公開し、Commerce Server サイト パッケージャを使って配置できるようにする方法を理解するために重要です。ここでは、これらのテーブルの詳細について説明します。

テーブル名 | 説明
ExtendedProps | リソースのプロパティの特性 (リソース プロパティ スキーマ) を格納します。
PupDBScripts | GenericPuP オブジェクトの使用の構成で使います。
ResourceProps | ExtendedProps テーブルで定義されたリソース プロパティの実際の値を格納します。
Resources | SystemProps テーブルの定義に応じて、リソースの実際のインスタンスを定義します。
SiteResources | サイトにインストールされているすべてのリソースの検索手段として機能します。
Sites | サイトに関するデータを取得するときの開始点です。
SystemProps | リソースの特性 (リソース スキーマ) を格納します。

リソース プロパティの値の取得は、複数の手順で行われます。Sites テーブルでサイトの名前を検索することから開始します。Sites、SiteResources、Resources の各テーブルの順に進み、そしてリソース プロパティの実際の値が格納されている ResourceProps テーブルに到達します。

これらのテーブルにアクセスして値の取得を行い、新しい値を設定するには、次の表に示す管理用のオブジェクトを使います。

オブジェクト | 説明
GlobalConfig | グローバル リソースの管理用のメソッドを提供します。
SiteConfig | サイト リソースの管理用のメソッドを提供します。
SiteConfigReadOnly | グローバル リソースおよびサイト リソースのプロパティ値を高速で取得するためのメソッドを提供します。


ExtendedProps テーブル

ExtendedProps テーブルは、リソース プロパティの特性を格納します。このテーブルは、SystemProps テーブルと共に、管理データベースのスキーマを定義します。

次の表は、ExtendedProps テーブルの列について説明しています。

ExtendedProps 列 | 説明
s_ResourceType | 1 つのリソース タイプを表す SystemProps テーブルの 1 行を、このテーブル内の関連するリソースのプロパティとマップするために使われる文字列です。SystemProps テーブルでこの列に対応する列も s_ResourceType という名前です。
s_PropertyName | プロパティの内部の名前として機能する任意の文字列に設定されます。GlobalConfig、SiteConfig、SiteConfigReadOnly の各オブジェクトを使い、プログラムによってプロパティにアクセスするときに使われます。 一般的には、この名前は説明的なもので、プロパティのデータ型を示す文字とアンダースコアで始まります。たとえば、"i_AuctionOptions" は整数 (Integer) 型であることを示します。
f_IsConnStr | 1 に設定されている場合、プロパティが OLE DB 接続文字列であることを示します。設定されると、Commerce Server マネージャがデータリンク プロパティ ダイアログボックスを使って値を設定し、アンパックされるときに Commerce Server サイト パッケージャが特定のデータベースの接続情報をユーザーに求めます。 このフラグおよびフラグと接続文字列の構成値との関係に関する追加情報については、「ResourceProps テーブル」の注を参照してください。
f_IsHidden | "1" に設定されている場合、リソース ダイアログ ボックスではプロパティを表示しません。カスタム MMC スナップインがあるプロパティの場合、このフラグを 1 に設定します。
f_IsSimpleList | 1 に設定されている場合、新しいプロパティが SimpleList オブジェクトであることを示します。この機能により、複数の値を持ったプロパティを格納することができます。
s_Description | リソース ダイアログ ボックスに表示される、任意の説明的な文字列です。
i_Vartype | 格納するデータの Variant 型を示す整数です。たとえば、8 は文字列を示し、8200 は文字列の配列を示します。SafeArray、IUnknown、および IDispatch を除く、すべての Variant 型が利用できます。 新しいプロパティのデータ型を示す整数値に設定します。値が 8200 の場合は、文字列の Variant 配列を示します。
s_Value | リソース プロパティの既定値 (存在する場合) です。
s_DisplayName | リソース ダイアログ ボックスに表示される、ユーザーにわかりやすいプロパティの名前です。


PupDBScripts テーブル

PupDBScripts テーブルは、GenericPuP オブジェクトの使用の設定で使います。

次の表は、PupDBScript テーブルの列について説明しています。

PupDBScripts 列 | 説明
i_SiteID | 特定のリソースが特定のサイトと関連付けられていることを識別する整数です。 この列は SiteResources テーブルおよび Sites テーブルの i_SiteID 列に対応します。
i_ResourceID | この GenericPuP オブジェクト エントリが関連付けられているリソースを識別する整数です。この列の値は、ResourceProps、Resources、および SiteResources の各テーブルの i_ResourceID 列の値に対応します。
u_scriptname | このGenericPuP オブジェクト エントリが関連付けられているスクリプトの名前です。この名前は、Resources テーブルの s_PupParam2 列または s_PupParam3 列のどちらかにカンマで区切られたリストとして表示されます。
txt_script | この GenericPuP オブジェクト エントリに関連付けられた SQL スクリプトです。この列のスクリプト エントリを管理するには、SiteConfig オブジェクトの GetSQLScript、PutSQLScript、および DeleteSQLScript の各メソッドを使います。詳細については、「SiteConfig オブジェクト」を参照してください。


ResourceProps テーブル

ResourceProps テーブルは、リソース プロパティの実際の値を格納します。このテーブルは、Resources テーブル、SiteResources テーブル、および Sites テーブルと共に、管理データベースのデータを格納します。

次の表は、ResourceProps テーブルの列について説明しています。

ResourceProps 列 | 説明
i_ResourceID | このプロパティが関連付けられているリソースを識別する整数です。この列の値は、PupDBScript、Resources、および SiteResourcesの各テーブルの i_ResourceID 列の値に対応します。
s_PropertyName | プロパティの内部の名前として機能する任意の文字列に設定されます。GlobalConfig、SiteConfig、およびSiteConfigReadOnly の各オブジェクトを使い、プログラムによってプロパティにアクセスするときに使われます。 一般的には、この名前は説明的なもので、プロパティのデータ型を示す文字とアンダースコアで始まります。たとえば、"i_AuctionOptions" は整数 (Integer) 型であることを示します。
f_IsConnStr | 1 に設定されている場合、プロパティが OLE DB 接続文字列であることを示します。設定されると、Commerce Server マネージャがデータリンク プロパティ ダイアログボックスを使って値を設定し、アンパックされるときに Commerce Server サイト パッケージャが特定のデータベースの接続情報をユーザーに求めます。 このフラグおよびフラグと接続文字列の構成値との関係に関する追加情報については、次の注を参照してください。
f_IsHidden | "1" に設定されている場合、リソース ダイアログ ボックスではプロパティを表示しません。カスタム MMC スナップインがあるプロパティの場合、このフラグを 1 に設定します。
f_IsSimpleList | 1 に設定されている場合、新しいプロパティが SimpleList オブジェクトであることを示します。この機能により、複数の値を持ったプロパティを格納することができます。
s_Description | この列は使われません。
i_Vartype | 格納するデータの Variant 型を示す整数です。たとえば、8 は文字列を示し、8200 は文字列の配列を示します。SafeArray、IUnknown、および IDispatch を除く、すべての Variant 型が利用できます。 新しいプロパティのデータ型を示す整数値に設定します。値が 8200 の場合は、文字列の Variant 配列を示します。
s_Value | プロパティの値です。
s_DisplayName | リソース ダイアログ ボックスに表示される、ユーザーにわかりやすいプロパティの名前です。

注

  • Commerce Server サイト パッケージャでは、名前が "connstr_db" で始まるリソース プロパティに対して特別な処理を行います。これらのプロパティに関連付けられている値はパッケージ化されますが、アンパックされたときにパッケージ化された値は無視され、プロパティには既定の接続文字列値が設定されます。[標準] を実行する場合は、この既定値が自動的に受け付けられます。[カスタム] を選択すると、既定値が表示され、値を変更することができます。これらの接続文字列は、アンパック時では無視されますが、クリア テキストでパッケージ化され、セキュリティ リスクを生じる可能性があります。

  • 接続文字列値のパッケージ化がセキュリティ リスクを生じる可能性があるのは、パスワードを含んだ値がサイト パッケージにクリア テキストとして格納されるためです。このセキュリティ リスクの問題を回避するために、次の機能が開発されています。

    f_connstr 属性は、接続文字列値 (または、機密扱いの構成プロパティ) のパッケージ化を抑制する機能を提供します。この属性を 1 に設定すると、関連するプロパティの値はパッケージ化されません。

  • セキュリティ リスクの可能性を承知の上で、接続文字列のパッケージ化とアンパックをユーザーによる操作なしで実行するには、接続文字列のプロパティ名を "connstr_db" で始めず、関連する f_connstr " 属性も 1 に設定しないでください。また、IPuP インターフェイスを実装する Component Object Model (COM) オブジェクトを作成し、そのオブジェクトで接続文字列のパッケージ処理およびアンパック処理を行うこともできます。


Resources テーブル

Resources テーブルは、リソースの実際のインスタンスを定義します。このテーブルは、ResourceProps、SiteResources、および Sites の各テーブルと共に、管理データベースのデータを格納します。

Resources テーブルのエントリは、ResourceProps テーブルのエントリと一対多の関連があります。一対多の関連の詳細については、「一対多の関連」を参照してください。

次の表は、Resources テーブルの列について説明しています。

Resources 列 | 説明
i_ResourceID | このテーブルのリソースを識別する整数です。この列の値は、PupDBScript、ResourceProps、および SiteResources の各テーブルの i_ResourceID 列の値に対応します。
s_DisplayName | リソースのプログラム上の名前を格納する文字列です。GlobalConfig、SiteConfig、および SiteConfigReadOnly の各オブジェクトの Fields プロパティを通してリソースにアクセスするときに使われます。詳細については、「GlobalConfig.Fields」、「SiteConfig.Fields」、および「SiteConfigReadOnly.Fields」をそれぞれ参照してください。
s_Description | ユーザーにわかりやすいリソースの名前を格納する文字列です。
s_Type | このリソースの種類を示す文字列です。この列は、SystemProps テーブルと ExtendedProps テーブルの s_ResourceType 列にマップされます。
f_IsGlobal | リソースがグローバル リソース (1) であるかサイト リソース (0) であるかを示すフラグです。
f_ResourceFlags この列の値は、リソースのいくつかの Boolean 値特性についての情報を格納するビット フィールドです。Commerce Server マネージャと Commerce Server サイト パッケージャではこれらの特性を調べ、各リソースをどのように処理すべきかを判断します。これらのビットは次のように定義されます。
  • 0x00000001 – この行がグローバル リソースへの参照である場合に設定されます。

    定数 : IS_REFTOGROUPRES

  • 0x00000002 – このリソースが MMC で表示できる場合に設定されます。

    定数 : IS_SNAPINITEM

  • 0x00000004 – このリソースが独自のスナップインを持つときに設定されます。このビットが設定されている場合、s_ProgIDSnapIn 列にスナップイン拡張の ProgID がなければなりません。

    定数 : IS_SNAPINAVAILABLE

  • 0x00000008 – このリソースがサイトのアプリケーションである場合に設定されます。外部からは使われません。

    定数 : IS_ADDRESS

  • 0x00000010 – このリソースが物理リソースである場合に設定されます。削除機能に影響します。最初のグローバル リソースの既定値として使われます。[カスタム] アンパックの実行中は、ユーザーが既存のグローバル リソースを選択する必要があります。IS_REFTOGROUPRES と組み合わせて使われます。

    定数 : IS_PHYSICAL

  • 0x00000020 – 使われません。

    定数 : IS_ALWAYSPACK

  • 0x00000040 –Addresses と AddressItems に対して設定されます。Commerce Server とは関係ない場合があります。

    定数 : IS_NONCOMMERCE

  • 0x00000080 – 非標準のスナップイン拡張を使うリソースに対して設定されます (現在、データ ウェアハウス リソースだけに使用されます)。プログラミング上の特別な配慮が必要になるため、このフラグを使うことはお勧めしません。

    定数 : IS_SNAPIN_NNSE

  • 0x00000100 – Commerce Server サイト パッケージャによってパッケージ化されることのないリソースに対して設定されます。このビットは、リソースを別のマシンに転送したくない場合に設定します。

    定数 : IS_NOTPACKED

定数は cssnapin.h ファイルの ConfigFlags 列挙に定義されます。
s_ProgIDSnapIn | このリソースのスナップイン拡張の ProgID を提供する文字列です。スナップイン拡張は、IDispatch インターフェイスを実装する必要があります。この列に値が含まれている場合は、f_ResourceFlags 列の IS_SNAPINAVAILABLE ビットを設定する必要があります。
s_Computer | Commerce Server がインストールされているコンピュータの名前を選択的に示す文字列です。
i_Status | 現在、この列は使われていません。
f_PupFlags | 0 に設定されている場合、パッケージ化とアンパックで渡される名前がファイル名であることを Commerce Server サイト パッケージャに知らせます。1 に設定されている場合、パッケージ化とアンパックで渡される名前がフォルダ名であることを Commerce Server サイト パッケージャに知らせます。
s_ProgIDPUP | Commerce Server サイト パッケージャ (IPuP) インターフェイスを実装する COM コンポーネントの ProgID を提供する文字列です。詳細については、「サイト パッケージャ インターフェイス」を参照してください。
s_PupParam1 | リソースに対してパッケージ化およびアンパックするデータベース テーブルの名前のカンマで区切られたリストを含む文字列です。
s_PupParam2 | リソースをインポートするときに実行する SQL スキーマ スクリプトの名前のカンマで区切られたリストを含む文字列です。
s_PupParam3 | リソースを削除するときに実行する SQL スクリプトの名前のカンマで区切られたリストを含む文字列です。


SiteResources テーブル

SiteResources テーブルは、サイトにインストールされているすべてのリソースの検索手段として機能します。このテーブルは、ResourceProps、Resources、および Sites の各テーブルと共に、管理データベースのデータを格納します。

SiteResources テーブルのエントリは、Resources テーブルのエントリと多対多の関連があります。多対多の関連の詳細については、「多対多の関連」を参照してください。

次の表は、SiteResources テーブルの列について説明しています。

SiteResources 列 | 説明
i_SiteID | 対応するリソースと関連付けられている特定のサイトを識別する整数です。 この列は PupDBScripts テーブルおよび Sites テーブルの i_SiteID 列に対応します。
i_ResourceID | 識別されたリソースを対応するサイトに関連付ける整数です。この列の値は、PupDBScript、ResourceProps、および Resources の各テーブルの i_ResourceID 列の値に対応します。


Sites テーブル

Sites テーブルは、サイトに関するデータを取得するときの開始点です。このテーブルはサイト名をサイト ID にマップします。この ID は、サイトのインターネット インフォメーション サービス (IIS) のメタベース ID とは異なります。このテーブルは、ResourceProps、Resources、および SiteResources の各テーブルと共に、管理データベースのデータを格納します。

Sites テーブルのエントリは、SiteResources テーブルのエントリと一対多の関連があります。一対多の関連の詳細については、「一対多の関連」を参照してください。

次の表は、Sites テーブルの列について説明しています。

Sites 列 | 説明
i_SiteID | 特定のサイトを識別する整数です。 この列は PupDBScripts テーブルおよび SiteResources テーブルの i_SiteID 列に対応します。
s_Name | ユーザーにわかりやすいサイトの名前を含む文字列です。
s_Description | ユーザーにわかりやすいサイトの説明を含む、省略可能な文字列です。
i_Status | 現在、この列は使われていません。
d_DateCreated | このサイト エントリが作成された日付と時刻です。
d_DateModified | このサイト エントリが前回変更された日付と時刻です。


SystemProps テーブル

SystemProps テーブルは、リソースの特性を定義します。このテーブルは ExtendedProps テーブルと共に、管理データベースのスキーマを定義します。

次の表は、SystemProps テーブルの列について説明しています。

SystemProps 列 | 説明
i_ApplicationID | 現在、この列は使われていません。
s_Name | 現在、この列は使われていません。
s_ClassName | 任意の文字列に設定します。これは、GlobalConfig.CreateServiceConfig メソッドと SiteConfig.CreateComponentConfig メソッドの両方にbstrConfigSchemaClass パラメータとして使用されます。
s_ResourceType | 1 つのリソース タイプを表すこのテーブルの 1 行を、ExtendedProps テーブル内の関連するリソース プロパティとマップするために使われる文字列です。ExtendedProps テーブルでこの列に対応する列も s_ResourceType という名前です。
s_Description | 現在、この列は使われていません。
f_ResourceFlags | この列の値は、リソースのいくつかの Boolean 値特性についての情報を格納するビット フィールドです。フラグ内のビットの意味の詳細については、「Resources テーブル」の f_ResourceFlags 列を参照してください。 このフラグのビットの定数は cssnapin.h ファイルの ConfigFlags 列挙に定義されます。
f_PupFlags | 0 に設定されている場合、パッケージ化で渡される名前がファイル名であることを Commerce Server サイト パッケージャに知らせます。1 に設定されている場合、パッケージ化で渡される名前がフォルダ名であることを Commerce Server サイト パッケージャに知らせます。
s_RefResource | 現在、この列は使われていません。
s_MachineName | 現在、この列は使われていません。
i_Status | 現在、この列は使われていません。
s_ProgidSnapin | このリソースのスナップイン拡張の ProgID を提供する文字列です。スナップイン拡張は、IDispatch インターフェイスを実装する必要があります。
s_ProgidPUP | Commerce Server サイト パッケージャ (IPuP) インターフェイスを実装する COM コンポーネントの ProgID を提供する文字列です。詳細については、「サイト パッケージャ インターフェイス」を参照してください。
s_PUPParam1 | 現在、この列は使われていません。
s_PUPParam2 | 現在、この列は使われていません。
s_PUPParam3 | 現在、この列は使われていません。


リソースを追加する

管理データベースに新しいリソースとそれに対応する構成値を追加する処理は、2 段階の手順で行われます。最初に、新しいリソースとそのプロパティのスキーマを定義する必要があります。次に、新しいリソースのインスタンスとそのプロパティ値を追加します。

最初の手順では、SystemProps スキーマ テーブルおよび ExtendedProps スキーマ テーブルに行を追加します。次の手順では、対応する行を ResourceProps、Resources、および SiteResources の 3 つの各リソース インスタンス テーブルに追加します。

ここでは、これらの行を追加する方法について詳しく説明します。

次のトピックについて説明します。

  • リソース スキーマ テーブルを変更する : 新しいリソースとそのプロパティを管理データベースに追加するときの最初の手順として、リソース スキーマ テーブルを変更する方法について説明します。

  • リソース インスタンス テーブルを変更する : 新しいリソースとそのプロパティを管理データベースに追加するときの 2 番目の手順として、リソース インスタンス テーブルを変更する方法について説明します。


リソース スキーマ テーブルを変更する

新しいリソースをCommerce Server マネージャで管理するために追加する場合は、管理データベース (MSCS_Admin) の SystemProps テーブルおよび ExtendedProps テーブルに新しい行を追加する必要があります。SystemProps テーブルに追加された新しい行は、新しいリソースに対応します。ExtendedProps テーブルに追加された新しい行は、新しいリソースに関連付けられたプロパティに対応します。

SystemProps テーブルおよび ExtendedProps テーブルの列の詳細については、「SystemProps テーブル」と「ExtendedProps テーブル」をそれぞれ参照してください。

Commerce Server 2000 Software Development Kit (SDK) のサイト ステータス サンプルには、SystemProps テーブルに新しいリソースを表す行を追加する方法の 1 つを示す 1 組のファイルが含まれています。SiteStatusInit.sql ファイルには、新しい行を挿入し、必要な列の値を初期化するための次のような SQL コマンドが含まれています (ここでは読みやすいように行を折り返しています)。

IF NOT EXISTS(SELECT s_ClassName FROM SystemProps
              WHERE s_ClassName = 'MSCS_SDKSiteStatus')
insert into SystemProps (s_Name, s_ClassName,
                         s_ResourceType, f_ResourceFlags,
                         f_PupFlags, s_ProgIDSnapin)
                  VALUES('', 'MSCS_SDKSiteStatus',
                         'SDKSiteStatus', 6,
                         0, 'CommerceSDK.SiteStatus')

InstallSiteStatus.vbs ファイルでは、この SQL コマンドを実行する方法の一例が示されています。

Dim WshShell
Set WshShell = Wscript.CreateObject("Wscript.Shell")
sCmdLine = "osql /S (local) /U sa /P /d MSCS_Admin /i SiteStatusInit.sql"
WshShell.Run sCmdLine, 1, True

SDK のサイト ステータス サンプル内にある SiteStatusInit.sql ファイルにも、ExtendedProps テーブルにプロパティ スキーマ情報を追加するための SQL コマンドがいくつかあります。次のコードの抜粋では、3 つのプロパティのうち1 つをこのファイルに追加するところを示しています (読みやすいように行を折り返してあります)。

IF NOT EXISTS(SELECT s_PropertyName FROM ExtendedProps
              WHERE s_PropertyName = 's_AppName')
insert into ExtendedProps VALUES ('SDKSiteStatus', 's_AppName',
                                  0, 1, 0,
                                  'SDK SiteStatus Application Name',
                                  8200, '', 's_AppName')


リソース インスタンス テーブルを変更する

新しいリソースを Commerce Server マネージャで管理するために追加する場合は、管理データベース (MSCS_Admin) の ResourceProps、Resources、および SiteResources の各テーブルに新しい行を追加する必要があります。これらのテーブルの新しい行を合わせると、新しいリソースの特定のインスタンスが定義され、Commerce Server マネージャが新しいリソースをスコープ ウィンドウ階層の正しい位置に表示できるようになります。

これらの 3 つのテーブルを変更するには、管理用の GlobalConfig および SiteConfig の各オブジェクトを使います。SQL Server Enterprise Manager や SQL スクリプトを使って直接変更しないでください。

ResourceProps、Resources、および SiteResources の各テーブルの詳細については、「ResourceProps テーブル」、「Resources テーブル」、および「SiteResources テーブル」をそれぞれ参照してください。

新しいリソースがグローバル リソースであるかサイト リソースであるかによって、SystemProps テーブルおよびExtendedProps テーブルに既に追加された値をこれらの 3 つのテーブルに移行する手段は異なります。

Commerce Server 2000 Software Development Kit (SDK) のサイト ステータス サンプルには、InstallSiteStatus.vbs というファイルが含まれています。このファイルでは、SiteConfig オブジェクトを使ってテーブルの値を移行し、新しいリソース (および対応するスナップイン拡張) が指定したサイト (この場合は "Retail") のサイト リソース フォルダに表示されるまでの例が示されています。次のコードは、InstallSiteStatus.vbs ファイルの内容とは若干異なりますが、SiteConfig オブジェクトを使う方法を示しています。

sSiteName = "Retail"
sResourceName = "Site Open/Close Applications"

' Initialize the SiteConfig to the selected site.
Dim oSiteCfg
Set oSiteCfg = CreateObject("Commerce.SiteConfig")
oSiteCfg.Initialize sSiteName

' Add the SiteStatus resource to the resource tables.
' Note: The string "MSCS_SDKSiteStatus" must match the
'       corresponding s_ClassName value in the SystemProps table.
oSiteCfg.CreateComponentConfig sResourceName, "MSCS_SDKSiteStatus"
oSiteCfg.Fields(sResourceName).Value.Fields("s_Description") = _
                                            "SDK Site Status Resource"
oSiteCfg.SaveConfig
Set oSiteCfg = Nothing

Commerce Server マネージャ内のグローバル リソースへ新しいリソースを追加するには、上記の例を次のように変更するだけです。(主な変更は太字で示されています)。

sResourceName = "Site Open/Close Applications"

' Initialize the GlobalConfig to the selected site.
Dim oGlobalCfg
Set oGlobalCfg = CreateObject("Commerce.GlobalConfig")
oGlobalCfg.Initialize  ' no site name

' Add the SiteStatus resource to the resource tables.
' Note: The string "MSCS_SDKSiteStatus" must match the
'       corresponding s_ClassName value in the SystemProps table.
oGlobalCfg.CreateServiceConfig sResourceName, "MSCS_SDKSiteStatus"
oGlobalCfg.Fields(sResourceName).Value.Fields("s_Description") = \
                                            "SDK Site Status Resource"
oGlobalCfg.SaveConfig
Set oGlobalCfg = Nothing


統合レベル

新しいリソースを Commerce Server マネージャで扱う場合の統合のレベルは 3 つあります。これらのレベルは、開発作業とカスタマイズのレベルとの間のトレードオフによって区別されます。次に、3 つの統合のレベルを、開発作業の少ない方から順に示します。

  1. 管理データベース内の特定のテーブルに適切な行を追加するだけで実装できる汎用リソースです。

  2. カスタム ユーザー インターフェイスを持つ、汎用リソースです。ユーザー インターフェイスは、Commerce Server マネージャを拡張する Microsoft 管理コンソール (MMC) スナップイン拡張として実装されます。

  3. カスタム ユーザー インターフェイスを持つリソースで、構成値を管理データベース以外の場所に格納するものです。

最初の 2 つの統合のレベルを使う場合、リソースの構成値は管理データベースに保存されます。3 番目のレベルでも、構成値の一部は管理データベースに格納されます。リソースに関する構成値を管理データベースに保存している場合に、Web ページでこれらの値に頻繁にアクセスするときは、これらの値のコピーをメモリにキャッシュすることを検討してください。

管理データベースに保存された構成値にアクセスするには、SiteConfig オブジェクトおよび GlobalConfig オブジェクトを使います。これらのオブジェクトはアパートメント スレッドを使うので、アプリケーション スコープ内で格納することはできません。頻繁にアクセスする値は Dictionary オブジェクトにコピーし、その Dictionary オブジェクトに IIS の Application オブジェクトを通してアクセスできるようにしてください。

ここでは、3 つの統合のレベルの詳細について説明します。

次のトピックについて説明します。

  • リソース ダイアログ ボックスを使う : 最も開発作業の少ない統合方法に関する追加情報を示します。

  • カスタム スナップイン拡張を統合する : 汎用リソース統合の使いやすさの利点を維持しながら、カスタマイズされたユーザー インターフェイスを提供する統合方法に関する追加情報を示します。

  • そのほかのデータをパッケージ化する : 管理データベース以外の場所に設定データを格納しながらも、リソースが Commerce Server サイト パッケージャを利用できる統合方法に関する追加情報を示します。


リソース ダイアログ ボックスを使う

管理データベース内の特定のテーブルに適切な行を追加するだけで実装できる汎用リソースには、次のような特徴があります。

  • 汎用リソースの構成データは、Commerce Server マネージャのリソース ダイアログ ボックスを使って変更できます。このダイアログ ボックスは、汎用リソースの構成値を変更できる汎用インターフェイスを提供します。このため、新しいリソースの設定を行うためのユーザー インターフェイスを開発する必要はありません。

  • 構成データはこのデータベース内に保持され、その結果、Commerce Server サイト パッケージャによって配置のために自動的にパッケージ化されます。

  • 構成データへのアクセスと変更は、GlobalConfig、SiteConfig、および SiteConfigReadOnly のCommerce Server の管理用の各オブジェクトを使いプログラムによって行うこともできます。

この統合のレベルは開発作業が最も少なく、管理データベースの適切なテーブルに行を追加するだけでできます。これらの行の追加方法の詳細については、「リソースを追加する」を参照してください。


カスタム スナップイン拡張を統合する

Microsoft 管理コンソール (MMC) スナップイン拡張の開発を必要とする、カスタム ユーザー インターフェイスを持ったリソースには、次のような特徴があります。

  • この統合のレベルの構成データは、新しいリソースに対応する MMC ノードを拡張する MMC スナップイン拡張を使って管理されます。

  • 構成データは、この場合も管理データベースに保持され、配置が簡単にできます。

  • 構成データへのアクセスと変更は、、GlobalConfig、SiteConfig、および SiteConfigReadOnly の Commerce Server の管理用の各オブジェクトを使いプログラムによって行うこともできます。これらのオブジェクトの詳細については、「GlobalConfig オブジェクト」、「SiteConfig オブジェクト」、および「SiteConfigReadOnly オブジェクト」をそれぞれ参照してください。

  • MMC スナップイン拡張でユーザーによる操作に応答して構成データの表示や変更を行う場合は、Commerce Server の管理用のGlobalConfig、SiteConfig、および SiteConfigReadOnly の各オブジェクトのみを使うことができます。

  • スナップイン拡張の ProgID は、管理データベースの Resources テーブルの s_ProgIDSnapIn 列に格納されます。リソースの行で、この列の値が正しくない場合、独自のスナップイン拡張ではなくリソース ダイアログ ボックスを起動します。

ここでは、カスタム MMC スナップイン拡張の Commerce Server マネージャへの統合について詳細に説明します。

次のトピックについて説明します。

  • Commerce Server マネージャの NodeType GUID : Commerce Server マネージャのスナップインを拡張するために必要な特定のグローバル一意識別子 (GUID) について詳しく説明します。

  • システム レジストリを変更する : Commerce Server マネージャのスナップインを拡張するために必要なシステム レジストリへの変更について説明します。

  • クリップボードを操作する : Microsoft のクリップボードを使って新しいスナップイン拡張に提供する、Commerce Server マネージャのスナップイン データに関する追加情報を示します。


Commerce Server マネージャの NodeType GUID

Microsoft 管理コンソール (MMC) のスナップインで使う NodeTypeのグローバル一意識別子 (GUID) は、cssnapin.h ファイルで定義されます。次の表は、これらの GUID を対応する C++ の定数とそのデータ値と共に示しています。

最初の 2 行の NodeType GUID は、新しいリソースに関連付けられた MMC スナップイン拡張の統合に関して最も重要なものです。新しいリソースがグローバルである場合、グループ リソース GUID が必要になります (最初の行)。新しいリソースが特定のサイトに関係付けられている場合は、サイト リソース GUID が必要になります。この表に示されているほかの Nodetype GUID は、この場合はあまり重要ではありません。

NodeType GUID の定数と値 | 説明
CSnapInGUID_NODETYPE_Group_Resources 1503A832-6945-11D2-AFF4-00c04F8670E4 | Microsoft Commerce Server 2000 のグループ リソースです。 新しいグローバル リソースを追加するには、このノードを拡張します。
CSnapInGUID_NODETYPE_Resource 1503A834-6945-11D2-AFF4-00c04F8670E4 | Microsoft Commerce Server 2000 のリソースです。 新しいサイト リソースを追加するには、該当するサイトの下のこのノードを拡張します。
CSnapInGUID_NODETYPE_Root 1503A830-6945-11D2-AFF4-00C04F8670E4 | Microsoft Commerce Server 2000 です。
CSnapInGUID_NODETYPE_Group 1503A831-6945-11D2-AFF4-00C04F8670E4 | Microsoft Commerce Server 2000 グループです。
CSnapInGUID_NODETYPE_Sites 1503A833-6945-11D2-AFF4-00C04F8670E4 | Microsoft Commerce Server 2000 のサイトです。
CSnapInGUID_NODETYPE_Site 1503A835-6945-11D2-AFF4-00C04F8670E4 | Microsoft Commerce Server 2000 のサイトです。
CSnapInGUID_NODETYPE_Site_Resources 1503A836-6945-11D2-AFF4-00C04F8670E4 | Microsoft Commerce Server 2000 のサイト リソースです。

cssnapin.h ファイルでは次の NodeType GUID も定義しています。

定数 : CSnapInGUID_NODETYPE_Addresses

GUID : 1503A837-6945-11D2-AFF4-00C04F8670E4

定数 : CSnapInGUID_NODETYPE_Address

GUID : 1503A838-6945-11D2-AFF4-00C04F8670E4

定数 : CSnapInGUID_NODETYPE_AddrItem

GUID : 1503A839-6945-11D2-AFF4-00C04F8670E4

定数 : CResourceNodeItemGUID_NODETYPE

GUID : FAEBE804-5362-4F79-8353-34E1D1DC4D11

定数 : CWebServerNodeItemGUID_NODETYPE

GUID : 2CB5E907-F79A-4b11-AD24-9E3808B7B387

定数 : CSnapInGUID_NODETYPE_Resource_NNSE

GUID : A3DF131F-2075-463E-B8DA-74B31365161E


システム レジストリを変更する

Microsoft 管理コンソール (MMC) 拡張スナップインを追加する場合は、システム レジストリに特定の変更を加える必要があります。これには、HKEY_CLASSES_ROOT レジストリ キーの通常の Component Object Model (COM) エントリのほか、HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MMC\\NodeTypes レジストリ キーおよび ...\\MMC\\SnapIns レジストリ キーへの MMC 固有のエントリがあります。

新しい拡張スナップインの子ノードがスコープ ウィンドウで公開される場合は、システム レジストリで該当する NodeType キーの Extension/NameSpace キーにも新しい拡張スナップインに対応する GUID を追加する必要があります。

新しい拡張スナップインがグローバル リソースまたはサイト リソースのどちらに対応するかによって、"Microsoft Commerce Server 2000 のグループ リソース" または "Microsoft Commerce Server 2000 のリソース" のどちかの NodeType のレジストリ エントリを変更する必要があります。対応するNodeType GUID の詳細については、「Commerce Server マネージャの NodeType GUID」の表の最初の 2 行を参照してください。

Commerce Server 2000 Software Development Kit (SDK) のサイト ステータス サンプルでは、これらのレジストリへの変更を Registry.cpp ファイルで実行し、Extend.h ファイルで提供されるデータ型の情報を使います。次のコードの抜粋では、これらの修正を行うソース コードを示します。このコードの抜粋では、あらかじめ初期化された EXTENDER_NODE 構造体の配列を示します。これは Extend.h ファイルで定義されるもので、guidNode 構造体メンバ (一意的な部分は太字で表示) に指定された GUID によってサイト リソースの名前のスペースを拡張するように設計されています。グローバル リソースとして追加する拡張スナップインに関しても同じようにシステム レジストリを拡張する場合は、その GUID の最初のコンポーネントを 0x1503a832 に設定します (次のコードの抜粋での配列には、実際のエントリが 1 つとダミーのエントリが 1 つ含まれています。ダミーのエントリは、ループを終了させるために使われています)。

// List all of the nodes that we extend.
EXTENDER_NODE _NodeExtensions[] = {
    {
        // Extension type:
        NameSpaceExtension,
        // "Microsoft Commerce Server 4.0 Site Resources" guid:
        {0x1503a834, 0x6945, 0x11d2,
            { 0xaf, 0xf4, 0x0, 0xc0, 0x4f, 0x86, 0x70, 0xe4 } },
        // CLSID_COpenCloseExtension guid:
        {0xa5ce2b5a, 0x2259, 0x485d,
            { 0x9c, 0x11, 0xa0, 0x20, 0xb7, 0xc3, 0x8e, 0x2f } },
        // Description:
        _T("Commerce 2000 Resource Extension Open/Close sample")
    },

    // Dummy entry for loop termination logic.
    {DummyExtension, NULL, NULL, NULL}
};

次の抜粋では、前述の抜粋で示した配列を処理する for ループを示します。ここでは、guidNode 構造体メンバ内に格納された GUID に対応する MMC/NodeType エントリの Extensions/NameSpace キーと、キーと値の組み合わせとして、guidExtension および szDescription の構造体メンバに保存された GUID を追加しています。

ループは Null という記述が表示された時点で終了することに注意してください。この場合は配列の最後の要素で示されています。

    // register each of the node extensions
    for (pNodeExtension = &(_NodeExtensions[0]) ;
         *pNodeExtension->szDescription ;
         pNodeExtension++)
    {
        hr = StringFromCLSID(pNodeExtension->guidNode, &wszExtendCLSID);
        _tcscpy(szKeyBuf, _T("SOFTWARE\\Microsoft\\MMC\\NodeTypes\\"));
        _tcscat(szKeyBuf, wszExtendCLSID);

        switch (pNodeExtension->eType) {
        case NameSpaceExtension:
            _tcscat(szKeyBuf, _T("\\Extensions\\NameSpace"));
            break;
        default:
            break;
        }

        // Create and open key and subkey.
        long lResult = RegCreateKeyEx(HKEY_LOCAL_MACHINE ,
            szKeyBuf,
            0, NULL, REG_OPTION_NON_VOLATILE,
            KEY_ALL_ACCESS, NULL,
            &hKey, NULL) ;

        if (lResult != ERROR_SUCCESS)
        {
            return FALSE ;
        }

        hr = StringFromCLSID(pNodeExtension->guidExtension,
                             &wszNodeCLSID);
        assert(SUCCEEDED(hr));

        // Set the Value.
        if (pNodeExtension->szDescription != NULL)
        {
            RegSetValueEx(hKey, wszNodeCLSID, 0, REG_SZ,
                          (BYTE *)pNodeExtension->szDescription,
                          (_tcslen(pNodeExtension->szDescription)+1)
                                                     *sizeof(_TCHAR));
        }

        RegCloseKey(hKey) ;

        CoTaskMemFree(wszExtendCLSID);
        CoTaskMemFree(wszNodeCLSID);
    }


クリップボードを操作する

Microsoft 管理コンソール (MMC) スナップインでは、MMC のフレームワークとの間でデータを互いに渡せるように、特定のクリップボード形式をサポートする必要があります。Commerce Server 2000 Software Development Kit (SDK) のサイト ステータス MMC 拡張スナップイン サンプルでは、サポートする必要のあるクリップボード形式が示されます。このサンプルでは、必要なクリップボード形式を compdata.h、compdata.cpp、dataobj.h、および dataobj.cpp の 4 つの各ファイルで定義しています。これらのヘッダー ファイルには形式の定義が含まれており、ソース ファイルではこれらの形式の登録が示されています。関連するコードを見つけるには、これらのファイルで "clipboard" という文字列を検索してください。

次のコードの抜粋では、サンプルの拡張スナップインに関連付けられているサイトの名前をクリップボードから取得し、それを bstrSiteName 変数に入れる方法を示しています。

    // Get the site name for this resource from
    // the clipboard "CCF_MSCSAPPNAME" in global memory
    stgmedium.hGlobal = GlobalAlloc(0, sizeof(BSTR));
    if (NULL == stgmedium.hGlobal)
        return GetLastError();
    hr = lpDataObject->GetDataHere(&formatetc, &stgmedium);
    if (!FAILED(hr))
        bstrSiteName = *((LPCOLESTR *)stgmedium.hGlobal);
    GlobalFree(stgmedium.hGlobal);


その他のデータをパッケージ化する

カスタム ユーザー インターフェイスを持ち、構成データを管理データベース以外のところに格納するリソースには、次のような特徴があります。

  • 構成データは、システム レジストリ、初期化 (.ini) ファイル、または別のデータベースなど、Commerce Server 管理データベース以外の場所に格納されます。

  • Commerce Server サイト パッケージャを使うには、このレベルで統合される新しいリソースに IPuP インターフェイスを実装する Component Object Model (COM) オブジェクトが含まれている必要があります。

  • 構成データは、カスタム Microsoft 管理コンソール (MMC) スナップイン拡張を使って管理する必要があります。これは、構成データが管理データベースに格納されていないためにリソース ダイアログ ボックスを使うことができないからです。

  • 構成データは、管理データベースに格納されないため、Commerce Server の管理用の GlobalConfig、SiteConfig、および SiteConfigReadOnlyの各オブジェクトを使ってプログラムによってアクセスしたり変更したりすることはできません。これらのオブジェクトの詳細については、「GlobalConfig オブジェクト」、「SiteConfig オブジェクト」、および「SiteConfigReadOnly オブジェクト」をそれぞれ参照してください。構成データにプログラム的にアクセスするには、別のソリューションを開発する必要があります。

  • 比較的簡単な構成データを管理データベースに格納して Commerce Server の管理用オブジェクトでアクセスできるようにし、その他の複雑なデータはほかのデータベースや機能に格納する、という混合ソリューションも可能です。Commerce Server に含まれる数多くのリソースがこのような処理をおこなっています。

ここでは、リソースのデータを配置用に独自にパッケージ化できるように IPuP インターフェイスを実装する方法について詳細に説明します。

次のトピックについて説明します。

  • データをパッケージへエクスポートする : Commerce Server サイト パッケージャを使ってデータをサイト パッケージにエクスポートする処理について詳細に説明します。

  • データをパッケージからインポートする : データをサイト パッケージからインポートする処理について詳細に説明します。

  • GenericPuP オブジェクトを使う : 特定の状況で使うことのできる、IPuP インターフェイスを実装する汎用オブジェクトについて説明します。


データをパッケージへエクスポートする

サイト パッケージ内のファイルという形式で任意のデータを格納し、それらのファイルを別のコンピュータにアンパックするといった方法で、カスタム リソースを開発できます。このファイルの任意のセットをサイト パッケージに置くには、カスタム リソースに IPuP インターフェイスの Export メソッドを実装する Component Object Model (COM) オブジェクトを含む必要があります。Commerce Server サイト パッケージャでは、カスタム リソースによってパッケージ化されるファイルを置くべき一時ファイルまたはフォルダを指定して、このメソッドを呼び出します。Export メソッドが戻ると、Commerce Server サイト パッケージャはパッケージにファイルを追加します。

IPuP インターフェイスを実装するオブジェクトの ProgID は、管理データベース にある SystemProps テーブルの s_ProgidSnapIn 列に格納する必要があります (構成値を移行するために SiteConfig オブジェクトを使っている場合は、Resources テーブルの s_ProgidSnapIn 列にも ProgID を追加されます)。Commerce Server サイト パッケージャはサイトのパッケージ化中にこの ProgID に遭遇すると、対応するオブジェクトのインスタンスを作成し、その IPuP インターフェイスの Export メソッドを呼び出します。

Export メソッドの詳細については、「IPuP::Export」を参照してください。


データをパッケージからインポートする

サイト パッケージ内のファイルという形式で任意のデータを格納し、それらのファイルを別のコンピュータにアンパックするといった方法で、カスタム リソースを開発できます。このファイルの任意のセットをサイト パッケージから取得するには、カスタム リソースに IPuP インターフェイスの Import メソッドを実装する Component Object Model (COM) オブジェクトを含む必要があります。Commerce Server サイト パッケージャでは、Commerce Server サイト パッケージャによってアンパックされるファイルが置かれた一時ファイルまたはフォルダを指定して、このメソッドを呼び出します。Import メソッドでは、この 1 つまたは複数のファイルについて他の場所への移動やファイル内容のデータベースへの移動などの処理を行ってから戻る必要があります。Import メソッドが戻ると、Commerce Server サイト パッケージャは一時的な場所からファイルを削除します。

IPuP インターフェイスを実装するオブジェクトの ProgID は、管理データベース にある SystemProps テーブルの s_ProgidSnapIn 列に格納する必要があります (構成値を移行するために SiteConfig オブジェクトを使っている場合は、Resources テーブルの s_ProgidSnapIn 列にも ProgID を追加されます)。Commerce Server サイト パッケージャはサイトのアンパック中にこの ProgID に遭遇すると、対応するオブジェクトのインスタンスを作成し、その IPuP インターフェイスの Import メソッドを呼び出します。

Import メソッドの詳細については、「IPuP::Import」を参照してください。

アンパックされるカスタム リソースがグローバル リソースに対するサイト レベルの参照である場合、Commerce Server サイト パッケージャは Import メソッドを呼び出す前に、同じ IPuP インターフェイスの CreateGroupResource メソッドを呼び出します。これにより、カスタム リソースがグローバル リソースを作成して名前を返し、サイトレベルの参照ができるようになります。CreateGroupResource メソッドの詳細については、「IPuP::CreateGroupResource」を参照してください。


GenericPuP オブジェクトを使う

GenericPuP オブジェクトは、Commerce Server に含まれているオブジェクトで IPuP インターフェイスを実装するいくつかのオブジェクトの 1 つです。これらのオブジェクトは、既存の Commerce Server リソースをパッケージ化するために使われます。特に GenericPuP オブジェクトは、キャンペーン、トランザクション、およびトランザクション構成の 3 つの各リソースに関連付けられるデータのパッケージ化に使われます。

これらの 3 つのリソースでは、そのデータをパッケージ化する方法についての一般的な要件があり、カスタム リソースで類似した一般的な要件がある場合、IPuP インターフェイスを実装する新しいオブジェクトを開発する代わりに GenericPuP オブジェクトを使うこともできます。

注

  • SDK\Samples\Management フォルダにある SDK サンプル "PuP Resource" は、実際には GenericPuP オブジェクトのバージョンです。このソース コードを詳しく調べたり、目的に合わせて変更すると便利です。

GenericPuP オブジェクトは、単一の SQL Server データベースでテーブルやデータをパッケージ化およびアンパックできるように設計されています。GenericPuP オブジェクトの実行はいくつかのパラメータによって制御されます。これにはパッケージ化するテーブルの名前、カスタム データをアンパックまたは削除するときに実行する SQL スキーマ スクリプトの名前などが含まれます。これらのパラメータは管理データベースのデータベース エントリとして存在します。以降では、これらのエントリの詳細とその設定方法について説明します。

このトピックには、次の内容が含まれています。

  • GenericPuP データベース エントリ

  • 処理中のパラメータの利用状況

  • GenericPuP の SQL スクリプトを読み込む

GenericPuP データベース エントリ

GenericPuP オブジェクトの使用を明示するには、ProgID (Commerce.GenericPup) を管理データベースの Resources テーブルで該当する行の s_ProgIDPUP 列に割り当てる必要があります。次に、特定のリソースについて GenericPuP オブジェクトを制御する残りのデータベース エントリを設定する必要があります。具体的には、接続文字列と GenericPuP パラメータを設定します。

接続文字列

カスタム リソースのデータをエクスポートまたはインポートするために GenericPuP オブジェクトを起動すると、このオブジェクトでは渡されたリソース名を使って、そのリソースに関連付けられたプロパティのセットの中から特定の接続文字列を検索します。GenericPuP オブジェクトがカスタム リソースに関連付けられたプロパティの中から接続文字列を検索できるように、接続文字列ではあらかじめ定義された名前付け規則が使われます。接続文字列のプロパティ名の構文は "connstr_db_<ResourceName>" です。<ResourceName> は起動されるリソースの名前です。このような接続文字列は 1 つしかないため、GenericPuP オブジェクトは 1 つのデータベースに対してのみデータのパッケージ化またはアンパックができます。

注

  • 管理データベースの ResourceProps テーブルの s_PropertyName 列には、GenericPuP オブジェクトを使う 3 つの標準リソースに対応する、connstr_db_Transactions、connstr_db_TransactionConfig、および connstr_db_Campaigns の 3 つの各接続文字列があります。

GenericPuP パラメータ

接続文字列を取得した後、GenericPuP オブジェクトは管理データベースの Resources テーブルで該当するリソースの行の s_PupParam1、s_PupParam2、および s_PupParam3 の各列からパラメータを取得します。3 つのパラメータには次の情報が含まれています。

s_PUPParam1

リソースについてパッケージ化およびアンパックされるテーブルの名前がカンマで区切られたリストです。

たとえば、Transactions リソースの場合は "TransDimension,TransCategory" です。

s_PUPParam2

リソースをインポートするときに実行する SQL スキーマ スクリプトの名前がカンマで区切られたリストです。これらのスクリプトは、データをインポートする前に適切なスキーマを作成するために使われます。

たとえば、Transaction Config リソースのスキーマ スクリプトは "AppConfig,TaxAndShipping" です。

s_PUPParam3

リソースを削除するときに実行する SQL スクリプトの名前がカンマで区切られたリストです。GenericPuP オブジェクトによって実装される Delete メソッドが起動されると、これらのスクリプトが実行され、対応するリソースに関連付けられるデータベース テーブルがクリーンアップされます。

たとえば、Campaigns リソースには SchemaDrop という 1 つのスクリプト名が含まれます。

s_PUPParam2 パラメータと s_PUPParam3 パラメータに関連付けられるスクリプトは、管理データベースの pupdbscripts テーブル内の txt_script 列にあります。u_scriptname 列には、このパラメータによって指定されたリストに示されるスクリプトの名前と、そのテーブル内のほかの 2 つの iSiteID 列および iResourceID 列に示されるスクリプトの名前があり、異なるリソース間でスクリプト名が矛盾しないようにします。

SiteConfig オブジェクトでは、pupdbscripts テーブルに格納されたスクリプトを管理するために GetSQLScript、PutSQLScript、および DeleteSQLScript の 3 つの各メソッドを実装します。この 3 つのメソッドの詳細については、「SiteConfig.GetSQLScript」、「SiteConfig.PutSQLScript」、および「SiteConfig.DeleteSQLScript」をそれぞれ参照してください。

GenericPup オブジェクトを使うためにリソースを設定する方法の例については、Commerce Server のインストール ディレクトリの SiteCreate フォルダの SiteCreate.vbs ファイルを参照してください。このファイルで GenericPup オブジェクトを使う、キャンペーン、トランザクション、およびトランザクション構成の各 3 つのリソースと同様の手順に従います。

処理中のパラメータの利用状況

GenericPuP オブジェクトに実装される Export メソッドがデータのパッケージ化のために起動される場合、次の手順を実行します。

  1. s_PUPParam1 列に指定されたテーブルのすべてのデータがパッケージ化されます。

  2. s_PUPParam2 列および s_PUPParam3 列に指定されたすべての SQL スクリプトがパッケージ化されます。

GenericPuP オブジェクトに実装される Import メソッドがデータのアンパックのために起動される場合、次の手順を実行します。

  1. s_PUPParam2 列に指定された SQL スキーマ スクリプトが実行されます。

  2. s_PUPParam1 列に指定されたテーブルのデータがアンパックされます。手順 1 で実行されたスクリプトで、適切なテーブルとスキーマが既に設定されている必要があります。

GenericPuP オブジェクトによって実装される Delete メソッドまたは DeleteGroupResource メソッドがリソース データの削除のために起動される場合、次の手順を行実行します。

  1. s_PUPParam3 列に指定された SQL スキーマ スクリプトが実行されます。

  2. 管理データベースの pupdbscripts テーブルから、現在のリソースに関連付けられるスクリプトがすべて削除されます。

GenericPuP の SQL スクリプトを読み込む

次のサンプル コードでは、テキスト ファイルから管理データベースの pupdbscripts テーブルの txt_script 列に SQL スクリプトを読み込む方法の 1 つを示します。また、他の列にも適切な値を設定します。このサンプルでは、実際のデータベース操作を行うために、SiteConfig オブジェクトの PutSQLScript メソッドを使います。

' Define a routine that takes the following four parameters:
' 1) A reference to a SiteConfig object,
' 2) The name of a resource,
' 3) The name of a text file containing the SQL script to load, and,
' 4) The name by which the script will be known in the Admin database.
Sub LoadResourceDBScript(oSiteConfig, sResource, _
                         sFilePath, sScriptName)

    ' Declare variables and constants for text file access...
    Dim oFS, oFile, sScriptContents
    Const ForReading = 1
    Const TristateUseDefault = -2

    ' Read the script from the specified text file...
    Set oFS = CreateObject("Scripting.FileSystemObject")
    Set oFile = oFS.OpenTextFile(sFilePath, ForReading, _
                                 False, TristateUseDefault)
    sScriptContents = oFile.ReadAll()
    oFile.Close
    Set oFile = Nothing

    ' Use the passed SiteConfig object to create
    ' (or overwrite) a row in the pupdbscripts table...
    oSiteConfig.PutSQLScript sResource, sScriptName, _
                             sScriptContents
End Sub

' The following code calls the routine defined previously...

' Create the SiteConfig object...
Dim oSiteConfig
Set oSiteConfig = CreateObject("Commerce.SiteConfig")

' Initialize variables for the other
' parameters to LoadResourceScript...
Dim sResource, sFilePath, sScriptName
sResource = "Transactions"
sFilePath = "C:\temp\Requisition.sql"
sScriptName = "Requisition"

' Call the routine LoadResourceScript, previously defined...
LoadResourceScript oSiteCfgAdmin, sResource, _
                   sFilePath, sScriptName


MMC に関する参照先

Microsoft Developer Network (MSDN) オンライン Web サイトには、Microsoft 管理コンソール (MMC) のスナップインと拡張スナップインのさまざまな側面を扱うトピックがあります。

Active Template Library (ATL) を使って拡張スナップインを作成すると、数多くの詳細が ATL で処理されるため、開発を簡素化し、スピードアップできます。


ビジネス デスク モジュールを構築する

ここでは、Commerce Server ビジネス デスク モジュールのアーキテクチャについて説明し、新しいビジネス デスク モジュールを構築する方法を説明します。

ここでは、次のトピックについて説明します。

  • モジュール開発の基礎 : ビジネス デスク全般、特にビジネス デスク モジュールについて説明します。また、ここで前提としている技能、および新しいビジネス デスク モジュールを構築する手順について説明します。ビジネス デスクの用語とワークフローについても述べます。

  • ビジネス デスクのアーキテクチャ : ビジネス デスクのアーキテクチャを、その構成要素に関して説明します。構成要素としては、フレームワーク、カテゴリ、モジュール、アクション、タスクがあります。また、ビジネス デスクのセキュリティおよび状態管理について説明します。

  • ビジネス デスクの規則 : 既存のビジネス デスク モジュールに採用されている規格および規則について説明します。コーディング規格など、一部は完全に内部的なものですが、エラーや確認メッセージの規則のように、ビジネス デスクのユーザーの目に触れるものもあります。ここでの説明の目的は、既存のモジュールにうまく適合した新しいビジネス デスク モジュールの構築を容易にすることです。

  • ビジネス デスクの構成 : ビジネス デスクの構成の一般的な機能、特にビジネス デスク フレームワーク内で正常に実行されるために、ビジネス デスク モジュールが提供する必要のある構成情報について説明します。

  • ビジネス デスク内でのデータ操作 : ビジネス デスク モジュールで表示するデータをデータベースから取得するために使う代表的なしくみ、およびユーザーが変更したデータを基になるデータベースに保存する方法について説明します。

  • ビジネス デスクの HTML コンポーネント : 既存のビジネス デスク モジュールで広範囲に使われている、データ表示コンポーネントとデータ操作コンポーネントについて説明します。これらのコンポーネントの中には、新しいビジネス デスク モジュールのユーザー インターフェイスの主要部分で、よく使われるものがあります。

  • ビジネス デスクのユーティリティ : ビジネス デスク フレームワークに含まれる、さまざまなユーティリティ機能について説明します。これらの機能は、既存のビジネス デスク モジュールで使われ、新しいビジネス デスク モジュールの作成に役立ちます。

  • ビジネス デスクのソース コード : 既存のビジネス デスク モジュールのソース コードへのロードマップを示します。これらのソース コードは、すべて製品に含まれています。通常、新しいビジネス デスク モジュールを作成する最も簡単な方法は、類似の既存のビジネス デスク モジュールのソース コードを基に、必要に応じて変更することです。

  • モジュール インストールの自動化 : 新しいビジネス デスク モジュールと、既存のビジネス デスク モジュール環境との統合処理の自動化に役立つ、Component Object Module (COM) オブジェクトについて説明します。このオブジェクトのソース コードは、Commerce Server Software Development Kit (SDK) に含まれています。


モジュール開発の基礎

Commerce Server ビジネス デスクは、主に Dynamic Hypertext Markup Language (DHTML) を含んだ Active Server Pages (ASP) として実装された、ユーザー インターフェイスのフレームワークです。このフレームワークによって構造化された環境が提供されるため、Microsoft Commerce Server 2000 によって提供される管理機能を、サード パーティの開発者が簡単に拡張できます。このような環境としては、構造化されたページ間の移動、データ操作用の標準化されたしくみ、共有ユーティリティ ルーチン、ユーザーが操作の整合性を保つうえで役立つ多数の規則などがあります。

特に指定しない限り、すべての Commerce Server Web サイトにビジネス デスクの個別のインスタンスが関連付けられます。ビジネス デスクは、各種のデータベースなど、Commerce リソースの一部を Web サイトと共有しますが、独自のディレクトリ構造と仮想ルートを持つ、独立した Active Server Page (ASP) アプリケーションです。

管理機能の一部は、個別のビジネス デスク モジュールとして、ビジネス デスク内に実装されています。Microsoft Commerce Server 2000 には、数多くのビジネス デスク モジュールが付属しており、商用 Web サイトで使われるさまざまな種類のデータの大部分を管理するよう設計されています。しかし、新しい Web サイト機能、およびそれに対応した管理機能の要求は絶えず発生します。そこで、ビジネス デスクは非常に拡張性の高い設計になっており、ここでは新しいビジネス デスク モジュールの構築方法について説明します。

ここでは、次のトピックについて説明します。

  • 前提となる技能 : ここの説明の中で前提にしている、新しいビジネス デスク モジュールを構築する際の開発者の技能について述べます。必要な技術を学ぶための参考情報についても説明します。

  • 必要な手順の概要 : 新しいビジネス デスク モジュールの構築に必要な手順の概要を示します。これらの手順を完了するうえで必要な詳細情報が書かれたトピックへのリンクも示します。

  • ビジネス デスク用語 : ビジネス デスクの基礎に関連した用語を説明します。

  • 代表的なモジュール ワークフロー : ビジネス デスク モジュール内のページと、それに対応するワークフローの代表的な処理方法について説明します。


前提となる技能

Commerce Server の新しいビジネス デスク モジュールの開発者は、次の技術に習熟している必要があります。

  • Dynamic Hypertext Markup Language (DHTML)

  • 拡張マークアップ言語 (XML)

  • Extensible Stylesheet Language (XSL)

  • XML Query Language (XQL)

  • Active Data Objects (ADO)

  • HTML コンポーネント (HTC) (DHTML 動作とも呼ばれる)

  • Active Server Pages (ASP)

これらの技術の詳細については、http://www.microsoft.com/japan/developer/ のオンライン版 Microsoft Developer Network を参照してください。


必要な手順の概要

Commerce Server の新しいビジネス デスク モジュールを構築するには、次の一連の手順を行う必要があります。(不明な用語については、「ビジネス デスク用語」を参照してください)。

  1. 調査対象のサイトのビジネス デスクのルート フォルダに、新しいフォルダを作成します。新しいビジネス デスク モジュールの目的に合う、一意の名前を付けます。

  2. ビジネス デスクのルート フォルダにある Config フォルダに、モジュール構成ファイルを作成します。新しいビジネス デスク モジュールの目的に合う、一意の名前を付けます。このファイルは、特別な XML 形式でモジュールの構成情報を表したものにする必要があります。この XML 形式の詳細については、「モジュール構成ファイル」を参照してください。

    通常、モジュール構成ファイルには、モジュール内の各操作ページの action 要素、および少なくとも 1 つの module 要素があります。このファイルには、各操作ページのタスクバー ボタンも記述されます。

  3. 新しく作成されるモジュール構成ファイルを参照するマスター構成ファイルに、moduleconfig 要素を追加します。モジュール構成ファイルと同様に、マスター構成ファイルの構成情報も XML で表現されます。マスター構成ファイルの XML 形式の詳細については、「マスター構成ファイル」を参照してください。

    追加される moduleconfig 要素によって、新しいモジュールが関連付けられるカテゴリの ID が識別されます。場合によっては、新しいモジュールのカテゴリを新しく定義することもあります。この定義は、マスター構成ファイル内で行います。

  4. 新しいビジネス デスク モジュール用の ASP ページを作成します。通常、定義された各 action 要素ごとに 1 つの ASP ページと、その操作ページに含まれたモジュール固有のユーティリティ ファイルが存在します。これらのファイルは、手順 1 で作成したフォルダに格納する必要があります。

    各操作ページには、対応するビジネス デスク ユーティリティ ファイルと、メインのビジネス デスク スタイル シート (Bizdesk.css) へのリンクが必要です。また、これらの中では最初の HTML <BODY> タグの直後に、InsertTaskBar (一覧ページ) または InsertEditTaskBar (編集ページ) のどちらかを呼び出す必要があります。

    ここでは手順 4 を 1 つの手順として説明していますが、ビジネス デスク モジュールの開発作業の大部分は、操作ページの作成とデバッグです。

  5. 新しいモジュール内に各操作ページに対する HTML ヘルプ ファイルを作成し、それをビジネス デスクの docs\htm フォルダに格納します。新しいヘルプ ファイルを適切に参照するよう、新しいモジュール構成ファイル内の各 action 要素の helptopic 属性を設定します。整合性を保つため、既存のヘルプ トピックと同じ形式で、新しいヘルプ トピックを作成することをお勧めします。

    対応するヘルプ トピック ページのない操作ページに対しては、helptopic 属性を空の文字列にしておくと、そのページのヘルプ ボタンをクリックしたときに、ビジネス デスク全般のヘルプが表示されます。

SDK にはこれを処理するために、次のような 3 種類の支援機能が含まれています。

  • <install location>\SDK\Samples\Management\BizDesk フォルダには、AddModuleToConfig.vbs という名前の VB スクリプト ファイルがあります。このファイルは、新しいモジュール構成ファイルおよびマスター構成ファイルの編集作業の大部分を実行します。必要な情報は、コマンド ライン パラメータとしてこのスクリプトに渡します。パラメータの詳細については、スクリプトを参照してください。

  • このフォルダには、新しいビジネス デスク モジュールの作成処理を簡単にするためのファイルが、いくつか格納されています。その 1 つは、これらのファイルの詳しい使用方法が記述されている Instructions.txt ファイルです。それ以外のファイルには、基本的な一覧、編集、および応答ページ用の ASP ページ、文字列を分離可能なファイルのテンプレートがあります。

  • <install location>\SDK\Samples\Management\BizDesk Module Installer フォルダには、BizDeskModuleInstaller オブジェクトの構築に必要なファイルが格納されています。このオブジェクトは、新しいモジュールを既存のビジネス デスクのインスタンスへインストールする処理を自動化するうえで役立ちます。BizDeskModuleInstaller オブジェクトの詳細については、「モジュール インストールの自動化」を参照してください。


ビジネス デスク用語

ここでは、Commerce Server ビジネス デスクに関連する基本的な概念、およびその用語について説明します。次の一覧は、これらの概念の名称とその説明を示しています。

フレームワーク

ビジネス デスク モジュールで使うための一連のサービス。これらのサービスには、ナビゲーション、セキュリティ、ユーザー インターフェイスの各コントロールが含まれます。また、ビジネス デスク モジュールの統合方法が定義された一連の標準化されたしくみも、フレームワークによって提供されます。

カテゴリ

ナビゲーション ペインで使われる組織構造。関連するビジネス デスク モジュールをグループ化できます。

モジュール

特定の種類の関連機能を提供する一連の ASP ファイル。ナビゲーション ペインの 1 つ以上のエントリ ポイントと一緒に編成されます。

マスター構成ファイル

ビジネス デスクの特定のインスタンス内で利用可能なカテゴリおよびモジュールが定義された XML 構成ファイル。各モジュール エントリは、そのモジュールの構成情報を含むモジュール構成ファイルを識別します。

モジュール構成ファイル

あるモジュール (または一連のモジュール) のアクション、タスク、およびエントリ ポイントが定義された XML 構成ファイル。モジュールのエントリ ポイントは、そのエントリ ポイントが関連付けられているカテゴリを識別します。

HTML コンポーネント (HTC) (DHTML 動作とも呼ばれる)

HTML コンポーネントとして実装された一連のデータ表示および操作の制御。ビジネス デスク モジュール内で広範囲に使われます。ビジネスデスクに含まれる HTC には、DynamicTable、EditField、EditSheet、ExpressionBuilder、ListEditor、ListSheet、QueryBuilder、および TreeView があります。これらの HTC の詳細については、「ビジネス デスクの HTML コンポーネント」を参照してください。

操作ページ

あるモジュールに関連付けられた機能の特定の部分を提供する単一の ASP ファイル。通常は、ナビゲーション ペインでモジュール名をクリックしたときや、操作ページのタスク ボタンをクリックしたときに、その結果として表示されます。

一覧ページ

2 種類ある主要な操作ページの 1 つ。一部の種類のデータについて読み取り専用の表示を提供し、そのデータのフィルタ処理、並べ替え、選択、および操作が可能です。通常は、ListSheet HTC が表示されます。検索ペインとそれに対応する HTC が、ListSheet HTC の上に表示されることもあります。一覧ページとナビゲーション ペインは、ビジネス デスクのワークスペースを共有します。

編集ページ

2 種類ある主要な操作ページの 1 つ。表示中のデータを変更するためのしくみを提供します。編集対象のデータの性質に応じて、編集ページごとに使われる HTC が異なります。編集ページとナビゲーション ペインは、ビジネス デスクのワークスペースを共有しません。編集ページが表示されているときはナビゲーション ペインが非表示になるため、編集ページを閉じて一覧ページに戻るまで、ユーザーはほかのモジュールに移動できません。

EditSheet グループ (EditSheet セクション)

編集ページの EditSheet HTC 内にあるセクション。折りたためる見出しがあり、このセクションにある情報は、ユーザーが表示と非表示を切り替えられます。

タスク

操作ページから実行する操作。多くの場合、この操作によって、タスクの詳細を実行するほかの操作ページが表示されます。タスクは、タスク ボタンをクリックして起動します。タスクの中には、開くや削除のように状況依存のものがあります。これらのタスクは、現在の操作ページで選択されている項目に適用されます。

タスク バー

コンテンツ ペインの上部に表示される水平方向の領域。さまざまなタスクに関係するボタンが表示されます。ユーザー インターフェイスに関するマニュアルには、タスク バーのことがツール バーと書かれています。これらは同じもので、ユーザー インターフェイス (UI) の名前が異なっているのは、エンド ユーザーに馴染みのある Windows 標準に合わせようとしたためです。

ナビゲーション ペイン

一覧ページの左側のウィンドウ。カテゴリとモジュールの階層を表示するために使われます。

コンテンツ ペイン

一覧ページの右側のウィンドウと編集ページのウィンドウ。操作ページが表示されます。

検索ペイン

一覧ページのモジュール コンテンツ ペインの上部にある領域。検索条件を入力し、その条件が検索タスクで使われます。ほとんどの場合、モジュール コンテンツ ペインの下部は ListSheet HTC で構成され、ここに検索タスクの結果が表示されます。

ページ タイトル バー

コンテンツ ペインの上部にある水平方向の領域。ページ タイトルの表示に使われます。

ステータス バー

コンテンツ ペインの下部にある水平方向の領域。状態メッセージの表示に使われます。

HTML アプリケーション (HTA)

特殊な種類のブラウザ インスタンス。一般的なブラウザ ユーザー インターフェイスは表示されません。 通常、HTA には一般的なブラウザ インスタンスが持つ、メニューとツール バーがまったくありません。ビジネス デスクは、HTA としてのみ実行されるよう設計されています。


代表的なモジュール ワークフロー

ここでは、多くの Commerce Server ビジネス デスク モジュールで使われている代表的なワークフローについて説明します。ここで述べるものは、あくまでも代表的なワークフローにすぎず、ビジネス デスク モジュールによってはこれと合わない場合があります。モジュールに最適なワークフローは、新しいビジネス デスク モジュールの設計者が決定します。しかし、ここで述べるワークフローは最もよく使われているものです。

ビジネス デスクでいくつかのモジュールを使うと、ビジネス デスク モジュールの代表的なワークフローに関して、間もなく次の点に気付くはずです。あるモジュールの最初の操作ページには、多数のレコード (行) についてのいくつかのプロパティ (列) が格納された表を表示するためのしくみが表示されます。この表を実装するコントロールは ListSheet HTML コンポーネント (HTC) です。HTC はさまざまな方法で構成できます。

同時に表示されるレコード数が、非常に多い場合がよくあります。レコードをページごとに画面に分割して表示するというのが、その場合の対処方法の 1 つです。検索機能を使って、検索条件に適合したレコードだけを表示するなどして、表示するレコード数を制限するしくみを用意するという方法も、よく使われます。また、レコードを並べ替える方法もよく使われます。これは、並べ替えに使うプロパティの列見出しをクリックすると、ListSheet HTC で実行されます。

ワークフローの次の段階には、実行するタスクの選択とそのタスクの初期化が含まれます。初期化はタスク ボタンを押すと行われます。既存のデータに関連するすべてのタスクでは、データを選択して識別する必要があります。このようなタスクに関連付けられたタスク ボタンは、適切な選択が行われるまで有効にならないのが普通です。新規作成タスクなど、そのほかのタスクでは、既存のデータを選択する必要がありません。

あるイベントにおいて、タスクを選択すると異なる操作が行われます。この新しい操作では、一般的に編集ページと呼ばれる操作ページが表示され、新規作成または選択されたレコードに関連付けられたプロパティを編集できます。編集が終了し、Save タスクが選択されると、ユーザーはタスク バー ボタンの [Back] をクリックして、元の ListSheet HTC を表示し、次のタスクに進むことができます。

場合によっては、タスクを選択するとダイアログ ボックスが表示され、新しい操作がすぐには表示されないことがあります。代表的な例としては、削除タスクの確認用のダイアログ ボックスがあります。

タスクによっては、短いメニューが表示されて、実行する操作を決定するものもあります。たとえば、新規作成タスクをクリックすると、追加するオブジェクトの種類をユーザーが選択できるよう、メニューが表示されます。

次の図は、あるビジネス デスク セッションを示しています。矢印の近くにある、四角で囲まれた数字を使って、概要を説明します。

  • 手順 1 で、ユーザーが Module 1 を選択します。

  • 手順 2 と 3 では、ユーザーは 2 レベル "掘り下げる" ことで、詳細データの確認、および場合によっては変更を行います。手順 4 と 5 で、Module 1 の一覧ページに戻ります。

  • Module 2 の手順は、タスクが同じ操作ページにループして戻る方法を示しています。その例としては、Save タスクと新規作成タスクがあります。新規作成タスクでは、状況に合わせてワークフローを最適化し、多数の新しい項目を 1 つずつ作成していきます。

  • Module 3 の手順は、タスクが同じ操作ページに戻る方法を示していますが、その途中にダイアログ ボックスが介在します。その例としては、削除タスクがあります。削除タスクでは、特にそのデータが重要であったり、回復が難しい場合、通常は確認ダイアログ ボックスが表示されます。
ネストされた編集
確認用の
ダイアログ
編集
編集
一覧
一覧
一覧
Module 3
Module 2
Module 2
Module 1
Module 1
Module 1
ビジネス デスクへ
ようこそ
ナビ
ゲーション
ナビ
ゲーション
12
11
10
9
8
7
6
5
4
3
2
?
?
?
?
?
?
1
ナビ
ゲーション
ナビ
ゲーション

通常、新しいモジュールには一覧ページが 1 つあり、ナビゲーション ペインでそのモジュールが選択されたときに表示されます。また、一般的に一覧ページには、5 つまたは 6 つ程度の実行可能なタスクがあります。そのいくつかは、ほかの編集ページや同じ編集ページを表示するものであり、別のデータで初期化されます (新規作成タスクか編集タスク)。タスクの中には、直接、確認ダイアログ ボックスが表示され、その後にタスクを実行または中止して一覧ページに戻るものもあります。


ビジネス デスクのアーキテクチャ

ここでは、Commerce Server ビジネス デスクのアーキテクチャについて説明します。次の図は、ビジネス デスク フレームワークがナビゲーションをサポートするために必要な 2 種類の重要な情報を、構成ファイルで指定するしくみを示します。1 種類目の情報では、ビジネス デスク内でアクセスできる分類されたモジュール群を規定します。2 種類目の情報は、通常、操作ページごとに異なるタスク バーの作成と管理に使われます。

この図は、モジュールを設計する一般的な方法も示しています。たとえば、最初の操作ページを一覧ページにし、そこからタスク ボタンを使って編集ページにアクセスするといった具合です。また、一般的な設計として、ユーザーが別のモジュールに移動するには最初の一覧ページに戻らなければならないものも示しています。

さまざまな編集ページに表示されている HTML コンポーネント (HTC) の選択は、完全に自由に行えます。ただし、そのほかの編集コントロールを選択するには、一般的にマスタ EditSheet HTC が使われます。ListSheet HTC は、一覧ページで最もよく使われる HTC です。検索ペインで、独立した HTML コントロールおよび EditField HTC と共に使われることもあります。

ListSheet HTC には、それが動作するモードがいくつか提供されており、その多くは階層化データを扱うよう設計されています。これによって、一覧ページを 1 つ使えば済むことが多くなり、異なる操作ページで複数の層を持つネストした一覧ページを使う必要はなくなります。

個々の
EditField
HTC
ListEditor
HTC
EditSheet
HTC
Expression
Builder
HTC
Profile
Designer
HTC
DynamicTable
HTC
ListSheet
HTC
ListSheet
HTC
による検索
ListSheet
HTC
Module 3
Module 3
編集ページ
操作ページ
一覧ページ
Module 3
Module 2
Module 2
Module 2
Module 1
Module 1
Module 1
モジュール
構成ファイル
モジュール
構成ファイル
モジュール
構成ファイル
マスター
構成ファイル
タスク ボタンと
メニュー
?
?
?
?
?
?
?
?
?
?
ナビ
ゲーション
ナビ
ゲーション
ナビ
ゲーション
ナビゲーション
ペイン

この図には、主要なポイントが 3 つあります。1 つ目は、各操作ページに表示されるナビゲーション ペインとタスク バーの両方を、ビジネス デスク フレームワークが管理するために必要が情報が、マスター構成ファイルと一連のモジュール構成ファイルによって提供されることです。

2 つ目は、一覧ページと呼ばれる読み取り専用の一覧が、必ずナビゲーション ペインと共に操作ページに表示されることです。このため、別のモジュールに移動する場合、ユーザーは編集ページからではなく、一覧ページから移動する必要があります。削除やインポートなどのタスクを除いて、一覧ページは読み取り専用です。そのため、モジュールで変更したデータが保存されていないという警告を、ユーザーに表示する必要は通常はありません。

3 つ目は、操作ページ間での移動が、通常はタスク バーのタスク ボタンによって行われる必要があることです。このしくみを利用することで、ビジネス デスク フレームワークは操作ページ間の移行中に発生するサービスを提供できます。ページ内での操作ページからボタンへの直接リンクは最小限で済みます。

ここでは、次のトピックについて説明します。

  • フレームワーク : ビジネス デスク フレームワークによって提供されるサービス、およびビジネス デスクがさまざまなビジネス デスク モジュールを表示する表示環境について説明します。

  • HTML アプリケーションとクライアント インストーラ : ビジネス デスクが HTA のコンテキスト内で一般的にどのように実行されるか、およびビジネス デスクが初めて呼び出されたときに、実行に必要なファイルがどのようにしてクライアントにダウンロードされるかについて説明します。

  • 構成ファイル : ビジネス デスク フレームワークがそのサービスの多くを供給できるようにするためのデータが、構成情報が格納された数多くのファイルから、どのようにして提供されるかを説明します。この構成情報は、XML を使って指定されています。

  • カテゴリ : カテゴリの概念、およびその概念を使って、ビジネス デスク内でモジュールを整理する方法について説明します。

  • モジュール : ビジネス デスク モジュールの構成について、ASP ページとしての表示なども含めて説明します。また、それらのモジュールが、ビジネス デスク フレームワークから認識されるようにするための方法も説明します。

  • 操作ページ : ビジネス デスクの操作を実装する ASP ページの代表的な内容について説明します。また、それらのすべてのページに含める必要がある特殊な要素に関する情報、およびそれらのページの構造についても説明します。

  • タスク : ビジネス デスク環境内でのタスクの概念について説明します。また、ビジネス デスクが特定のモジュール内での移動をサポートするためのしくみとして、タスクをどのように使うかについても説明します。

  • HTML コンポーネント : ビジネス デスク内での HTML コンポーネント (HTC) の使用について説明します。また、データの表示および変更のための標準化されたしくみが、HTC によってどのように提供されるかについても説明します。

  • XMLHTTP 操作 : 一覧ページで、ListSheet HTC 用の追加データを取得するために使われる機能について説明します。この機能を使うと、ページ全体を再描画する必要がありません。これは重要な拡張で、大量のデータのページング、または詳細データの遅延読み込みのパフォーマンスが向上します。また、XML HTTP 通信を使って、ページを再読み込みしなくても保存できるようにする、フレームワーク ルーチンについても説明します。

  • セキュリティ : ビジネス デスク内のセキュリティ メカニズムによって、利用可能なビジネス デスク モジュールのサブセットに対して、特定のユーザーを制限する方法について説明します。

  • 状態管理 : ビジネス デスクのさまざまな操作ページ間で、クライアントまたはサーバー上の状態を保持するために使用可能なしくみについて説明します。

  • エラー レポート : クライアントおよびサーバーのエラーを、ビジネス デスク ユーザーにレポートするために使用可能なしくみについて説明します。

  • オンライン ヘルプ : ビジネス デスクのオンライン ヘルプ システムの実装方法、および新しいビジネス デスク モジュールのオンライン ヘルプの統合方法について説明します。


フレームワーク

Commerce Server ビジネス デスク フレームワークは、ビジネス デスク モジュールの実行環境を提供します。次に、この環境のさまざまな側面について説明します。

  • フレームワークは、ビジネス デスクの特定のインスタンス内で構成されたほかのモジュールを、あるモジュールが発見および列挙できるしくみを提供します。

  • フレームワークには、精巧なデータ操作コントロールが一式含まれていて、そのほとんどは HTML コンポーネント (HTC) として実装されています。HTC とは、Microsoft Internet Explorer 5 でサポートされている DHTML 動作の形式の 1 つです。これらのコンポーネントを使うと、さまざまなビジネス デスク モジュール間で一貫したデータの表示、選択および変更ができます。これによって、ビジネス デスクとそのモジュールが、1 つの統合されたアプリケーションとして動作している意義が大きくなります。これらのコンポーネントが提供する標準化されたサービスの例としては、リスト管理およびデータ評価があります。

  • フレームワークが提供する "セキュリティ" メカニズムを使うと、あるユーザーに対して特定のモジュールをナビゲーション ペインに表示しないようにできます。その結果、そのモジュールで利用可能な機能を、そのユーザーが実行できないよう制限できます。詳しく説明すると、セキュリティ自体はインターネット インフォメーション サービス (IIS) およびアクセス制御リスト (ACL) によって提供され、フレームワークはこのセキュリティ設定に従って、モジュールを表示または非表示にします。404 (不明のファイル) または 401 (アクセス) エラーが発生するたびに、カスタム エラー ページが表示されます。

  • フレームワークは、モジュールが表示される表示環境を提供します。この環境には、ナビゲーション ペイン、コンテンツ ペイン、ページ タイトル、タスク バー、ステータス バーなど、いくつかの標準的な要素が含まれます。

  • フレームワークは、モジュール間、およびモジュール内を移動するための標準的なしくみを提供します。ナビゲーション ペインを使うと、異なるモジュール間での移動が可能になるため、ユーザーは作業対象となる新しいモジュールを選択できます。タスク ボタンを使うと、指定されたモジュールを構成するさまざまなページ間での移動が可能になります。ビジネス デスクの編集ページが表示された場合、ナビゲーション ペインは非表示になるため、ユーザーは編集操作を完了するか、キャンセルするまで、そのモジュールから移動できません。また、ナビゲーション ペインを非表示にすることによって、編集ページの表示領域が大きくなります。


HTML アプリケーションとクライアント インストーラ

一般的に、ビジネス デスクは HTML アプリケーション (HTA) として実行されます。HTA とは、カスタマイズされたブラウザのインスタンスで、整合性が高く有用なユーザー インターフェイスを提供できるよう、標準のブラウザ機能の一部 (ツール バーやアドレス バーなど) が非表示になっています。ビジネス デスクは、運用環境で HTA として強制的に実行されるよう設計されています。

ビジネス デスクを運用モードから開発モードに変更すると、強制実行の動作をその HTA 内だけで無効にできます。ビジネス デスクの Global.asa ファイルの先頭付近に、次のようなコードがあります。

MSCSEnv = PRODUCTION

PRODUCTION は、同種の定数の DEVELOPMENT と共に、この数行上で定義された定数です。MSCSEnv 変数の初期化を PRODUCTION から DEVELOPMENT に変更すると、いくつものデバッグ動作が行われます。その 1 つは、ビジネス デスクを通常のブラウザ インスタンス内で実行する機能です。新しいモジュールを含んだビジネス デスクを運用環境に移動する前に、このコードを必ず元の状態に戻してください。

新しいモジュールの開発に影響はありませんが、ビジネス デスクがあるマシンから初めて呼び出されたときに、クライアント インストーラが起動されることを理解しておくことも重要です。この短い処理によって、ビジネス デスクが設計どおりに動作するためにクライアント上に必要なファイルが、いくつかダウンロードされます。既に説明したとおり、これは新しいモジュールの開発に影響を与えません。


構成ファイル

一連の拡張マークアップ言語 (XML) 構成ファイル、マスター構成ファイル、および多数のモジュール構成ファイルを使うと、ビジネス デスクのあるインスタンスに含まれるモジュールのさまざまな側面が、ビジネス デスク フレームワークに通知されます。各モジュールはこのしくみを最上位レベルで使い、そのモジュールが属するカテゴリ、含まれる操作ページ、その各操作ページで使用できるタスクなどの情報を指定します。下位のレベルでは、これらの各構成ファイル内にさまざまな追加情報が指定されます。

ビジネス デスクの構成の追加情報については、「ビジネス デスクの構成」を参照してください。

マスター構成ファイルの XML 構造の詳細については、「マスター構成ファイル」を参照してください。

モジュール構成ファイルの XML 構造の詳細については、「モジュール構成ファイル」を参照してください。


カテゴリ

カテゴリの目的は、Commerce Server ビジネス デスク内のさまざまなモジュールを整理するための方法を提供することです。カテゴリでは、ナビゲーション ペインの構成の第 1 レベルが提供されます。モジュールへのエントリ ポイントは、第 2 レベルとして機能します。

カテゴリは、XML 構成ファイルのエントリとして実装され、ナビゲーション ペインだけに表示されます。

新しいビジネス デスク モジュールの作成者は、その新しいモジュールが既存のどのカテゴリに属するかを決定するか、そのモジュールが提供する機能で新しいカテゴリを作成することを保証する必要があります。新しいカテゴリを作成する必要がある場合は、マスター構成ファイルに含まれる XML を編集し、新しい category 要素を追加します。このカテゴリに対して考案した一意のカテゴリ ID は、新しいビジネス デスク モジュール用に作成したモジュール構成ファイルから参照されます。既存のカテゴリに新しいモジュールを追加する場合は、モジュール構成ファイルの中で、既存のカテゴリのカテゴリ ID を参照します。

次のどちらかの条件に当てはまる場合は、カテゴリがナビゲーション ペインに表示されません。

  • そのカテゴリを指定するモジュールが存在しない。

  • 現在のユーザーが、そのカテゴリ内のモジュール エントリ ポイントへのアクセス権を持っていない。


モジュール

Commerce Server ビジネス デスク モジュールは、ビジネス デスク内での実際の作業の実行に使われるユーザー インターフェイスを提供します。Microsoft Commerce Server 2000 に付属するビジネス デスク モジュールは非常に少ないため、必ず新しいモジュールが必要になります。ここでは、新しいモジュールを構築し、既存のモジュールと統合する方法について説明します。

ビジネス デスク モジュールは、次のもので構成されています。

  • 一連の関連する ASP ページ。特定の種類のビジネス データを管理するためのユーザー インターフェイスを表示する、すべての非公開ユーティリティ ページが含まれます。このモジュールには、表示されたユーザー インターフェイスをサポートする、純粋処理された追加の ASP ページもすべて含まれます。ユーティリティ ページを除いて、これらのページは通常はほかの種類のページに含まれ、操作ページと呼ばれます。

  • モジュールをビジネス デスクに統合する方法と場所に関する情報。この情報は、既存のカテゴリおよびモジュールに対して相対的なものです。この情報はモジュール構成ファイルに含まれ、複数のファイルに含まれる場合もあります。

  • モジュールを構成する ASP ページ間の移動を、ビジネス デスクが管理する方法に関する情報。タスクに関して表現され、そのモジュール専用のタスク ボタンに表示される、アイコン ファイルを含む場合があります。

  • モジュール内の操作ページ特有のヘルプ ファイル。省略可能ですが推奨します。


操作ページ

操作ページは、モジュールを構成する Active Server Page (ASP) ページです。操作ページは、ピュアな処理、つまりユーザー インターフェイスの表示を担当としない処理に使います。

それに対して、Commerce Server ビジネス デスクのコンテンツ ペインに表示されるユーザー インターフェイスを、直接担当する操作ページも数多くあります。ユーザー インターフェイスの表示を担当する操作ページには、一覧ページと編集ページという、2 種類の主要なページがあります。

モジュールまたはタスクのエントリ ポイントとしてリンクされた操作ページは、モジュール構成ファイルに登録されている必要があります。

コンテンツ ペインの表示を担当する操作ページには、少なくとも次のものが必要です。

  • 適切なビジネス デスクのユーティリティ ファイルを取り込むためのディレクティブ。モジュール固有のユーティリティ ファイルも、いくつか取り込みます。

  • ビジネス デスクのカスタマイズ可能なスタイル シート (CSS)。ビジネス デスクの特定のインスタンスに対して、整合性のあるスタイルを提供します。また、ビジネス デスクの HTML コンポーネント (HTC) に必要なスタイルも提供します。

  • フレームワークのユーティリティ関数 InsertTaskBar または InsertEditTaskBar の呼び出し。この操作のモジュール構成ファイル内で指定されたタスク ボタンを表示します。

  • 1 つ以上の HTML フォーム。1 つ以上の HTC を含む場合があり、操作に関連付けられたユーザー インターフェイス要素を指定します。

    一般的に、編集対象の HTC はフォーム内に存在する必要がありますが、編集対象以外のコントロール (ListSheet HTC など) はその必要がありません。

  • フォームの送信時にフォーム データを処理する ASP コード (省略可能)。このコードは、同じ操作ページに配置できます。また、タスクの構成によりますが、ピュアな処理の変種またはユーザー インターフェイスの変種であるほかの ASP ページにも配置できます。通常、ある ASP コードの実行後に同じページを表示する場合、タスクに関連付けられたフォームはその同じページへ送信され、コンテンツの表示前にページの先頭部分で ASP 処理が行われます。

ここでは、次のトピックについて説明します。

  • 一覧ページ

  • 編集ページ


一覧ページ

一覧ページは、Commerce Server ビジネス デスクにある 2 種類の主要な操作ページのうちの 1 つです。次のような特長があります。

  • 読み取り専用です。一覧ページではデータを変更できません。ただし、検索ペインの検索情報は除きます。

  • ナビゲーション ペインと一緒に表示されます。ナビゲーション ペインを使うと、ビジネス デスクのユーザーは別のモジュールを選択することで、現在のモジュールから移動できます。一覧ページは、ビジネス デスクのワークスペースの右側に表示されます。

  • 通常、一覧ページはデータ表示に ListSheet HTML コンポーネント (HTC) を利用し、HTC によって提供されるいくつかの動作モードの 1 つを使います。

  • 一覧ページは、上下 2 つの領域に分割される場合があります。上部の領域は検索ペインと呼ばれ、一般的に EditField HTC がいくつか含まれていて、ユーザーが検索条件を指定できるようになっています。下部の領域には、既に説明した ListSheet HTC が含まれていて、コンテンツ ペインと呼ばれます。検索ペインで指定した検索条件を使って検索タスクを実行した場合、結果はコンテンツ ペインの ListSheet HTC に表示されます。

次の表は、一覧ページで推奨される論理構造を示しています。

一覧ページ コードの省略形 説明
<% InsertTaskBar %>

一覧ページのサーバー側ルーチンです。適切なタスク バーを挿入し、ナビゲーション ペインを表示します。

<DIV  id='FindByArea'>

検索ペイン全体が含まれた DIV です。

    <XML id='efMeta'> . . . </XML>

EditField HTC の構成データが含まれた XML データアイランドです。

    <XML id='efData'> . . . </XML>

EditField HTC に表示する実際のデータが含まれた XML データアイランドです。

    <DIV id='edit1'> . . . </DIV>

検索ペインで使われるいくつかの EditField HTC のうち、1 番目のものが含まれた DIV です。

    <DIV id='edit2'> . . . </DIV>

検索ペインで使われるいくつかの EditField HTC のうち、2 番目のものが含まれた DIV です。

    <DIV id='edit3'> . . . </DIV>

検索ペインで使われるいくつかの EditField HTC のうち、3 番目のものが含まれた DIV です。

</DIV>

検索ペイン DIV を終了します。

<DIV  id='ContentArea'

コンテンツ ペイン全体が含まれた DIV です。

    <XML id='lsMeta'> . . . </XML>

ListSheet HTC の構成データが含まれた XML データアイランドです。

    <XML id='lsData'> . . . </XML>

ListSheet HTC に表示する実際のデータが含まれた XML データアイランドです。

    <DIV id='list1'> . . . </DIV>

コンテンツ ペインで使われる ListSheet HTC が含まれた DIV です。

</DIV>

コンテンツ ペイン DIV を終了します。


編集ページ

編集ページは、Commerce Server ビジネス デスクにある 2 種類の主要な操作ページのうちの 1 つです。次のような特長と規則があります。

  • 読み取りと書き込みが可能です。データを変更できるのは編集ページだけです。ただし、一覧ページの検索ペインのフィールドは変更可能です。

  • ナビゲーション ペインと一緒には表示されません。編集ページが表示される場合、ナビゲーション ペインは非表示になり、ビジネス デスクのワークスペース全体に編集ページが表示されます。そのため、別のモジュールへ移動する前に、ユーザーは変更を保存またはキャンセルする必要があります。このような動作にするには、編集ページで InsertTaskbar ルーチンではなく、InsertEditTaskbar ルーチンを使う必要があります。

  • 通常、編集ページでは 1 つ以上の異なる HTML コンポーネント (HTC) を使って、データの変更を可能にしています。HTC には、DynamicTable HTC、EditSheet HTC、ListEditor HTC、各 EditField HTC があります。これらの HTC は、マスター (または外部) EditSheet HTC で定義します。そうすることで、Save タスクに関連付けられた確認および警告ダイアログ ボックスを、イベント ハンドラが正しく操作できるようになります。

  • EditSheet グループを 1 つしか持たない編集ページは、展開したり折りたたんだりできないため、タイトル バーがありません。

  • 一般的に、編集ページを初めて読み込んだとき、1 番目の EditSheet グループが開かれ、それ以外のグループはすべて閉じられています。

  • 編集ページに EditField HTC を追加する場合、ラベルと必須アイコン (必要な場合) を指定する必要があります。次に例を示します。
    <TABLE>
<TR>
    <TD width=30><%= g_imgRequired %></TD>
    <TD CLASS='esLabelCell'>
        <LABEL FOR='password'>Password:</LABEL>
    </TD>
    <TD CLASS='esDataCell'>
        <DIV ID='password' CLASS='editField'
             MetaXML='efMeta'
             DataXML='efData'>Loading property...</DIV>
    </TD>
</TR>
</TABLE>
  • 定数 g_imgRequired を使うと、必須アイコンのマークアップを挿入できます。通常、必須アイコンのセル幅は 20 ピクセルです。必須アイコンが必要ない場合は、代わりに &nbsp; 要素を挿入します。

  • ユーザー補助機能を提供するため、すべてのラベルは LABEL 要素内でネストされている必要があります。また、整合性を保つため、最後にセミコロンを付ける必要があります。

  • CLASS 属性の esDataCell 値および esLabelCell 値を使うと、標準の EditSheet レイアウトに関連付けられた特性に、フィールドを適合させられます。

  • 必須アイコンが必要ない場合は、代わりに &nbsp; 要素を挿入します。

  • 次のレイアウト間隔規則に従ってください。
    • コンテンツ ペインには、上下左右に 20 ピクセルの余白が必要です。

    • コントロール ボタンは、必ず 1 つの行内で左寄せし、ボタンの間隔は 6 ピクセルにします。ボタンの標準サイズは、幅 80 ピクセル、高さ 25 ピクセルです。テキストの文字数が多い場合は、幅を広くできます。

    • ページング コントロールは、必ず右寄せします。

    • コントロール ボタンとページング コントロールは、その上のコントロールから必ず 12 ピクセル離します。
  • 編集ページがモジュール エントリ ポイントになっている場合 (税率ページなど)、ページに次の [Back] ボタン タスクを用意し、[Back] ボタンのリンク先を一覧ページではなく、ビジネス デスクのウェルカム ページにします。
    <task icon='taskback.gif' id='back'>
    <goto action='welcome.asp' />
    <name>&lt;U&gt;B&lt;/U&gt;ack</name>
    <key>b</key>
    <tooltip>Back to Main Menu</tooltip>
</task>

次の表は、特定のサンプル編集ページで推奨される論理構造を示しています。このサンプルは、次の形式のネストした HTC 構造を正しく作成する方法を示しています。

    Master EditSheet
        EditSheet
        EditSheet
            EditSheet
            EditSheet
        EditSheet
            ListEditor
        EditSheet

コード自体は、わかりやすいよう省略形になっています。

編集ページ コードの省略形 説明
<% InsertEditTaskBar %>

編集ページのサーバー側ルーチンです。適切なタスク バーを挿入し、ナビゲーション ペインを非表示にします。

<XML  id='MasterMeta'>

外部 EditSheet HTC の構成データが含まれた、XML データアイランドを開始します。

    <editsheets>

このコードがあると、EditSheet HTC に複数の埋め込み EditSheet グループが含まれ、上から下へ表示される順序で並べられていることを示します。

    <editsheet> . . . </editsheet>

最初のネストした EditSheet グループです。含んでいる EditSheet HTC (このサンプルでは id='MasterData') からデータを取得します。

    <editsheet>

        <template
            register='InnerES'>
            <![CDATA[
              <DIV id=InnerES
                  class='EditSheet'
                  MetaXML='ESMeta'
                  DataXML='ESData'>
              </DIV>
            ]]>
        </template>
    </editsheet>

2 番目のネストした EditSheet グループです。このサンプルでは、ネストした EditSheet グループに、もう 1 つの EditSheet HTC (id=InnerES) が含まれます。

この HTC ではテンプレート メカニズムが使われているため、内部 EditSheet HTC には独自の MetaXML および DataXML データアイランドが必要です。

template タグの register 属性によって、内部 EditSheet からマスタ EditSheet へのイベントが、正しく作成されることが保証されます。

    <editsheet>

        <template
            register='InnerLE'>
            <![CDATA[
              <DIV id=InnerLE
                  class='ListEditor'
                  MetaXML='LEMeta'
                  DataXML='LEData'>
              </DIV>
            ]]>
        </template>
    </editsheet>

3 番目のネストした EditSheet グループです。このサンプルでは、ネストした EditSheet グループに、ListEditor HTC (id=InnerLE) が含まれます。

この HTC ではテンプレート メカニズムが使われているため、内部 ListEditor HTC には独自の MetaXML および DataXML データアイランドが必要です。

template タグの register 属性によって、ListEditor からマスタ EditSheet へのイベントが、正しく作成されることが保証されます。

    <editsheet> . . . </editsheet>

4 番目のネストした EditSheet HTC です。含んでいる EditSheet HTC (このサンプルでは id='MasterData') からデータを取得します。

    </editsheets>

複数の EditSheet HTC のコンテナの終わりを表します。

</XML>

マスタ EditSheet HTC の構成データアイランドを終了します。

<XML  id='MasterData'> . . . </XML>

マスタ EditSheet HTC の実際のデータが含まれた XML データアイランドです。実際には、データはネストした、テンプレートではない EditSheet HTC に表示されます。

<XML  id='ESMeta'>

内部 EditSheet HTC の構成データが含まれた、XML データアイランドを開始します。

    <editsheets>

このコードがあると、EditSheet HTC に複数の埋め込み EditSheet HTC が含まれ、上から下へ表示される順序で並べられていることを示します。

    <editsheet> . . . </editsheet>

最初のネストした EditSheet グループです。含んでいる EditSheet HTC (このサンプルでは id='ESData') からデータを取得します。

    <editsheet> . . . </editsheet>

2 番目のネストした EditSheet グループです。含んでいる EditSheet HTC (このサンプルでは id='ESData') からデータを取得します。

    </editsheets>

複数の EditSheet HTC のコンテナの終わりを表します。

</XML>

ネストした EditSheet HTC の構成データアイランドを終了します。

<XML  id='ESData'> . . . </XML>

ネストした EditSheet HTC の実際のデータが含まれた XML データアイランドです。

<XML  id='LEMeta'>

    <listeditor> . . . </listeditor>
</XML>

ネストした ListEditor HTC の構成データが含まれた XML データアイランドです。

<XML  id='LEData'> . . . </XML>

内部 ListEditor HTC の実際のデータが含まれた XML データアイランドです。

<DIV  id='MasterEditSheet'

      class='EditSheet'
      MetaXML='MasterMeta'
      DataXML='MasterData'>
      Loading. Please wait...
</DIV>

コンテンツ ペイン全体の内容を定義する DIV です。


タスク

Commerce Server ビジネス デスクのタスクは、ある操作ページを別の操作ページに結び付け、場合によってはページの移行中に作業を実行します。状況によっては、最終的な操作ページが、最初の操作ページと同じになることもあります。たとえば、削除タスクでは確認ダイアログ ボックスが表示され、削除が確認されると、選択されたレコードが削除されてから元のページに戻ります。

別の観点から見ると、タスクとはビジネス デスク ユーザーがビジネス デスク内で、高レベルの操作を開始するためのしくみです。高レベルの操作の例としては、選択した項目の編集ページを開く、選択した項目を削除する、新しい項目を作成する、などがあります。高レベルの操作と対照的なものとして、単一のページ内で実行される低レベルの操作があります。低レベルの操作の例としては、スクロール、ページング、表示されたフィールドの値の変更などがあります。

最初のページで選択されたデータに対して、詳細な操作を行うしくみが、タスクによって提供される場合もよくあります。たとえば、操作ページのあるレコードに対応する行を、ユーザーが選択したとします。開くタスクのボタンをクリックすると、そのレコードを詳しく表示した新しい操作ページが、ユーザーに対して表示されます。そのページには、元の操作ページには表示されていなかったフィールドが表示されます。この新しいページでは、表示されているフィールドのいくつかを編集することにより、レコードのフィールドをユーザーが変更できます。

タスクは、ビジネス デスクのユーザー インターフェイス内で、コンテンツ ペインの上部に、タスク バーと呼ばれる水平のボタン行として表示されます。タスク ボタンには、標準タスク ボタンとタスク メニュー ボタンの 2 種類があります。タスク メニュー ボタンは、タスク分岐と呼ばれるものを処理する方法の 1 つです。ビジネス デスクのタスクについては、次の各トピックで詳しく説明します。

ここでは、次のトピックについて説明します。

  • タスク ボタンとメニュー

  • タスク分岐

  • タスク バー


タスク ボタンとメニュー

タスクは、Commerce Server ビジネス デスクのユーザー インターフェイス内に、ボタンとして表示されます。通常、タスク ボタンには、イメージ ファイルから取得されたアイコンが表示されます。イメージ ファイルには、task 要素の icon 属性の値として指定されています。icon 属性が指定されていない場合は、name 要素 (task 要素の子) に関連付けられたデータ値が、ボタンのラベルとして使われます。tooltip 要素 (task 要素の子) に関連付けられたデータ値は、マウスでポイントしたときに表示されます。

task 要素の属性とサブ要素の詳細については、「ビジネス デスク XML 構造体」の「task」を参照してください。

ビジネス デスクで使われるボタンには、標準タスク ボタンとタスク メニュー ボタンの 2 種類があります。標準タスク ボタンをクリックすると、操作が実行されます。たとえば、新しい操作ページへの移動、削除の確認ダイアログ ボックスの表示、変更されたデータの保存などの操作があります。

それに対して、タスク メニュー ボタンをクリックすると、ドロップダウン メニューが表示され、いくつかのサブタスクが選択肢として提示されます。ユーザーは、この選択肢のどれかクリックして操作を実行する必要があります。

さまざまな一般的タスクに対して、タスク メニュー アイコンなど、多数のアイコンがあらかじめ定義されています。新しくビジネス デスク モジュールを開発するときは、できるだけこれら既存のアイコンを使用してください。アイコンの詳細については、「アイコン」を参照してください。


タスク分岐

ある 1 つのタスクが、実際にはいくつもの異なるサブタスクを表現している場合があります。たとえば、ある種類の新しい項目を追加する場合は、すべてのフィールドが空の状態で新しい項目を追加するか、ある種類の選択された項目からフィールド値を継承して新しい項目を追加します。

このタスク分岐は、さまざまな方法で処理できます。場合によっては、選択された項目からサブタスクが明白で、ユーザーの入力が必要ないことがあります。その場合は、ユーザーの代わりに、コードで正しいサブタスクを選択するようにできます。

ユーザーが明示的にサブタスクを選択する必要がある場合は、タスクをメニューとして定義するようにしてください。この方法を使用した場合、ユーザーがタスク ボタンをクリックしたときにメニューがドロップダウンされ、サブタスクの選択肢が提示されます。この種類のしくみは、モジュール構成ファイルの対応する task 要素内に簡単に構成できます。

ユーザーが選択を行う必要があるときに、サブタスク分岐を行うもう 1 つの方法は、中間ダイアログ ボックスの使用です。これは、タスク (postto タイプのタスクのみ) に関連付けられたフォームに ONTASK 属性を追加することで行えます。

ユーザーがタスク ボタンをクリックすると、ONTASK 属性で名前が指定された関数が実行されます。この関数はダイアログ ウィンドウを表示し、ユーザーがタスクをキャンセルしない限り、フォームを送信します。


タスク バー

コンテンツ ペインにユーザー インターフェイスを表示するすべての操作ページでは、そのページから使用可能な一連のタスクを定義する必要があります。このようなタスクは、各 action 要素に含まれる tasks 要素を使って、モジュール構成ファイル内で定義されます。各操作ページのタスク定義の詳細については、「ビジネス デスクの XML 構造」の「tasks」を参照してください。

操作ページに対して定義されたタスクは、コンテンツ ペインの左上隅から右に向かって並んでいる一連のタスク ボタンとして表示されます。この一連のボタンはタスク バーと呼ばれます。タスク バー内のタスク ボタンは、モジュール構成ファイルの task 要素と同じ順序で表示されます。

タスクを定義する順序にはある程度の規則があり、タスク ボタンがタスク バーに表示される順序もそれによって決まります。タスク バーの規則の詳細については、「タスク バー」を参照してください。

各モジュールによって定義され、タスク ボタンとして左寄せで表示されるタスクとは別に、グローバル タスクがあります。これはヘルプ タスクで、標準の右寄せされたボタンがあります。[ヘルプ] ボタンには疑問符アイコンが表示され、マウスでポイントすると [ヘルプを表示します] と表示されます。すべての操作ページに自動的に含まれるグローバル タスクは、ヘルプ タスクだけです。action 要素の helptopic 属性を使ってヘルプ トピックが指定されていないページでは、クリックされたときにビジネス デスク全般のヘルプが表示されます。新しいグローバル タスクの追加をサポートするしくみはありません。


HTML コンポーネント

Commerce Server ビジネス デスク フレームワークが提供する重要なサービスの 1 つは、HTML コンポーネント (HTC) です。HTC は、データの表示と操作に関する標準化された方法を提供します。これらの HTC は、Commerce Server 2000 に付属するビジネス デスク モジュールで広範囲に使われており、サード パーティが開発する新しいビジネス デスク モジュールでも、広範囲に使われることが期待されます。

ビジネス デスク フレームワークによって提供される HTC の詳細については、「ビジネス デスクの HTML コンポーネント」を参照してください。

各 HTC がサポートするプロパティ、メソッド、およびイベントの詳細、およびこれらの HTC が依存している XML 構造の詳細については、「HTML コンポーネント」および「ビジネス デスク XML 構造」をそれぞれ参照してください。


XMLHTTP 操作

Commerce Server ビジネス デスク フレームワークが提供する HTML コンポーネント (HTC) には、XMLHTTP 操作と呼ばれる特殊な機能を提供するものが 2 つあります。この HTC は、ListSheet HTC および TreeView HTC です。この機能の目的は、構造化されたしくみを提供することで、これらの HTC のパフォーマンスを向上させることです。このしくみでは、HTC がサーバーから追加の XML データを要求でき、ページを再読み込みする必要がありません。

さらに、フレームワークには、ListSheet HTC および TreeView HTC のコンテキスト外部のページで、XMLHTTP 操作を行うためのルーチンが数多くあります。これらのルーチンを使うと、ページ全体を再読み込みしなくても、情報をサーバーに保存するページを実装できます。キャンペーン マネージャ モジュールの編集ページの多くがその例です。

XMLHTTP 操作、およびそれが依存しているフェッチ ページの詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

ListSheet HTC および TreeView HTC に対する、XML メタデータ データアイランド内における XMLHTTP 操作の構成の詳細については、「ListSheet の構成」および「TreeView の構成」をそれぞれ参照してください。


セキュリティ

Commerce Server ビジネス デスク フレームワークは、特定のユーザーがアクセスを禁止されたモジュールを、ナビゲーション ペインで非表示にする機能をサポートしています。これは、各モジュールのエントリ ポイントとして機能するファイルに対して、NT ファイル システム (NTFS) のアクセス制御リスト (ACL) を使って行われます。たとえば、あるユーザーが、あるモジュールに関連付けられたエントリ ポイント ファイルの読み取りアクセス権を持っていない場合、そのモジュールはナビゲーション ペインに表示されず、ユーザーはアクセスできません。ユーザーは、そのモジュールが存在することすら気付きません。

エントリ ポイント ファイル以外のファイルにも、適切なアクセス制御を適用するようにしてください。(ビジネス デスク モジュールの) フォルダ レベルで適切な ACL を適用し、そこに含まれるすべてのファイルが同等に保護されるようにするとよいでしょう。そうすれば、ユーザーがエントリ ポイント ページを通らずに、モジュール ページに直接アクセスし、ビジネス デスクのセキュリティ メカニズムを通り抜けることを防止できます。

ユーザーがアクセス権を持たないページを表示しようとすると、カスタム ビジネス デスクのエラー ページが表示されます。

注

  • ビジネス デスク フレームワークは、セキュリティ メカニズムを実装しません。各ユーザーに、担当外のビジネス デスク モジュールを見せないしくみを提供するだけです。セキュリティを実装するには、Microsoft インターネット インフォメーション サービス (IIS)、Microsoft Windows 2000 (たとえば、ACL と認証など)、および Microsoft SQL Server を使う必要があります。

ビジネス デスクの特定のインスタンスに対して、セキュリティ要件を判断する場合は、次の点も考慮してください。

  • ほとんどのデータベースでは、データ フィールドのレベルで、何らかのセキュリティを実装できるようになっています。新しいビジネス デスク モジュールは、このレベルでデータ保護を処理するよう作成できます。しかし、Microsoft Commerce Server 2000 に付属するモジュールはこのレベルのセキュリティが実装されていないため、セキュリティを実装するには変更が必要です。

  • 関連するすべてのビジネス デスク フォルダに対して、そのフォルダにモジュール エントリ ポイント ファイルが存在するかどうかにかかわらず、正しい ACL を適用するよう注意してください。

  • 認証されていないセッションを通じてユーザーがインターネットからビジネス デスクに接続すると、ビジネス デスク アプリケーションに対する認証を行うために、ユーザー名、パスワード、およびドメイン名の入力を求める画面が Internet Explorer に表示されます。

  • ユーザーが既にローカル ネットワークにログオンしている場合、アカウント コンテキストは暗黙的なものになり、そのユーザーの認証の透過的検証にそのコンテキストが使われます。


状態管理

Commerce Server ビジネス デスク フレームワークは、ページ間でのモジュールの受け渡しに使われる、クライアント状態ディクショナリを保守しています。このディクショナリを操作するため、3 種類のクライアント側ルーチンが用意されています。データの格納には SetTemp (クライアント側)、データの取得には GetTemp (クライアント側)、格納済みのデータの削除には ClearTemp (クライアント側) を使います。格納するデータは、オブジェクトなどの Variant 型であれば何でもかまいません。

このディクショナリの動作を効率よく保つには、このディクショナリに格納する必要のなくなった値を削除してください。

ビジネス デスクの特定のインスタンス内に表示されるすべてのページは、このディクショナリを共有します。あるページに格納されている値が、別のページによって上書きされることを防止するしくみはありません。そのため、使うディクショナリのキー名は一意なものとし、ほかのモジュールで使わないでください。よく使われる方法としては、すべてのキー名の先頭にモジュール名や、モジュール名を元にした名前を付けるという方法があります。

クライアント状態ディクショナリの重要な使用方法の 1 つは、ネストした編集ページを使う場合です。ネストした編集ページは、呼び出し元編集ページに情報を返すことがよくあります。たとえば、新しく作成したオブジェクトや、名前を変更したオブジェクトに関連した情報です。ネストした編集ページは、関連情報をクライアント状態ディクショナリに格納します。通常、格納に使われるのは、Save タスクに関連付けられた ONTASK ルーチンです。この情報は、呼び出し元編集ページでコールバック ルーチンを使うと、クライアント状態ディクショナリから取得できます。

同様に、ビジネス デスクは、クライアント側スクリプトからアクセス可能なサーバーに、状態情報を格納するルーチンを提供します。これらのルーチンは、クライアント側の Dictionary オブジェクトを XML に変換し、それを XMLHTTP を使ってサーバーへ転送し、サーバー上で XML を Dictionary オブジェクトに戻してから、Session オブジェクトに保存します。この逆の操作によって、保存された状態がクライアント側スクリプトから取得されます。状態のサーバーへの保存の詳細については、「dSetServerState (クライアント側)」、「dGetServerState (クライアント側)」、および「dClearServerState (クライアント側)」を参照してください。

モジュールは cookie を使い、異なる複数のページへの呼び出しにわたって少量の状態を保存します。この状態管理方法を使うのは、保存するデータが操作ページ 1 つあたり 100 バイトより小さい場合だけにしてください。


エラー レポート

Commerce Server ビジネス デスク フレームワークには、クライアント側スクリプトとサーバー側スクリプトの両方に対する、エラー レポート ルーチンが用意されています。これらのルーチンは、次のようなカテゴリに分けられます。

  • 書式設定ルーチン。HTML の表を作成し、エラー カテゴリの 1 つについて詳細を表示します。

  • サーバー コードのエラー情報設定に使われるルーチン。この情報は、タスク バーがページに挿入されるときに、クライアントに表示されます。

  • 表示ルーチン。ビジネス デスクのユーザーに対して、エラー ダイアログ ボックスを表示します。

  • 簡潔なエラー文字列 ID に基づいて、わかりやすいエラー文字列をフェッチするために使われるルーチン。

このトピックには、次の内容が含まれています。

  • サーバー側エラー ルーチン : サーバー側スクリプト内でエラーを書式設定および表示するために、フレームワークから提供されるルーチンについて説明します。

  • クライアント側エラー ルーチン : クライアント側スクリプト内でエラーを書式設定および表示するために、フレームワークから提供されるルーチンについて説明します。

  • エラー ルーチンの例 : 数多くの例を示し、さまざまな種類のエラーをレポートするように、エラー レポート ルーチンを組み合わせる方法について説明します。

サーバー側エラー ルーチン

エラーの詳細を書式設定するサーバー側ルーチンは、ADO エラー、ASP エラー、XML 解析エラー、および VBScript エラーに対して 1 つずつ、合計 4 つあります。サーバー側エラー ルーチンの詳細については、次を参照してください。

sGetADOError (サーバー側) | sGetScriptError (サーバー側)
sGetASPError (サーバー側) | sGetXMLError (サーバー側)

SetError ルーチンは、サーバー側スクリプトのエラーのログを記録し、最終的にビジネス デスクのユーザーに表示するためのものです。エラー情報は ASP Session オブジェクトに格納され、次回タスク バー ルーチンの 1 つ (InsertTaskBar または InsertEditTaskBar) が呼び出されたときに、自動的に取得されてユーザーに表示されます。SetError ルーチンの詳細については、「SetError (サーバー側)」を参照してください。

サーバー側エラーは、Commerce Server 2000 ソースの下の Windows NT アプリケーション イベント ログにも記録されます。

sGetErrorById ルーチンは、グローバルな MessageManager オブジェクトに格納されたエラー要約文字列を、さらに暗号化され、ローカライズされていない識別子文字列を基に取得できるようにするためのものです。sGetErrorById ルーチンの詳細については、「sGetErrorById (サーバー側)」を参照してください。

クライアント側エラー ルーチン

エラーの詳細を書式設定するためのクライアント側ルーチンは 2 つあります。1 つは、XML 解析エラーの詳細を書式設定するもので、もう 1 つは、VBScript エラーの詳細を書式設定するためのものです。クライアント側エラー ルーチンの詳細については、次を参照してください。

sGetScriptError (クライアント側) sGetXMLError (クライアント側)

ShowErrorDialog ルーチンは、エラー ダイアログ ボックスをビジネス デスクのユーザーに対して、クライアント側スクリプトから表示するためのものです。ShowErrorDialog ルーチンの詳細については、「ShowErrorDlg (クライアント側)」を参照してください。

エラー ダイアログ ボックスは直ちに表示され、モーダルです。詳細書式設定ルーチンは、ShowErrorDialog のパラメータ リスト内で呼び出され、その戻り値から詳細文字列が得られます。

エラー ルーチンの例

次の例は、書式設定ルーチンと表示ルーチンを組み合わせて異なる種類のエラーをレポートするための、さまざまな方法を示しています。

次のサーバー側の例は、SetError の呼び出しを示しています。ダイアログ ボックスのタイトルは、ローカライズ可能な文字列定数を使って参照され、要約文字列は sGetErrorById を使って検索されます。また、エラーの詳細は、ASP の getLastError メソッドを使って取得されます。この例では、重要アイコンが付いたエラー ダイアログ ボックスが表示されます。

InsertTaskBar を呼び出してから SetError を呼び出すと、クライアント側の ShowErrorDialog ルーチンが呼び出され、Session オブジェクトに一時的に格納された SetError パラメータが渡されます。

<%
Call SetError(L_ASP_ERROR_TITLE, _
              SGetErrorById("CS4ERR_ASP_ERROR"), _
              sGetASPError(Server.getLastError), _
              ERROR_ICON_CRITICAL)

Call InsertTaskBar(L_PAGETITLE_TEXT, L_STATUS_TEXT)
%>

次のクライアント側の例は、ShowErrorDialog の呼び出しを示しています。ダイアログ ボックスのタイトルと要約文字列は、ローカライズ可能な文字列定数を使って参照されます。エラーの詳細は、Visual Basic のグローバル Err オブジェクトに格納されます。この例では、疑問符アイコンが付いたエラー ダイアログ ボックスが表示されます。

<SCRIPT LANGUAGE='VBScript'>
Call ShowErrorDialog(L_VB_SCRIPT_ERROR_TITLE, _
                     L_VB_SCRIPT_ERROR_MESSAGE, _
                     sGetScriptError(Err), _
                     ERROR_ICON_QUESTION)
</SCRIPT>

次のクライアント側の例は、ShowErrorDialog の呼び出しを示しています。ダイアログ ボックスのタイトルと要約文字列は、ローカライズ可能な文字列定数を使って参照されます。エラーの詳細は、XML Document Object Model (DOM) の parseError メソッドを使って取得されます。この場合、XML ドキュメントへの参照が、変数 xmlDoc に格納されていることを前提にしています。この例では、重要アイコンが付いたエラー ダイアログ ボックスが表示されます。

<SCRIPT LANGUAGE='VBScript'>
Call ShowErrorDialog(L_XML_PARSE_ERROR_TITLE, _
                     L_XML_PARSE_ERROR_MESSAGE, _
                     sGetXMLError(xmlDoc.parseError), _
                     ERROR_ICON_CRITICAL)
</SCRIPT>

次のクライアント側の例は、ShowErrorDialog の呼び出しを示しています。ダイアログ ボックスのタイトルは、ローカライズ可能な文字列定数を使って参照され、要約文字列はサーバー側スクリプトで検索されます。また、エラーの詳細は、ASP の getLastError メソッドを使って、サーバー側スクリプトで取得されます。この例では、警告アイコンが付いたエラー ダイアログ ボックスが表示されます。

<SCRIPT LANGUAGE='VBScript'>
Call ShowErrorDialog(L_ASP_ERROR_TITLE, _
                     "<%= sGetErrorById("CS4ERR_ASP_ERROR") %>", _
                     "<%= sGetASPError(Server.getLastError()) %>", _
                     ERROR_ICON_ALERT)
</SCRIPT>

次のクライアント側の例は、ShowErrorDialog の呼び出しを示しています。ダイアログ ボックスのタイトルと要約文字列は、ローカライズ可能な文字列定数を使って参照されます。エラーの詳細は、Active Data Objects (ADO) の Connection オブジェクトの errors コレクションにある、1 番目の error オブジェクトを使ってサーバー側スクリプトで取得されます。この場合、ADO の Connection オブジェクトへの参照が変数 oConn に格納され、そのオブジェクトに有効な error オブジェクトが少なくとも 1 つ含まれていることを前提にしています。この例では、情報アイコンが付いたエラー ダイアログ ボックスが表示されます。

<SCRIPT LANGUAGE='VBScript'>
Call ShowErrorDialog(L_ADO_ERROR_TITLE, _
                     L_ADO_ERROR_MESSAGE, _
                     "<%= sGetADOError(oConn.errors.error(0)) %>", _
                     ERROR_ICON_INFORMATION)
</SCRIPT>

次のクライアント側の例は、ShowErrorDialog の呼び出しを示しています。この呼び出しによって、既定のタイトル、要約文字列、およびアイコンを持つダイアログ ボックスが表示されます。このダイアログ ボックスには、[詳細] ボタンが表示されません。

<SCRIPT LANGUAGE='VBScript'>
Call ShowErrorDialog("", "", "", "")
</SCRIPT>


オンライン ヘルプ

モジュール構成ファイル内で指定されたすべての操作ページには、対応するヘルプ ファイルを指定する必要があります。特に、action 要素には helptopic 属性が必要で、この値を使って、その操作のヘルプが含まれた HTML ファイルのパスを持たない名前を指定します。このようなヘルプ ファイルは、Commerce Server ビジネス デスクのルート フォルダの Help フォルダに格納する必要があります。

ビジネス デスクのユーザーがヘルプ タスクをクリックすると、ビジネス デスク フレームワークは現在のタスクに関連付けられたヘルプ ファイルを検索し、独立したヘルプ ウィンドウに表示します。helptopic 属性に含まれる文字列が空の場合は、ビジネス デスク全般のヘルプ ページが表示されます。


ビジネス デスクの規則

Microsoft Commerce Server 2000 に付属する Commerce Server ビジネス デスク モジュールは、Microsoft Windows アプリケーションで規定されている標準仕様、および Web アプリケーションの業界標準を考慮して開発されています。この目的は、ビジネス デスク アプリケーションの有用性と、ビジネス デスク コード ベースの保守性の両方を向上させることです。標準的なものに従うと、さまざまな担当者や組織で開発されたモジュールどうしの整合性が高まるため、有用性が向上します。コード ベースの整合性が高まると、ビジネス デスクを実装するコードを新しい開発者が短時間で理解でき、コードを改良しやすくなるため、保守性が向上します。

ここでの説明には、2 つの目的があります。第 1 に、使われている標準仕様を学習することで、ビジネス デスク モジュールの開発者が、ビジネス デスクのソース コードを容易に理解できるようになります。また、フレームワーク機能の起動、および既存のコードの部分的な再利用によって、そのソース コードを自分の新しいモジュール内で使用できます。

第 2 に、開発者がこの標準仕様を自分のモジュールに厳密に適用することで、ビジネス デスクの有用性と保守性が保たれます。その結果、そのモジュールを使って Web サイトを維持するビジネス マネージャ、および拡張されたコード ベースを学習し、将来の保守を行う新しい開発者がメリットを受けられます。

ここでは、次のトピックについて説明します。

  • コーディング方法 : ビジネス デスク フレームワークおよびモジュール コードで使われるコーディング方法について説明します。

  • フォントと配色 : 既定のビジネス デスクの配色、および割り付けについて説明します。配色の変更方法についても説明します。

  • アイコン : ビジネス デスクで使われるアイコン方式について説明します。また、さまざまなアイコンをどこで使うか、およびその使用方法についても説明します。

  • ユーザー補助機能 : ビジネス デスクで採用されているユーザー補助機能について説明します。モジュール開発で使う、ユーザー補助機能のチェックリストについても説明します。

  • ローカライズ : ビジネス デスク モジュールをできるだけ簡単にローカライズする方法について説明します。

  • タイトル バー : タイトル バーに表示するテキストに適用される規則について説明します。

  • タスク バー : タスク バーに関して、既存のビジネス デスク モジュールに適用される規則について説明します。

  • ListSheet : ListSheet HTC に対して規定されている標準仕様について説明します。

  • EditField : EditField HTC に対して規定されている標準仕様について説明します。

  • 検索ペイン : 検索ペインに対して規定されている標準仕様について説明します。

  • モーダル ダイアログ ボックス : ビジネス デスク モジュールとフレームワークの両方で採用されているモーダル ダイアログ ボックスに対して規定された標準仕様について説明します。

  • 確認、警告、エラー ダイアログ ボックス : 確認メッセージに関して適用されている標準仕様について説明します。

  • 非同期動作 : ビジネス デスクにおける非同期動作の実装方法のさまざまな点について説明します。非同期動作が実装されているため、新しいモジュールをこのしくみにうまく統合できます。

  • エラー メッセージ : エラー メッセージに関して適用されている標準仕様について説明します。

  • 状態メッセージ : 状態メッセージに関して適用されている標準仕様について説明します。

  • モジュール間のリンク : 異なるモジュールに属する操作間の直接リンクに関して適用されている規則について説明します。

  • ヘルプ トピック : ビジネス デスクに組み込まれているオンライン ヘルプ システムの動作について説明します。新しいモジュール用のヘルプ トピックの作成方法、およびそのヘルプを既存のシステムに統合する方法についても説明します。


コーディング方法

次のリストは、Commerce Server ビジネス デスクの開発において、従うべきコーディング標準仕様をまとめたものです。

  • 変数に対しては、ハンガリアン命名規約に従います。

  • ファイルの名前付け規則に従います。

  • コード内に、わかりやすくて詳しいコメントを挿入します。

  • インクルード ファイルの使用は最小限に抑えます。

  • すべての HTML を、HTML 検証ツールを使って検証します。

  • すべての HTML 要素 ID を一意にし、すべて小文字にします。

  • BDHeader.asp ファイルをインクルードすることで、共通のページ特性を規定します。

  • 各クライアント スクリプト ブロックの先頭で、"Option explicit" を指定します。

  • 適切に、"Request.Querystring" と "Request.Form" を使います。

  • VBScript 関数の定義内で、ByRef と ByVal を明示的に指定します。

  • 1 ページあたりのクエリ数を、最小限に抑えます。

  • わかりやすくするため、記号定数を使います。

  • スクリプト言語は、ページごと (ASP) および要素ごと (DHTML) に指定します。

  • HTML 要素名と属性、および定数名は、すべて大文字で始めます。

  • スクリプト コードでは、小文字または大文字と小文字を組み合わせます。

  • 各ページで main 関数を使うことで、ページのグローバルな使用や、インラインで実行されるスクリプトの使用を最小にします。


フォントと配色

Commerce Server で使われるフォントと配色は、カスタマイズ可能なスタイル シート (CSS) 内で定義されています。このため、この点に関するビジネス デスクの外観と操作性は、集中的に変更できます。主要な CSS ファイルの名前は Bizdesk.css で、これはビジネス デスクのルート フォルダである Include フォルダにあります。

ナビゲーション ペイン用には、Navtree.css という名前の別の CSS ファイルがあります。

整合性を保つため、新しいモジュールは Bizdesk.css ファイルに定義されているフォントと配色に従ってください。そうすると、後で変更を加えた場合に、それがビジネス デスク全体に均一に適用されるようになります。

ビジネス デスクで使われる CSS ファイルの詳細については、「スタイル シート リファレンス」を参照してください。


アイコン

モジュール構成ファイル内で指定されているすべての操作ページには、関連付けられたタスクが数多くあります。この関連付けを基に、Commerce Server ビジネス デスク フレームワークは、適切なタスク バー (ビジネス デスクのヘルプ内ではツール バー) を編成して表示します。タスク バーの外見上で最も目立つものは、実行可能なさまざまなタスクを表すアイコンです。これらのアイコンは、モジュール構成ファイル内で task 要素の icon 属性の値として指定されています。指定される値は、パスを含まないファイル名です。このファイルは、ビジネス デスクのルート フォルダの下の Assets フォルダにあり、通常は GIF ファイルを指定します。

Assets フォルダには、既存のモジュールで使われる、あらかじめ定義されたアイコン ファイルが非常に数多く格納されていて、新しいモジュールで使うことができます。これらのファイルのほとんどは、次のページに進むためのタスクを表しています。アイコン ファイルの名前は、taskTYPE.gif という形式でタスクに関連付けられています。ここで、TYPE は対応するタスクを表す短い文字列です。たとえば、エクスポート タスクに関連付けられたアイコン ファイルの名前は taskExport.gif です。

また、複数の選択肢があるタスクで使うためのアイコンもいくつかあります。これらの選択肢は、タスク ボタンをクリックしたときにドロップ ダウンされる、メニューの形式で提供されます。これらのアイコンには、すべて下向きの矢印が含まれていて、選択用のメニューが表示されることがユーザーにわかるようになっています。この種類のアイコン ファイルの名前は taskTYPEMenu.gif という形式になっています。ここで、TYPE は対応するタスクを表します。たとえば、新規作成メニュー (タスク) に関連付けられたアイコン ファイルの名前は taskNewMenu.gif です。

注

  • タスク 1 つに対してアイコン ファイルは 1 つだけで、異なる状態のボタンの表示 (有効、無効、クリックされている) は、フレームワークとカスタマイズ可能なスタイル シート (CSS) によって制御されます。

あらかじめ定義されたアイコン ファイルとは別に、新しいアイコン ファイルを Assets フォルダに格納し、それを新しいモジュール構成ファイルで参照することも可能です。ただし、整合性を保つため、特に必要のない限り、あらかじめ定義されたアイコンを使ってください。

新しいアイコンを作成する必要がある場合、タスク アイコンのサイズは高さ 22 ピクセル、幅 23 ピクセルにしてください。タスク メニュー アイコンのサイズは、高さ 22 ピクセル、幅 33 ピクセルです。

モジュール開発者が直接使うことのないアイコンも、Assets フォルダにはあります。そのようなアイコンとしては、エラーの重要度レベルに応じてエラー ダイアログ ボックスで使われるアイコン、入力が無効か必須かを表すアイコン、ページの読み込み中に表示されるアニメーション アイコンがあります。


ユーザー補助機能

Commerce Server ビジネス デスク フレームワークおよびモジュールは、一定のガイドラインに従って、障害を持つユーザーがビジネス デスクにアクセスできるようにしています。フレームワークおよび既存のモジュールとの整合性を保つため、新しいモジュールも Web アプリケーションに対するユーザー補助機能のガイドラインに従う必要があります。ユーザー補助機能のガイドラインの詳細については、http://www.microsoft.com/japan/developer を参照してください。

ガイドラインの例を、次に示します。

  • ブラウザにグラフィックを表示しない状態でも、ビジネス デスクが正しく動作する必要があります。

  • Internet Explorer でカスタム フォントとフォント サイズが構成されていても、ビジネス デスクが正しく動作する必要があります。

設計上で考慮すべき点としては、次のものもあります。

  • 色だけで視覚的な判別をするようにはしないでください。

  • 微妙な色の違いは避けてください。コントラストが強い方が使いやすくなります。

  • Tab キーでページ内の別のフィールドへ移動するなど、キーボード オプションを提供してください。ページ上に表示されているすべての要素に、Tab キーで移動できるようにしてください。

  • 可能な限り、水平スクロールを避けてください。

  • 可能な限り、スクリーン リーダーを利用できるようにしてください。つまり、表とグラフィックには、その目的を説明したテキストを対応させ、コンテンツをある程度詳しく記述する必要があります。


ローカライズ

Commerce Server 2000 に付属する Commerce Server ビジネス デスク フレームワークとビジネス デスク モジュールは、ビジネス デスクを外国語に翻訳するコストが最小限になるような方法で設計されています。新しいビジネス デスク モジュールを開発する状況によっては、Microsoft の開発者が使っている一般的なガイドラインを適用するのも良い方法です。

これらのガイドラインを、次に列挙します。

  • ナビゲーションは、ページの左上に配置します。

  • コントロールを水平方向にグループ化することは避け (タスク ボタンを除く)、ローカライズによる拡張で表示が乱れないようにします。

  • すべてのページに組み込まれるビジネス デスク固有の 2 つのインクルード ファイルで、正しいコード ページと応答文字セットを指定します。コンテンツ ペインに HTML を表示する通常のモジュール ページは、インクルード ファイル BDHeader.asp を変更して正しいコード ページを使うようにします。XML 以外は返さないように設計されたモジュール フェッチ ページは、インクルード ファイル BDXMLHeader.asp を変更して正しいコード ページを使うようにします。

  • 各モジュールには <ModuleName>Strings.asp という名前のファイルが必要です。このファイルでは、ローカライズ可能な文字列が VBScript 定数として定義されています。これらの文字列を表示するすべての操作ページに、このファイルを組み込み、その定数名を使って文字列を参照します。文字列のハード コードは避けます。

  • サブ文字列から文字列を作成することは避けてください。主語、述語、目的語の順序は言語によって異なります。必要に応じて、ローカライズを簡単にするためにフレームワーク ルーチン sFormatString を使います。

  • ローカライズ時に文字数が増えることがあるため、フォーム内にその余地を作っておきます。

  • テキストが含まれたイメージを使わないでください。

  • 操作ページに、SQL の列名を表示しないでください。ローカライズできません。表示名は、ほかのしくみで作成できます。

  • ほかのメッセージ内で、ファイル名の一部を表示しないでください。


タイトル バー

タイトル バーは、現在のモジュールと操作ページに関する情報の表示に使われます。タイトル バーのテキストには、次の形式を使います。

モジュール タイトル - [操作] [オプション]


タスク バー

タスク バーの規則は、次の 2 つのカテゴリに分類できます。

  1. タスク ボタンを左から右へ並べるための規則

  2. さまざまな種類のタスクの状態が、有効か無効かを処理するための規則としくみ

タスク ボタンの順序

一覧ページでは、タスク バーにタスクを左から右に向かって並べます。順序は次のとおりです。

  1. 選択を必要としない各項目のタスク。たとえば、[表示]、[新規作成]、[作成] があります。

  2. 選択が必要な各項目のタスク。たとえば、[開く]、[実行]、[プレビュー]、[詳細表示] があります。組になったタスクも、このカテゴリに入ります。たとえば、[削除/復元] および [アーカイブ/アーカイブ解除] があります。

  3. 一覧全体を操作するタスク。たとえば、[発行]、[最新の情報に更新]、[検索] があります。

  4. 疑問がある場合は、Commerce Server に付属するモジュールを例として使ってください。

編集ページでは、タスクを次の順序で並べます。

[Back] [SaveBack] [Save] [SaveNew]

タスクを有効/無効にする

新規作成タスクと検索タスクは、フレームワーク ルーチン OnLoad によって自動的に有効になります。新規作成タスクのメニューを使う場合は、モジュール ページで各メニュー項目を有効、または無効にする必要があります。

SetDirty、SetRequire、および SetValid メソッドによってそれぞれ処理される OnChange、OnRequire、および OnValid イベントを持つ最上位 (マスタ) EditSheet HTC が 1 つある場合は、Save タスクと SaveNew タスクは自動的に管理されます。一般的に、Save タスクと SaveNew タスクが有効になるのは、変更があり、必要なデータに不足がなく、無効なデータがない場合です。

OnTask ルーチンがキャンセルされ、フォームが送信されなかった場合、タスクを再び有効にする必要があります。

開く、コピー、および削除の各タスクが有効になるのは、それぞれの操作がサポートする項目が選択された場合だけです。項目が選択されたかどうかに依存するタスクは、すべてこれと同様の動作になります。

編集ページのBack タスクは、必ずフレームワークによって有効にされます。

常に利用可能なタスクは、OnLoad ルーチンで有効にされ、OnTask ルーチンがフォームを送信しなかったときも有効にされます。


ListSheet

新しいモジュールが、一覧ページで ListSheet HTC を使う場合は、次のガイドラインに従ってください。

  • 1 つの列しか含まれない ListSheet は、順序を変更できないため、並べ替えができないようにします (sort='no')。

  • 検索ペインで指定された条件に従って、一覧をフィルタ処理して表示する ListSheet には、次のラベル (対象となる ListSheet の上に配置) が付き、フィルタ処理した一覧が表示されていることをユーザーに知らせる必要があります。

    フィルタ ビュー (フィルタ処理の条件を変更するには検索コマンドを使います)

    このラベルには、ヒントが必要です。フィルタ処理された一覧の基になっている基準を、ヒントで表示します。


EditField

新しいモジュールが、一覧ページで EditField HTC ペインを使う場合は、次のガイドラインに従ってください。

  • Editfield 入力プロンプトには、既定のプロンプトがわかりにくいか、十分な情報が伝わらない場合を除いて、そのフィールドの既定のものを使います。たとえば、名前フィールドが既定の "テキストを入力する" プロンプトであっても問題ありませんが、パスワード フィールドや電子メール アドレスを含むフィールドは特定のものである必要があります。

  • 必須フィールドには、その左に小さな赤いひし形を表示します。これは、どのフィールドが必須でどのフィールドが必須でないかをユーザーに知らせるために使える、主要な方法です。


検索ペイン

新しいモジュールが、一覧ページで検索ペインを使う場合は、次のガイドラインに従ってください。

  • 一覧ページで最初に空の一覧が表示される場合は、最初から検索ペインを表示します。サイズ上の問題で一覧全体を表示することが難しい場合、この方法がよく使われます。検索ペインの表示について詳しくは、「ShowFindBy (クライアント側)」を参照してください。

  • 一覧ページに最初からデータの一覧が表示される場合は、最初は検索ペインを非表示にします。検索ペインの非表示について詳しくは、「HideFindBy (クライアント側)」を参照してください。

  • 検索ペインの入力プロンプトには、既定のプロンプトがわかりにくいか、十分な情報が伝わらない場合を除いて、そのフィールドの既定のものを使います。たとえば、名前フィールドが既定の "テキストを入力する" プロンプトであっても問題ありませんが、パスワード フィールドや電子メール アドレスを含むフィールドは特定のものである必要があります。

    ドロップダウン リストの場合は、既定のプロンプトを使います。または、既定の選択肢を指定して、プロンプトをまったく表示しないようにします。

  • ワイルドカード文字の使用がサポートされている検索ペインのフィールドには、下部の行にそのことを表示します。次のような文を表示します。

    <field name> フィールドでは、ワイルドカード文字 (*) を使えます。

  • 検索ペインに複数のグループの検索フィールドがあって、それぞれの表示と非表示が選択によって制御される場合、通常は [すべて検索] ボタンを用意して、データにアクセスしやすくします。ユーザーが変更しない限り、[すべて検索] を既定にします。一覧の全体のサイズが大きすぎて、[すべて検索] ボタンを使えない場合もあることに注意してください。

  • 検索ペインの検索フィールドのグループが 1 つだけの場合は、プロパティを変更しても非表示にできないため、そのフィールドの既定値は最も一般的な値にしておくと、ユーザーにとって便利です。

  • 検索ペインに多数のオプションがある場合は、[リセット] ボタンを用意して、検索条件を簡単に元に戻せるようにします。


モーダル ダイアログ ボックス

Commerce Server ビジネス デスクでは、モーダル ダイアログ ボックスを使って、1 つ以上の選択肢をユーザーに提供します。1 つの例として、モーダル ダイアログ ボックスは、あるページから別のページへ移行するときや、同じページ内で別のタスクへ移行するときに使えます。選択に応じて、ユーザー表示されるページが変わったり、さまざまな方法で既定値が提供されたりします。

タスク ボタンをクリックしたときに、簡単な選択が必要な場合は、モーダル ダイアログ ボックスを表示するよりもタスク メニューを使うことをお勧めします。タスク メニューの詳細については、「タスク ボタンとメニュー」を参照してください。

ビジネス デスクでモーダル ダイアログ ボックスを使うことが適している状況を、すべて予測することは不可能です。Commerce Server 2000 に付属するモジュールでのモーダル ダイアログ ボックスの使用方法を調べて、それに従うようにしてください。

整合性を高めるには、既存のモジュールのモーダル ダイアログ ボックスで使われている次のような規則を、新しいモジュールに対して作成するモーダル ダイアログ ボックスでも使ってください。

  • すべてのモーダル ダイアログ ボックスの背景色は、ビジネス デスクで使われている背景色と同じにします。ビジネス デスクのカスタマイズ可能なスタイル シート (CSS) を使うと、これが自動的に行われます。

  • モーダル ダイアログ ボックスのすべてのテキストは、フォントを 8 ポイントの MS UI Gothic にします。

  • ダイアログ ボックス下部に並んでいるすべてのボタンは、左端までの幅の広いセルを持った表に含めることで、右寄せします。また、その順序は Win32 アプリケーションの通常の順序と同じにします。
    <table width=100%><tr>
<td width=100%></td>
<td><button…><button…><button…></td>
</tr></table>


確認、警告、エラー ダイアログ ボックス

確認、警告、およびエラー ダイアログ ボックスは、次の規則に従う必要があります。

  • すべての警告メッセージは、タイトル テキストが "警告" に設定されているメッセージ ボックスに表示します。利用できる唯一のボタンは [OK] ボタン (vbOKOnly) です。

  • すべてのフィールド検証エラーは、タイトル テキストが "検証エラー" に設定されているメッセージ ボックスに表示します。利用できる唯一のボタンは [OK] ボタン (vbOKOnly) です。

  • 通常、クロス フィールド検証は、関連するすべてのフィールドに対して onChange イベントを使って行います。たとえば、終了日を開始日よりも後にするには、両方のフィールドに onChange イベント ハンドラを追加して、両方のフィールドが有効なこと、終了日が開始日よりも後になっていることを検証します。後になっていない場合は、それを示すメッセージ ボックスを表示します。

  • フィールド検証以外のエラーは、すべて ShowErrorDlg ルーチンを使って表示します。サーバー側エラーは、SetError ルーチンを呼び出すと、次のページに表示するために保存できます。これらのルーチンの詳細については、「ShowErrorDlg (クライアント側)」および「SetError (サーバー側)」を参照してください。

  • 削除確認ダイアログ ボックスは、タイトル テキストが "削除しますか?" に設定されているメッセージ ボックスに表示します。このダイアログ ボックスでは、[はい] ボタンと [いいえ] ボタン (vbYesNo) を使います。復元やほかの類似の操作の確認ダイアログ ボックスでも、同じ処理をします。

  • SharedStrings.asp ファイルには、こうした種類のダイアログ ボックスで使う文字列定数が、数多く定義されています。

  • 簡単な確認、警告、およびエラー ダイアログ ボックスのユーザー インターフェイスの整合性を高めるには、showModalDialog ルーチンの第 1 引数として、ASP ファイルの dlg_confirm.asp、dlg_warn.asp、および dlg_error.asp をそれぞれ使います。

    これらのファイルは、Include フォルダにあります。使用例については、ActionPageUtil.asp ファイルを参照してください。

正しく作成された編集ページでは、Save タスクおよび SaveNew タスクの有効/無効状態、および上書き保存の確認と警告ダイアログ ボックスを、フレームワークが処理できます。この動作にするには、次のことに従う必要があります。

  • マスタ EditSheet HTC を 1 つだけ使って、ページにすべての編集コントロールを格納します。

  • 次のハンドラを、マスタ EditSheet HTC イベントに関連付けます。
    • onChange イベントに SetDirty メソッド

    • onRequire イベントに SetRequired メソッド

    • onValid イベントに SetValid メソッド

    追加機能が必要な場合は、イベント ハンドラ内でこれらのルーチンのいずれかを、必要に応じて呼び出すようにしてください。

  • ページ上でネストした EditSheet HTC が、任意の形式のレイアウトのテンプレート メカニズムを使う場合は、テンプレート内のすべての HTC の ID を、template 要素の register 属性に登録します。

  • HTML チェックボックスおよびラジオ ボタンの要素では、onChange イベントが起動されないため、特殊な処理が必要です。これは、これらの要素を template 要素の register 属性に登録できないということです。HTML チェックボックスおよびラジオ ボタンの要素には、各要素に対して、SetDirty メソッドを onClick ハンドラとして明示的に呼び出します。

  • 編集ページが正しく作成されていると、ページに変更が加えられ、すべてのフィールドが有効であり、必須フィールドがすべて指定されない限り、[Save] および [SaveNew] ボタンは有効になりません。特殊なクロス フィールド検証は、個別に実行する必要があることに注意してください。


非同期動作

Commerce Server ビジネス デスク モジュールは、ビジネス デスクが動作しているかどうかを、ユーザーに知らせる必要があります。そのためには、完了までに時間のかかる操作は非同期的に実行し、操作が開始されて実行中であることをユーザーに知らせるフィードバックが必要です。

完了までに 10 秒以上を要する操作では、"読み込んでいます... お待ちください" という状態メッセージを表示する、中間ページを用意してください。このページは、ページを最初に読み込んだとき、および ListSheet HTC が XMLHTTP を使ってフェッチ操作を実行しているときに、自動的に表示されます。

カタログのインポートやエクスポート、レポートの生成など、完了までに 1 分以上かかる操作は、完全に非同期的に実行されるよう設計してください。このような操作は、サーバー上で別プロセスとして実行すると、ビジネス デスクのユーザーが同時に別のタスクを実行できるようになります。ユーザーには処理の開始を知らせ、このような実行時間の長い操作すべての完了状態を、ユーザーが参照できるページを用意する必要があります。


エラー メッセージ

Commerce Server ビジネス デスクでは、すべてのビジネス デスク モジュールによって、集中化された一連の表示用エラー メッセージが使われます。このようなエラー メッセージは、ビジネス デスク モジュールのコード内で発生したエラーに対して使われ、HTTP エラーへの応答には使われません。通常、モジュールには独自に固有のエラー メッセージも定義されていて、共通の表示用エラー メッセージでは不十分な場合に使われます。

表示用エラー メッセージはテキスト文字列として (strFriendlyError パラメータに格納して)、SetError および ShowErrorDlg ルーチンに渡されます。

サーバー側の表示用エラーメッセージは、MessageManager オブジェクトを通じて利用可能で、アプリケーションの起動時に初期化されてから (Global.asa)、Application オブジェクトに格納されます。クライアント側の表示用エラー メッセージは XML ドキュメント オブジェクト モデル (DOM) を通じて利用可能で、ビジネス デスク フレームワークの初期化時に DOM に追加されます。これらのしくみを使うと、すべてのモジュール作成者が同じ共通のエラー メッセージにアクセスできます。

集中化されたものと非公開のもの、両方の表示用エラー メッセージとは別に、エラー表示用のルーチンにも詳細情報を格納できます。最初、詳細情報はエラー ダイアログ ボックスで非表示になっていますが、[詳細] ボタンをクリックすると表示されます。

詳細エラー情報は、あらかじめ書式設定された HTML が格納された文字列として (strErrorDetails パラメータに格納して）、SetError および ShowErrorDlg ルーチンに渡されます。strErrorDetails パラメータが空の場合は、ダイアログ ボックスに [詳細] ボタンが表示されません。

通常、HTML は列が 2 つあって、それぞれ名前と値が格納された小さな表を指定するよう書式設定されます。

クライアント側およびサーバー側のエラー書式設定ルーチンはいくつもあり、さまざまなエラー オブジェクトを対応する HTML 表に変換するよう設計されています。たとえば、クライアント側ルーチンの sGetScriptError は、グローバル VBScript の Err オブジェクトの内容を HTML 表に書式設定し、それを文字列として返します。

ビジネス デスク フレームワークには、クライアント側として 2 つ、サーバー側として 4 つのエラー書式設定ルーチンが用意されています。これらは、ADO、ASP、VBScript、および XML 解析エラーの書式設定に役立ちます。

サーバー側エラー書式設定ルーチン

sGetADOError (サーバー側) | sGetScriptError (サーバー側)
sGetASPError (サーバー側) | sGetXMLError (サーバー側)

クライアント側エラー書式設定ルーチン

sGetScriptError (クライアント側) sGetXMLError (クライアント側)

サーバー側ルーチンの SetError は、パラメータを Session オブジェクト内にキャッシュし、次回タスク バー挿入ルーチンが呼び出されたときに、そのパラメータがクライアントに表示されます。SetError ルーチンは、エラーを Microsoft Windows NT イベント ログにも追加します。

ビジネス デスクの HTTP エラーの処理方法は異なり、カスタム エラー ページを表示します。このページには、元のインターネット インフォメーション サービス (IIS) のエラー テキストが含まれますが、ビジネス デスクの画像が含まれたページに表示されます。既定では、IIS によってレポートされるすべての HTTP の "ページが見つかりません" および "アクセスが拒否されました" というエラーが、この標準的な方法で処理されます。

HTC は、属性やタグが不足している XML 構成の入力をうまく処理します。XML に問題があることが原因で、HTC の初期化時にエラーが発生した場合は、コントロールが表示されず、"コントロールを読み込めませんでした。システム管理者に連絡してください" で始まる標準的なエラー メッセージが、標準メッセージ ボックスに表示されます。コントロールの障害の原因となった XML エラーの詳細を、ユーザーが確認するためのボタンも表示されます。

通常、データ検証エラー チェックが実行され、データの編集に使用中の HTC に適切なエラーが表示されます。クロス フィールド検証などの追加の検証エラー メッセージは、Internet Explorer の Document Object Model (DOM) の標準 MsgBox 関数を使って表示します。

ListSheet HTC は、フェッチ ページから返されるエラーが、HTTPXMLUtil.asp ファイル内の AddErrorNode ルーチンによってエラー ノードにエンコードされるものと見なします。そして、これらのエラーは ListSheet HTC によって、自動的にダイアログ ボックスに表示されます。


状態メッセージ

状態メッセージは、次のガイドラインに従う必要があります。

選択 :

  • 一覧で項目が 1 つ選択された場合、状態テキストは次のようになります。

    選択された itemtype : itemname

  • 複数の項目が選択された場合、状態テキストは次のようになります。

    number 個選択されました

  • [すべて選択] ボタンが使われた場合、状態は次のようになります。

    すべてのページのすべての項目が選択されました

  • 最後に選択された項目が選択解除された場合、状態テキストは次のようになります。

    項目が選択されていません

検索 :

  • 項目が見つからなかった場合、状態テキストは次のようになります。

    該当項目が見つかりません

  • 項目が 1 つ見つかった場合、状態テキストは次のようになります。

    1 個の項目が見つかりました

  • 複数の項目が見つかった場合、状態テキストは次のようになります。

    number 個の項目が見つかりました

削除 :

  • 1 つの項目が正常に削除された場合、状態テキストは次のようになります。

    削除された項目の種類 : itemname

  • 複数の項目が正常に削除された場合、状態テキストは次のようになります。

    number 個の項目が削除されました

  • 1 つの項目が正常に削除できなかった場合、状態テキストは次のようになります。

    削除できませんでした : itemname

  • 複数の項目を正常に削除できなかった場合、状態テキストは次のようになります。

    number 個の項目を削除できませんでした

これ以外の操作で一覧を再表示する場合は、削除操作で使うものに似た状態テキストを使います。こうした操作には、インポート、エクスポート、復元があります。


モジュール間のリンク

一般的に、あるモジュールに別のモジュールへの直接リンクが含まれている場合、そのリンクはタスク ボタンを使って実装する必要があります。たとえば、キャンペーン マネージャには、分析レポートにリンクされたタスク ボタンがあります。


ヘルプ トピック

ある操作ページのヘルプ トピックをモジュールで指定するには、ヘルプ トピックが含まれた HTML ファイルの名前を、対応するモジュール構成ファイル内の action 要素の helptopic 属性の値として指定します。このファイルは、docs/htm フォルダにある必要があります。

新しいヘルプ トピックを docs/htm フォルダに追加する場合は、docs フォルダの Bizdesk.hhc ファイルにも、対応するエントリを追加できます。そうすることで、新しいトピックがヘルプ システムの目次の特定の場所に表示されます。新しいトピックに関連する新しいインデックス エントリは、同じフォルダにある Bizdesk.hhc ファイルに追加できます。

注

  • .hhc ファイルと .hhk ファイルに追加する場合は、既存の目次とインデックス エントリに影響を与えないよう、十分に注意してください。

ダイアログ ボックスでも、[OK] および [キャンセル] ボタンの右に配置したボタンを使って、ヘルプを表示できます。このボタンをクリックした場合、対象のヘルプ トピックが格納された HTML ファイルの名前で、OpenHelp ルーチンが呼び出されます。このファイルは、docs/htm フォルダにある必要があります。


ビジネス デスクの構成

Commerce Server ビジネス デスクでは、インスタンスごとに、異なるカテゴリとモジュールが含まれるよう構成できます。この構成は、各ビジネス デスク インスタンスに対して、異なる XML ファイル セットを使って行います。このファイル セットは、BizDesk.xml という名前の単一のマスター構成ファイルと一連のモジュール構成ファイルとで構成されます。モジュール構成ファイルの名前はさまざまですが、関連する特定のモジュールまたはカテゴリを示す名前になっています。この 2 種類のファイルの XML を組み合わせて、moduleconfig 要素を使った特定の構成が、マスター構成ファイルに作成されます。各構成は、それぞれ異なるモジュール構成ファイルを指定します。

複数のモジュールを 1 つのモジュール構成ファイルで定義することも、各モジュールを専用のモジュール構成ファイルで定義することもできます。また、この 2 種類を組み合わせることも可能です。

マスター構成ファイル内でのカテゴリの定義順序、モジュール構成ファイルによるモジュールの定義順序、およびモジュール構成ファイルがどのカテゴリに属するかを定義した順序によって、カテゴリとモジュールがナビゲーション ペインに表示される順序が決まります。

あるサイトに対するすべての構成ファイルは、マスター構成ファイルであってもモジュール構成ファイルであっても、そのサイトのルート フォルダの下の Config フォルダに格納されます。

ビジネス デスク アプリケーションの読み込み時に、マスター構成ファイルと関連するすべてのモジュール構成ファイルの情報をマージする Dictionary オブジェクト構造が、そのアプリケーションによって作成されます。また、この構造が Application オブジェクトに格納されます。次に、各ビジネス デスクのセッションごとに、現在のユーザーに定義されたロールに基づいて、この構造がフィルタ処理され、そのロールに対するカスタム ビジネス デスク ナビゲーション ツリーが作成されます。

注

  • マスター構成ファイルおよびモジュール構成ファイルに対して手動で行われた変更は、インターネット インフォメーション サービス (IIS) がリセットされるか、ビジネス デスク アプリケーションが再起動されるまで、ビジネス デスクに反映されません。

マスター構成ファイルおよびモジュール構成ファイルの詳しい構造については、次に示す XML リファレンスの各トピックに説明があります。

  • マスター構成ファイル

  • モジュール構成ファイル


ビジネス デスク内でのデータ操作

Commerce Server ビジネス デスクは、データ ドリブンな Web サイトの管理インターフェイスとして機能する、データ ドリブン アプリケーションです。Web サイトのユーザーが参照する Web サイト ページのコンテンツ中のデータのさまざまな項目を、確認および変更するための使いやすいしくみを提供します。通常、このデータは Microsoft SQL Server 2000 のデータベースおよび Active Directory のディレクトリに格納されますが、ほかの種類のデータベースのデータとして格納することも可能です。

ビジネス デスクのもう 1 つの重要な点は、Dynamic HTML （DHTML) および HTML コンポーネント (HTC) を利用していることです。これらの技術によって、通常の Web アプリケーションよりも Web ブラウザ内での対話性が高まり、データを強力に操作するために必要なサーバーのラウンドトリップ数が大幅に減少します。操作の対象となるデータは、ページ内で Web ブラウザに送信され、"XML データアイランド" という形式の Web ブラウザに渡されます。

XML データアイランドとは、xml 要素に含まれ、その要素の id 属性に関連付けられた値によって識別される、形成済みの XML セグメントです。データ自体は、XML 構造内に表現されます。XML の構造を制限するものは、XML 構文のルール、およびそれにアクセスするよう設計されたスクリプト コードによって適用される規則だけです。データのアクセスには、Document Object Model (DOM) の通常のしくみが使われます。このようなアクセスは、ビジネス デスク フレームワークに含まれる、さまざまな HTC 内で行われます。また、Web ページのクライアント側スクリプトでもアクセスできます。

ここでの説明の目的は、さまざまなビジネス デスク モジュールで採用されている代表的なしくみについて説明することです。このしくみによって、ビジネス デスク ユーザーは、Web サイトの変更時にサーバーのラウンドトリップ数を最小限に抑え、Web アプリケーションのパフォーマンス低下を防止できます。この機能を使うために必要な基本的な手順は次のとおりです。

  1. ビジネス デスク モジュールの Web ページ上の ASP コードによって、データベースからデータが取得されます。通常は、Active Data Objects (ADO) を使います。

  2. そのページの ASP コードによってフレームワーク ルーチンの 1 つが使われ、ADO から返された Recordset オブジェクトを XML データアイランドに変換します。

  3. Microsoft Internet Explorer 5.5 によってページがダウンロードされます。このページには、XML データアイランドと、それを対応する HTC にリンクするスタイル付き要素が含まれています。ExpressionBuilder、ListEditor、および DynamicTable を除く、すべての編集型 HTC には、フォーム要素が含まれ、これが取り込まれているフォームと一緒に自動的に送信されます。

  4. HTC は、Internet Explorer 5.5 内で実行されます。このとき、含まれている XML データアイランドが構成情報のソースおよび表示するデータのソースとして使われます。

  5. ユーザーはデータに変更を加え、最終的にその変更の保存を要求します。

  6. 変更は、HTML フォームを使って、ビジネス デスク モジュールの Web ページに戻されます。このページは、送信された変更を適切な ADO Recordset オブジェクト形式に変換し、ADO を使ってデータベースをこの変更で更新します。

以降では、これらのデータ操作の主要な点について説明します。

ここでは、次のトピックについて説明します。

  • XML データアイランド : ASP ページの XML データアイランドを使ってデータを HTC へ渡す方法、および XML データアイランドを作成するさまざまな方法について説明します。

  • データとメタデータ : ビジネス デスクのコンテキスト中でのデータとメタデータの違い、特に、ビジネス デスク フレームワークが提供する HTC のコンテキスト中での違いについて説明します。

  • データを取得する : サーバー側スクリプトからデータベースにアクセスするための、代表的なしくみについて説明します。

  • クライアント用データを入手する : Web ブラウザにダウンロードされたページ上で、ADO から返された Recordset オブジェクトを、XML データアイランドに変換する方法について説明します。

  • XML データのマージ : より複雑な形式の ListSheet HTC で使うため、XML データアイランドをマージする方法について説明します。

  • XMLHTTP 操作とフェッチ ページ : ListSheet HTC と TreeView HTC が使う特殊なしくみについて説明します。これは、新しいデータをブラウザに再読み込みせずに、サーバーから取得するために使います。

  • データの検証 : クライアント側スクリプトとサーバー側スクリプトの両方で採用されている、データ検証方法について説明します。

  • データの変更を保存する : 変更されたレコードを表すデータをサーバーへ返し、元のデータベースへ戻して保存する方法について説明します。


XML データアイランド

XML データアイランドは、Commerce Server ビジネス デスクの多くの ASP ページで使われている HTML コンポーネント (HTC) に、データを渡すために使います。XML データアイランドは XML で記述されたデータで、ASP ページに含まれる 2 つの異なる要素 (xml と script) のどちらかに関連付けられ、id 属性を使ってアクセスされます。データ自体は、多くの場合 ASP ページ自身に存在しますが、必須ではありません。

XML データアイランドは ASP ページ内に配置でき、ハード コードすることも、ASP スクリプトによってプログラムから生成することもできます。次の 3 種類のタグ付けメカニズムのどれかを使います。

  • xml 要素内 :
    <xml id='DataIslandID'>
    data-island XML can go here
</xml>
  • "text/xml" という値を持つ type 属性が含まれた script 要素内 :
    <script type='text/xml' id='DataIslandID'>
    data-island XML can go here
</script>
  • "xml" という値を持つ language 属性が含まれた script 要素内 :
    <script language='xml' id='DataIslandID'>
    data-island XML can go here
</script>

データアイランドを構成する XML データは、ASP ページ上で指定する必要がありません。XML データアイランドを ASP ページに埋め込むための上記のメカニズムで src 属性を使うと、データアイランドのコンテンツの取得先となるほかのファイルの URL を指定できます。次の 3 つのコードのどれもが、指定されたソース ファイルに含まれるデータアイランドの XML と結合して、有効な XML データアイランドを表します。

<xml    id='DataIslandID' src='XMLDataFileURL' />

または

<script id='DataIslandID' src='XMLDataFileURL' language='xml' />

または

<script id='DataIslandID' src='XMLDataFileURL' type='text/xml' />


データとメタデータ

Commerce Server ビジネス デスク モジュールのデータ操作に使われる HTML コンポーネント (HTC) は、Web ページ上にインスタンスを作成します。インスタンスは、そのページ上の要素 (通常は DIV 要素) に関連付けられた DHTML 動作として作成されます。この要素は HTC を含んでいるため、コンテナ要素と呼ばれます。コンテナ要素には、それに対して割り当てられた任意の属性があり、HTC 内のコードからアクセスできるようになっています。このような属性はコンテナ属性と呼ばれます。コンテナ要素に関連付けられているコンテナ属性を理解することは、ビジネス デスク フレームワークに付属する各 HTC を理解するうえで重要です。

ビジネス デスク HTC の共通なコンテナ属性値の型は文字列で、ドキュメント内の対応するデータアイランドの ID になっています。ほとんどのビジネス デスク HTC で使われる 2 つのコンテナ属性は、それぞれ XML データアイランドの ID を提供します。この ID の 1 つは、操作対象となる実際のデータが含まれたデータアイランドを参照し、データベース レコードのセットの XML 表現である標準形式で表現されます。もう 1 つの ID は、メタデータ (つまり、データに関するデータ) と呼ばれるものが含まれたデータアイランドを参照します。メタデータには、セットのレコード内の各フィールドに対して、データの型、列見出しに表示される名前などの情報が含まれています。また、多くの HTC のメタデータには、HTC 全体の表示と動作に影響を与えるグローバル構成情報も含まれています。

データアイランド内の特定のフィールドのデータと、ほかのデータアイランド内の同じフィールドに対応するメタデータは、XML 属性と要素を使って関連付けられます。メタデータ XML の属性によって、データが含まれる XML 内の対応する要素が識別されます。

次の表は、各ビジネス デスク HTC に関連付けられたコンテナ属性を示しています。DataID という名前のメタデータ コンテナ属性を除いて、すべてのデータ コンテナ属性およびメタデータ コンテナ属性には、対応する XML データアイランドの id 属性 (xml または script 要素の id 属性) の値と同じ値が割り当てられます。コンテナ属性 DataID は特殊で、対応する MetaXML コンテナ属性で指定されたデータアイランド内の、field 要素の id 属性と同じ値が割り当てられます。

HTC 名 | データ コンテナ属性 | メタデータ コンテナ属性 | そのほかのコンテナ属性
DynamicTable | DataXML | MetaXML | <none>
EditField | DataXML | MetaXML | <none>
EditSheet | DataXML | MetaXML | <none>
ExpressionBuilder | <none> | XMLCfgID | <none>
ListBox | <none> | <none> | <none>
ListEditor | DataXML | MetaXML | <none>
ListSheet | DataXML | MetaXML | <none>
QueryBuilder | <none> | XMLCfgID | AutoActivate
TreeView | DataXML | <none> | <none>

メタデータのデータアイランドの形式は、各 HTC ごとに異なります。これらの XML 形式の詳細については、「ビジネス デスクの XML 構造」を参照してください。

1 つの例外を除いて、DataXML コンテナ属性に関連付けられたデータアイランドは、現在使っている HTC に関係なく、標準形式になります。この標準形式、プログラムからのデータアイランドの作成、および階層化データを含んだデータアイランドの作成の詳細については、それぞれ「標準 XML のデータ レコード形式」、「クライアント用データを入手する」、および「XML データのマージ」を参照してください。

標準形式を使わないものは TreeView HTC です。この HTC では、DataXML コンテナ属性に関連付けられたデータアイランドが、完全に異なる形式を持っていると見なされます。この形式の詳細については、「TreeView の構成」を参照してください。


データを取得する

一般的に、Microsoft Commerce Server 2000 に付属する Commerce Server ビジネス デスク モジュールは、ASP コード内で Active Data Objects (ADO) を使ってデータベースにアクセスし、関連する情報を ADO Recordset オブジェクトの形式で取得します。ビジネス デスクには、いくつかのグローバル変数とユーティリティ関数が用意されています。これらを使って、Commerce Server 2000 に付属するほとんどのビジネス デスク モジュールで使われている、ADO Connection オブジェクトおよびADO Command オブジェクトを作成します。これらの変数と関数は、ビジネス デスクのインクルード ファイル DBUtil.asp に定義されています。

インクルード ファイル DBUtil.asp には次の行が含まれており、ビジネス デスク モジュールと ASP ページで使われる、グローバル ADO オブジェクトの Connection と Command を定義しています。

Dim g_oConn, g_oCmd

インクルード ファイル DBUtil.asp では、oGetADOConnection ルーチンが定義されています。このルーチンのパラメータは、接続文字列だけです。このルーチンは、ADO Connection オブジェクトへの参照を返します。このオブジェクトは、接続とコマンドのタイムアウト時間が、それぞれ 15 秒と 30 秒になるよう初期化され、渡された接続文字列を使って開かれています。

インクルード ファイル DBUtil.asp では、oGetADOCommand ルーチンも定義されています。このルーチンのパラメータは、Connection オブジェクトとコマンドの種類です。このルーチンは、ADO Command オブジェクトへの参照を返します。このオブジェクトは、渡された接続とコマンドの種類を使うように初期化されています。通常、渡されるコマンドの種類は AD_CMD_TEXT で、これもこのファイル内に定義されています。

これら 2 つのルーチンを、ADO Recordset オブジェクトを作成するときと開くときに組み合わせると、クエリの結果を含んだ Recordset オブジェクトができあがり、XML データアイランドに変換できるようになります。Recordset オブジェクトから XML データアイランドへの変換の詳細については、「クライアント用データを入手する」を参照してください。次のスクリプトで使われる文字列 sYourConnectionString と sYourSqlQuery は、どこかで定義しておく必要があります。

Set g_oConn = oGetADOConnection(sYourConnectionString)
Set g_oCmd = oGetADOCommand(g_oConn, AD_CMD_TEXT)

Dim rsRecSet
g_oCmd.CommandText = sYourSqlQuery
Set rsRecSet = Server.CreateObject("ADODB.Recordset")
rsRecSet.Open g_oCmd, , AD_OPEN_KEYSET, AD_LOCK_PESSIMISTIC


クライアント用データを入手する

データは、Web ページ内で頻繁に、XML データアイランドの形式で Commerce Server ビジネス デスクの HTML コンポーネント (HTC) に渡されます。HTC がクライアント上で Internet Explorer 5 によって実行される場合、その HTC はビジネス デスクのユーザーのために、このデータをアクセスおよび表示できます。

XML データアイランドをページ上で作成する方法の詳細については、「XML データアイランド」を参照してください。

インクルード ファイル DBUtil.asp には、XML データアイランドを正しい形式で作成するためのルーチンが、いくつか定義されています。これらのルーチンは、周りを囲む xml 要素または script 要素とその属性を除いて、得られた XML をすべてページに書き込みます。xml 要素と script 要素の両方の id 属性は、データアイランドを使う HTC がそのデータアイランドを識別するために必要です。

インクルード ファイル DBUtil.asp には、ADO Recordset オブジェクトを HTC が解釈可能な XML データアイランドに変換するため、xmlGetXMLFromRS および xmlGetXMLFromRSEx という 2 つのルーチンが含まれています。また、同じ XML データアイランドを生成しますが、データベース接続とクエリの手順も含まれた、xmlGetXMLFromQuery および xmlGetXMLFromQueryEx という 2 つのルーチンも含まれています。これらの関数の詳細については、次を参照してください。

  • xmlGetXMLFromRS (サーバー側)

  • xmlGetXMLFromQuery (サーバー側)

  • xmlGetXMLFromRSEx (サーバー側)

  • xmlGetXMLFromQueryEx (サーバー側)

Microsoft Commerce Server 2000 の COM オブジェクトの多くは、特別に ADO Recordset オブジェクトを返すよう設計されているため、これらのルーチンの 1 つを呼び出すと、返されたオブジェクトを ASP ページ上で XML データアイランドに変換できます。

次のサンプル コードは、xmlGetXMLFromRS ルーチンの呼び出しを、ASP ページの xml 要素に記述する方法を示しています。このルーチンの呼び出しと、ほかの 3 つのルーチンの呼び出しは、1 つの xml 要素内に記述できます。また、適切な属性を含んだ script 要素内に記述し、XML データアイランドが含まれていることを識別することもできます。xml 要素または script 要素の id 属性である DataIslandID は、対応する HTC を含んだ DIV 要素の DataXML コンテナ属性に割り当てられます。

<xml id='DataIslandID'>
<%
    xmlGetXMLFromRS rsRecordset
%>
</xml>

HTC の観点から見ると、用意されたルーチンを使って XML データアイランドが生成されたことや、それが ADO Recordset オブジェクトから生成されたことは重要でありません。HTC にとって問題になるのは、XML データアイランドが決まっているとおりの形式になっていることだけです。このように設計されていると、データがどこから得られたものであるか、および正しい XML 形式に変換される前に、どうやって処理されたかという点に関して、大きな柔軟性が得られます。元のデータは、ページにハード コードされていても、XSL に変換されたものであってもかまいません。


XML データのマージ

ListSheet HTML コンポーネント (HTC) は、いくつかのモードでインスタンスを作成できます。これらのモードの多くでは、データが階層的に表示されるため、詳細を非表示にし、掘り下げて表示してから再び非表示にできます。この方法で操作すると、ListSheet HTC は対応する XML データアイランドで、データが階層的に表現されていると見なします。これは、2 つ (または 3 つ) の異なる 1 層の XML データアイランドをマージして、単一の 2 層 (または 3 層) のデータアイランドにすることで行われます。Commerce Server ビジネス デスク フレームワークで提供される次のルーチンは、この種類のデータのマージを実行します。

sMergeGroups2 (サーバー側) | sMergeGroups2 (クライアント側)
sMergeGroups3 (サーバー側) | sMergeGroups3 (クライアント側)
xmlMergeGroups2 (サーバー側) | xmlMergeGroups2 (クライアント側)
xmlMergeGroups3 (サーバー側) | xmlMergeGroups3 (クライアント側)
 | xmlMergeGroupsByID2 (クライアント側)
 | xmlMergeGroupsByID3 (クライアント側)

次の例は、XML データのマージが 2 レベルのものに対してどのように行われるかを示しています。3 レベルのマージも、概念上は同じです。次の 2 つのレコードの XML 表現は高レベルの情報と見なされます。この場合は、個人の名前と年齢が含まれ、ListSheet HTC のグループ行に表示されます (userid は非表示になるよう構成されています)。

<xml id=master>
    <document recordcount=2>
        <record>
            <name>David</name>
            <age>39</age>
            <userid>dav001</userid>
        </record>
        <record>
            <name>Sarah</name>
            <age>33</age>
            <userid>sar015</userid>
        </record>
    </document>
</xml>

次の 3 つのレコードの XML 表現は詳細情報と見なされます。この場合は、上の XML 構造内の個人の子供の名前と年齢が含まれています。この情報は、ListSheet HTC の詳細行に表示されます (userid は非表示になるよう構成されています)。

<xml id=detail>
    <document recordcount=2>
        <record>
            <userid>sar015</userid>
            <name>Jennifer</name>
            <age>6</age>
        </record>
        <record>
            <userid>sar015</userid>
            <name>Thomas</name>
            <age>3</age>
        </record>
        <record>
            <userid>dav001</userid>
            <name>Lilly</name>
            <age>10</age>
        </record>
    </document>
</xml>

さまざまな MergeGroups ルーチンを使うと、2 セットまたは 3 セットの XML レコードを結合でき、2 レベルまたは 3 レベルの ListSheet HTC での使用に適した、2 層または 3 層の XML レコードが得られます。上の 2 つの XML 構造が、それぞれ変数 xmlMaster および xmlDetail から参照される 2 つの XML ドキュメント オブジェクトで表現されている場合、次のルーチンを呼び出すと、この 2 つをマージできます。マージされた XML は、文字列変数 sMerged に格納されます。

sMerged = sMergeGroups2(xmlMaster, xmlDetail, "userid")

フィールド要素名 userid はキーとして渡されます。このキーは、両方のレコード セット内に存在する要素である必要があります。マスター セット内のレコードと詳細セット内のレコードが、指定された要素に対して同じ値を持っていることがわかった場合、2 つのレコードはできあがったセット内でマージされます。マスター レコード要素はできあがったレコードの第 1 層に含まれ、詳細レコード要素は第 2 層に含まれます。

次の XML 表現は、上の 2 つのセットのレコードを組み合わせた結果を示しています。マージ後の第 2 層フィールドは、太字で示してあります。キー要素は、少なくともできあがったレコードの両方の層に含まれることに注意してください。

<xml>
    <document recordcount=2>
        <record>
            <name>David</name>
            <age>39</age>
            <userid>dav001</userid>
            <record>
                <userid>dav001</userid>
                <name>Lilly</name>
                <age>10</age>
            </record>
        </record>
        <record>
            <name>Sarah</name>
            <age>33</age>
            <userid>sar015</userid>
            <record>
                <userid>sar015</userid>
                <name>Jennifer</name>
                <age>6</age>
            </record>
            <record>
                <userid>sar015</userid>
                <name>Thomas</name>
                <age>3</age>
            </record>
        </record>
    </document>
</xml>


XMLHTTP 操作とフェッチ ページ

ListSheet および TreeView HTML コンポーネント (HTC) は、フォームがサーバー上の特殊な種類のページに送信される場合の、特殊なクラスの操作をサポートしています。この種類のページは、"フェッチ ページ" と呼ばれます。フェッチ ページはこのような操作を処理するよう設計されていて、標準 XML データ形式のデータが含まれた XML ドキュメントとして、結果を返します。

返されるページには、XML データ以外はありません。返されるページのコンテンツの種類は、"text/xml" に設定されている必要があります。特に、各フェッチ ページには BDXMLHeader.asp ファイルが含まれている必要があり、このファイルによってコンテンツの種類などの標準的なページ特性が決定されます。このインクルード ファイルの一部の行をここに示します。1 行目用に 2 種類のフォームを示しています。2 行目ではノルウェー語 IA5 コードページを指定します (1 行目を実際のインクルード ファイルで重複させないでください)。

Line
   1    <%@ Language=VBScript %><%'@ Language=VBScript CodePage=1252 %><%
   1    <%'@ Language=VBScript %><%@ Language=VBScript CodePage=20108 %><%
   2
   3    ' switch the @ lines above to set a codepage
   4    ' that is different than the system locale
   5
   6    '   IE 5.5 supports the following settings for charset and codepage:
   7    '      (these are recommended though not all have been tested)
   8

このとき、BDXMLHeader.asp ファイルには、使用可能なコード ページの一覧が含まれています。詳細については、実際のファイルを参照してください。

   n
 n+1    Option Explicit
 n+2
 n+3    if not isEmpty(Application("MSCSPageEncodingCharset")) then _
 n+4               Response.Charset = Application("MSCSPageEncodingCharset")
 n+5    Response.AddHeader "Pragma", "no-cache"
 n+6    Response.ContentType = "text/xml"
 n+7    Response.Expires = -1
 n+8    Response.Buffer = true
 n+9    %><?xml version='1.0' encoding='<%= Response.Charset %>' ?>
n+10

返されるページのコンテンツの種類を "text/xml" に設定し、何も再表示することなく、ブラウザがデータを既存の一覧ページに渡すようにすることが重要です。XMLHTTP 操作のポイントは、ListSheet および TreeView HTC が一覧ページ全体を再読み込みしなくても、サーバーから新しいデータをフェッチおよび表示できることです。

ListSheet HTC が XML ドキュメントを送信すると、フェッチ ページは、dGetRequestXMLAsDict ルーチンを使ってこの XML 要求を Dictionary オブジェクトに変換し、送信されたフォームに含まれるさまざまな引数にアクセスします。次に例を示します。

set g_dRequest = dGetRequestXMLAsDict()
sOperation = g_dRequest("op")

フェッチ ページの構築で考慮すべき重要なもう 1 つの点は、インクルード ファイルに関するものです。ページによって返されるデータは純粋な XML でなければならないため、クライアント側スクリプトまたは HTML がこの XML を破損させ、無効にしてしまうことがあります。この理由でフェッチ ページにインクルードしてはいけないファイルの典型として、ActionPageUtil.asp ファイルがあります。

場合によっては、渡されたデータの一部またはすべてをフェッチ ページがフォーム引数として保存し、そのデータをセッションの残りの部分で、既定として利用することがあります。ASP Session オブジェクトは、この種類のデータを保存することがよくあります。この種類のデータの一般的な例には、検索ペインで使う検索条件があります。検索条件が Session オブジェクトに保存されていると、一覧ページの再表示が必要になった場合に (編集ページから戻ったときなど)、その条件を既定値として設定できます。


データの検証

Commerce Server ビジネス デスクの主要な目的の 1 つは、Web サイトがユーザーにどのように表示されるかを決定するデータの変更手段を、ビジネス マネージャに提供することです。このような変更では、既存のデータの変更、新しいデータの追加、古いデータの削除などが行われます。データの入力時には、さまざまな種類のエラーが発生する可能性があります。入力されたデータの種類が正しくなかったり、値の許容範囲を超えているなどです。新しいデータの作成時に、必要なデータの一部が不足していることもあります。また、レコード内のさまざまなフィールド間の依存関係という点に関して、フィールド間の整合性が保たれていない場合もあります。

エラーの種類によっては、一般的な方法で比較的簡単に検出および処理できるものもあります。そのようなエラーは、関連する HTML コンポーネント (HTC) で自動的に処理され、この処理はすべてクライアント側で行われます。このようなエラーには、次のものがあります。

  • 数値、日付、時刻の最小および最大許容値の実施。fields 要素の一部の種類の子要素の min および max 属性を使って、この制限を指定します。制限は、入力フィールドがフォーカスを失ったときに実施されます。

  • テキスト入力に対する最大長と最小長の実施。fields 要素の一部の種類の子要素の maxlen および minlen 属性を使って、この制限を指定します。制限は、入力フィールドがフォーカスを失ったときに実施されます。

  • 特定のパターンに一致する文字の実施。fields 要素の一部の種類の子要素の charmask 子要素を使って、このパターン制限を指定します。制限は、入力フィールドがフォーカスを失ったときに実施されます。

  • 特定の書式の実施。fields 要素の一部の種類の子要素の format 子要素を使って、この書式を指定します。これは、入力フィールドがフォーカスを失ったときに実施されます。Date 型とNumeric 型がサポートする書式は異なります。

  • 空ではない値が指定された必須フィールドの実施。fields 要素の一部の種類の子要素の required 属性を使って、この制限を指定します。制限は、ユーザーが変更をコミットしたときに実施されます。

この種類のエラーが検出されると、不正な値がサーバーに送信されて処理される前に、直ちにビジネス デスクのユーザーに通知されます。エラーはクライアント側のモーダル ダイアログ ボックスを使ってレポートされ、ビジネス デスクのユーザーに標準化されたエラー メッセージが表示されます。また、パターンが一致するエラーの場合は、そのパターンと一緒に XML 構成情報に指定されたカスタム エラー メッセージが表示されます。無効なデータのダイアログ ボックスが閉じられると、エラーの原因となったフィールドには、ビジネス デスクのユーザーの注意を引くためにマークが付けられます。

一部のデータ検証はさらに複雑で、カスタマイズされた方法でモジュールを使って処理する必要があります。通常はサーバー側で処理されます。このような検証には、レコード間の一意性検査やクロス フィールド検証があります。この種類のエラーが発生した場合、適切なエラー メッセージの表示、エラーがあったページの再表示、およびそのページの状態の復元は、そのモジュールが担当します。

クライアント側コードでクロス フィールド検証を実行する方法としてよく使われるのは、多くのビジネス デスク HTC で提供されている OnChange イベントをトラップする方法です。ユーザーは、OnChange イベントのハンドラ関数を作成できます。この関数では、たとえば、あるページのフィールド間の整合性検査を実行したり、ユーザーが指定した値をより適切な書式に変換したります。次の HTC が OnChange イベントをサポートしています。

  • DynamicTable

  • EditField

  • EditSheet

  • ListEditor


データの変更を保存する

データの変更を保存する状況で最もよくあるのは、変更されたと思われるレコードまたは一連のレコードを保存する場合や、1 つ以上のレコードを削除する場合です。一般的に、変更の保存には、新しいレコードの初めての保存、既存のレコードへの変更の保存、および一連のレコードへの類似の変更の保存があります。どの場合も、ユーザーがタスク ボタンを押すと、保存操作または削除操作が開始されます。

変更されたデータは、(GET メソッドではなく) POST メソッドを持つ HTML フォームを使ってサーバーへ送信され、保存されます。通常、このようなデータの変更の処理に使われる各サーバー側ページには、固有の HTML フォームが定義されており、ここにフォームと共に送信される引数を指定します。次の HTML コードは、このようなフォームの定義を示しています。

<FORM ID='memberchange' METHOD='POST'>
    <INPUT TYPE='hidden' ...>
    ...
    <INPUT TYPE='hidden' ...>
</FORM>

ACTION 属性は、Commerce Server ビジネス デスク フレームワークのタスクで使われるフォームに対して、通常は指定されません。その代わり、特定のフォームと、それを処理するよう設計されたページの関連付けが、モジュール構成ファイル内で行われます。フォームと、それを処理するよう設計されたページとの関連付けの詳細については、「モジュール構成ファイル」の「postto」を参照してください。

通常、フォームにはさまざまな編集型 HTC が含まれ、HTC が関連付けられている XML ノードと同じ名前を使って、それぞれが自動的に INPUT 要素を作成します。

フォームのそのほかの引数は、type 属性を "hidden" に設定した状態で、INPUT 要素として定義します。設定する必要のある、そのほかの重要な属性には次のものがあります。

  • id 属性。Document Object Model (DOM) を使っての要素へのアクセスを可能にします。

  • name 属性。フォームの送信時に、データの項目に関連付ける名前を指定します。

  • value 属性。既定があるものと見なします。

id 属性と name 属性には、同じ値を割り当てられます。

次の HTML コードは、ASP 変数で指定された既定値も含め、このようなフォーム内の代表的な INPUT 要素を示しています。

<INPUT TYPE='hidden' ID='expdate'
       NAME='expdate' VALUE='<%= DefaultExpDate%>'>

フォームの送信前に、モジュール コードが DOM を使って、INPUT 要素に (新しい) 値を割り当てることがあります。要素は id 属性を使って検索され、(新しい) 値がその要素の value 属性に割り当てられます。フォームに関連付けられたすべての入力要素に対して、このような値の変更が行われると、フォームを送信できるようになります。また、ASP Request オブジェクトを使って変更を処理するサーバー ページに対して、その値が利用可能になります。

フォーム内で非表示の値には、ListSheet HTML コンポーネント (HTC) のイベントの結果が設定されることがよくあります。たとえば、OnRowSelect イベントが発生すると、その選択のキー ID が非表示の入力フィールドに格納され、そのフォームがタスクによって送信されると、選択結果が編集ページに送られます。

タスク ボタンのクリック後、フォームが送信される前に、特殊なクライアント側の処理を実行しなければならない場合もあります。よくあるのは、追加する新しいレコードの種類の問い合わせや、変更操作や削除操作の確認など、ユーザーに追加情報を要求する場合です。このような処理は、ユーザーが操作しなくても、自動的に実行できる場合もあります。どのようなイベントでも、フォームと同時に異なるデータを送信する、異なるフォームを送信する、同じフォームを異なるページに送信して処理するなど、異なる処理手順が可能です。

この要件をサポートするため、FORM 要素に対して ONTASK 属性が定義されます。ビジネス デスク フレームワークによって処理される FORM 要素に対して ONTASK 属性が定義されている場合、フレームワークはその属性に対して与えられた値を実行しようとします。この値がルーチン名で、そのルーチンが必要な処理を実行する場合がよくあります。

次の HTML コードは、上と同じ FORM 要素を示していますが、今度は ONTASK 属性が定義されています。

<FORM ID='memberchange' METHOD='POST' ONTASK='OnMemberChange'>

ONTASK 属性が定義されていると、特殊処理が行われた後の送信を、実行されたルーチンが担当します。フォームは、そのフォームの submit メソッドを使って送信できます。

データの変更をデータベースに保存する最後の段階は、サーバー上の ASP コードで行われます。フォームはサーバー上の ASP ページへ送信され、通常はそのフォームにさまざまなデータのフィールドが含まれています。これらのフィールドは、ASP Request オブジェクトを使ってアクセスできます。このオブジェクトを使うと、サーバー側スクリプトはフォームによって送信されたデータを取得し、そのデータを Active Data Objects (ADO) Recordset オブジェクトに格納して保存します。

このフォーム内の情報には、フォームに含まれていた EditSheet のフィールドが、すべて含まれています。これには、すべての EditField および EditSheet 内のフィールドがあり、フォームと共に送信されます。

ただし、DynamicTable HTC および ListSheet HTC は、フィールドではなく XMLlist を返します。この XMLlist は、OnChange イベント オブジェクトのプロパティである XMLlist を使って取得され、非表示のフォーム フィールドに割り当てる必要があります。例については、送付ページを参照してください。


ビジネス デスクの HTML コンポーネント

Commerce Server ビジネス デスク フレームワークには、Commerce Server 2000 に付属するモジュールによって広範囲に使われる数多くの HTML コンポーネント (HTC) が含まれています。HTC は、Internet Explorer 5 でサポートされている DHTML 動作を実装する方法の 1 つです。Commerce Server に付属する HTC は、通常の Internet Explorer 5 の動作よりも複雑です。ビジネス デスク HTC は、サード パーティが開発した新しいビジネス デスク モジュールでの使用も目的としています。これによって、サード パーティでの新しいモジュールの開発作業が軽減されるだけでなく、拡張されたビジネス デスク全体で共通の外観が実現されるため、ビジネス デスクのユーザーにとってもメリットがあります。

ビジネス デスクに付属する各 HTC によって、特有のイベント、プロパティ、およびメソッドが一式定義されています。各 HTC は独特の書式を持っていて、構成データをその書式で受け取ります。構成データには、実際の Web サイトのデータだけでなく、コントロールの動作と表示の制御に使われる構成データも含まれます。また、各 HTC は ASP ページのスクリプト内で、少し変わった方法でインスタンスを作成します。詳細については、「HTML コンポーネント」の「ビジネス デスク リファレンス」を参照してください。

各 HTC は m_bDebug という名前の変数を持っており、これはその HTC のスクリプト コードが格納された HTC ファイルの先頭で定義されています。この変数が True に設定されている場合、モジュール開発中のデバッグを手助けするため、警告のエラー メッセージが表示されます。変数 m_bDebug が False に設定されている場合、警告が表示されずに、同じエラーが onError イベントに送られます。onError イベントは、トラップし、スクリプト コード内で処理することが可能です。

次の表は、ビジネス デスク フレームワークに付属する HTC を説明したものです。また、プログラマーズ リファレンスの詳細情報へのリンクも示してあります。

HTML コンポーネント | 説明
DynamicTable | 表形式のデータの編集が、表示されている列のみに制限されている場合に使います。
EditField | さまざまな種類のデータについて、個々の項目を編集するために使います。
EditSheet | データ編集に使われるコントロールをまとめるために使います。
ExpressionBuilder | 対象化のために使う、名前付き式を作成するためのコントロールについて説明します。ExpressionBuilder HTC では、埋め込み版の QueryBuilder HTC を利用します。
ListBox | 一覧間のコピーおよび移動操作に使います。
ListEditor | 表形式のデータの編集において、リストを含むテーブルの下にある個々のテーブルで、それぞれのレコードを編集する場合に使います。
ListSheet | レコードの一覧表示に使われ、1 つ以上の編集用レコードの選択が可能です。 この HTC は読み取り専用です。
QueryBuilder | 簡単なクエリの作成に使われます。
TreeView | XML 構造をツリー形式で表示するために使われます。

ListSheet HTC と TreeView HTC は独特で、どちらも対象となる HTC が含まれたページ全体を再読み込みすることなく、サーバーから追加の XML データを要求するしくみを提供しています。


ビジネス デスクのユーティリティ

Commerce Server ビジネス デスク フレームワークの重要な部分は、一連の定数、グローバル変数、およびユーティリティ ルーチンです。これらは、共有するコードの基礎を広範囲に提供し、Microsoft Commerce Server 2000 に付属するモジュールで使われます。また、新しいモジュールを開発するサード パーティが使うことも目的としています。

この共有コードは、モジュールの操作ページで指定されたインクルード ファイルという形式で、ビジネス デスク モジュールから使えるようになっています。含まれているのが、クライアント側スクリプトとサーバー側スクリプトのどちらか一方か、両方かなど、操作ページの特性に応じて、インクルードするインクルード ファイルが異なります。

さまざまなインクルード ファイル内の定数、グローバル変数、およびユーティリティ ルーチンの詳細については、以下のトピックで「ビジネス デスク リファレンス」を参照してください。

  • インクルード ファイル : 定数、グローバル変数、および多くのビジネス デスク フレームワークを構成するユーティリティ ルーチンが定義されているインクルード ファイルについて説明します。これらのファイルのそれぞれについて、どのようなときにインクルードし、どのようなときにインクルードしないかを解説しています。

  • 定数 : さまざまなビジネス デスク インクルード ファイルで定義されている、定数について説明します。クライアント側スクリプトとサーバー側スクリプトで使用可能な定数が、それぞれどれなのかについて定義します。

  • グローバル変数 : さまざまなビジネス デスク インクルード ファイルで定義されている、グローバル変数について説明します。クライアント側スクリプトとサーバー側スクリプトで使用可能なグローバル変数が、それぞれどれなのかについて定義します。

  • ユーティリティ ルーチン : さまざまなビジネス デスク インクルード ファイルで定義されているルーチンについて説明します。クライアント側スクリプトとサーバー側スクリプトで使用可能なルーチンが、それぞれどれなのかについて定義します。

    ユーティリティ ルーチンの大部分を目的別に分類した一覧を、次に示します。

操作ページ関連のルーチン:
ClearStatusText (クライアント側) | OpenHelp (クライアント側)
dGetAction (サーバー側) | SetPageTitleText (クライアント側)
HideStatusAnimation (クライアント側) | SetStatusText (クライアント側)
HideStatusLegend (クライアント側) | SetWaitDisplayText (クライアント側)
HideWaitDisplay (クライアント側) | ShowWaitDisplay (クライアント側)
一覧ページ関連のルーチン:
HideFindBy (クライアント側) | ShowFindBy (クライアント側)
InsertTaskBar (サーバー側) | ToggleFindBy (クライアント側)
SetFindByHeight (クライアント側) |
編集ページ関連のルーチン:
InsertEditTaskBar (サーバー側) | SetDirty (クライアント側)
OpenEditPage (クライアント側) | SetRequired (クライアント側)
ResetSaveBtns (クライアント側) | SetValid (クライアント側)
タスク ボタン関連のルーチン:
DisableTask (クライアント側) | EnableTask (クライアント側)
DisableTaskMenuItem (クライアント側) | EnableTaskMenuItem (クライアント側)
elGetTaskBtn (クライアント側) | SetTaskTooltip (クライアント側)
EnableAllTaskMenuItems (クライアント側) | ToggleTask (クライアント側)
EnableAllTasks (クライアント側) |
一般的なユーティリティ ルーチン:
AddClass (クライアント側) | nGetYear (クライアント側)
BDHALsizeButtons (サーバー側) | RemoveClass (クライアント側)
BDHALsizeSelects (サーバー側) | ReplaceClass (クライアント側)
bHasClass (クライアント側) | sFormatString (クライアント側)
bIsDate (クライアント側) | sFormatString (サーバー側)
dtGetDate (クライアント側) | sGetFormattedDate (クライアント側)
GetSiteConfigField (サーバー側) | sRelURL2AbsURL (サーバー側)
nGetDay (クライアント側) | xmlGetSiteTermsValue (クライアント側)
nGetMonth (クライアント側) |
状態保存のためのルーチン:
ClearTemp (クライアント側) | dSetServerState (クライアント側)
dClearServerState (クライアント側) | GetTemp (クライアント側)
dGetServerState (クライアント側) | SetTemp (クライアント側)
データ取得のためのルーチン:
oGetADOCommand (サーバー側) | xmlGetXMLFromQuery (サーバー側)
oGetADOConnection (サーバー側) | xmlGetXMLFromQueryEx (サーバー側)
rsGetRecordset (サーバー側) |
XML 変換のためのルーチン:
dDictFromXML (クライアント側) | xmlMergeGroups2 (クライアント側)
dDictFromXML (サーバー側) | xmlMergeGroups2 (サーバー側)
sMergeGroups2 (クライアント側) | xmlMergeGroups3 (クライアント側)
sMergeGroups2 (サーバー側) | xmlMergeGroups3 (サーバー側)
sMergeGroups3 (クライアント側) | xmlMergeGroupsByID2 (クライアント側)
sMergeGroups3 (サーバー側) | xmlMergeGroupsByID3 (クライアント側)
xmlGetXMLFromRS (サーバー側) | xmlXMLFromDict (クライアント側)
xmlGetXMLFromRSEx (サーバー側) | xmlXMLFromDict (サーバー側)
XML DOM ヘルパ関連のルーチン:
AddCDATANode (クライアント側) | AddItemNode (サーバー側)
AddCDATANode (サーバー側) | AddWarningNode (サーバー側)
AddErrorNode (サーバー側) | xmlGetXMLDOMDoc (クライアント側)
AddItemNode (クライアント側) | xmlGetXMLDOMDoc (サーバー側)
XMLHTTP 関連のルーチン:
dGetRequestXMLAsDict (サーバー側) | xmlPostFormViaXML (クライアント側)
xmlGetRequestXML (サーバー側) | xmlXMLFromForm (クライアント側)
エラー ルーチン:
SetError (サーバー側) | sGetScriptError (サーバー側)
sGetADOError (サーバー側) | sGetXMLError (クライアント側)
sGetASPError (サーバー側) | sGetXMLError (サーバー側)
sGetErrorById (サーバー側) | ShowErrorDlg (クライアント側)
sGetScriptError (クライアント側) | ShowXMLNodeErrors (クライアント側)


ビジネス デスクのソース コード

特定の Web サイトで使われているすべてのモジュールのソース コードは、ビジネス デスクのそのインスタンスの仮想ディレクトリに関連付けられたフォルダ (および、そのサブフォルダ) に用意されています。ソース コードは、新しいビジネス デスク モジュールを作成するときに、便利なモデルとして利用できます。

次の表では、ビジネス デスクの仮想ルート フォルダ内のフォルダと、ビジネス デスクで利用可能なさまざまなモジュールおよびビジネス デスク フレームワークを構成するそのほかのコードを関連付けています。新しいビジネス デスク モジュールの開発者は、作成しようとしているモジュールに似た機能を持つ既存のモジュールを分析し、そのモジュールからコードを "流用" すると便利です。

ビジネス デスク フォルダ モジュール (カテゴリ)、または内容
\analysis\
 レポート (分析)

完成したレポート (分析)

\application\
 データ コード (注文)
\assets\
 タスク ボタン用のモジュールで使われるものや、必須アイコンおよび無効アイコンなど、さまざまな GIF ファイルが格納されています。

icon_inventory.htm ファイルを参照すると、内容がわかりやすくまとめられています。

\AuthFiles\
 認証サービスに関連したファイルが格納されています。ビジネス デスク モジュールの開発とは関係ありません。
\Catalogs\
 カタログ デザイナ (カタログ) – Designer サブフォルダ

カタログ エディタ (カタログ) – Editor サブフォルダ

\catalogsets\
 カタログ セット (カタログ)
\common\
 さまざまなフォルダの複数のモジュールから使われる、共有ファイルが格納されています。
\config\
 ビジネス デスクの構成ファイルが格納されています。マスター構成ファイル、さまざまなモジュール構成ファイルがあります。
\docs\
 ビジネス デスクのヘルプ システムを構成するファイルが格納されています。各ヘルプ トピックは htm サブフォルダにあります。
\exprarch\
 ExpressionBuilder HTC と QueryBuilder HTC が正しく動作するために必要なファイルが格納されています。
\include\
 さまざまな種類のモジュール ファイルで使うための、ビジネス デスクのグローバル インクルード ファイルが多数格納されています。このフォルダ内のファイルの詳細については、「インクルード ファイル」を参照してください。

ほとんどのモジュール インクルード ファイルは、そのモジュールに関連付けられたフォルダに格納する必要があります。

\marketing\
 キャンペーン式 (キャンペーン)

キャンペーン マネージャ (キャンペーン)

リスト マネージャ (キャンペーン)

対象グループ (キャンペーン)

参照テーブル (キャンペーン)

\orders\
 バスケット マネージャ (注文)

注文状況 (注文)

\organizations\
 組織 (ユーザー)
\productionrefresh\
 発行 (カタログ)

トランザクションの発行 (注文)

キャンペーンの発行 (キャンペーン)

\Profiles\
 プロファイル デザイナ (ユーザー)
\segviewer\
 セグメント ビューア (分析)
\shipping\
 送付方法 (注文)
\tax\
 税率 (注文)
\users\
 ユーザー (ユーザー)

次の表では、Commerce Server のインストール先フォルダにある Widgets フォルダ内のフォルダと、ビジネス デスクで利用可能なさまざまな HTML コンポーネント (HTC) を関連付けています。

HTC (Widget) フォルダ 格納されているソース コード
\editHTC\
 DynamicTable HTC

EditField HTC (および、さまざまな種類の HTC)

EditSheet HTC

ListEditor HTC

\exprbldrHTC\
 ExpressionBuilder HTC

QueryBuilder HTC

\listHTC\
 ListBox HTC

ListSheet HTC

TreeView HTC

\OWC\
 Office Web Controls (OWC) 用の実行可能ファイル
\profile\
 ProfileDesigner HTC - ドキュメントがなく、サード パーティが使うことを目的としていません。


モジュール インストールの自動化

Commerce Server SDK には、新しいビジネス デスク モジュールのインストールの自動化を支援するよう設計された、COM オブジェクトが含まれています。これは、新しいモジュールを多数のビジネス デスクのインスタンスに追加しなければならない場合に便利です。この COM オブジェクトのソース ファイルは、<インストール フォルダ>\SDK\Samples\Management\Business Desk Installer にあります。

BizDeskModuleInstall オブジェクトは、C および C++ コードと、Visual Basic などのオートメーション クライアントの両方から呼び出し可能です。

このオブジェクトは、サイトにインストールされたアプリケーション一覧を判別するため、SiteConfig オブジェクトを使うことに注意してください。

BizDeskModuleInstall オブジェクトは外部から作成可能です。このオブジェクトは ProgID CommerceSDK.BizDeskModuleInstall を使って作成します。

このオブジェクトのタイプ ライブラリを作成すると、Microsoft Commerce Server 2000 SDK の BizDesk モジュール インストール タイプ ライブラリになります。DLL 名は BizDeskModuleInstall.dll です。

BizDeskModuleInstall オブジェクトは、次の 4 つのメソッドを実装します。

Init、IsBizDesk、AddModule、RemoveModule

これらのメソッドの呼び出し方法のサンプルについては、「サンプル コード」を参照してください。

これらのメソッドは、このトピックの最後の「エラー表」に示すような、数多くのカスタム COM エラーを返します。

Init メソッド

このメソッドは、BizDeskModuleInstall オブジェクトの状態を初期化し、ほかのメソッドの動作場所となるビジネス デスクのインスタンスを作成するために使います。

定義

HRESULT Init(

  BSTR bstrIisVDirName

)

パラメータ

bstrIisVDirName

[in] ユーザーが選択したアプリケーションに対応する、インターネット インフォーメーション サービス (IIS) 内の仮想ディレクトリの名前が格納された BSTR です。

IsBizDesk メソッド

このメソッドは、選択された IIS アプリケーションがビジネス デスク アプリケーションかどうかを判定するために使います。これは、アプリケーション内に ./config/bizdesk.xml ファイルが存在するかどうかで判定します。

定義

HRESULT IsBizDesk(

  VARIANT* bRetVal

);

パラメータ

bRetVal

[out, retval] Boolean のアドレスです。これは、Init メソッドで指定された IIS 仮想ディレクトリに、ビジネス デスクのインスタンスが含まれているかどうかを示す値を返すために使われます。値が True の場合、ビジネス デスクのインスタンスであることを示します。値が False の場合、ビジネス デスクのインスタンスではないことを示します。

AddModule メソッド

このメソッドは、Init メソッドの呼び出しで指定されたビジネス デスクのインスタンスに、新しいビジネス デスク モジュールを追加するために使います。

定義

HRESULT AddModule(

  BSTR bstrCategory,

  BSTR bstrConfigPath,

  VARIANT bOverwrite,

  VARIANT* bSuccess

);

パラメータ

bstrCategory

[in] 新しいモジュールのインストール先となるカテゴリの名前が格納された BSTR です。

bstrConfigPath

[in] モジュール構成ファイルのフル パスが格納された BSTR です。

bOverwrite

[in] 既存のモジュール構成ファイルを上書きするかどうかを示す Boolean の値です。値が True の場合、既存のモジュール構成ファイルがすべて上書きされることを示します。値が False の場合、上書きが禁止されます。

既存のモジュール構成ファイルが上書きされた場合、config フォルダ内の _backup フォルダに、そのファイルのバックアップが格納されます。

bSuccess

[out, retval] メソッドが成功したかどうかを示す値を返すために使われる Boolean のアドレスです。値が True の場合、成功したことを示します。値が False の場合、失敗したことを示し、HRESULT に詳細が記述されます。

RemoveModule メソッド

このメソッドは、Init メソッドの呼び出しで指定されたビジネス デスクのインスタンスから、指定されたモジュールを削除するために使います。

定義

HRESULT RemoveModule(

  BSTR bstrCategory,

  BSTR bstrModulePath,

  VARIANT* bSuccess

);

パラメータ

bstrCategory

[in] 指定されたモジュールの削除元となるカテゴリの名前が格納された BSTR です。

モジュールを削除するとカテゴリが空になる場合は、そのカテゴリも削除されます。

bstrModulePath

[in] 削除するモジュールに関連付けられたファイルが格納されているフォルダのパスが格納された BSTR です。このパスは、config フォルダに対する相対パスで指定します。

bSuccess

[out, retval] メソッドが成功したかどうかを示す値を返すために使われる Boolean のアドレスです。値が True の場合、成功したことを示します。値が False の場合、失敗したことを示し、HRESULT に詳細が記述されます。

サンプル コード

次のサンプル コードは、BizDeskModuleInstall オブジェクトのメソッドの呼び出し方法を示しています。このサンプルは、RemoveModule メソッドの呼び出しをコメントにした状態での、AddModule メソッドの呼び出しを示しています。

Dim bRet As Boolean
Dim oBizInstall As Object
set oBizInstall = CreateObject ("CommerceSDK.BizDeskModuleInstall")
oBizInstall.Init "adbizdesk"
If oBizInstall.IsBizDesk Then
    bRet = oBizInstall.AddModule("MyCategory", _
                                 "d:\temp\module.xml", True)
    'bRet = oBizInstall.RemoveModule("MyCategory", "module.xml")
End If

エラー表

次の表は、BizDeskModuleInstall オブジェクトのメソッドから返されるエラーの説明です。

定数 ( 32 ビット値) | 説明
S_OK (00000000) | メソッドが正常に完了すると返されます。
E_FILE_EXISTS (80041001) | 指定された場所に、モジュール構成ファイルが既に存在する場合に返されます。
E_NOT_CS_APPLICATION (80041002) | 指定された IIS アプリケーションが、Commerce Server アプリケーションでない場合に返されます。
E_FILE_NOT_FOUND (80041003) | モジュール構成ファイルが見つからない場合に返されます。
E_APP_NOT_FOUND (80041004) | 指定された IIS 仮想ディレクトリが見つからない場合に返されます。
E_UNHANDLED (80041005) | 対応できないエラーが発生した場合に返されます。
E_INVALID_MODULE (80041006) | 指定されたモジュールが存在しない場合に返されます。
E_INIT_MOD_INSTALL_FIRST (80041007) | Init メソッドが呼び出される前に、IsBizDesk、AddModule、または RemoveModule メソッドが呼び出された場合に返されます。
E_INVALID_CATEGORY_FOR_MODULE (80041008) | 無効なカテゴリが指定された場合に返されます。
E_IMPROPER_CS_APP (80041009) | Commerce Server と IIS の間に、構成の不整合が検出された場合に返されます。BizDeskModuleInstall オブジェクトは、ビジネス デスクのファイルが物理的に存在するマシン上で、ローカルに実行する必要があります。


パイプライン コンポーネントを構築する

Microsoft Commerce Server 2000 パイプラインは、一連のコンポーネントを実行するソフトウェア インフラストラクチャです。それぞれのコンポーネントは、OrderForm または Dictionary の特定部分への操作を実行するために特別仕様で作成された Component Object Model (COM) オブジェクトです。パイプラインは、パイプライン コンポーネントと Orderform オブジェクトまたは Dictionary オブジェクトを受け渡すことにより、コンポーネント間の対話を調整します。

パイプラインを使って多くの線型処理をモデル化することができます。Commerce Server でモデル化されている 2 つの主要な処理として、注文処理パイプライン (OPP) が取り扱う注文処理と、コンテンツ選択フレームワーク (CSF) パイプラインが取り扱うコンテンツ選択があります。OPP は、B to C シナリオで注文処理を自動化します。CSF パイプラインは、広告および割引の選択を自動化します。

Commerce Server には、どちらのアーキテクチャもサポートできるように、パイプラインに組み込み可能なコンポーネントのセットが用意されています。また、以下で説明するように、パイプライン アーキテクチャの機能拡張のためにユーザー独自のコンポーネントを作成できます。

ここでは、次のトピックについて説明します。

  • パイプライン コンポーネントについて : パイプライン コンポーネントの基本的な構造を説明し、パイプライン コンポーネントの操作対象である OrderForm オブジェクトと Dictionary オブジェクトについて概要を示します。

  • Visual Basic を使ってパイプライン コンポーネントを作成する : Visual Basic パイプライン コンポーネント ウィザードを使ってパイプライン コンポーネントを作成および構築する方法と、Microsoft Visual Basic を使ってコンポーネントをカスタマイズする方法を説明します。

  • Active Template Library (ATL) を使ってパイプライン コンポーネントを作成する : ATL パイプライン コンポーネント ウィザードを使ってパイプライン コンポーネントを作成、構築、および登録する方法と、C++ を使ってコンポーネントをカスタマイズする方法を説明します。

  • MinMaxShip サンプル パイプライン コンポーネント : MinMaxShip サンプル パイプライン コンポーネントの設計について説明し、このコンポーネントを Commerce Server パイプラインに実装する方法を説明します。

注

  • Commerce Server には、Microsoft Visual Basic および Microsoft Visual C++ を使ってパイプライン コンポーネントを作成するためのウィザードが用意されています。コンポーネントの最新のサンプル コードについては、ATL パイプライン コンポーネント ウィザード、Visual Basic パイプライン コンポーネント ウィザード、および「プログラマーズ リファレンス」に記載されているサンプル コード全体を参照してください。

  • ATL パイプライン コンポーネント ウィザードを使うには、Visual C++ バージョン 6.0 または Visual Basic バージョン 6.0 以降がコンピュータにインストールされている必要があります。

関連項目

プログラマーズ リファレンス

パイプラインを利用する

注文処理パイプライン

OrderForm オブジェクト

Dictionary オブジェクト


パイプライン コンポーネントについて

パイプライン コンポーネントとは、IPipelineComponent インターフェイスを実装する Component Object Model (COM) サーバー オブジェクトです。以下に、Pipecomp.idl ファイルに記述されているこのインターフェイスの定義を示します。

    interface IPipelineComponent : IUnknown
    {
        import "oaidl.idl";

        HRESULT Execute(
                    [in]            IDispatch*  pdispOrder,
                    [in]            IDispatch*  pdispContext,
                    [in]            LONG        lFlags,
                    [out,retval]    LONG*       plErrorLevel
                );

        //
        // By default, a pipeline is in "execution mode", this call is
        // used to prepare the pipeline for "design mode" (fEnable ==
        //  TRUE) or to go to design mode (fEnable = FALSE).
        //

        HRESULT EnableDesign( [in]    BOOL fEnable );

    };

パイプラインはコンポーネントのインスタンスを作成するとき、コンポーネントの IPipelineComponent 実装へのインターフェイス ポインタを要求し、このポインタを使って IPipelineComponent::Execute メソッドを呼び出します。

IPipelineComponent は、コンポーネントがパイプライン内部で機能するために実装する必要がある唯一のインターフェイスです。ただし、コンポーネントの有用性を高めたり、COM+ のトランザクション機能を利用したりするために、以下のインターフェイスを 1 つ以上実装するコンポーネントを設計することもできます。

  • IDispatch : このインターフェイスの実装はオプションです。IDispatch を実装すると、クライアントは Visual Basic Scripting Edition (VBScript) や Visual Basic などのマクロ言語からコンポーネントの機能にアクセスできます。

  • IPipelineComponentAdmin : このインターフェイスはコンポーネント構成インターフェイスです。コンポーネントが設計時の構成を必要とする場合は、このインターフェイスを実装することをお勧めします。IPipelineComponentAdmin インターフェイスは、GetConfigData メソッドと SetConfigData メソッドを定義します。これらのメソッドに、呼び出し元から Dictionary オブジェクトが渡されます。GetConfigData メソッドと SetConfigData メソッドは、この Dictionary オブジェクトを読み書きすることにより、コンポーネント上の構成データの取得または設定を行います。

  • IPipelineComponentDescription : このインターフェイスを実装すると、パイプライン エディタに対して、コンポーネントが読み書きする OrderForm オブジェクト内のキーおよび値と、コンポーネントが使用するパイプライン コンテキスト値とを明示的に示すことができます。ユーザーがコンポーネントの [参照/更新データ] タブを選択すると、パイプライン エディタはこれらのキーを表示します。

  • IPersistStreamInit : このインターフェイスを実装すると、C++ で作成されたコンポーネントはデータを構成ファイルに保存することができます。Visual Basic コンポーネントはこのインターフェイスを実装できません。Visual Basic コンポーネントの場合は、IPipelineComponentAdmin インターフェイスを使って構成ファイルのデータの読み取りおよび保存を行います。

  • ISpecifyPropertyPages : このインターフェイスを実装すると、コンポーネントはパイプライン エディタで使うプロパティ ページを指定することができます。

関連項目

IPipelineComponent インターフェイス

IPipelineComponent::Execute

IPipelineComponentAdmin インターフェイス

IPipelineComponentDescription インターフェイス

IPersistStreamInit インターフェイス

ISpecifyPropertyPages インターフェイス

IPipelineComponentAdmin::GetConfigData

IPipelineComponentAdmin::SetConfigData


Visual Basic を使ってパイプライン コンポーネントを作成する

ユーザー独自のコンポーネントを作成することにより、顧客が使うパイプラインをカスタマイズできます。このようなカスタム コンポーネントがユーザーのビジネスで必要な場合は、Visual Basic パイプライン コンポーネント ウィザードおよび Microsoft Visual Basic バージョン 6.0 以降を使ってカスタム コンポーネントを作成し、パイプライン コンポーネント登録ツールを使ってそのコンポーネントを登録できます。

パイプライン コンポーネントは Visual Basic で作成できます。ただし、一般に Visual Basic コンポーネントは、Microsoft Visual C++ で作成した同じコンポーネントよりも低速になります。Visual Basic で作成したコンポーネントのその他の機能上の制限については、「Visual Basic パイプライン コンポーネントを使うときの検討事項」を参照してください。

ここでは、次のトピックについて説明します。

  • Visual Basic パイプライン コンポーネント ウィザードを使う

  • IPipelineComponent インターフェイスを実装する

  • データを保存する

  • パイプライン コンポーネント登録ツールを使う

  • Visual Basic パイプライン コンポーネントを使うときの検討事項


Visual Basic パイプライン コンポーネント ウィザードを使う

Visual Basic パイプライン コンポーネント ウィザードを使うことにより、サイト開発者は、パイプライン コンポーネント作成のためのフレームワーク コード ベースをポイント アンド クリックの操作で作成することができます。このウィザードは Visual Basic プロジェクト メニューの新しいプロジェクト項目として提供されているもので、一連の質問に対するユーザーからの回答に基づいてコードを生成します。このウィザードを使用するには、Visual Basic 言語についての予備知識が必要です。

ここでは、次のトピックについて説明します。

  • Visual Basic パイプライン コンポーネント ウィザードをインストールする

  • Visual Basic パイプライン コンポーネント ウィザードを実行する

関連項目

IPipelineComponent インターフェイスを実装する

データを保存する

パイプライン コンポーネント登録ツールを使う

Visual Basic パイプライン コンポーネントを使うときの検討事項


Visual Basic パイプライン コンポーネント ウィザードをインストールする

PipelineCompWizard.dll を登録すると、Visual Basic に新しいプロジェクト項目がインストールされます。

PipelineCompWizard.DLL を登録するには

  1. [スタート] ボタンをクリックし、次に [ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスで、「regsvr32」と入力し、それに続けて Visual Basic パイプライン コンポーネント ウィザードのパスを入力します。たとえば、「regsvr32 "C:\Program Files\Microsoft Commerce Server\SDK\Tools\VB Pipe Wizard\PipelineCompWizard.dll"」と入力して [OK] をクリックします。

[RegSvr32] ダイアログ ボックスが表示され、PipelineCompWizard.dll の登録に成功したことが通知されます。

関連項目

Visual Basic パイプライン コンポーネント ウィザードを実行する


Visual Basic パイプライン コンポーネント ウィザードを実行する

Visual Basic パイプライン コンポーネント ウィザードを使って、カスタム パイプライン コンポーネント構築の基本となるフレームワークを作成できます。Visual Basic パイプライン コンポーネント ウィザードは、ウィザードを実行しながら、パイプライン コンポーネントの一連の仕様を構成します。

Visual Basic パイプライン コンポーネント ウィザードを実行するには

DLL コンポーネントを登録するには

Visual Basic パイプライン コンポーネント ウィザードを実行するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Visual Basic 6.0] をクリックします。

    Microsoft Visual Studio 6.0 がインストールされている場合は、[Microsoft Visual Studio 6.0] をポイントし、[Microsoft Visual Basic 6.0] をクリックします。

  2. ウィザードを開くには、[ファイル] メニューの [新しいプロジェクト] をクリックします。

  3. [新しいプロジェクト] ダイアログ ボックスで、[Commerce Server Order Pipeline Component] をダブルクリックします。

    [Pipeline Component Wizard - Introduction (Step 1 of 7)] ダイアログ ボックスが表示されます。

  4. [Next] をクリックして、ウィザードの使用を開始します。

  5. [Pipeline Component Wizard - Transaction Support (Step 2 of 7)] ダイアログ ボックスで、トランザクション パイプラインをサポートする場合は [Yes]、非トランザクション パイプラインを使う場合は [No] をクリックし、[Next] をクリックします。

  6. [Pipeline Component Wizard - Shipping Support (Step 3 of 7)] ダイアログ ボックスで、Commerce Server 2000 で使われる新しい複数送付アーキテクチャをサポートする場合は [Yes] をクリックし、送付処理を行わないコンポーネントを作成する場合は [No] をクリックします (送付コンポーネントまたは税コンポーネントを作成する場合は [Yes] をクリックします)。[Next] をクリックします。

  7. [Pipeline Component Wizard - Component Properties (Step 4 of 7)] ダイアログ ボックスで [Add] をクリックします。

  8. [Add Property] ダイアログ ボックスの [Property Name] ボックスに、追加するプロパティの名前を入力します。

  9. [DataType] ボックスで、プロパティのデータ型をドロップダウン リストから選択し、[OK] をクリックします。

    追加したプロパティが [Pipeline Component Wizard - Component Properties (Step 4 of 7)] ダイアログ ボックスの [Properties] ボックスに表示されます。

  10. 不要なプロパティを削除する場合は、[Properties] ボックスで削除するプロパティを選択し、[Remove] をクリックします。プロパティを追加する場合は、追加するプロパティごとに手順 7.、8.、および 9. を実行してください。

  11. [Next] をクリックします。

  12. [Pipeline Component Wizard - Project, Class, and Form Names (Step 5 of 7)] ダイアログ ボックスで、以下の操作を行います。
    項目 | 操作
    [Project Name (*.vbp)] | プロジェクトの名前を入力するか、既定値をそのまま使います。
    [Pipeline Component Class (*.cls)] | プロジェクトのコンポーネント クラス名を入力するか、既定値をそのまま使います。
    [Pipeline Component UI Class (*.cls)] | コンポーネント UI クラス名を入力するか、既定値をそのまま使います。
    [Pipeline Component UI Form (*.frm)] | コンポーネント UI フォーム名を入力するか、既定値をそのまま使います。

    これらの値は、ウィザードにより作成されるプロジェクト、フォーム、およびクラスの名前になります。

  13. [Next] をクリックします。

  14. [Pipeline Component Wizard - Select Directory (Step 6 of 7)] ダイアログ ボックスで、ウィザードが作成するファイルを格納する場所を選択します。

  15. [Pipeline Component Wizard - Finished! (Step 7 of 7)] ダイアログ ボックスで [Finish] をクリックして、ウィザードで指定した情報に基づくコンポーネントを作成します。

Visual Basic のプロジェクト ウィンドウに新しい 3 つのコンポーネント ページが表示されます。この 3 つのコンポーネント ページとは、パイプラン コンポーネントに対応するクラス モジュール コード、パイプラン UI コンポーネントに対応するクラス モジュール、パイプラン UI コンポーネントに対応するフォームです。ステージの関連性のためにコンポーネントを登録する前に、コマンド ラインで DLL コンポーネントを登録する必要があります。

DLL コンポーネントを登録するには

  1. [スタート] ボタンをクリックし、次に [ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスで、「regsvr32」と入力し、それに続けてパイプライン コンポーネントのパスを入力します。たとえば、「regsvr32 "C:\Program Files\Microsoft Commerce Server\<プロジェクト名>.dll"」と入力して [OK] をクリックします。

    [RegSvr32] ダイアログ ボックスが表示され、.dll ファイルの登録に成功したことが通知されます。

  3. コンポーネント UI に対しても手順 2. を実行します。たとえば、「regsvr32, "C:\Program Files\Microsoft Commerce Server\<プロジェクト名>UI.dll"」と入力して [OK] をクリックします。

新しいコンポーネントが登録されました。

ステージの関連性のために、パイプライン コンポーネント登録ツールを使って、Visual Basic で作成したすべてのカスタム コンポーネントを登録する必要があります。コンポーネントの登録の詳細については、「パイプライン コンポーネント登録ツールを使う」を参照してください。


IPipelineComponent インターフェイスを実装する

すべてのパイプライン コンポーネントは、パイプライン エディタ内部で機能するために IPipelineComponent インターフェイスを実装する必要があります。Visual Basic パイプライン コンポーネント ウィザードを使ってパイプライン コンポーネントを作成した場合、そのコンポーネントはこのインターフェイスをサポートします。

Microsoft ActiveX ダイナミック リンク ライブラリ (DLL) では、パイプライン コンポーネントは、1 つまたは複数のパイプライン コンポーネント インターフェイスを実装する DLL 内のクラスです。ユーザーは、インターフェイスを定義するタイプ ライブラリへの参照と適切な実装ステートメントを追加し、実装コードを作成します。Visual Basic パイプライン コンポーネント ウィザードを使った場合、この作業は既に行われています。

Visual Basic で COM インターフェイスを実装する方法の詳細については、Visual Basic ヘルプの「インターフェイスの作成とインプリメント」と「標準インターフェイスのインプリメントと使用」を参照してください。

すべてのパイプライン コンポーネント インターフェイスは、Pipecomplib.tlb という名前のタイプ ライブラリに記述されています。「Visual Basic パイプライン コンポーネント ウィザードを実行する」で、Visual Basic パイプライン コンポーネント ウィザードで作成されたコードを参照すれば、そのプロジェクトにこのライブラリへの参照が含まれていることがわかります。

このクラスのコードの冒頭の行を以下に示します。

Implements IPersistDictionary
Implements IPipelineComponent
Implements ISpecifyPipelineComponentUI
Implements IPipelineComponentDescription
Implements IPipelineComponentAdmin

このコンポーネントは、IPipelineComponent インターフェイスのほかに 4 つのインターフェイスを実装しています。Visual Basic パイプライン コンポーネント ウィザードにより実装されるその他のインターフェイスの詳細については、「パイプライン コンポーネント インターフェイス」を参照してください。

上記のコードのさらに下の部分には、IPipelineComponent インターフェイスの 2 つのメソッド (EnableDesign メソッドと Execute メソッド) を実装するコードがあります。

EnableDesign メソッドのコードは次のとおりです。

Private Sub IPipelineComponent_EnableDesign(ByVal fEnable As Long)
End Sub

EnableDesign メソッドは、コンポーネントをデザイン モードで使うとき、およびコンポーネントを実行するときに、コンポーネントにそれを通知するためにパイプライン エディタにより使われます。このコードを変更する必要はありません。

Execute メソッドには、コンポーネントの機能のほとんどが含まれています。このメソッドは、エラーが発生したかどうか、およびパイプラインが実行を継続できるかどうかを判定します。Execute メソッドの概要は次に示すように単純です。

' Execute() -- This function gets called when the pipeline runs.
' Return 1 for success, 2 for user warnings, 3 for error.
Private Function IPipelineComponent_Execute(ByVal objOrderForm As Object, ByVal objContext As Object, ByVal 1Flags As Long) As Long

      ' Initialization of variables

      IPipelineComponent_Execute = 1

      ' The implementation of the component appears here.

End Function

注

  • ディクショナリは値で渡されるように見えるかもしれませんが、実際にはそうではありません。値で渡されるのは、ディクショナリへの参照、つまりディクショナリのアドレスであり、ディクショナリの内容ではありません。値で渡される参照は、基本的に、参照で渡されるオブジェクトと同じです。

Execute メソッドは、long を返す関数です。次の 3 つの値のいずれか 1 つを返します。つまり、成功の場合は 1、ユーザー警告の場合は 2、パイプラインの実行を停止する必要があるエラーの場合は 3 です。

Visual Basic で COM インターフェイスを実装する方法の詳細については、Visual Basic ヘルプの「インターフェイスの作成とインプリメント」と「標準インターフェイスのインプリメントと使用」を参照してください。

Commerce Server オブジェクトを使う

Visual Basic で作成されたパイプライン コンポーネントは Commerce Server オブジェクトを使えます。Visual Basic パイプライン コンポーネント ウィザードを使って作成したコンポーネントのプロジェクトには、Microsoft Commerce 2000 コア コンポーネント タイプ ライブラリへの参照が含まれています。このプロジェクトでは、CDictionary 型の変数を作成し、Execute メソッドに渡されたディクショナリをその変数に代入しています。

' Initialize the PipeCtx dictionary as
 ' CDictionary variables
    Dim objPipeCtx As CDictionary
    Set objPipeCtx = objContext

注

  • このディクショナリのタイプ ライブラリ名は CDictionary、ProgID は Commerce.Dictionary です。

たとえば、コンポーネントに Microsoft Commerce 2000 コア コンポーネント タイプ ライブラリへの参照が含まれている場合は、変数の宣言中において、アーリー バインドや明示的な型宣言による恩恵を受けることができます。

Dim dictLocalDictionary As Cdictionary
Set dictLocalDictionary = New CDictionary
dictLocalDictionary("Nickel") = ("what is nickel")

Commerce Server の全オブジェクトの一覧、およびそれらのオブジェクトの使用法の詳細については、「オブジェクト リファレンス」を参照してください。

関連項目

パイプライン コンポーネントのインターフェイス

Visual Basic パイプライン コンポーネント ウィザードを使う

データを保存する

パイプライン コンポーネント登録ツールを使う

Visual Basic パイプライン コンポーネントを使うときの検討事項


データを保存する

Visual Basic パイプライン コンポーネントは、IPersistDictionary インターフェイスを使って保存機能を実装することができます。パイプライン エディタとパイプライン自体は、読み込みと保存のためにこのインターフェイスをサポートしています。IPersistDictionary インターフェイスは、パイプライン コンポーネントのデータを保存するために使われます。パイプライン エディタは、コンポーネントから構成データを読み取り、Save メソッドで構成データをパイプライン構成ファイルに保存するため、IPersistDictionary インターフェイスを使います。

同様に、パイプラインは、以前に保存した値を読み込んだディクショナリをコンポーネントに渡します。パイプライン エディタがデータの格納を処理するので、コンポーネントが行うのはディクショナリの操作だけです。

次の表は、IPersistDictionary インターフェイスのメソッドを示します。

メソッド | 説明
GetProgID | コンポーネントの ProgID を返します。
IsDirty | 値が前回保存された後で変更されている場合にブール値 True を返します。
InitNew | オブジェクトを初期化するために呼び出されます。
Load | Dictionary オブジェクトを保存されている値で読み込みます。
Save | Dictionary オブジェクトの値を保存します。

InitNew メソッドは、オブジェクトの新規インスタンスの既定値を初期化します。「Visual Basic パイプライン コンポーネント ウィザードを実行する」に記載されている、Visual Basic パイプライン コンポーネント ウィザードで作成されたコードの場合は、このメソッドがパイプライン エディタにより呼び出されます。

Private Sub IPersistDictionary_InitNew()
    FIsDirty = False
End Sub

IsDirty メソッドは、オブジェクトの値が前回保存された後に変更されたかどうかをチェックします。オブジェクトの IsDirty フラグの値を返します。このフラグは、オブジェクトの IPersistDictionary::Save メソッドの実装において、そのオブジェクトによってクリアされます。

GetProgID メソッドは、オブジェクトの ProgID を返す必要があります。この例の場合、この値はオブジェクトの登録時に使う ProgID と一致する定数です。ActiveX DLL におけるこの定数の既定値は、プロジェクト名の後にピリオドとクラス名を付加したものです。次に例を示します。

Private Function IPersistDictionary_GetProgID() As String
    IPersistDictionary_GetProgID = "MyProject.ClassName"
End Function
Private Function IPersistDictionary_IsDirty() As Long
    IPersistDictionary_IsDirty = fIsDirty
End Function

IPersistDictionary インターフェイスは、ActiveX DLL に格納されているパイプライン コンポーネントの構成値を保存するための便利な方法を提供します。コンポーネントが ActiveX コントロールとして実装されている場合、構成値を保存するために、コントロールのプロパティ バッグを使用することができます。

注

  • パイプライン コンポーネントを Visual Basic の ActiveX コントロールとして作成し、そのコントロールのプロパティ ページをパイプライン エディタの構成タブとして使用できますが、この方法はお勧めできません。

関連項目

IPersistDictionary インターフェイス

Visual Basic パイプライン コンポーネント ウィザードを使う

IPipelineComponent インターフェイスを実装する

パイプライン コンポーネント登録ツールを使う

Visual Basic パイプライン コンポーネントを使うときの検討事項


パイプライン コンポーネント登録ツールを使う

Commerce Server 2000 には、Visual Basic で作成されたパイプライン コンポーネントを効率よく登録するためのパイプライン コンポーネント登録ツールが用意されています。通常、この登録は、C++ の場合と同じく、DllRegisterServer エントリポイント ルーチンを使って行います。しかし、Visual Basic 開発者は自分のコンポーネントからこの関数をエクスポートできないため、通常はコンポーネント自体を登録する方法を考える必要がありますが、それは難しい作業になることがあります。

パイプライン コンポーネント登録ツールは、登録処理を簡単にするために、ステージの関連性のためのパイプライン コンポーネントを登録した後、レジストリ スクリプト (.reg) ファイルにデータをエクスポートして、このコンポーネントをほかのサーバー上に配置できるようにします。

パイプライン コンポーネント登録ツールを開くには

パイプライン コンポーネントを登録するには

パイプライン コンポーネント登録ツールを開くには

  1. [スタート] ボタンをクリックし、次に [ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスで、PipeReg.exe ファイルのローカルのインストール先へのパスを入力します。たとえば、「C:\Program Files\Microsoft Commerce Server\SDK\Tools\Registration Tool」と入力し、[PipeReg] をダブルクリックします。

パイプライン コンポーネント登録ウィザードが表示されます。コンポーネントの登録を開始できます。

パイプライン コンポーネントを登録するには

  1. [Pipeline Component Registration Wizard (Step 1 of 3)] ダイアログ ボックスで、以下の操作を行います。
    項目 | 操作
    [Select component by ProgID] | 登録するコンポーネントの ProgID を [ProgID] ボックスに入力します。この操作ではコンポーネントが 1 つだけ登録されます。
    [Select component Type Library] | 登録する 1 つまたは複数のコンポーネントに対応するタイプ ライブラリ (.tlb または .dll) へのパスを [Path] ボックスに入力します。この操作では、指定したタイプ ライブラリに含まれる一部または全部のコンポーネントが登録されます。

  2. [Next] をクリックします。

  3. [Pipeline Component Registration Wizard (Step 2 of 3)] ダイアログ ボックスで [Select component by ProgID] を選択した場合、または [Select component Type Library] を選択してコンポーネントが 1 つしかないタイプ ライブラリを選択した場合は、以下の操作を行います。
    項目 | 操作
    [Available Categories] | パイプライン ステージの一覧から、ユーザーのコンポーネントを利用可能にしたいパイプライン ステージを選択し、右矢印ボタンをクリックしてそれらのステージを [Selected Categories] ボックスに移動します。
    [Selected Categories] | 利用可能なパイプライン ステージの一覧から、このコンポーネントを利用させたくないパイプライン ステージを選択し、左矢印ボタンをクリックしてそれらのステージを削除します。
    [Add Custom Stage] | クリックして、このコンポーネントのカスタム ステージを追加します。[Add Custom Stage] ダイアログ ボックスの [Label] ボックスにカスタム ステージ ラベルを入力します。[GUID] ボックスにカスタム ステージの GUID を入力し、[OK] をクリックします。

    [Next] をクリックします。

  4. [Select component Type Library] を選択して複数のコンポーネントを含んだタイプ ライブラリを選択した場合は、Pipeline Component Registration Wizard [Select Components] ダイアログ ボックスで、登録するコンポーネントを選択して [Next] をクリックします。

    選択したコンポーネントのそれぞれについて、手順 3. に戻って作業を繰り返します。

  5. Pipeline Component Wizard [Registration] ダイアログ ボックスで、以下の操作の 1 つを行います。
    項目 | 操作
    [Register components only] | 対応するレジストリのコンポーネントの [インプリメントされているカテゴリ] を更新する場合、クリックします。このオプションは、コンポーネントとステージが定期的に変更されるサイト開発者のワークステーションに最適です。
    [Export registration data] | レジストリ情報をレジストリ スクリプトにエクスポートする場合、クリックします。[Export path] ボックスで、レジストリ スクリプトのエクスポート先を指定します。
    [Register and export data] | クリックして、登録データを登録し、レジストリ スクリプトにエクスポートします。[Export path] ボックスで、レジストリ スクリプトのエクスポート先を指定します。

    [Next] をクリックします。

  6. Pipeline Component Registration Wizard [Finished] ダイアログ ボックスで情報を参照して、適切なコンポーネントが読み込まれ、適切なパスにエクスポートされたことを確認します。

  7. [Close] をクリックしてパイプライン コンポーネント登録ウィザードを閉じます。

パイプライン コンポーネント登録ウィザードは、レジストリの [インプリメントされているカテゴリ] エントリに、そのコンポーネントがパイプライン コンポーネントであることを示すキーと、そのコンポーネントがどのステージに利用可能かを示すキーを追加します。[インプリメントされているカテゴリ] エントリは、Microsoft Windows NT のレジストリ内の \HKEY_CLASSES_ROOT\CLSID\component_classid\implemented categories\stage_clsid key にあります。stage_class_id はそのコンポーネントとの関連性を持つステージの GUID、component_class_id はコンポーネント自体のクラス ID です。各種パイプライン ステージの GUID 値については、Commerce Server SDK にある pipe_stages.h ファイルを参照してください。

関連項目

Visual Basic パイプライン コンポーネント ウィザードを使う

IPipelineComponent インターフェイスを実装する

データを保存する

Visual Basic パイプライン コンポーネントを使うときの検討事項


Visual Basic パイプライン コンポーネントを使うときの検討事項

Visual Basic はアパートメント スレッド コンポーネントの作成をサポートしますが、フリースレッド コンポーネントの作成はサポートしません。したがって、Visual Basic を使って注文処理パイプライン (OPP) または コンテンツ選択フレームワーク (CSF) パイプライン アーキテクチャのコンポーネントを作成する場合、一定の制限があることに注意する必要があります。

OrderPipeline オブジェクトを使って読み込むパイプラインにコンポーネントを含める場合と、このオブジェクトをグローバルに使用できるようにする場合、ユーザーのコンポーネントは予想どおりの動作を行います。なぜなら、OrderPipeline オブジェクトは各コンポーネントの読み込み時にそのスレッド モデルをチェックして、そのコンポーネントのデータをマーシャリングする方法を判断するからです。

パフォーマンス上の理由で、MtsOrderPipeline または MtsTxOrderPipeline オブジェクトはこのチェックを行いません。これらのオブジェクトは通常、ページ単位で作成されるためです。ページ単位で作成される MtsOrderPipeline または MtsTxOrderPipeline オブジェクトは、Visual Basic パイプライン コンポーネントを適正に機能させることには関与していません。

しかし、(たとえば Application オブジェクトを通して) グローバルに使用できるようにしてある MtsOrderPipeline または MtsTxOrderPipeline オブジェクトにこのようなコンポーネントを含めることは、サポートされていません。グローバルに使用できるパイプライン オブジェクト インスタンスに Visual Basic コンポーネントを含める場合は、OrderPipeline オブジェクトを使ってそのパイプラインを読み込み、実行する必要があります。

参照カウントを 0 より大きい値に保つために、必ず Visual Basic オブジェクトを [メモリに保持] とマークしてください。

Visual Basic オブジェクトを [メモリに保持] とマークするには

  1. Visual Basic で、[プロジェクト] メニューの [<プロジェクト名> のプロパティ] をクリックします。

  2. [全般] タブで、[対話型インターフェイスの抑制] ボックスと [メモリに保持] ボックスを選択します。

関連項目

Visual Basic パイプライン コンポーネント ウィザードを使う

IPipelineComponent インターフェイスを実装する

データを保存する

パイプライン コンポーネント登録ツールを使う


Active Template Library (ATL) を使ってパイプライン コンポーネントを作成する

ATL パイプライン コンポーネント ウィザードは、Commerce Server 2000 パイプライン コンポーネントの作成を自動化するために、ユーザーが Microsoft Visual C++ のインストールされた環境に追加するファイルのグループで構成されます。ATL パイプライン コンポーネント ウィザードは、オブジェクト定義ファイルとオブジェクト実装ファイルを作成します。これらのファイルには、十分な機能を持つパイプライン コンポーネントを作成するために必要なインターフェイスすべての関数プロトタイプが含まれています。さらに、ALT パイプライン コンポーネント ウィザードは、プロジェクトのプロパティ ページを作成します。ここに、ユーザーがコンポーネントのプロパティの設定に使うコントロールを追加します。

ここでは、次のトピックについて説明します。

  • Active Template Library

  • ATL パイプライン コンポーネント ウィザードを登録する

  • プロジェクトを作成する

  • オブジェクトを追加する

  • 公開するインターフェイスを決める

  • コンポーネントの有用性を高める

  • IPipelineComponent インターフェイスを実装する

  • ATL コンポーネントを登録する


Active Template Library

Active Template Library (ATL) は、Microsoft Visual C++ バージョン 4.0 以降に含まれる C++ テンプレートを集めたものです。このテンプレート ライブラリは、特に Component Object Model (COM) オブジェクトの作成を容易にするためのものです。

COM コンポーネントの作成をサポートする開発環境を使ってパイプライン コンポーネントを作成することもできますが、サイズが小さく処理速度が速い ATL を使うことをお勧めします。ATL を使って作成した COM コンポーネントは、Visual C++ がサポートする方法を含めたほかのコンポーネント作成方法よりもサイズが小さく、高速です。Microsoft Foundation Classes (MFC) ライブラリを使うと COM コンポーネントを簡単に作成できますが、サイズの大きいクラス ライブラリを使うことによるメモリ オーバーヘッドはかなり大きなものになります。

Active Template Library については、Microsoft Visual C++ に添付されている ATL のチュートリアルを参照してください。

関連項目

ATL パイプライン コンポーネント ウィザードを登録する

コンポーネントの有用性を高める

ATL コンポーネントを登録する

MinMaxShip サンプル パイプライン コンポーネント


ATL パイプライン コンポーネント ウィザードを登録する

ATL パイプライン コンポーネント ウィザードを使う前に、ローカル コンピュータ上の CommerceDLG.dll ファイルを使ってこのウィザードを登録し、特定のファイルをコンピュータ上の適切なディレクトリにコピーする必要があります。こうする理由は、ATL パイプライン コンポーネント ウィザードが Microsoft Visual C++ プログラムの内部で機能するからです。

CommerceDLG.dll ファイルを登録するには

  1. [スタート] ボタンをクリックし、次に [ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスで、「regsvr32」と入力し、それに続けて Visual Basic パイプライン コンポーネント ウィザードのパスを入力します。たとえば、「regsvr32 "C:\Program Files\Microsoft Commerce Server\SDK\Tools\ATL Pipe Wizard\CommerceDLG.dll"」と入力して [OK] をクリックします。

[RegSvr32] ダイアログ ボックスが表示され、CommerceDLG.dll ファイルの登録に成功したことが通知されます。

関連項目

プロジェクトを作成する

オブジェクトを追加する

公開するインターフェイスを決める

コンポーネントの有用性を高める

IPipelineComponent インターフェイスを実装する

ATL コンポーネントを登録する

Active Template Library

MinMaxShip サンプル パイプライン コンポーネント


プロジェクトを作成する

ATL パイプライン コンポーネント ウィザードを使ってカスタム コンポーネントを作成するには、最初にアクティブ プロジェクトを作成する必要があります。Visual C++ バージョン 6.0 でプロジェクトを作成するには、ATL COM App ウィザードを使います。

Visual C++ でプロジェクトを作成するには

  1. [スタート] をクリックし、[プログラム] をポイントします。次に、[Microsoft Visual C++] をポイントし、[Visual C++] をクリックします。

  2. [ファイル] メニューの [新規作成] をクリックし、[プロジェクト] タブを選択します。

  3. [プロジェクト] タブで [ATL COM App Wizard] を選択し、以下の操作を実行します。
    項目 | 操作
    [プロジェクト名] | プロジェクトの名前を入力します。
    [位置] | プロジェクトの保存場所へのパスを入力します。
    [新規にワークスペースを作成] | 新しいプロジェクトのスケルトンを作成するときに選択します。
    [現在のワークスペースへ追加] | 既存のプロジェクトに追加するときに選択します。
    [プラットフォーム] | 既定値の WIN32 をそのまま使います。

  4. [OK] をクリックします。

  5. [ATL COM App Wizard - ステップ 1/1] ダイアログ ボックスで、以下の操作を行います。
    項目 | 操作
    [サーバー タイプ] 以下のいずれかを選択します。
    • [ダイナミック リンク ライブラリ (DLL)]

    • [実行可能ファイル (EXE)]

    • [サービス (EXE)]

    注

    • 変更された ASP コンポーネントを作成する場合は、コントロールをインプロセス サーバーにする必要があるので、[サーバー タイプ] は [DLL] のままにします。
    [プロキシ/スタブ コードのマージを許可] | プロキシ/スタブ コードをメイン プロジェクト (DLL プロジェクトのみに使用可能) にマージするよう指定します。既定では、プロキシ/スタブ マーシャリング コードは別個の DLL に入っています。
    [MFC のサポート] | オブジェクトが Microsoft Foundation Classes (MFC) のサポートを含むよう指定します。これにより MFC ライブラリはコード (DLL プロジェクトのみに使用可能) にアタッチされます。
    [MTS のサポート] | プロジェクト構築設定を調整して、Microsoft Transaction Server (MTS) のサポートを指定します。

  6. [終了] をクリックします。

    [新規プロジェクト情報] ダイアログ ボックスが表示され、ユーザーのプロジェクトに対して作成されるファイルの一覧が示されます。これらのファイルおよびその説明を次の表に示します。

    ファイル拡張子 | 説明
    .dsp | プロジェクト設定が格納されたファイル。
    .cpp 以下のメソッドの実装が格納されたファイル。
    • DllMain

    • DllCanUnloadNow

    • DllGetClassObject

    • DllRegisterServer

    • DllUnregisterServer

    このファイルにはオブジェクト マップも格納されています。オブジェクト マップは、プロジェクト内にある ATL オブジェクトの一覧です。オブジェクトがまだ作成されていないので、最初はこのファイルの内容は空白になっています。
    .idl | オブジェクト固有のインターフェイスを記述したインターフェイス定義言語ファイル。
    .mk | プロキシおよびスタブ DLL を作成するために使うメイク ファイル。

  7. [OK] をクリックします。

    作成したプロジェクトは [Visual C++ ワークスペース] ウィンドウに表示されます。

  8. ワークスペースを保存するには、[ファイル] メニューの [ワークスペースの保存] をクリックします。

関連項目

オブジェクトを追加する

公開するインターフェイスを決める

コンポーネントの有用性を高める

IPipelineComponent インターフェイスを実装する

ATL コンポーネントを登録する

Active Template Library

MinMaxShip サンプル パイプライン コンポーネント


オブジェクトを追加する

プロジェクトを作成した後、Microsoft Visual C++ によって作成されたファイルをコンパイルしてダイナミック リンク ライブラリ (DLL) にします。ただし、この DDL を有効にするには、適切なパイプライン インターフェイスを実装するオブジェクトを追加する必要があります。

ATL パイプライン コンポーネント ウィザードを使ってプロジェクトにオブジェクトを追加すると、既定では IPipelineComponent インターフェイスが実装されます。また ISpecifyPropertyPages、IPersistStreamInit、および IPipelineComponentDescription インターフェイスを実装することもできます。実装するインターフェイスの詳細については、「パイプライン コンポーネント インターフェイス」を参照してください。

注

  • 以下の手順を開始する前に、ATL パイプライン コンポーネント ウィザードをインストールし、プロジェクトを作成する必要があります。このウィザードのインストールの詳細については、「ATL コンポーネントを登録する」を参照してください。プロジェクトの作成の詳細については、「プロジェクトを作成する」を参照してください。

オブジェクトをプロジェクトに追加するには

  1. Visual C++ のプロジェクトで、[挿入] メニューの [ATL オブジェクトの新規作成] をクリックします。

  2. [ATL オブジェクト ウィザード] ダイアログ ボックスで、以下の操作を行います。
    項目 | 操作
    [カテゴリ] | [オブジェクト] を選択して新しいパイプライン コンポーネントを追加します。
    [オブジェクト] | [Pipeline Component] を選択します。

  3. [次へ] をクリックします。

  4. [ATL オブジェクト ウィザードのプロパティ] ボックスの [名前] タブで、以下の操作を行います。
    項目 | 操作
    [C++ ショート ネーム] | コンポーネントの名前を入力します。
    [C++ クラス] | クラス名を入力してコントロールを実装するか、既定値をそのまま使います。
    [C++ .H ファイル] | .h ファイルの名前を入力するか、既定値をそのまま使います。
    [C++ .CPP ファイル] | .cpp ファイルの名前を入力するか、既定値をそのまま使います。
    [COM CoClass] | オブジェクトのコンポーネント クラスの名前を入力するか、既定値をそのまま使います。
    [COM インターフェイス] | コンポーネントがそのカスタム プロパティを実装するインターフェイスの名前を入力するか、既定値をそのまま使います。
    [COM タイプ] | コントロールの説明を入力するか、既定値をそのまま使います。
    [COM ProgID] | ProgID の名前を入力するか、既定値をそのまま使います。

    重要

    • [Pipeline Component] タブを構成するまで [OK] をクリックしないでください。
  5. [Pipeline Component] タブをクリックします。(このタブは、Commerce Server パイプライン コンポーネント上に実装できるオプションのインターフェイスを一覧表示します)。

  6. [ATL オブジェクト ウィザードのプロパティ] ダイアログ ボックスの [Pipeline Component] タブで、以下の操作を行います。
    項目 | 操作
    [ISpecifyPropertyPages] | コンポーネントでプロパティ ページを使い、ユーザーがコンポーネント プロパティを設定できるようにするかどうかを選択します。
    [IPersistStreamInit] | コンポーネントがストリームとの間でプロパティの保存と読み込みをするかどうかを選択します。
    [IPipelineComponentDescription] | コンポーネントが読み取りや書き込みを行う OrderForm オブジェクトまたはパイプ コンテキスト値を、コンポーネントのユーザーに識別させるかどうかを選択します。

  7. [OK] をクリックします。

ATL オブジェクト ウィザードは、必要なパイプライン インターフェイスを実装する定義ファイルおよび実装ファイルを作成し、これらのファイルをプロジェクトに追加します。

また、このウィザードはオブジェクト インターフェイスのスタブ実装を作成し、ユーザーはそこにコンポーネントのプロパティを実装します。

注

  • ここで説明したプロパティの追加方法では、IPipelineComponentAdmin インターフェイスを実装しないことが前提になっています。ただし、Commerce Server では、オブジェクトにプロパティを実装する代替方法としてこのインターフェースを定義しています。

関連項目

公開するインターフェイスを決める

コンポーネントの有用性を高める

IPipelineComponent インターフェイスを実装する

ATL コンポーネントを登録する

Active Template Library

MinMaxShip サンプル パイプライン コンポーネント


公開するインターフェイスを決める

Microsoft Visual Basic Scripting Edition (VBScript) のようなマクロ言語でコンポーネントを構成する前に、コンポーネントに IDispatch インターフェイスを実装する必要があります。ユーザーが作成するインターフェイスは IDispatch インターフェイスから継承できるので、ユーザーは、コンポーネントのプロパティおよびメソッドを公開するために、実装するインターフェイスのうちのどれに対して、IDispatch インターフェイスを使うかを決めます。

選択肢はいくつかあります。オブジェクトをプロジェクトに追加すると、Microsoft Visual C++ は、プロジェクトのインターフェイス定義言語 (IDL) ファイルに記述されているオブジェクト定義にインターフェイスを追加します。既定では、Visual C++ が追加するインターフェイスは IDispatch インターフェイスから継承されます。

このインターフェイスを使うことも、IPipelineComponentAdmin インターフェイスを実装することもできます。このインターフェイスは、コンポーネント作成者がコンポーネント プロパティを公開できるようにするために、Commerce Server 2000 により定義されています。IPipelineComponentAdmin インターフェイスは、GetConfigData と SetConfigData の 2 つのメソッドを定義しています。これらのメソッドは Dictionary オブジェクトを引数に取り、この Dictionary オブジェクトに対して読み取りまたは書き込みを行うことで、コンポーネントのプロパティの値を取得または設定します。

上述の選択は同時に選択できません。1 つのオブジェクト上で 2 つの IDispatch インターフェイスを実装することや、Active Server Pages (ASP) クライアントと両方で利用可能にすることはできません。

Visual C++ ユーザー インターフェイスを使って IDispatch を実装することによる利点を以下に挙げます。

  • IDispatch::Invoke の実装は自動的に行われます。Visual C++ ユーザー インターフェイスを通してプロパティとメソッドを追加すると、この作業が行われます。

  • プロパティおよびメソッドをオブジェクトに追加すると、Visual C++ はプロジェクトの IDL、ヘッダー、および実装ファイルに適切なエントリを自動的に追加します。追加されるインターフェイスはそのオブジェクトの既定のインターフェイスなので、ProgID を使ってオブジェクトのインスタンスを作成する VBScript クライアントは、このインターフェイスを取得することにより、インターフェイスに実装されているプロパティを設定したり、メソッドを起動したりできます。

Component Object Model (COM) のルールによれば、IPipelineComponentAdmin インターフェイスを実装する利点は、インターフェイスを発行した後でそのインターフェイスの変更ができなくなることです。発行済みのオブジェクトにプロパティを追加すると、必然的にディスパッチされたインターフェイスを変更することになるので、既存のユーザーのクライアント コードを壊してしまう危険性があります。IPipelineComponentAdmin インターフェイスを実装することにより、新しいプロパティのサポートを追加するために、コンポーネント定義を変更する必要はないので、新しいインターフェイスを発行せずに、コンポーネントを日々進化させていくことができます。ディクショナリは保存機能をサポートするので、IPipelineComponentAdmin インターフェイスは簡単な保存にも対応できます。また、IPipelineComponentAdmin インターフェイスを通して公開されたディクショナリは、プロパティ名の列挙をサポートしています。

構成が必要な送付コンポーネントを実装する場合は、IPipelineComponentAdmin インターフェイスが必要です。

重要

  • 送付コンポーネントは IDispatch インターフェイス実装から IPipelineComponentAdmin::GetConfigData および IPipelineComponentAdmin::SetConfigData メソッドを公開する必要があります。これは、送付コンポーネントを管理する 1 つまたは複数の Commerce Server ビジネス デスク モジュールがこれらのメソッドをレイト バインディング (Active Server Pages) 環境から呼び出せるようにする必要があるためです。

関連項目

パイプライン コンポーネントのインターフェイス

コンポーネントの有用性を高める

IPipelineComponent インターフェイスを実装する

ATL コンポーネントを登録する

Active Template Library

MinMaxShip サンプル パイプライン コンポーネント


コンポーネントの有用性を高める

コンポーネントの有用性を高めるために、オプションの IPipelineComponentDescription インタフェースを実装するという選択肢があります。このインターフェイスは、コンポーネントが読み取るパイプ コンテキスト要素と、コンポーネントが読み取ったり書き込んだりする OrderForm または Dictionary オブジェクト要素を識別する SAFEARRAY 変数を返すメソッドを定義します。

ユーザーがパイプライン エディタでコンポーネントのプロパティ ページをアクティブにすると、パイプライン エディタは、コンポーネントが IPipelineComponentDescription インターフェイスを実装しているかどうかをチェックします。このインターフェイスを実装している場合、パイプライン エディタは、IPipelineComponentDescription メソッドの実装を呼び出し、コンポーネントがプロパティ ページで読み取ったり書き込んだりする値を表示します。

ATL パイプライン コンポーネント ウィザードを実行すると、ウィザードは IPipelineComponentDescription インターフェイスへの参照を派生リストに追加し、IPipelineComponentDescription インターフェイス署名をクラス定義に追加します。次に例を示します。

// IPipelineComponentDescription
    STDMETHOD (ContextValuesRead)(VARIANT *pVar);
    STDMETHOD (ValuesRead)(VARIANT *pVar);
    STDMETHOD (ValuesWritten)(VARIANT *pVar);

また、ATL パイプライン コンポーネント ウィザードは、ファイルを実装するためのスタブ情報を追加します。ウィザードが追加するコードを次に示します。

//
// IPipelineComponentDescription Methods
//
STDMETHODIMP CSampleComponent::ContextValuesRead(VARIANT *pVarRead)
{
    // TODO: Add your own values to the array
    int cEntries = 1;
    // Allocate the SAFEARRAY of VARIANTs
    SAFEARRAY*    psa = SafeArrayCreateVector(VT_VARIANT, 0, cEntries);
    // Populate the SAFEARRAY of VARIANTs
    VARIANT* pvarT = (VARIANT*)psa->pvData;
    V_BSTR(pvarT) = SysAllocString(L"Example Context Value Read");
    V_VT(pvarT) = VT_BSTR;
    // Set up the return value to point to the SAFEARRAY
    V_VT(pVarRead) = VT_ARRAY | VT_VARIANT;
    V_ARRAY(pVarRead) = psa;
    return S_OK;
}

STDMETHODIMP CSampleComponent::ValuesRead(VARIANT *pVarRead)
{
    // TODO: Add your own values to the array
    int cEntries = 1;
    // Allocate the SAFEARRAY of VARIANTs
    SAFEARRAY*    psa = SafeArrayCreateVector(VT_VARIANT, 0, cEntries);
    // Populate the SAFEARRAY of VARIANTs
    VARIANT* pvarT = (VARIANT*)psa->pvData;
    V_BSTR(pvarT) = SysAllocString(L"Example Value Read");
    V_VT(pvarT) = VT_BSTR;
    // Set up the return value to point to the SAFEARRAY
    V_VT(pVarRead) = VT_ARRAY | VT_VARIANT;
    V_ARRAY(pVarRead) = psa;

    return S_OK;
}

STDMETHODIMP CSampleComponent::ValuesWritten(VARIANT *pVarWritten)
{
    // TODO: Add your own values to the array
    int cEntries = 1;
    // Allocate the SAFEARRAY of VARIANTs
    SAFEARRAY*    psa = SafeArrayCreateVector(VT_VARIANT, 0, cEntries);
    // Populate the SAFEARRAY VARIANTs
    VARIANT* pvarT = (VARIANT*)psa->pvData;
    V_BSTR(pvarT) = SysAllocString(L"Example Value Written");
    V_VT(pvarT) = VT_BSTR;
    // Set up the return value to point to the SAFEARRAY
    V_VT(pVarWritten) = VT_ARRAY | VT_VARIANT;
    V_ARRAY(pVarWritten) = psa;
    return S_OK;
}

このコードには、このインターフェイスを実装するための基本的な命令が含まれています。

注

  • IPipelineComponentDescription インターフェイスの各メソッドは配列を返す必要があります。関連値がない場合、IPipelineComponentDescription インターフェイスは空の配列を返す必要があります。

関連項目

公開するインターフェイスを決める

IPipelineComponent インターフェイスを実装する

ATL コンポーネントを登録する

Active Template Library

MinMaxShip サンプル パイプライン コンポーネント


IPipelineComponent インターフェイスを実装する

すべてのパイプライン コンポーネントは IPipelineComponent インターフェイスを実装する必要があります。このインターフェイスは次のように定義されています。

// IPipelineComponent

STDMETHOD (Execute) (
    IDispatch*  pdispOrder,
    IDispatch*  pdispContext,
    LONG        lFlags,
    LONG*       plErrorLevel);

STDMETHOD (EnableDesign) (BOOL fEnable);

パイプラインはコンポーネントのインスタンスを作成するとき、コンポーネントの IPipelineComponent インターフェイス上のインターフェイス ポインタを要求し、このポインタを使ってそのコンポーネントの Execute メソッドを呼び出します。パイプラインは、そのパイプラインを通して渡される OrderForm オブジェクト上の IDispatch インターフェイス ポインタと、そのサイトのパイプ コンテキスト上の IDispatch インターフェイスをコンポーネントに渡します。パイプライン コンテキストとは、接続文字列やキャッシュ参照など、そのサイトのコンテキスト関連の各種情報への参照が含まれている Dictionary オブジェクトです。

IPipelineComponent インターフェイスは、ユーザーがプロジェクトにオブジェクトを追加するときに、ATL パイプライン コンポーネント ウィザードによってメソッド定義と実装 スタブが追加されるインターフェイスの 1 つです。コンポーネントに IPipelineComponent::Execute メソッドを実装するには、.cpp file ファイルを開いて、ATL パイプライン コンポーネント ウィザードにより設定された既定の実装を変更してください。

関連項目

公開するインターフェイスを決める

コンポーネントの有用性を高める

ATL コンポーネントを登録する

Active Template Library

MinMaxShip サンプル パイプライン コンポーネント


ATL コンポーネントを登録する

パイプライン コンポーネントの登録は、コンポーネントをパイプライン コンポーネントとして識別する処理、そのコンポーネントとの関連性を持つ 1 つまたは複数のステージを識別する処理、およびコンポーネントの名前とスレッド モデルを登録する処理から構成されます。

グローバル一意識別子 (GUID) はパイプライン内の各ステージを識別します。GUID は Pipe_stages.h ファイルで定義されています。コンポーネントを実装ファイルに登録するとき、これらの GUID も実装 ファイルに格納されます。

コンポーネントが関連性を持つステージを識別するには、新しいコンポーネントのクラス ID を Microsoft Windows NT レジストリの \HKEY_CLASSES_ROOT\CLSID\component_classid\implemented categories\stage_clsid レジストリ キーに書き込みます。stage_class_id は、コンポーネントが関連性を持つステージの GUID、component_class_id はそのコンポーネント自体のクラス ID です。

コンポーネントを登録するためのコードは、Microsoft Visual C++ でコンポーネント プロジェクトを作成するときに作成される DLLRegisterServer ルーチン内で呼び出すようにすることをお勧めします。

ATL パイプライン コンポーネント ウィザードは、コンポーネント ハウジングのためのスケルトン DllRegisterServer ルーチンを作成します。以上の作業でコンポーネントが登録されますが、パイプライン エディタがコンポーネントを適切に表示するように、さらにいくつかのキーをレジストリに追加する必要があります。

パイプライン エディタは、レジストリ内の Implemented Keys カテゴリを調べることにより、オブジェクトがパイプライン コンポーネントであるかどうかをチェックし、パイプライン コンポーネントであれば、そのオブジェクトをどのステージに含めることができるかをチェックします。Computil.cpp ファイル内にある RegisterCATID 関数を使うと登録が簡単になります。また、コンポーネントに表示される名前は、そのコンポーネントの AuxUserType\2 キーに基づいて決定されます。RegisterName 関数はこの登録を処理します。以下に DllRegisterServer ルーチン全体を示します。

STDAPI DllRegisterServer(void)
{
    HRESULT hr = S_OK;

    hr = _Module.RegisterServer(TRUE);

    if(FAILED(hr)) return hr;

    hr = RegisterCATID(CLSID_MinMaxShipping,
                       CATID_MSCSPIPELINE_COMPONENT);

    if(FAILED(hr)) return hr;

    hr = RegisterCATID(CLSID_MinMaxShipping,
                       CATID_MSCSPIPELINE_SHIPPING);

    if(FAILED(hr)) return hr;

    hr = RegisterName(CLSID_MinMaxShipping,L"MinMax.MinMaxShipping");
    if(FAILED(hr)) return hr;

    return hr;

}

その他のパイプライン ステージおよび機能については、その定数の Pipe_stages.h ファイルを参照してください。

関連項目

公開するインターフェイスを決める

コンポーネントの有用性を高める

IPipelineComponent インターフェイスを実装する

Active Template Library

MinMaxShip サンプル パイプライン コンポーネント


エラー レベル

パイプライン コンポーネントは次のいずれかの値を返します。

  • 1 = OPPERRORLEV_SUCCESS

  • 2 = OPPERRORLEV_WARN

  • 3 = OPPERRORLEV_FAIL

パイプラインは、そのパイプラインでこれまでに実行されたコンポーネントが返したエラー値のうちの最大値を記録します。パイプライン内の各ステージには、コンポーネントが許容する最大エラー レベルを示す属性がアタッチされています。現在のエラー レベルがこのステージの最大エラー レベル以下であれば、コンポーネントは IPipelineComponent::Execute メソッドを実行できます。

ステージに入るときに、ユーザー環境を改善するためにエラー レベルがチェックされます。たとえば、ユーザーが送付ステージ、税ステージ、および支払いステージを終了し、不正な情報を入力した結果、これらのステージの一部または全部でエラー レベル 3 が発生したとします。その場合、各ステージが終了するたびに警告を表示するのではなく、受注ステージでクレジット カードを処理する前に 1 回だけエラーをユーザーに通知することができます。これは、最大エラー レベル 2 の受注ステージでレベル 3 のエラーが発生すると、一度にすべてのエラーを通知する警告が表示されるためです。

関連項目

エラー処理


MinMaxShip サンプル パイプライン コンポーネント

MinMaxShip サンプルの目的は、パイプライン コンポーネントである注文処理パイプライン (OPP) との対話のデモを行うことと、Commerce Server 2000 での新しい送付コンポーネントのアーキテクチャのデモを行うことです。カスタム Commerce Server ビジネス デスク モジュールを更新することにより、呼び出された送付方法である MinMaxShip サンプルを既存の Commerce Server サイトに追加して、すぐに OPP の送付ステージで使えます。

ここでは、次のトピックについて説明します。

  • 仕様

  • MinMaxShip サンプルの使用方法


仕様

MinMaxShip オブジェクトは、COM インターフェイスのセットを注文処理パイプライン (OPP) に公開する Component Object Model (COM) オブジェクトです。

MinMaxShip サンプル オブジェクトは Commerce Server 2000 Software Development Kit (SDK) に含まれています。このオブジェクトは、送付に含まれる品目の標準価格を合計し、その合計値にあるパーセンテージを乗算し、その積を指定の最小値と比較するという順序で、すべての「処理する送付」の送付総額を計算します。この比較で大きい方の値がその送付の _shipping_total キーに格納されます。

Splitter コンポーネントを除くすべての送付コンポーネントは、ShippingMethodRouter パイプライン コンポーネントと一緒に登録することをお勧めします。Splitter コンポーネントは、パイプライン エディタおよびコードから構成することをお勧めします。それ以外のコンポーネントは、ビジネス デスク送付方法モジュールから構成することをお勧めします。

関連項目

MinMaxShip サンプルの使用方法


MinMaxShip サンプルの使用方法

MinMaxShip サンプルは、Order Processing サンプル ディレクトリ内の MinMaxShip ディレクトリにあります。たとえば、C:\Program Files\Microsoft Commerce Server\SDK\Samples\Order Processing\MinMaxShip です。MinMaxShip ディレクトリでは、Visual Basic コードは VB という名前のフォルダにあり、C++ コードは ATL という名前のフォルダにあります。

Visual Basic サンプルを作成するには

Visual C++ ATL サンプルを作成するには

MinMaxShip サンプルを実行するには

Visual Basic サンプルを作成するには

  1. [スタート] をクリックし、[プログラム] をポイントします。次に、[Microsoft Visual Studio] をポイントし、[Microsoft Visual Basic] をクリックします。

  2. [ファイル] メニューの [開く] をクリックし、MinMaxShipVB.vbp ファイルが格納されているディレクトリに移動します。たとえば、C:\Program Files\Microsoft Commerce Server\SDK\Samples\Order Processing\MinMaxShip\VB に移動します。MinMaxShipVB.vbp ファイルを選択します。

  3. [ファイル] メニューの [MinMaxShipVB.dll の作成] をクリックします。

  4. プロジェクトが作成されたら、[ファイル] メニューの [終了] をクリックします。

Visual Basic MinMaxShip サンプルがコンピュータ上に作成されています。

Visual C++ ATL サンプルを作成するには

  1. [スタート] をクリックし、[プログラム] をポイントします。次に、[Microsoft Visual Studio] をポイントし、[Microsoft Visual C++] をクリックします。

  2. [ファイル] メニューの [開く] をクリックし、MinMaxShip.dsw ファイルが格納されているディレクトリに移動します。たとえば、C:\Program Files\Microsoft Commerce Server\SDK\Samples\Order Processing\MinMaxShip\ATL に移動します。MinMaxShip.dsw ファイルを選択します。

  3. [作成] メニューの [MinMaxShip.dll の作成] をクリックします。

  4. プロジェクトの実行可能ファイルを作成したら、[ファイル] メニューの [ワークスペースの保存] をクリックします。

  5. プログラムを閉じるには、[ファイル] メニューの [終了] をクリックします。

ATL MinMaxShip サンプルがコンピュータ上に作成されています。

サンプルの実行

MinMaxShip サンプルに対しては、最初に、Commerce Server 2000 ソリューション サイトのいずれか 1 つをインストールする必要があります。これらのサイトの 1 つをインストールした後、ビジネス デスク ファイルが格納されているディレクトリに移動し、以下の手順を実行します。

MinMaxShip サンプルを実行するには

  1. MinMax_edit.asp ファイルを MinMaxShip ディレクトリ内の BizDesk ディレクトリから、インストールしたサイトのビジネス デスク内の Shipping ディレクトリにコピーします。たとえば、MinMax_edit.asp を C:\Program Files\Microsoft Commerce Server\SDK\Samples\Order Processing\MinMaxShip\BizDesk から C:\InetPub\wwwroot\RetailBizDesk\Shipping にコピーします。

  2. Shipping_methods.xml ファイルを MinMaxShip ディレクトリ内のビジネス デスク ディレクトリから、インストールしたサイトのビジネス デスク内の Config ディレクトリにコピーします。たとえば、Shipping_methods.xml を C:\Program Files\Microsoft Commerce Server\SDK\Samples\Order Processing\MinMaxShip\BizDesk から C:\InetPub\wwwroot\RetailBizDesk\Config にコピーします。

  3. Visual Basicサンプルを実行する場合は、MinMax_edit.asp ファイルを開き、以下のコード行を変更する必要があります。
    g_sProgID = "commerce.minmaxshipatl.1"

    次のように変更します。

    g_sProgID = "commerce.MinmaxShipVB"

    注

    • この手順は、Visual C++ ATL サンプルの場合には必要ありません。

カスタム送付方法モジュールを更新した後、それを使って "MinMaxShip" という新しい送付方法を構成できます。

関連項目

仕様


サード パーティの商品カタログを統合する

既存の商品カタログ データを Commerce Server 2000 で使うには、一般的に 2 つの方法があります。1 つは Commerce Server の商品カタログ システムにデータを移行する方法で、もう 1 つはアプリケーション プログラミング インターフェイス (API) を通して既存のカタログ システムまたはサード パーティのカタログ システムを Commerce Server 2000 に統合して、Commerce Server 2000 の商品カタログ システムをそれらのカタログ システムに置き換える方法です。どちらの方法を選択するかは、いくつかの要因によって決まります。

既存のカタログ システムを Commerce Server 2000 に統合する場合、Commerce Server のコンポーネント、および場合によっては既存のカタログ システムのコンポーネントに対して、修正や置き換えなどのプログラミングの作業が必要になります。

最も単純な方法でデータを移行するには、既存データを拡張マークアップ言語 (XML) またはカンマ区切り値 (CSV) 形式に変換する必要があります。この変換の難易度は、既存データの形式と整合性によって異なります。商品カタログ データのサイズと複雑さは、変換処理の所要時間の長さに直接影響を及ぼします。既存の商品カタログ データを移行する方法は、ほかにもあります。Microsoft BizTalk Server またはデータ変換サービス (DTS) による統合ソリューションを使うことも、別のプロトコルを介して商品カタログ データを転送することもできます。どの方法を選ぶかは、利用できるリソースと専門技術によって決まります。カタログ データのインポートの詳細については、「カタログをインポートする」を参照してください。

サード パーティのカタログを Commerce Server 2000 に統合するには、既存のカタログに対して Commerce Server の QueryCatalogInfo パイプラインの役割を果たすパイプライン コンポーネントを用意して、次の Commerce Server コンポーネントと統合する必要があります。

  • キャンペーンと統合する : 外部商品カタログからマーケティング コンポーネントに商品データを渡して評価する方法を説明します。

  • データ ウェアハウスと統合する : データ ウェアハウスについて説明すると共に、カタログ スキーマに合わせてデータ ウェアハウス スキーマを修正する方法を説明します。

  • バスケットと統合する : バスケット コンポーネントが QueryCatalogInfo コンポーネントを通して商品カタログから商品の詳細情報を受け取る方法、および、このコンポーネントを、既存のカタログから情報を提供するパイプライン コンポーネントに置き換える方法を説明します。

  • アプリケーションを統合する : 既存のカタログ システムで使うために、ソリューション サイトの Commerce Server 2000 のカタログ API 呼び出しを置き換える方法を説明します。

  • ビジネス デスクのカタログ モジュールと統合する : 既存のカタログ システムの管理に使うために、Commerce Server ビジネス デスクを修正する方法を説明します。Commerce Server ビジネス デスクは、商品カタログ システムの Web ベースの管理システムです。


キャンペーンと統合する

ExpressionBuilder HTML コンポーネント (HTC) は、対象を指定した割引をカタログの商品に適用する式を作成するために、Commerce Server ビジネス デスクのキャンペーン カテゴリ内で使います。式を使って、割引に適した商品、または割引の特典が適用される商品を指定します。これらの式には名前を付け、XML の表現形式で式ストアに保存します。サード パーティのカタログの場合、式ビルダに合わせてカタログ内のProduct プロパティを記述した XML プロファイルを用意する必要があります。

QueryCatalogInfo パイプライン コンポーネントは、カスタム カタログ システムに対して実行される同等の機能に置き換える必要があります。このパイプライン コンポーネントは、外部カタログから Order ディクショナリにデータを格納するときに、式を評価するために使います。

関連項目

ExpressionBuilder

ExpressionEval オブジェクト


データ ウェアハウスと統合する

サード パーティの商品カタログで使うために、次のデータ ウェアハウス コンポーネントを拡張する必要があります。

  • スキーマを定義する。データ スキーマは、Commerce Server OLE DB プロバイダを使って、適切に定義する必要があります。詳細については、「データ ウェアハウスを拡張する」を参照してください。

  • データをインポートする。カタログ データをデータ ウェアハウスに格納するには、カタログ データ インポート (Commerce Server) データ変換サービス (DTS) タスクを実行します。サード パーティのカタログからデータ ウェアハウスにデータをインポートするには、カスタム スクリプトまたはアプリケーションを作成する必要があります。詳細については、「データ ウェアハウスにデータをインポートする」を参照してください。

  • 分析用データを準備する。データ ウェアハウスのデータを分析するには、まずデータを Microsoft オンライン分析処理 (OLAP) サーバーにエクスポートし、マルチ ディメンション キューブに格納します。詳細については、「OLAP Server で分析するデータを準備する」を参照してください。

  • レポートを修正または作成する。商品カタログのデータを使うレポートが、サード パーティのカタログを使えるようにするために、そのレポートを修正するか、または置き換える必要もあります。詳細については、「カスタム レポートを作成する｣を参照してください。


バスケットと統合する

ユーザーがバスケットに品目を入れると、QueryCatalogInfo パイプライン コンポーネントによって、その品目の商品情報がカタログ データベースからバスケットに転送されます。既存のカタログからバスケットに商品情報を転送するパイプライン コンポーネントを用意する必要があります。

注

  • 既存のカタログ システムがデータベースのクエリまたはテーブルに基づいている場合は、データ構造の複雑さにもよりますが、QueryProductInfoADO パイプライン コンポーネントを使うこともできます。

代替コンポーネントは、商品キー (SKU など) に基づいて、バスケットの各品目に適切なカタログ データをコピーする必要があります。また、このコンポーネントは、カタログ データをコピーするときに、書き込まれる各ディクショナリ キーに "_product_" というプレフィックスを付ける必要があります。たとえば、商品の説明であれば、item._product_description にコピーされます。通常、ここで書き込まれるデータには、少なくとも _product_list_price が含まれなければなりません。このほか、説明、税コード、重量などを含めることもできます。

SKU などのキーがカタログ システム内に見つからない場合、コンポーネントはその品目に対して delete というキーに 1 という値を書き込みます。その後、エラーの状態は RequiredProdInfo パイプライン コンポーネントによって処理されます。


アプリケーションを統合する

Commerce Server ソリューション サイトは、いくつかの箇所で Commerce Server のカタログ管理システム API と直接インターフェイスをとります。これらのアプリケーションを既存のカタログ システムで使用する場合、Commerce Server のカタログ API への呼び出しはすべて、サード パーティのカタログ API に置き換える必要があります。


ビジネス デスクのカタログ モジュールと統合する

カタログを管理するための Commerce Server ビジネス デスク モジュールは、Commerce Server のカタログ管理システムに固有のモジュールです。既存のカタログとインターフェイスをとるために、ビジネス デスク カタログ管理モジュールの代替モジュールを作成することができます。既存のカタログに管理インターフェイスまたは管理ツールが既にある場合は、それらを置き換えたり補足して、代替モジュールを作成します。

詳細については、「ビジネス デスク モジュールを構築する｣を参照してください。


コンテンツ選択フレームワークを拡張する

コンテンツ選択フレームワーク (CSF) は、インターネット上に対象化コンテンツ配信アプリケーションを作成するためのプラットフォーム レベルのフレームワークです。Microsoft Commerce Server 2000 の広告と割引の対象化機能は、CSF を使って作成されます。CSF は、新しい種類のコンテンツ配信アプリケーションを作成する手段を提供しているので、広告と割引の配信システムのカスタマイズと拡張が簡単にできます。

ここでは、次のトピックについて説明します。

  • コンテンツ選択フレームワークの機能を拡張する : CSF のスコアリング、選択、記録、およびキャッシュ読み込みの各機能を拡張する方法を説明します。

  • コンテンツ選択フレームワークの概念 : CSF のスコアリング、フィルタ処理、追跡とデバッグ、選択、書式設定、およびイベント記録について説明します。

  • コンテンツ選択フレームワークのオブジェクトとコンポーネント : CSF のオブジェクトとコンポーネントの機能について説明します。

  • 対象化広告の要求ライフサイクル : 広告を対象化する手順について説明します。

  • コンテンツ選択フレームワークのパフォーマンスと拡張性 : CSF に対するカスタム拡張によって最大限のパフォーマンスを維持する方法を説明します。

  • CSF ヘッドラインのサンプルを作成する : カスタム CSF ヘッドラインのサンプルのインストール方法と実行方法を説明します。

  • コンテンツ選択フレームワーク コンポーネント リファレンス : CacheManager オブジェクト、CSF パイプライン、およびフレームワークに関連付けられたコンポーネントを一覧表示します。


コンテンツ選択フレームワークの機能を拡張する

ここでは、コンテンツ選択フレームワーク (CSF) を拡張する方法をいくつか説明します。CSF はパイプライン上に構築されるため、多様な方法で拡張できます。たとえば、スコアリング、選択、記録、キャッシュ読み込みなどを拡張できます。

スコアリング

選択

記録

キャッシュ読み込み

スコアリング

さまざまな方法でコンテンツのスコアを付けるパイプライン コンポーネントを作成できます。一例としては、CSF ヘッドラインのサンプルのスコアリング用コンポーネントがあります。このサンプルは、ヘッドラインの公開日と優先度を考慮して、ヘッドラインのnobr>スコアを計算します。汎用的なスコアリング用コンポーネントを作成することもできます。たとえば、ニューラル ネットワーク テクノロジを使ったスコアリング用コンポーネントなどです。このようなコンポーネントは、コンテンツがクリックされる可能性、またはサイトで購入される可能性に基づいて、コンテンツのスコアを付けることを目的とします。

選択

SelectWinners パイプライン コンポーネントは、汎用的なコンテンツを選択するときに、決定論的な選択アルゴリズムを使って、スコアの最も高いコンテンツ項目を選択します。代わりに、各コンテンツ項目のスコアを確率として扱い、その中から乱数ジェネレータを使って選択を行う選択用コンポーネントを新しく作成することもできます。

記録

Commerce Server 2000 では、広告などのコンテンツ イベントをインターネット インフォメーション サービス (IIS) 5.0 のログ ファイルに記録し、Campaigns データベースでこれらのイベントのカウントをほぼリアルタイムに集計します。この機能を拡張して、サードパーティの在庫管理モジュールでも利用できる統計的なサンプリングを提供できます。あるいは、サードパーティの監査企業と提携していて、その企業から提供されるプラグインのパイプライン コンポーネントに別の種類のイベント ログ機能がある場合は、データベースに広告イベントを記録すると、この機能を拡張できます。

キャッシュ読み込み

Campaigns データベースのスキーマに含まれていないディメンションを追加的に対象化する場合、LoadAdvertisements コンポーネントまたは LoadDiscounts コンポーネントで使われているクエリを無効にして、新しいディメンションを SELECT クエリのリストに追加できます。たとえば、複数の Web サイトで広告を掲載するときに、それらの広告を同じ Campaigns データベースからすべて掲載する場合は、Site というディメンションを追加します。そして、各サイトでは、WHERE Site = 'サイト名' 句の部分だけが異なるクエリを使います。あるいは、サイトの各広告を株相場表示ティッカーに関連付ける場合は、クエリに ticker ディメンションを追加し、これを使って FilterContent コンポーネントで実行されるフィルタを作成します。


コンテンツ選択フレームワークの概念

Commerce Server 2000 を最大限活用するには、コンテンツ選択フレームワーク (CSF) の基本概念を理解することが重要です。

スコアリング

フィルタ処理

追跡とデバッグ

選択

書式設定

イベント記録

スコアリング

CSF のコンテンツ選択処理は、コンテンツ項目のスコアを付け、そのスコアに基づいて "落札者" を選択する処理です。各コンテンツ項目のスコアは浮動小数点数で、ContentList オブジェクトによって管理されます。コンテンツ項目のスコアが 0 の場合、そのコンテンツ項目はどのような状況でも選択されないことを意味します。

CSF パイプラインには、コンテンツ項目のスコアを操作するためのステージが 2 つあります。1 つは各項目に初期スコアを割り当てるためのステージで、もう 1 つは対象化の条件に基づいてスコアを調整するためのステージです。Initial Scoring ステージにコンポーネントがない場合、すべてのコンテンツ項目に 1.0 という初期スコアが付きます。スコアリング ステージで行われるスコア調整では、掛け算が行われます。1.0 より小さい乗数を使うとコンテンツ項目のスコアを減らすことができ、1.0 より大きい乗数を使うと増やすことができます。また、0.0 という乗数を使うとコンテンツ項目を以後の処理対象から排除することができます。

フィルタ処理

フィルタ処理は、ContentListFactory オブジェクトに含まれるコンテンツに作成されたインデックスを使って、コンテンツ項目を排除する処理です。フィルタはあらかじめ作成されたインデックスを使うため、式の評価よりかなり効率がよくなります。その代わりに柔軟性は低下します。Commerce Server の広告と割引のパイプラインでは、フィルタは Page Group ディメンションと Content Size ディメンションに対して使われますが、ContentList オブジェクト スキーマ内の文字列型、Integer 型、または Array 型のどの列に対してもフィルタ処理を行うように拡張することもできます。フィルタは、特定の列値を持つコンテンツ項目を求めるか、または除外することができます。また、フィルタは、値のセットを使うこともできます。この場合、フィルタ条件を満たすセット内のいずれかの値を持つコンテンツ項目が通過します。

追跡とデバッグ

なぜ特定のコンテンツ項目が選択されて、ほかのコンテンツ項目が選択されなかったのかを確認することが困難な場合があります。コンテンツ配信アプリケーションのデバッグや微調整を行うために、パイプラインでの追跡を有効にすることができます。追跡を有効にするには、ContentSelector オブジェクトの Trace プロパティを True に設定します。追跡が有効になると、コンテンツの項目に対するスコアの変更がすべて追跡されます。スコアリングを行うコンポーネントは、追跡が有効になっているかどうかを確認し、有効になっている場合は、ContentList オブジェクトの SetScore メソッドまたは AdjustScore メソッドを呼び出すときに、説明を含む文字列を渡す必要があります。Commerce Server 2000 Software Development Kit (SDK) に含まれる TraceScores.asp というファイルを使って、各コンテンツ項目の追跡文字列と最終スコアを表示することができます。追跡はデバッグのためだけに使い、実際の運用時には使わないでください。Trace フラグがオンになっているときは、CSF パイプラインのパフォーマンスが著しく低下します。

OrderPipeline オブジェクト自体にも簡単なログ機能があるので、どのような値がパイプラインを通過して Order ディクショナリと Context ディクショナリに対して読み書きされるかを確認することができます。このようなデバッグ ログ機能を有効にするには、パイプラインの SetLogFile メソッドを呼び出します。

選択

スコアの調整が終了したら、CSF パイプラインは "落札者" を選択します。Commerce Server に用意されている SelectWinners コンポーネントでは、広告は汎用的なコンテンツ項目とは区別して扱われます。汎用的なコンテンツ項目の場合は、単純に最も高いスコアの項目が選択されます。広告の場合は、最初に自社広告または有料広告のどちらを表示するかが決定されます。有料広告の場合は、その広告を最も高いスコアにします。自社広告の場合は、すべての自社広告の優先度を確率として扱い、その中から無作為に選択されます。また、SelectWinners コンポーネントでは、競合する広告が同じページに掲載されないようにしたり、PageHistory 文字列を使って同じページに同じコンテンツ項目が何度も選択されないようにしたりすることもできます。

書式設定

選択されたコンテンツ項目は、ページに返される前に文字列として書式設定される必要があります。書式設定により、コンテンツ項目のプロパティとグローバル レベルおよびページ レベルのコンテキストのプロパティがまとめられ、提供されるテンプレートへの挿入文字列として使われます。書式設定の結果は、文字列値の SimpleList オブジェクトになり、リストの各エントリにはコンテンツ項目を表す文字列が入ります。書式設定処理の詳細については、「FormatTemplate」を参照してください。

イベント記録

広告が配信またはクリックされたときには、そのイベントを記録する必要があります。広告の表示頻度 (NOD) アルゴリズムは、このイベント情報を使って広告のスコアを計算します。これらのイベントは、RecordEvent コンポーネントによってパフォーマンス ディクショナリというメモリ内の Dictionary オブジェクトに記録されます。これらのイベントは、次回のキャッシュ更新時に、CSFWriteEvents コンポーネントによってデータベースに書き込まれます。IISAppendToLog コンポーネントも、これらのイベントをインターネット インフォメーション サービス (IIS) 5.0 のログ ファイルに記録して、後で Commerce Server のデータ ウェアハウスにインポートできるようにします。


コンテンツ選択フレームワークのオブジェクトとコンポーネント

コンテンツ選択フレームワーク (CSF) のオブジェクトとコンポーネントは、対象化されたコンテンツのスコアリング、フィルタ処理、および選択に関連付けられたタスクをすべて実行します。

CacheManager オブジェクト

ContentList オブジェクトと ContentListFactory オブジェクト

ContentSelector オブジェクト

パイプラインとパイプライン コンポーネント

式エバリュエータ コンポーネント

User オブジェクト

対象とするコンテキスト プロファイル

データ ウェアハウスと分析レポート

CacheManager オブジェクト

CacheManager オブジェクトは、簡単なキャッシュ管理サービスを提供します。このオブジェクトによって、定期的に Component Object Model (COM) コンポーネントを呼び出し、コンテンツ配信処理で使われる情報をキャッシュ オブジェクト (通常は Dictionary コンポーネント) に入れることができます。また、コンテンツ配信処理中に収集した情報、たとえば、広告イベント (広告要求、広告クリックなど) のカウントを書き出すためのコンポーネントも呼び出すことができます。Loader コンポーネントおよび Writer コンポーネントと呼ばれるこれらの COM コンポーネントを作成する方法については、「カスタム キャッシュ コンポーネントを実装するためのコード」を参照してください。

ContentList オブジェクトと ContentListFactory オブジェクト

CacheManager オブジェクトによって呼び出されるキャッシュ ローダー COM コンポーネントは通常、ContentListFactory オブジェクトを作成します。この ContentListFactory オブジェクトには、選択可能なコンテンツがすべて含まれます。ContentListFactory オブジェクトは、ContentSelector オブジェクトからのコンテンツ要求ごとに、その要求だけで使われる 1 つの ContentList オブジェクトを新しく作成します。ContentList オブジェクトは、ContentListFactory オブジェクト内のコンテンツに対するスコアリングとフィルタ処理を行うメソッドを提供します。

ContentSelector オブジェクト

ContentSelector オブジェクトは、サイトで表示されるすべての種類の動的コンテンツと対象化コンテンツを選択するための統一インターフェイスです。ContentSelector オブジェクトは、拡張可能なグローバル レベルおよびページ レベルのプロパティのセットをコンテンツ選択パイプラインに渡すための手段を提供します。ContentSelector オブジェクトは適切なパイプライン オブジェクトを呼び出し、結果のコンテンツを SimpleList オブジェクトとして返します。SimpleList オブジェクトは通常、HTML または XML の形式に書式設定されたコンテンツの文字列です。

パイプラインとパイプライン コンポーネント

コンテンツ選択の主要な処理はパイプラインで行われます。コンテンツ選択パイプラインは、スコアリング、選択、書式設定などのステージに分けられます。これらのステージにプラグインするカスタム パイプライン コンポーネントを作成して、既存の Commerce Server 2000 CSF パイプライン コンポーネントの機能を置き換えたり、既定の動作を補強したりすることができます。

Scriptor コンポーネントを使うと、Microsoft Visual Basic Scripting Edition (VBScript) または JScript のパイプライン コンポーネントのプロトタイプを作成することができます。パイプラインは、広告要求、広告クリックなどのコンテンツ選択に関連するイベントを記録するために CSF でも使われます。CSF パイプラインのステージおよび Commerce Server に用意されている CSF パイプライン コンポーネントの詳細については、「コンテンツ選択パイプライン」を参照してください。Commerce Server 2000 Software Development Kit (SDK) を使ってパイプライン コンポーネントを作成する方法については、「パイプライン コンポーネントを構築する」を参照してください。

式エバリュエータ コンポーネント

式エバリュエータ Expression Evaluator コンポーネントは、サイトのコンテンツの対象化に柔軟性を与えます。式は Commerce Server ビジネス デスクに作成され、対象グループによりグループ化され、サイトで選択可能なコンテンツ項目に関連付けられます。実行時に、EvalTargetGroups コンポーネントが各対象グループの式を評価し、ContentList オブジェクト内のコンテンツ項目のスコアを調整します。たとえば、好きなスポーツがフットボールで 18 歳以上のユーザーにのみ広告を表示するような場合、式はコンテンツ項目の目標を表していると見なすことができます。

User オブジェクト

サイトのユーザーを対象化するには、ユーザーに関する情報を保存し、実行時にその情報を取得する必要があります。これを実行するための手段は、プロファイル リソースおよび関連付けられたプロファイル オブジェクトにより提供されます。設計時に、ビジネス デスクと Commerce Server マネージャのプロファイル リソースで利用できるプロファイル デザイナ モジュールを使うと、User オブジェクトのプロファイル定義で利用できるプロパティの管理と拡張が可能になります。

対象とするコンテキスト プロファイル

サイトのユーザーを対象化することに加え、コンテンツ要求のコンテキストを表すそのほかの情報を対象化することもできます。たとえば、特定のドメインからサイトを訪問しているユーザーを対象化するコンテンツ、サイトの特定のページまたはページ グループを対象化するコンテンツ、および特定の検索キーワードが指定されたページを対象化するコンテンツなどが考えられます。

ContentSelector オブジェクトは、CSF コンテンツ選択へのインターフェイスの役割に加え、式またはフィルタによって対象化するコンテキスト プロパティを設定するためのプロパティ バッグの役割も果たします。設計時に、ビジネス デスクと Commerce Server マネージャで利用できるプロファイル デザイナ モジュールを使うと、コンテキスト プロファイルで利用できるプロパティの管理と拡張が可能になります。

データ ウェアハウスと分析レポート

コンテンツ選択フレームワークを使うと、コンテンツ選択に関連付けられたイベント データをサイトの IIS ログ ファイルに記録できます。このログ ファイルは、レポート作成のためにデータ ウェアハウスにインポートすることができます。データ ウェアハウスに保存されたユーザーとサイトのデータに関するレポートを実行するには、ビジネス デスクの分析モジュールを使います。レポート結果は、Web サイトのパフォーマンスについてビジネス分析を行うために使います。


対象化広告の要求ライフサイクル

ここでは、サイトに配信する対象化広告を取得するために、コンテンツ選択フレームワーク (CSF) で行われる手順を説明します。割引の選択処理も同様です。ただし、AdvertisingNeedOfDelivery コンポーネントの代わりに、ScoreDiscounts コンポーネントが使われます。

ユーザーが ASP Web ページにアクセスする

ユーザーが広告をクリックする

CacheManager オブジェクトのバックグラウンド スレッドが発生する

ユーザーが ASP Web ページにアクセスする

  1. ASP ページのコードが ContentSelector オブジェクト (CSO) を作成します。

  2. ASP ページのコードが CSO ページ コンテキスト プロパティを設定します。

  3. ASP ページのコードが CSO.GetContent メソッドを呼び出します。

  4. CSO が広告パイプラインを呼び出します。

  5. InitCSFPipeline コンポーネントが CacheManager.GetCache メソッドを呼び出します。

  6. CacheManager オブジェクトが CSFLoadAdvertisements コンポーネントを呼び出します (初回のみ)。

  7. InitCSFPipeline コンポーネントがいくつかのページとグローバル コンテキスト プロパティを Pipe Context ディクショナリにコピーします。

  8. InitCSFPipeline コンポーネントが Size プロパティと PageGroups プロパティに対するフィルタを作成します。

  9. LoadHistory コンポーネントがユーザー固有の履歴文字列を読み込みます。

  10. FilterContent コンポーネントがフィルタを適用します。

  11. AdvertisingNeedOfDelivery コンポーネントが、広告の開始日付と終了日付、広告掲載時間、および今日までのイベントの処理数に基づいて、各広告に初期スコアを割り当てます。

  12. HistoryPenalty コンポーネントが、現在のユーザーに既に表示されたことのある広告に対してペナルティを課し、表示上限回数が守られるようにします。

  13. EvalTargetGroups コンポーネントが対象化グループを評価し、スコアを調整します。

  14. SelectWinners コンポーネントが 1 つ以上の落札広告を選択します。SelectWinners コンポーネントは業種の競合を回避すると共に、PageHistory 文字列を使って同じページに同じ広告が何度も表示されないようにします。

  15. RecordEvent コンポーネントがイベントをメモリ内のパフォーマンス ディクショナリに記録します。

  16. IISAppendToLog コンポーネントがイベントを IIS ログ ファイルに記録します。

  17. RecordHistory コンポーネントがイベントをユーザー固有の履歴文字列に記録します。

  18. SaveHistory コンポーネントがユーザー固有の履歴文字列を保存します。

  19. FormatTemplate コンポーネントが、テンプレートを使って選択された広告を書式設定することにより、広告のプロパティ、ページ コンテキスト、およびグローバル コンテキストをまとめ、結果の文字列を SimpleList オブジェクトに入れます。

  20. CSO は、書式設定された広告の SimpleList オブジェクトを返します。

  21. コンテンツが ASP ページに表示されます。

ユーザーが広告をクリックする

  1. Redir.asp ページが呼び出されます。

  2. Redir.asp ページが RecordEvent コンポーネントを呼び出します。

  3. RecordEvent コンポーネントと IISAppendToLog コンポーネントが呼び出されます。

  4. コンテンツが ASP ページに表示されます。

CacheManager オブジェクトのバックグラウンド スレッドが発生する

  1. CSFWriteEvents コンポーネントが、メモリ内のパフォーマンス ディクショナリのイベントをデータベースにフラッシュします。

  2. CSFLoadAdvertisements コンポーネントが新しい広告情報を読み込みます。この情報には、表示頻度 (NOD) の計算に使う最新のイベント カウント集計も含まれます。

関連項目

ContentSelector オブジェクトのサンプル コード


コンテンツ選択フレームワークのパフォーマンスと拡張性

ここでは、コンテンツ選択フレームワーク (CSF) に対するカスタム拡張によって最大限のパフォーマンスを維持する方法についてのヒントを示します。

パイプライン コンポーネントをフリースレッドにして、プール可能として指定する

Microsoft Visual Basic 6.0 を使って CSF パイプライン コンポーネントを作成することは可能ですが、お勧めできません。Visual Basic コンポーネントは常にアパートメント スレッドになるので、パイプラインはコンテンツ要求ごとにコンポーネントの新しいインスタンスを作成する必要があります。最大限のパフォーマンスを得るには、Microsoft Visual C++ で Active Template Library (ATL) を使ってパイプライン コンポーネントを実装します。そのコンポーネントを both-threaded にして、Component Object Model (COM) の CATID_POOLABLE カテゴリをコンポーネントの登録情報に追加することによって、そのコンポーネントがプール可能であることを必ずパイプラインに指示します。

要求ごとのデータベース アクセスを避ける

パフォーマンス上の理由から、CSF は、コンテンツ要求ごとにデータベースまたはディスクにアクセスすることを避けるように設計されています。代わりに、CSF は、コンテンツをすべてメモリ内の ContentListFactory オブジェクトと Dictionary オブジェクトにキャッシュします。また、キャンペーン項目のイベント データをキューに登録して、次のキャッシュ更新のときにそれを書き出します。CSF を独自に拡張する場合は、この設計上のポイントをできる限り変更しないようにします。

コンテンツが多すぎて単一のメモリ内のキャッシュに収まらない

CSF で扱うコンテンツの量が多くなりすぎると、すべてのコンテンツを単一の ContentListFactory オブジェクトに保存することができなくなる場合があります。たとえば、扱う対象のコンテンツ項目が 1000 を超える場合は、複数のコンテンツ キャッシュにセグメント化されなければなりません。ページ グループ、サイト名など、セグメント化に使用できるディメンションを検討します。

別の方法としては、CSF パイプラインの Load Context ステージで、Microsoft SQL Server 2000 データベースなどのコンテンツ ストアに対するクエリを作成します。このクエリの結果を使って、コンテンツの小さなサブセットを含む、要求に固有の ContentListFactory オブジェクトを作成します。この方法を使う場合は、フィルタ処理をクエリの一部として組み込み、ContentListFactory オブジェクトが作成されるたびに新しいインデックスが作成されないようにします。

フィルタ処理を式の評価より優先する

対象化によく使うディメンションがサイトにある場合、そのディメンションの対象化には、式の代わりにフィルタを使うことを検討します。フィルタは ContentListFactory オブジェクトにあらかじめ作成されているインデックスを使うため、式よりも効率的です。ただし、一般的にフィルタはサイトの開発者に設定してもらう必要があるのに対して、式の場合はビジネス マネージャでも作成と管理ができます。

"じょうご効果"

フィルタ処理とスコアリングの操作をパフォーマンス コストの小さいものから順に並べてみてください。最初はフィルタ処理になります (CSF パイプラインでフィルタ処理が最初にあるのはこのためです)。次は表示上限回数の適用などの簡単なスコアリングが続きます。一般的に、最後は式の評価になります。通常、これがパフォーマンス コストの最も大きい処理になるためです。最終目標は、できるだけ多くのコンテンツをできるだけ早い時点で排除してしまうことです。たとえば、サイトで複数の広告バナー サイズが使われる場合でも、通常、ユーザーはそのうちの 1 つに対してだけ要求するので、要求したサイズに一致しない広告はフィルタを使ってすばやく排除します。このようにフィルタ処理を適用できる機会がほかにもあるかどうか検討してみてください。


CSF ヘッドラインのサンプルを作成する

Commerce Server 2000 Software Development Kit (SDK) には、 CSF ヘッドラインというサンプルがあります。このサンプルには、対象化されたニュース ヘッドラインをサイト上に表示するためのコンポーネントが含まれています。これには、スコアリング パイプライン コンポーネントと、ヘッドラインを読み込んで ContentListFactory オブジェクトを作成するカスタム キャッシュ ローダー コンポーネントがあります。

ここでは、次のトピックについて説明します。

  • 手順 1 : CSF ヘッドラインのサンプルをインストールする

  • 手順 2 : CSF ヘッドラインのサンプルを使うために SQL Server を準備する

  • 手順 3 : CSF ヘッドラインのサンプルを使うために CSF コンポーネントを準備する

  • 手順 4 : CSF ヘッドラインのサンプルを実行する


手順 1 : CSF ヘッドラインのサンプルをインストールする

CSF ヘッドラインのサンプルをインストールするには、次の手順を実行します。

CSF ヘッドラインのサンプルをインストールするには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[Commerce サイト パッケージャ] をクリックします。

  2. [Commerce Server サイト パッケージャ] ダイアログ ボックスで、[パッケージ ファイル (.pup) からアンパックする] をクリックし、[次へ] をクリックします。

  3. [アンパック] ダイアログ ボックスで、[参照] をクリックします。

  4. [開く] ダイアログ ボックスで <ドライブ:>\Program Files\Microsoft Commerce Server\PuP Packages に移動し、Blank.pup を選択して [開く] をクリックします。

  5. [アンパック] ダイアログ ボックスに戻ったら、[カスタム] をクリックし、[次へ] をクリックします。

  6. [アンパック方法] ダイアログボックスで、[新しいサイトの作成] をクリックし、[次へ] をクリックします。

  7. [サイト名] 画面の [サイト名] ボックスに「CSFHeadlines」と入力し、[次へ] をクリックします。

  8. [リソースの選択] 画面では、既定の設定をそのまま使用し、[次へ] をクリックします。既定の設定では、[アンパックするリソース] ボックス内のすべてのリソースがアンパックされます。

  9. [グローバル リソース ポインタ] 画面では、既定の設定をそのまま使用し、[次へ] をクリックします。

  10. [データ ベースの接続文字列] 画面では、既定の設定をそのまま使用し、[次へ] をクリックします。

  11. [Commerce Server サイト パッケージャ] ダイアログ ボックスで、次の操作を行います。
    項目 | 操作
    [SQL ユーザー名] | SQL Server ユーザー名を入力します。
    [SQL パスワード] | SQL Server ユーザー パスワードを入力します。

  12. [OK] をクリックします。

  13. [アプリケーションの選択] 画面では、既定の設定をそのまま使用し、[次へ] をクリックします。

  14. [IIS Web サイトおよび仮想ディレクトリを選択します] 画面で、blanksite という値が入っている [IIS 仮想ディレクトリ] ボックスに「CSFHeadlines」と入力します。

  15. [アプリケーション] ボックスで [BlankBizDesk] をクリックし、blankbizdesk という値が入っている [IIS 仮想ディレクトリ] ボックスに「CSFHeadlinesBizDesk」と入力し、[OK] をクリックします。

  16. 以後のダイアログ ボックスでは、すべて既定の設定をそのまま使用し、[Unpackaging is complete!] ダイアログ ボックスが表示されるまで [次へ] をクリックします。

  17. [Commerce Server サイト パッケージャ] 画面を閉じるには、[完了] をクリックします。

ASP スクリプトとパイプライン ディレクトリを更新するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [アクセサリ] をポイントし、[エクスプローラ] をクリックします。

  2. GLOBAL.ASA、DEFAULT.ASP、DUMPCONTENTLIST.ASP、および TESTHEADLINESLOADER.ASP の各ファイルを <ドライブ:>\Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Headlines\Web から <ドライブ:>\Inetpub\wwwroot\CSFHeadlines にコピーします。

  3. [ファイルの上書きの確認] ダイアログ ボックスで、[すべて上書き] をクリックします。

  4. パイプライン ディレクトリとその中のファイルを <ドライブ:>\Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Headlines\SQL\Web から <ドライブ:>\Inetpub\wwwroot\CSFHeadlinesBizDesk にコピーします。

サイトのアンパックの詳細については、「サイトを追加する」を参照してください。アンパックするファイル Blank.pup は、<ドライブ:>\Program Files\Microsoft Commerce Server\PuP Packages ディレクトリにあります。


手順 2 : CSF ヘッドラインのサンプルを使うために SQL Server を準備する

CSF ヘッドラインのサンプルを使うために Microsoft SQL Server を準備するには、次の手順を実行します。先に進む前に、CSF ヘッドラインのサンプルをインストールしておく必要があります。

CSF ヘッドラインのサンプルを使うために SQL Server を準備するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[クエリ アナライザ] をクリックします。開いたウィンドウで [OK] をクリックします。

  2. [SQL Server の接続] ダイアログ ボックスで次の操作を行います。
    項目 | 操作
    [SQL Server] | SQL Server の名前を入力します。
    [接続方法] | [SQL Server 認証] をクリックします。
    [ログイン名] | SQL Server ログイン名を入力します。
    [ユーザー パスワード] | SQL Server パスワードを入力します。

  3. [OK] をクリックします。

  4. [SQL クエリ アナライザ] 画面で、[クエリ] メニューの [データベース変更] をクリックします。

  5. [データベースの選択] ダイアログ ボックスで、[CSFHeadlines_commerce] をクリックし、[OK] をクリックします。

  6. [ファイル] メニューの [開く] をクリックします。

  7. [クエリ ファイルを開く] ダイアログ ボックスで <ドライブ:>\Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Headlines\SQL に移動し、headlines_config.sql を選択して [開く] をクリックします。

  8. [クエリ] メニューの [実行] をクリックします。

  9. [ファイル] メニューの [開く] をクリックします。

  10. [クエリ ファイルを開く] ダイアログ ボックスで <ドライブ:>\Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Headlines\SQL に移動し、sample_headlines.sql を選択して [開く] をクリックします。

  11. [クエリ] メニューの [実行] をクリックします。

  12. [ファイル] メニューの [終了] をクリックします。

関連項目

手順 1 : CSF ヘッドラインのサンプルをインストールする


手順 3 : CSF ヘッドラインのサンプルを使うために CSF コンポーネントを準備する

CSF ヘッドラインのサンプルを使うためにコンテンツ選択フレームワーク (CSF) コンポーネントを準備するには、次の手順を実行します。これらの手順を実行する前に、CSF ヘッドラインのサンプルをインストールし、SQL Server を準備しておく必要があります。

Visual C++ で CSF ヘッドラインのサンプルを使うために CSF コンポーネントを準備するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Visual Studio 6.0] をポイントし、[Microsoft Visual C++] をクリックします。

  2. [ファイル] メニューの [開く] をクリックします。

  3. [開く] ダイアログ ボックスで <ドライブ:>\Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Headlines\Components\Scoring に移動し、CSFScoreHeadlines.dsw を選択して [開く] をクリックします。

  4. [CSFScoreHeadlines - Microsoft Visual C++] 画面で、[構築] メニューの [構築] をクリックします。

  5. プロジェクトが作成されたら、[ファイル] メニューの [ワークスペースの保存] をクリックします。

  6. [ファイル] メニューの [終了] をクリックします。

Visual Basic で CSF ヘッドラインのサンプルを使うために CSF コンポーネントを準備するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Visual Studio 6.0] をポイントし、[Microsoft Visual Basic 6.0] をクリックします。

  2. [新しいプロジェクト] 画面の [既存のファイル] タブで <ドライブ:>\Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Headlines\Components\CacheLoader に移動し、HeadlineLoader.vbp を選択して [開く] をクリックします。

  3. プロジェクトを作成します。

  4. プロジェクトが作成されたら、[ファイル] メニューの [プロジェクトの上書き保存] をクリックします。

  5. [ファイル] メニューの [終了] をクリックします。

関連項目

手順 1 : CSF ヘッドラインのサンプルをインストールする

手順 2 : CSF ヘッドラインのサンプルを使うために SQL Server を準備する


手順 4 : CSF ヘッドラインのサンプルを実行する

CSF ヘッドラインのサンプルを実行するには、次の手順を実行します。この手順を実行する前に、CSF ヘッドラインのサンプルをインストールし、SQL Server とコンテンツ選択フレームワーク (CSF) コンポーネントの両方を準備しておく必要があります。

CSF ヘッドラインのサンプルを実行するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントして、[Internet Explorer] をクリックします。

  2. [アドレス] ボックスに「http://<サーバー名>/csfheadlines/default.asp」と入力し、Enter キーを押します。

CSF ヘッドライン の Web ページが表示されます。

ページには対象化されたヘッドラインが表示されます。また、パイプラインで処理されたデータとキャッシュに保存されたデータに関するデバッグ情報と追跡情報も表示されます。ヘッドラインの最新の内容を確認するには、ブラウザの [更新] ボタンをクリックします。

Microsoft SQL Server にある Headline テーブルのヘッドラインの日付と優先度を変更し、それがヘッドラインのスコアにどのように影響するかを確認できます。Commerce Server ビジネス デスクにはヘッドライン管理のためのモジュールはありませんが、広告を作成し、それをヘッドラインに変換できます。そのためには、対応するレコードを Headline テーブルに追加して、Campaign_item テーブルの Guid_campitem_type 列を、ヘッドライン タイプ コンテンツのグローバル一意識別子 (GUID) に一致するように変更します (この GUID は Campitem_types テーブルから取得します)。

関連項目

手順 1 : CSF ヘッドラインのサンプルをインストールする

手順 2 : CSF ヘッドラインのサンプルを使うために SQL Server を準備する

手順 3 : CSF ヘッドラインのサンプルを使うために CSF コンポーネントを準備する


コンテンツ選択フレームワーク コンポーネント リファレンス

コンテンツ選択フレームワーク (CSF) には、オブジェクト固有のコンポーネントが数多く含まれています。次に示すのは、CSF パイプラインと CacheManager オブジェクトのコンポーネントの一覧で、「プログラマーズ リファレンス」のそのコンポーネントの箇所にリンクしています。

ここでは、次のトピックについて説明します。

  • CacheManager コンポーネント

  • コンテンツ選択フレームワーク パイプライン コンポーネント

  • フレームワーク コンポーネント


CacheManager コンポーネント

次のコンポーネントは、CacheManager オブジェクトがキャッシュの読み込みとキャンペーン結果の書き出しのために使う、コンテンツ選択フレームワーク (CSF) コンポーネントです。

  • CSFLoadAdvertisements

  • CSFLoadDiscounts

  • CSFWriteEvents


コンテンツ選択フレームワーク パイプライン コンポーネント

コンテンツ選択パイプラインとイベント処理パイプラインは、コンテンツ選択フレームワーク (CSF) パイプライン コンポーネントを使って、対象化コンテンツを決定し、ナビゲーション構成のユーザー イベントを処理します。次の表は、コンポーネントとその推奨パイプラインおよびステージを示しています。

コンポーネント | パイプライン | ステージ
AdvertisingNeedOfDelivery | コンテンツ選択 | 初期スコア
EvalTargetGroups | コンテンツ選択 | スコアリング
FilterContent | コンテンツ選択 | フィルタ
FormatTemplate | コンテンツ選択 | 書式設定
HistoryPenalty | コンテンツ選択 | スコアリング
IISAppendToLog | コンテンツ選択とイベント処理 | 記録
InitCSFPipeline | コンテンツ選択 | コンテキスト読み込み
LoadHistory | コンテンツ選択 | コンテキスト読み込み
RecordEvent | コンテンツ選択とイベント処理 | 記録
RecordHistory | コンテンツ選択 | 記録
SaveHistory | コンテンツ選択 | 記録
ScoreDiscounts | コンテンツ選択 | スコアリング
SelectWinners | コンテンツ選択 | 選択


フレームワーク コンポーネント

次の表に示すコンポーネントはパイプライン コンポーネントではありませんが、パイプライン コンポーネントによって作成または使用されることがあります。

コンポーネント | C++ のリンク | Visual Basic のリンク
CacheManager | C++ | Visual Basic
ContentList | C++ | Visual Basic
ContentListFactory | C++ | Visual Basic
ContentSelector | C++ | Visual Basic
ExpressionEval | C++ | Visual Basic


カスタム レポートを作成する

ここでは、カスタム レポートの作成方法について説明します。レポートは、静的レポートまたは動的レポートとして実装されます。静的レポートは、structured query language (SQL) データベースの場合は SQL クエリ、オンライン分析処理 (OLAP) データベースの場合はマルチディメンション式 (MDX) クエリに、それぞれ基づいています。動的レポートは、SQL クエリまたはキューブへの参照のいずれかを含む拡張マークアップ言語 (XML) フレームワークに基づいています。

静的レポート定義は、クエリとパラメータ定義で構成されます。静的レポートを実行すると、パラメータは、オペレータにパラメータの入力を促すウィンドウが表示された後で生成コンポーネントに渡されます。クエリの結果に基づいて、生成コンポーネントによって HTML ドキュメントが生成されます。完了した静的レポートは、Commerce Server ビジネス デスクがインストールされたコンピュータに HTML ファイルとして格納されます。格納されたレポートは、ビジネス デスクを使って開くことができるほか、Microsoft Internet Explorer で表示することもできます。

動的レポート定義はクエリとして格納され、ピボット テーブルのビューは XML 形式でデータ ウェアハウスに格納されます。クエリの結果は Microsoft Office 2000 Web Components (OWC) のピボット テーブル コンポーネントで表示されます。

あらかじめ定義されているレポート定義は、CSReports.sql というファイルに含まれています。このファイルは Commerce Server をインストールしたディレクトリにあります。CSReports.sql ファイルによって、データ ウェアハウスに Report テーブルが生成されます。データ変換サービス (DTS) レポート準備タスクは、OLAP キューブを処理するため、およびレポート用にインポートするデータを準備するストアド プロシージャを実行するために利用できます。

レポートの実行とクエリの結果の表示には、ビジネス デスクを使います。

Commerce Server 2000 に含まれる Commerce Server 2000 Software Development Kit (SDK) には、4 つのタイプのレポートを作成する 4 つの SQL スクリプト ファイルがあります。これらのレポートを作成するためのスクリプト ファイルは、Commerce Server のインストール先フォルダ \Microsoft Commerce Server\SDK\Samples\Business Analytics\Scripts にあります。

ここでは、次のトピックについて説明します。

  • SQL を使って静的レポートを作成する : パラメータ化された SQL クエリ ステートメントを使って静的レポートを作成する方法を説明します。

  • MDX を使って静的レポートを作成する : パラメータ化された MDX クエリ ステートメントを使って静的レポートを作成する方法を説明します

  • 動的レポートを作成する : XML フレームワークを使って動的レポートを作成する方法を説明します。

関連項目

分析とレポート作成のためのスキーマ

分析とレポートのための XML 構造

AsyncRpt オブジェクト

ReportRenderer オブジェクト

レポートを実行する


SQL を使って静的レポートを作成する

静的 SQL レポートを作成するための手順については、次の各トピックに記述されているサンプルの実行コードで説明します。

  1. 必要な SQL クエリを作成します。この手順の詳細については、「SQL クエリを作成する」を参照してください。

  2. クエリにパラメータ タグを付加します。この手順の詳細については、「SQL パラメータを追加する」を参照してください。

  3. 基本レポート定義を、Report テーブルに対する一連の INSERT ステートメントとして作成します。ステートメントのうちの 1 つはクエリ用です。この手順の詳細については、「SQL 基本レポート定義を作成する」を参照してください。

  4. ReportDimension テーブルにレポートのディメンションを挿入します。この手順の詳細については、「SQL レポートのディメンションを追加する」を参照してください。

  5. クエリのパラメータ タグに対応するレポート パラメータを、ReportParam テーブルに追加します。この手順の詳細については、「SQL レポート パラメータを追加する」を参照してください。

  6. レポートを実行して表示します。またはレポートをエクスポートします。この手順の詳細については、「SQL レポートを表示またはエクスポートする」を参照してください。

このサンプルの実行コードは、次の属性を持つサイト訪問者の静的レポートを作成します。

  • 3/1/2000 ～ 3/30/2000 の間に登録された。

  • UserType は 1 である。

  • 登録時に電子メール アドレスが指定された。

これらの操作をすべて正しく実行すると、Commerce Server ビジネス デスクのレポート モジュールにレポートが一覧表示されます。

レポートを実行すると、一致する最初の 25 名のユーザーが Email アドレスの順に表示され、それぞれについて UserID、DateCreated、DateRegistered、Email、FirstName、LastName、TelephoneNumber、UserTitle、および UserType の各属性が表示されます。


SQL クエリを作成する

必要な情報を返すための標準的な SQL クエリを作成します。

手順 1

次の SQL クエリを作成します。

"SELECT top 25 UserId rcp_guid, DateCreated, DateRegistered, Email rcp_email,

FirstName, LastName, TelephoneNumber, UserTitle, UserType

FROM RegisteredUser

WHERE (DateRegistered >= '03/01/2000' AND DateRegistered <=

'03/30/2000') AND UserType = 1 AND Email is not Null

ORDER BY rcp_email ASC"


SQL パラメータを追加する

手順 1 で作成した SQL クエリに、[$paramName] 構文を使ってパラメータ タグを追加します。ReportRender オブジェクトは、これらのパラメータをマクロとして扱います。INTO 句が追加されていることに注意してください。

利用可能なパラメータの詳細については、「分析とレポート作成のためのスキーマ」を参照してください。

手順 2

次の SQL クエリを作成します。

"SELECT [$TopCount] UserId rcp_guid, DateCreated, DateRegistered, Email

rcp_email, FirstName, LastName, TelephoneNumber, UserTitle, UserType

INTO [$ResultTable]

FROM RegisteredUser

WHERE [$DateRange] AND [$Expression] AND [$SingleValue]

ORDER BY rcp_email ASC"


SQL 基本レポート定義を作成する

基本レポート定義を、Report テーブルに対する一連の INSERT ステートメントを使って作成します。手順 2 で作成した SQL クエリが、[Query] フィールドに挿入されます。

レポートが Direct Mailer (rcp_email 属性を使用) と User Profile Management (rcp_guid 属性を使用) にエクスポートできるように、DmExport ビットと UpmExport ビットが設定されます。

ReportType は Static_SQL (2) に設定されます。レポートを上書きしたり削除したりできるように、Protected ビットの内容は消去され、0 に設定されます。

Report テーブルの詳細については、「分析とレポート作成のためのスキーマ」を参照してください。

手順 3

DECLARE @ReportID int

DECLARE @ReportStatusID int

INSERT INTO [dbo].[Report] ([DisplayName], [Description], [ReportType],

[Category], [Query], [DmExport], [UpmExport], [CreatedBy], [Protected])

VALUES ('Registered Users', 'Registered Users', @Static_SQL, 'Users',

SQL String, 1, 1, 'the almighty creator', 0)

SELECT @ReportID = @@identity


SQL レポートのディメンションを追加する

表示可能なレポートのディメンションを、ReportDimension テーブルに対する一連の INSERT ステートメントを使って作成します。

表示するフィールドとそのディメンションの種類 (列、行、またはメジャー) を指定します。SELECT ステートメントに指定されているフィールドでも、ReportDimension テーブルに挿入されていないものはエクスポートはできますが表示はできません。

ReportDimension テーブルの詳細については、「分析とレポート作成のためのスキーマ｣を参照してください。

手順 4

INSERT INTO [dbo].[ReportDimension] ([ReportID], [DimensionType],

[DisplayName], [FieldName], [Ordinal])

VALUES (@ReportID, 0, "Email", "rcp_email", 1)

INSERT INTO [dbo].[ReportDimension] ([ReportID], [DimensionType],

[DisplayName], [FieldName], [Ordinal])

VALUES (@ReportID, 0, "UserId", "rcp_guid", 2)

INSERT INTO [dbo].[ReportDimension] ([ReportID], [DimensionType],

[DisplayName], [FieldName], [Ordinal])

VALUES (@ReportID, 0, "FirstName", "FirstName", 3)

INSERT INTO [dbo].[ReportDimension] ([ReportID], [DimensionType],

[DisplayName], [FieldName], [Ordinal])

VALUES (@ReportID, 0, "LastName", "LastName", 4)

INSERT INTO [dbo].[ReportDimension] ([ReportID], [DimensionType],

[DisplayName], [FieldName], [Ordinal])

VALUES (@ReportID, 0, "DateCreated", "DateCreated", 5)

INSERT INTO [dbo].[ReportDimension] ([ReportID], [DimensionType],

[DisplayName], [FieldName], [Ordinal])

VALUES (@ReportID, 0, "DateRegistered", "DateRegistered", 6)


SQL レポート パラメータを追加する

レポート パラメータを、ReportParam テーブルに対する一連の INSERT ステートメントを使って作成します。

パラメータ化は、次のような形式になっています。

   [ Operand1   Value1   Operand2   Value2   FieldName ]

各 VALUES 句の直後に、パラメータ化に相当する式を指定します。最初は上記の形式で指定し、その後必要に応じて理解しやすい形式で指定します。

ReportParam テーブルおよび各種のパラメータの詳細については、「分析とレポート作成のためのスキーマ」を参照してください。

手順 5

INSERT INTO [dbo].[ReportParam] (ReportID, ParamName, ParamDescription, ParamType, DataType, Opnd1, Val1, Opnd2, Val2, FieldName, Ordinal)

VALUES (@ReportID, '[$TopCount]', 'Number of users', ParamType_SelectOrder, DataType_integer, SelectOrderOpnd_Top, '25', 0, '0', "", 1)

         [ Select Top, 25, 0, 0, "" ]

INSERT INTO [dbo].[ReportParam] (ReportID, ParamName, ParamDescription, ParamType, DataType, Opnd1, Val1, Opnd2, Val2, FieldName, Ordinal)

VALUES (@ReportID, '[$DateRange]', 'User registration date', ParamType_DateRange, DataType_date, DateRangeOpnd_From, '3/1/2000', 0, '3/30/2000', "DateRegistered", 2)

         [ Date From, 3/1/2000, 0, 3/30/2000, DateRegistered ]
         [ 3/1/2000 <= DateRegistered <= 3/30/2000 ]

INSERT INTO [dbo].[ReportParam] (ReportID, ParamName, ParamDescription, ParamType, DataType, Opnd1, Val1, Opnd2, Val2, FieldName, Ordinal)

VALUES (@ReportID, '[$Expression]', 'User type', ParamType_Expression, DataType_integer, ExpOpnd_Equals, '1', 0, '0', "UserType", 3)

         [ =, 1,  0, 0, UserType ]
         [ UserType = 1 ]

INSERT INTO [dbo].[ReportParam] (ReportID, ParamName, ParamDescription, ParamType, DataType, Opnd1, Val1, Opnd2, Val2, FieldName, Ordinal)

VALUES (@ReportID, '[$SingleValue]', 'Email qualifier', ParamType_SingleValue, DataType_text, 0, 'And Email is not Null', 0, 0, "", 4)

         [ 0, Email <> Null, 0, 0, "" ]


SQL レポートを表示またはエクスポートする

手順 1 ～ 6 (これらの手順については、「SQL を使って静的レポートを作成する」を参照してください) を完了すると、レポートが Commerce Server ビジネス デスクのレポート モジュールに表示されます。次に、ビジネス デスク上でレポートを実行するか、エクスポートします。このレポートの実行またはエクスポートについては、「ビジネス デスク分析」を参照してください。

レポートの実行結果は、ビジネス デスクで見ることができるほか、ReportRenderer オブジェクトまたは AsyncRpt オブジェクトを利用してプログラムを作成し、それを使って表示したりエクスポートしたりできます。プログラムを使ってレポートを表示またはエクスポートする方法については、「ReportRenderer オブジェクト」と「AsyncRpt オブジェクト」を参照してください。

SDK には、静的 SQL レポートを作成する SQL スクリプト ファイルが含まれています。このファイルは、Commerce Server のインストール先フォルダ \Microsoft Commerce Server\SDK\Samples\Business Analytics\Scripts にあります。


MDX を使って静的レポートを作成する

静的 MDX レポートを作成するための手順については、次の各トピックに記述されているサンプルの実行コードで説明します。

  1. 必要な MDX クエリを作成します。この手順の詳細については、「MDX クエリを作成する」を参照してください。

  2. クエリにパラメータ タグを付加します。この手順の詳細については、「MDX パラメータを追加する」を参照してください。

  3. 基本レポート定義を、Report テーブルに対する一連の INSERT ステートメントとして作成します。ステートメントのうちの 1 つはクエリ用です。この手順の詳細については、「MDX 基本レポート定義を作成する」を参照してください。

  4. クエリのパラメータ タグに対応するレポート パラメータを、ReportParam テーブルに追加します。この手順の詳細については、「MDX レポート パラメータを追加する」を参照してください。

  5. レポートを実行して表示します。

レポートのディメンションはクエリに固有のもので、ReportDimension テーブルに挿入する必要はありません。上の操作をすべて正しく実行すると、Commerce Server ビジネス デスクのレポート モジュールにレポートが一覧表示されます。

  • このサンプルの実行コードは、訪問別に上位 100 の参照元ドメインを表示する静的レポートを作成します。


MDX クエリを作成する

標準的な MDX クエリを作成します。

手順 1

次の MDX クエリを作成します。

"SELECT {[Measures].[Visits], [Measures].[Requests]} ON COLUMNS,

TopCount({[Referrer].[Referrer Domain Name].members}, 100,

[Measures].[Visits]) ON ROWS

FROM [Web Usage]

WHERE ([Retail])"


MDX パラメータを追加する

手順 1 で作成した MDX クエリに、[$paramName] 構文を使ってパラメータ タグを追加します。ReportRender オブジェクトは、これらのパラメータをマクロとして扱います。

利用可能なパラメータの詳細については、「分析とレポート作成のためのスキーマ」を参照してください。

手順 2

次の MDX クエリを作成します。

"SELECT {[Measures].[Visits], [Measures].[Requests]} ON COLUMNS,

[$TopCount]({[Referrer].[Referrer Domain Name].members}, [$TopCount],

[Measures].[Visits]) ON ROWS

FROM [Web Usage]

WHERE ([$SiteName])"


MDX 基本レポート定義を作成する

基本レポート定義を、Report テーブルに対する一連の INSERT ステートメントを使って作成します。手順 2 で作成した MDX クエリが、[Query] フィールドに挿入されます。

ReportType は Static_MDX (3) に設定されます。レポートを上書きしたり削除したりできるように、Protected ビットの内容は消去され、0 に設定されます。

Report テーブルの詳細については、「分析とレポート作成のためのスキーマ」を参照してください。

手順 3

DECLARE @ReportID int

DECLARE @ReportStatusID int

INSERT INTO [dbo].[Report] ([DisplayName], [Description], [ReportType],

[Category], [Query], [CreatedBy], [Protected], [Definition])

VALUES ('Visits by Referrer', 'Visits by Referrer', @Static_MDX, 'Web Usage',

MDX Query, 'the almighty creator', 0, "Long report description goes here")

SELECT @ReportID = @@identity


MDX レポート パラメータを追加する

レポート パラメータを、ReportParam テーブルに対する一連の INSERT ステートメントを使って作成します。

ReportParam テーブルおよび各種のパラメータの詳細については、「分析とレポート作成のためのスキーマ」を参照してください。

手順 4

INSERT INTO [dbo].[ReportParam] (ReportID, ParamName, ParamDescription,

ParamType, DataType, Opnd1, Val1, Ordinal)

VALUES (@ReportID, '[$TopCount]', 'Number of referrer domains',

@ParamType_SelectOrder, @DataType_integer, @SelectOrderOpnd_Top,

100, 1)

INSERT into [dbo].[ReportParam] (ReportID, ParamName, ParamDescription,

ParamType, DataType, Opnd1, Val1, Ordinal)

VALUES (@ReportID, '[$SiteName]', 'Site Name', @ParamType_SiteName,

@DataType_text, @SiteNameOpnd_Equals, 'Retail', 2)

手順 1 ～ 4 (これらの手順については、「MDX を使って静的レポートを作成する」を参照してください) を完了すると、レポートが Commerce Server ビジネス デスクのレポート モジュールに表示されます 。次に、ビジネス デスク上でレポートを実行するか、エクスポートします。詳細については、「ビジネス デスク分析」を参照してください。

レポートの実行結果は、ビジネス デスクで見ることができるほか、ReportRenderer オブジェクトまたは AsyncRpt オブジェクトを利用してプログラムを作成し、それを使って表示したりエクスポートしたりできます。プログラム使ってレポートを表示またはエクスポートする方法については、「ReportRenderer オブジェクト」を参照してください。

SDK には、静的 MDX (OLAP) レポートを作成する SQL スクリプト ファイルが含まれています。このファイルは、Commerce Server のインストール先フォルダ \Microsoft Commerce Server\SDK\Samples\Business Analytics\Scripts にあります。


動的レポートを作成する

ここでは、SQL クエリまたはキューブへの参照のいずれかを含む XML フレームワークを使って動的レポートを作成する方法を説明します。既存の動的レポートを基に新しい動的レポートを作成するには、既存のレポートを実行し、ピボットのビューを編集して、結果を新しいレポートとして保存します。既存のレポートとは異なる SQL クエリまたはキューブが新しいレポートで必要になる場合、SQL スクリプトを実行する必要があります。両方の種類の動的レポートを作成するために、修正可能なスクリプトが用意されています。これらのスクリプトは、Commerce Server のインストール先フォルダ \Microsoft Commerce Server\SDK\Samples\Business Analytics\Scripts にあります。

新しい動的レポートを作成するには、次の手順に従います。

  1. 修正した SQL スクリプトを実行し、基本レポートを作成します。

  2. 新しく作成したレポートまたは既存の動的レポートを開きます。

  3. ピボット コントロールの機能を使ってレポートを修正します。

  4. カスタマイズしたレポートを新しいレポートとして保存します。

上の操作をすべて正しく実行すると、Commerce Server ビジネス デスクのレポート モジュールに、新しいレポートが一覧表示されます。

ここでは、次のトピックについて説明します。

  • SQL を使って動的レポートを作成する : SQL クエリを含む XML フレームワークを使って動的レポートを作成する方法を説明します。

  • キューブを使って動的レポートを作成する : キューブへの参照を含む XML フレームワークを使って動的レポートを作成する方法を説明します。


SQL を使って動的レポートを作成する

新しい動的 SQL レポートについては、次の各トピックに記述されているサンプルの実行コードで説明します。レポートを作成するには、次の操作を行います。

  1. SQL クエリを作成します。この手順の詳細については、「動的 SQL クエリを作成する」を参照してください。

  2. クエリを含む XML フレームワークを作成します。この手順の詳細については、「XML フレームワークを作成する」を参照してください。

  3. XML パラメータおよびそのほかのレポート パラメータを、Report テーブルに挿入します。この手順の詳細については、「基本レポート定義を作成する」を参照してください。

  4. レポートがビジネス デスクの分析モジュールのレポート セクションに表示されます。このセクションで、ピボット コントロールを使ってレポートを修正し、保存します。

SDK には、"Analysis - New dynamic SQL report script.sql" という SQL スクリプト ファイルが含まれています。このスクリプトには XML フレームワークがインクルードされており、カスタマイズしてレポートの作成に使うことができます。このファイルは、Commerce Server のインストール先フォルダ \Microsoft Commerce Server\SDK\Samples\Business Analytics\Scripts にあります。


動的 SQL クエリを作成する

クエリ文字列を作成します。

手順 1

次の SQL クエリを作成します。

"SELECT top 25 UserId rcp_guid, DateCreated, DateRegistered, Email rcp_email,

FirstName, LastName, TelephoneNumber, UserTitle, UserType

FROM RegisteredUser

WHERE (DateRegistered >= '03/01/2000' AND DateRegistered <=

'03/30/2000') AND UserType = 1 AND Email is not Null

ORDER BY rcp_email ASC"


XML フレームワークを作成する

下に示したのは、このレポートに必要な XML フレームワークです。Data Source 属性と Initial Catalog 属性の値が接続文字列に指定されていないことに注意してください。これらの値は、レポート実行時に管理データベースから取得します。

手順 1 の SQL クエリを CommandText タグの間に挿入します。

この XML 構造の詳細については、「分析とレポートのための XML 構造」を参照してください。

手順 2

次の XMLString を作成します。
'<xml xmlns:x=''urn:schemas-microsoft-com:office:excel''>
<x:PivotTable>
   <x:OWCVersion>9.0.0.3821</x:OWCVersion>
   <x:DisplayFieldList/>
      <x:FieldListTop>300</x:FieldListTop>
      <x:FieldListLeft>800</x:FieldListLeft>
      <x:FieldListBottom>700</x:FieldListBottom>
      <x:FieldListRight>1000</x:FieldListRight>
   <x:CacheDetails/>
   <x:ConnectionString>Provider=SQLOLEDB;Integrated Security=SSPI;
      Initial Catalog=;Data Source=</x:ConnectionString>
   <x:CommandText>SQL Query</x:CommandText>
</x:PivotTable>
</xml>'


基本レポート定義を作成する

必要なパラメータを Report テーブルに挿入します。手順 2 で作成した XMLString は XMLData フィールドに挿入します。

手順 3

INSERT INTO [dbo].[Report] ([DisplayName], [Description], [ReportType], [Category], [CreatedBy], [Protected], [ShowPivot], [ShowChart], [XMLData], [Definition])

VALUES ('Registered Users', 'Registered Users', 0, 'Visits', 'user', 0, 1, 0, XMLString, "Use this report to view information on the registered users of the site.")

上の操作をすべて正しく実行すると、Commerce Server ビジネス デスクのレポート モジュールにレポートが一覧表示されます。次に、ビジネス デスク上でレポートを実行します。詳細については、「レポートを実行する」を参照してください。

注

  • レポートの作成後は、XML 構造に変更を加えないでください。レポートに変更を加える場合は、ビジネス デスクの [分析] カテゴリにあるピボット テーブル コンポーネントを使います。ピボット テーブルのビューやレイアウトを変更して保存すると、レポートを生成するための XML に変更内容が自動的に保存されます。


キューブを使って動的レポートを作成する

新しい動的 OLAP レポートについては、次の各トピックに記述されているサンプルの実行コードで説明します。レポートを作成するには、次の操作を行います。

  1. XML フレームワークを作成します。この手順の詳細については、「XML フレームワークを作成する」を参照してください。

  2. XML パラメータおよびそのほかのレポート パラメータを、Report テーブルに挿入します。この手順の詳細については、「基本レポート定義を作成する」を参照してください。

  3. レポートがビジネス デスクの分析モジュールのレポート セクションに表示されます。このセクションで、ピボット コントロールを使ってレポートを修正します。

SDK には、"Analysis - New dynamic OLAP report script.sql" という SQL スクリプト ファイルが含まれています。このスクリプトには XML フレームワークがインクルードされており、カスタマイズしてレポートの作成に使うことができます。このファイルは、Commerce Server のインストール先フォルダ \Microsoft Commerce Server\SDK\Samples\Business Analytics\Scripts にあります。


XML フレームワークを作成する

下に示したのは、このレポートに必要な XML フレームワークです。Data Source 属性と Initial Catalog 属性の値が接続文字列に指定されていないことに注意してください。これらの値は、レポート実行時に管理データベースから取得します。

キューブの名前は DataMember タグの間に指定します。

この XML 構造の詳細については、「分析とレポートのための XML 構造」を参照してください。

手順 1

次の XMLString を作成します。

'<xml xmlns:x=''urn:schemas-microsoft-com:office:excel''>
<x:PivotTable>
   <x:OWCVersion>9.0.0.3821</x:OWCVersion>
   <x:DisplayFieldList/>
      <x:FieldListTop>300</x:FieldListTop>
      <x:FieldListLeft>800</x:FieldListLeft>
      <x:FieldListBottom>700</x:FieldListBottom>
      <x:FieldListRight>1000</x:FieldListRight>
   <x:CacheDetails/>
   <x:ConnectionString>Provider=MSOLAP;Data Source=;Initial Catalog=;
      Client Cache Size=25;Auto Synch Period=10000</x:ConnectionString>
   <x:DataMember>CubeName</x:DataMember>
</x:PivotTable>
</xml>'


基本レポート定義を作成する

必要なパラメータを Report テーブルに挿入します。手順 1 で作成した XMLString は XMLData フィールドに挿入します。

手順 2

INSERT INTO [dbo].[Report] ([DisplayName], [Description], [ReportType],

[Category], [CreatedBy], [Protected], [ShowPivot], [ShowChart], [XMLData],

[Definition])

VALUES ('Dynamic OLAP Report', 'Dynamic OLAP Report', 1, 'Advertising', 'user',

0, 1, 0, XMLString, "Use this report to view advertising information.")

上の操作をすべて正しく実行すると、Commerce Server ビジネス デスクのレポート モジュールにレポートが一覧表示されます。次に、ビジネス デスク上でレポートを実行します。詳細については、「ビジネス デスク分析」を参照してください。

注

  • レポートの作成後は、XML 構造に変更を加えないでください。レポートに変更を加える場合は、ビジネス デスクの [分析] カテゴリにあるピボット テーブル コンポーネントを使います。ピボット テーブルのビューやレイアウトを変更して保存すると、レポートを生成するための XML に変更内容が自動的に保存されます。


データ ウェアハウスを操作する

ここでは、Commerce Server 2000 データ ウェアハウスの操作について説明します。論理スキーマの基本構造とプライマリ ビジネス カテゴリに関する情報を提供します。論理スキーマを拡張して、カスタム データをデータ ウェアハウスにインポートする手順についても説明します。

ここでは、次のトピックについて説明します。

  • 論理スキーマの基本構造 : データ ウェアハウスの概念上のインフラストラクチャを、クラス、データ メンバ、キー、および関連について定義します。

  • 関連 : 論理関連の種類について、例を示して説明します。

  • プライマリ ビジネス カテゴリ : 論理スキーマを、プライマリ ビジネス カテゴリに概念上分割することについて説明します。このプライマリ ビジネス カテゴリは、キャンペーン、カタログ、トランザクション、プロファイル管理、Web ログのインポート、および Web トポロジです。各カテゴリには、複数のビジネス プロセスが含まれることがあります。これらのカテゴリは、論理スキーマに対する概念上のエントリ ポイントを提供します。

  • データ ウェアハウスを拡張する : データ ウェアハウスの論理スキーマの拡張例を示します。

  • データ ウェアハウスにデータをインポートする : カスタム データをデータ ウェアハウスにインポートする処理について説明します。

関連項目

データ ウェアハウスのスキーマ

OLE DB Provider for Commerce Server


論理スキーマの基本構造

Commerce Server データ ウェアハウスでは、論理スキーマを使って、アプリケーションを基本の物理データベースから分離します。論理スキーマは、データ ウェアハウスの概念上のインフラストラクチャを定義します。論理スキーマの基本構造は、クラス、データ メンバ、キー、および関連です。

クラス

クラスは、データ ウェアハウスの論理スキーマの基礎となるものです。クラスは、データ メンバの論理コレクションです。クラスのインスタンスは、データ ウェアハウスにインポートされたユーザー データを表します。

データ メンバ

データ メンバは、データを格納します。1 つのクラスには、そのクラスの論理範囲を定義する任意の数のデータ メンバが含まれています。クラスを作成したら、いつでもデータ メンバを追加できます。

キー

キーは、1 つまたは複数のデータ メンバの集まりで、クラスのインスタンスを一意に識別します。前の例では、OrderFormLineItems クラスのキーは、非公開の lineitem_id データ メンバと、継承された OrderForm_Id データ メンバおよび OrderGroup_Id データ メンバとの組み合わせです。つまり、OrderFormLineItems クラスのインスタンスには、品目の一意の識別子と、OrderFormHeader クラスおよび OrderGroup クラスの一意の識別子が含まれます。

関連

関連は 2 つのクラスを、親子関係によって結び付けます。この関連によって、各クラスのインスタンスの数が定義されます。Commerce Server 2000 データ ウェアハウスでは、ほぼすべての関連が一対多です。つまり、1 つの親に対して 0 個以上の子が存在します。たとえば、各注文フォームには、OrderFormHeader クラスのインスタンスが正確に 1 つずつ存在します。注文フォームには、1 つの OrderFormHeader クラス インスタンスに関連付けられた OrderFormLineItems クラスの複数のインスタンスによって表される複数の品目が含まれることがあります。

関連は、複数のクラスでデータ メンバを共有するメカニズムを提供します。1 つの親クラスは、継承可能として定義されているデータ メンバを 0 個以上持つことができます。関連の作成時に、継承可能なデータ メンバは任意の子クラスにコピーされます。これは、スキーマによって定義される論理継承であり、C++ の視点から見た継承ではありません。

たとえば、OrderFormLineItems クラスは、親クラスである OrderFormHeader から 3 つのデータ メンバを継承します。そのデータ メンバの 1 つである OrderForm_Id は、当該品目を含む注文フォームを識別するために使います。

親クラスの ID とキーは、常に子クラスによって継承されます。ID は子クラスの中に存続しますが、容量を節約するために、キーやその他の継承されたメンバは存続しません。子クラスの中に格納される親クラスの ID は、親クラスのキーやそのほかの継承されたメンバを取得するために使います。


関連

ここでは、論理関連の種類の例を示して、OLE DB Provider for Commerce Server がクラスを格納するために バックグラウンドで実行する手順について説明します。ここの例では、関連の種類を、犬と飼い主の関係に当てはめてモデル化しています。次のように、2 つのクラスが擬似定義されています。

Class DogOwner
  {
  [Key] DogOwnerName
  DogOwnerAddress
  }

Class Dog
  {
  [Key] DogName
  DogBreed
  }

ここでは、次のトピックについて説明します。

  • 一対多の関連 : 一対多の関連をモデル化しています。たとえば、1 匹の犬は飼い主を 1 人しか持てないが、1 人の飼い主は複数の犬を持てるというケースです。

  • 多対多の関連 : 多対多の関連をモデル化しています。たとえば、1 匹の犬が複数の飼い主に所有されることができ、各飼い主も複数の犬を持てるというケースです。

  • 継承を含む一対多の関連 : 一対多の関連に類似していますが、犬は飼い主クラスのメンバを参照したり、使用したりすることができます。


一対多の関連

論理的には、DogOwner (親) クラスと Dog (子) クラスとの間に一対多 (1:M) の関連を定義すると、1 つの DogOwner が複数の Dog を所有できます。

物理的には、Dog を表すテーブルは DogOwner に対する外部キーを持っています。

データを挿入するには 2 つの方法があります。

  1. 関連の例 1 : 子にのみ挿入する。

  2. 関連の例 2A : まず親に挿入する。

    関連の例 2B : 次に子に挿入する。

関連の例 1

論理上の処理

空のデータベース上の 1:M 関連の子に挿入します。

Insert Dog(DogName="Spot", DogBreed="Cocker Spaniel",
 DogOwnerName="Bob")

論理的には、Dog クラスのインスタンス作成時に、メンバである DogName、DogBreed、および DogOwnerName を与えます。1:M 関連では、親の非キー メンバ (DogOwnerAddress) を参照することはできません。後で、DogOwner クラスのインスタンスを別途作成して、DogOwnerAddress を更新できます。

物理上の処理

物理的には、親キー (DogOwnerName) を収容する行が存在しないので、新しい行が DogOwner テーブルに挿入されます。

この挿入を実行するためにプロバイダが行う操作は、ほぼ次のとおりです。この手順はすべてプロバイダによって自動的に実行され、ユーザーに対して透過です。

  1. 指定されたキー (Bob) で、親テーブル (DogOwner) を検索します。つまり、SELECT FROM DogOwner WHERE DogOwnerName='Bob' を実行します。

  2. 親レコードが存在しないので、任意のキーを使って親レコードを挿入します。つまり、INSERT INTO DogOwner (DogOwnerID, DogOwnerName) VALUES (1000, 'Bob') を実行します。

  3. 指定されているそのほかの値を使い、子レコードを挿入します。つまり、INSERT INTO Dog (DogID, DogName, DogBreed, DogOwnerID) VALUES (1000, 'Spot', 'Cocker Spaniel', 1000) を実行します。

Dog テーブル

DogID | DogName | DogBreed | DogOwnerID
1000 | Spot | Cocker Spaniel | 1000

DogOwner テーブル

DogOwnerID | DogOwnerName | DogOwnerAddress
1000 | Bob | NULL

関連の例 2A

論理上の処理

まず、空のデータベース上の 1:M 関連の親に挿入します。

Insert DogOwner (DogOwnerName="Bob", DogOwnerAddress="Redmond")

論理的には、DogOwner クラス (親) のインスタンス作成時に、メンバである DogOwnerName と DogOwnerAddress を与えます。

物理上の処理

物理的には、新しい一意の ID (DogOwnerID) が割り当てられ、メンバが生成されます。つまり、INSERT INTO DogOwner (DogOwnerID, DogOwnerName, DogOwnerAddress) VALUES (1000, 'Bob', 'Redmond') を実行します。

親クラスに入力しても、子クラスには影響しません。

Dog テーブル

DogID | DogName | DogBreed | DogOwnerID

DogOwner テーブル

DogOwnerID | DogOwnerName | DogOwnerAddress
1000 | Bob | Redmond

関連の例 2B

論理上の処理

次に、1:M 関連の子に挿入します。

Insert Dog (DogName="Spot", DogBreed="CockerSpaniel",
 DogOwnerName="Bob")

物理上の処理

物理的には、親キー (DogOwnerName) を収容する行が存在するので、新しい行は DogOwner テーブルに挿入されません。

プロバイダが行う操作は、ほぼ次のとおりです。

  1. 指定されたキー (Bob) で、親テーブル (DogOwner) を検索します。つまり、SELECT FROM DogOwner WHERE DogOwnerName='Bob' を実行します。

  2. 親レコードが存在するので、DogOwnerID を子テーブルに移動します。

  3. 指定されているそのほかの値を使い、子レコードを挿入します。つまり、INSERT INTO Dog (DogID, DogName, DogBreed, DogOwnerID) VALUES (1000, 'Spot', 'Cocker Spaniel', 1000) を実行します。

Dog テーブル

DogID | DogName | DogBreed | DogOwnerID
1000 | Spot | CockerSpaniel | 1000

DogOwner テーブル

DogOwnerID | DogOwnerName | DogOwnerAddress
1000 | Bob | Redmond


多対多の関連

論理的には、DogOwner (親) クラスと Dog (子) クラスとの間に多対多 (M:M) の関連を定義すると、1 匹の犬が複数の飼い主に所有されることができ、各飼い主も複数の犬を所有できます。

物理的には、DogOwner と Dog を表すテーブルが 1 つずつと、それぞれのテーブルに対する外部キーを含む別のリンク テーブルが 1 つ存在します。

データを挿入するには 2 つの方法があります。

  1. 関連の例 3 : 子にのみ挿入する。

  2. 関連の例 4A : まず親に挿入する。

    関連の例 4B : 次に子に挿入する。

関連の例 3

空のデータベース上の M:M 関連の子に挿入します。

Insert Dog (DogName="Spot", DogBreed="Cocker Spaniel",
 DogOwnerName="Bob", "Jane")

論理的には、M:M 関連にあるクラスに挿入するときには、子クラスのインスタンスが作成される必要があります。1:M 関連と同様に、子クラスの中には親 (DogOwnerName) のキーを表す列が存在します。ただし、M:M 関連での親のキーは、複数の値を持つメンバです。したがって、このメンバのデータを与えるには、SAFEARRAY データ型または VECTOR データ型を使います。

1:M 関連と同様に、親の非キー メンバ (DogOwnerAddress) は、子クラスのインスタンスを作成したり、子クラスを使用するときには不可視です。

Dog テーブル (子)

DogID | DogName | DogBreed
1000 | Spot | Cocker Spaniel

LinkDogDogOwner テーブル

DogID | DogOwnerID
1000 | 1000
1000 | 1001

DogOwner テーブル (親)

DogOwnerID | DogOwnerName | DogOwnerAddress
1000 | Bob | NULL
1001 | Jane | NULL

関連の例 4A

まず、空のデータベース上の M:M 関連の親に挿入します。

Insert DogOwner (DogOwnerName="Bob", DogOwnerAddress="Redmond")
Insert DogOwner (DogOwnerName="Jane", DogOwnerAddress="Bellevue")

Dog テーブル (子)

DogID | DogName | DogBreed

LinkDogDogOwner テーブル

DogID | DogOwnerID

DogOwner テーブル (親)

DogOwnerID | DogOwnerName | DogOwnerAddress
1000 | Bob | NULL
1001 | Jane | NULL

関連の例 4B

次に、空のデータベース上の M:M 関連の子に挿入します。

Insert Dog (DogName="Spot", DogBreed="Cocker Spaniel",
 DogOwnerName="Bob", "Jane")

Dog テーブル (子)

DogID | DogName | DogBreed
1000 | Spot | Cocker Spaniel

LinkDogDogOwner テーブル

DogID | DogOwnerID
1000 | 1000
1001 | 1001

DogOwner テーブル (親)

DogOwnerID | DogOwnerName | DogOwnerAddress
1000 | Bob | NULL
1001 | Jane | NULL


継承を含む一対多の関連

継承を含む一対多の関連は、1:M の関連と類似していますが、子が親のメンバすべてを参照して使用できます。

関連の例 5

空のデータベース上の継承を含む一対多の関連の子に挿入します。

Insert Dog (DogName="Spot", DogBreed="Cocker Spaniel",
 DogOwnerName="Bob", DogOwnerAddress="Redmond")

Dog テーブル

DogID | DogName | DogBreed | DogOwnerID
1000 | Spot | Cocker Spaniel | 1000

DogOwner テーブル

DogOwnerID | DogOwnerName | DogOwnerAddress
1000 | Bob | Redmond


プライマリ ビジネス カテゴリ

ここでは、論理スキーマをプライマリ ビジネス カテゴリに分割することについて説明します。各カテゴリには、共通したビジネスの目的で使う関連クラスのグループが含まれます。複数のカテゴリで機能するクラスもあります。

ビジネス カテゴリを表す図は、親子の関連付け、または関連を介して各クラスが互いにどのような関係にあるかを示しています。各クラスを結ぶ矢印は、そのようなクラスの関連を表します。矢印は、親クラスから子クラスに向かっています。黒い矢印は、一対多の関連を表します。白い矢印は、継承を含む一対多の関連を表します。関連の詳細については、「関連」を参照してください。

クラスの色は、製品に付属のデータ ウェアハウス スキーマ ダイアグラム ポスターに一致しています。無色のクラスは、通常、表示されているビジネス カテゴリの一部と見なされていません。これらのクラスは、カテゴリと、スキーマ内のそのほかの関連クラスとの接続を表します。

ここでは、次のトピックについて説明します。

  • キャンペーン : マーケティングに関連するクラスについて説明します。

  • カタログ : カタログ クラスについて説明します。

  • トランザクション : オンライン トランザクションの作成に関連するバスケット クラスと注文書クラスについて説明します。

  • プロファイル管理 : ユーザー プロファイルを管理するために使うクラスについて説明します。

  • Web ログのインポート : Web イベントの記録に関連するクラスについて説明します。

  • Web トポロジ : Web 構造と Web アクセスを定義するクラスについて説明します。


キャンペーン

ここでは、マーケティング データを収集したり、表現するために使うクラスについて説明します。マーケティング データには、カスタム広告、スケジュールが設定された広告コンテンツ、および広告キャンペーンが含まれます。それぞれのクラスの説明は、論理図の下にあります。これらのクラスの詳細については、「データ ウェアハウスのクラス」を参照してください。

次の図は、キャンペーン管理に使う主なクラスと、各クラス間の関連を示しています。

キャンペーンに関するクラス

Industry
Code
Commerce
Event
Customer
Event
Type
Target
Target
Group
Xref
PageGroup
Xref
Campaign
Event
Campaign
ItemEvents
ByDate
AndUser
RegisteredUser
URI
Date
LogUser
Site
PageGroup
Target
Group
AdItem
DrnItem
Order
Discount
Campaign
Item
Campaign
Creative
Size
Creative
Type
Xref
Creative
Creative
Type
Campaign
Item
Types

AdItem

このクラスは、スケジュール化された Web ページ用広告コンテンツを表します。このクラスは、いつ広告を実行するのかを表すデータ メンバや、広告とそれに対応する製品をリンクさせるためのコードを持ちます。IndustryCode クラスは、AdItem オブジェクトに含まれる広告の種類を分類するためのものです。

Campaign

このクラスは、広告主のマーケティング キャンペーンの実行に関係するビジネス プロセスを定義します。Campaign クラスは、顧客 (広告主) を一連の CampaignItem オブジェクト (広告、割引、ダイレクト メール、または関連する商品) に関連付けます。Campaign オブジェクトは、マーケティング イベントを表している EventType オブジェクトと関連付けられます。

Customer オブジェクトは複数の Campaign オブジェクトを持つことができます。これは、顧客がある期間にわたって複数の広告キャンペーンを持つことを表します。Campaign は、複数のコンテンツ項目 (CampaignItem オブジェクト) を含むことができます。同様に、コンテンツ項目のセットは AdItem オブジェクトなどの項目を複数含んだり、複数のユーザー グループを対象とすることができます。また、1 つの Web ページに複数のコンテンツ項目を含めたり、あるコンテンツ項目を複数のページに含めることも可能です。これらのケースはすべて、クラス間における一対多の関連によって表現されます。

CampaignEvent

このクラスは、マーケティング キャンペーンのためのイベント情報を格納します。マーケティング キャンペーンのためのイベントとしては、CampaignItem オブジェクトのヒット数や CampaignItem オブジェクトに関連するビジネス トランザクションなどがあります。

CampaignItem

このクラスは、マーケティング キャンペーン (Campaign オブジェクト) またはスケジュール化された広告 (Creative オブジェクト) のうち、どちらか一方または両方に含まれるコンテンツを表します。コンテンツは、AdItem オブジェクト、DmItem オブジェクト、および OrderItem オブジェクトを 1 つ以上組み合わせることで表されます。

CampaignItem オブジェクトは、特定の種類のキャンペーン項目に属させるようにすることができます。所属先は、CampaignItemTypes オブジェクトに対するリンクにより指定されます。

コンテンツ項目は、特定のユーザー グループを対象とすることができます。その場合は、CampaignItem オブジェクトを 1 つ以上の TargetGroupXRef オブジェクトにリンクします。TargetGroupXRef クラスは、カスタム コンテンツ項目と対象ユーザー グループとの相互参照を表します。

また、コンテンツ項目は、複数のカスタム コンテンツのグループを表示する Web ページのパーツにすることもできます。PageGroupXRef オブジェクトは、CampaignItem オブジェクトとそれらのページとの相互参照を表します。

CampaignItem オブジェクトは、AdItem オブジェクトなどのコンテンツ項目を複数含んだり、複数のユーザー グループを対象とすることができます。1 つの Web ページに複数のコンテンツ項目を含めたり、あるコンテンツ項目を複数のページに含めることも可能です。これらのケースはすべて、クラス間における一対多の関連によって表現されます。

CampaignItemTypes

このクラスは、カスタム Web ページ コンテンツのカテゴリを表します。

Creative

このクラスは、顧客 (広告主など) のための Web コンテンツのスケジュール設定に関係するビジネス プロセスを定義します。コンテンツの種類は、CreativeType オブジェクトへのリンクという形で記録されます。スケジュール化されたコンテンツは、1 つ以上の CampaignItem オブジェクトによって表されます。このコンテンツには、広告、割引、関連商品目、またはダイレクト メールが含まれています。CreativeSize オブジェクトは、コンテンツを表示するために使われる Web ページ上の領域を定義します。

Customer オブジェクトは、複数の Creative オブジェクトを持つことができます。これは、顧客がある期間にわたって複数の広告を持つことを表します。Creative 広告は、コンテンツ項目 (CampaignItem オブジェクト) を複数持つことができます。同様に、コンテンツ項目のセットは AdItem オブジェクトなどの項目を複数含んだり、複数のユーザー グループを対象とすることができます。また、1 つの Web ページに複数のコンテンツ項目を含めたり、あるコンテンツ項目を複数のページに含めることも可能です。これらのケースはすべて、クラス間における一対多の関連によって表現されます。

CreativeSize

このクラスは、Web ページ上のカスタム コンテンツのサイズを表します。

CreativeType

このクラスは、Web ページ用のカスタム コンテンツのカテゴリを規定します。

CreativeTypeXRef

このクラスは、Web ページ用のカスタム コンテンツのカテゴリを規定します。

Customer

このクラスは、Commerce Server 2000 Web サイトを介して広告を使う顧客を定義します。Customer オブジェクトは、顧客の業種を定義する IndustryCode オブジェクトに関連付けられています。顧客のためのマーケティング キャンペーンは、1 つ以上の Campaign オブジェクトへのリンクという形で記録されます。顧客のためのカスタム広告は、1 つ以上の Creative オブジェクトへのリンクという形で記録されます。

DmItem

このクラスは、スケジュール化されたダイレクト メール項目を表します。このクラスは、住所や書式など、ダイレクト メール コンテンツの詳細情報を記録したデータ メンバを含んでいます。

EventType

このクラスは、マーケティング イベントのカテゴリを表します。EventType オブジェクトは、マーケティング イベントを表しています。このオブジェクトは、イベント内にある、マーケティング キャンペーンを表す 1 つ以上の Campaign オブジェクトに関連付けられます。

IndustryCode

このクラスは、顧客の業種や、広告展開する項目が対象とする業種を規定します。

OrderDiscount

このクラスは、割引商品を表します。このクラスは、項目および販売条件を表すデータ メンバを含んでいます。

PageGroup

このクラスは、マーケティング キャンペーンのために使われる Web ページのカスタム コンテンツ項目のグループを表します。ページは、1 つ以上のマーケティング キャンペーン イベントの重要な要素であり、この情報は、PageGroup オブジェクトから 1 つ以上の CampaignEvent オブジェクトへのリンクという形で表されます。CampaignItem オブジェクトはカスタム コンテンツ項目を表し、1 つ以上の PageGroupXRef オブジェクトを介して PageGroup オブジェクトにリンクしています。

PageGroupXRef

このクラスは、カスタム Web ページ コンテンツと、そのコンテンツを含む、1 つの Web ページまたは複数の Web ページの論理セットとの相互参照を表します。PageGroupXRef は、カスタム コンテンツの内容を表す CampaignItem オブジェクトと、PageGroup オブジェクトとを関連付けます。PageGroup オブジェクトは、カスタム コンテンツを含む、1 つの Web ページまたは複数の Web ページの論理セットを表します。

単一のカスタム コンテンツを複数の Web ページに含めることができます。これは、1 つの CampaignItem オブジェクトを複数の PageGroupXRef オブジェクトにリンクすることで表現します。1 つの Web ページまたは複数の Web ページの論理セットには、複数の異なるコンテンツ項目を含めることができます。これは、1 つの PageGroup オブジェクトを複数の PageGroupXRef オブジェクトにリンクすることで表現します。

Target

このクラスは、特定の種類のユーザーなど、マーケティング コンテンツおよびカスタム Web コンテンツの対象を定義します。TargetGroup オブジェクトは、1 つ以上の Target オブジェクトをリンクし、対象グループを編成します。対象グループのためのカスタム コンテンツは、TargetGroupXRef オブジェクトを介して TargetGroup オブジェクトにリンクします。

TargetGroup

このクラスは、マーケティング コンテンツおよび Web コンテンツの対象となるグループを定義します。TargetGroup オブジェクトにリンクされた 1 つ以上の Target オブジェクトにより、対象となるグループが編成されます。対象グループは、TargetGroupXRef オブジェクトを介して、そのグループ用のコンテンツへリンクします。

TargetGroupXRef

このクラスは、対象グループと対象グループ用カスタム コンテンツとの相互参照を表します。Target オブジェクトは、TargetGroup オブジェクトへリンクすることにより、対象グループを構成します。CampaignItem によって表されるカスタム コンテンツは、TargetGroupXRef オブジェクトを介して TargetGroup オブジェクトにリンクします。


カタログ

ここでは、カタログと商品を表現するために使うクラスについて説明します。それぞれのクラスの詳細については、「データ ウェアハウスのクラス」を参照してください。

CatalogGlobal

このクラスは、ほかのカタログを格納するグローバル カタログを表します。

Category

このクラスは、商品カタログのカテゴリを表します。

CatHierarchy

このクラスは、階層化された商品カタログのレベルを表します。

Products

このクラスは、商品カタログに記載される商品を表します。


トランザクション

ここでは、オンライン トランザクションを表現するために使うクラスについて説明します。トランザクションは、ショッピング バスケットや注文を通して、存在します。それぞれのクラスの説明は、論理図の下にあります。これらのクラスの詳細については、「データ ウェアハウスのクラス」を参照してください。

次の図は、オンライン セールスに使う主なクラスと、各クラス間の関連を示しています。

トランザクションに関するクラス

Products
Basket
Order
OrderForm LineItems
OrderForm Header
OrderGroup Addresses
Order
Group
EventType LogUser
URI
RegisteredUser Site

Basket

このクラスは、ショッピング バスケットへの商品の追加や、ショッピング バスケットからの商品の削除に関連するビジネス トランザクションを表します。

Order

このクラスは、注文の保存要求や送信要求を格納します。

OrderFormHeader

このクラスは、注文フォームのヘッダ情報を表します。OrderFormHeader オブジェクトには、連絡先情報、買物客の情報、および注文フォームの処理に必要なその他のデータが格納されます。OrderFormHeader オブジェクトは、注文された項目を表す、0 個以上の OrderFormLineItems オブジェクトとリンクしています。OrderGroup オブジェクトは注文を表し、0 個以上の OrderFormHeader オブジェクトとリンクしています。

OrderFormLineItems

このクラスは、注文フォーム内の項目を表します。OrderFormHeader オブジェクトは、注文フォームの処理に使われる情報を表し、0 個以上の OrderFormLineItems オブジェクトとリンクしています。

OrderGroup

OrderGroup オブジェクトは、注文情報を表します。具体的には、OrderGroup オブジェクトは、1 つ以上の OrderFormHeader オブジェクトと 1 つ以上の OrderGroupAddresses オブジェクトとリンクしています。OrderFormHeader クラスは、請求コード、税コード、および注文の処理に必要なその他のデータなど、注文を制御するための情報を表します。OrderFormHeader オブジェクトは、購入される特定の製品の内訳を表す 1 つ以上の OrderFormLineItems オブジェクトとリンクしています。OrderGroupAddresses オブジェクトは、注文書のメール情報と出荷情報を表します。

OrderGroupAddresses

このクラスは、注文書のメール情報と出荷情報を表します。


プロファイル管理

ここでは、Commerce Server 2000 サイトのユーザーを表現するために使うクラスについて説明します。プロファイルを使うビジネス プロセスには、訪問とバスケット イベントの追跡があります。それぞれのクラスの詳細については、「データ ウェアハウスのクラス」を参照してください。

Address

このクラスは、ユーザーおよび組織の住所を格納します。既定では、Commerce Server 2000 ユーザー プロファイル データ インポート DTS タスクは、プロファイル データをこのクラスにインポートします。

RegisteredUser

このクラスは、Commerce Server 2000 Web サイトの匿名ユーザーや登録済みユーザーを表します。既定では、Commerce Server 2000 ユーザー プロファイル データ インポート DTS タスクは、UserObject プロファイル データをこのクラスにインポートします。


Web ログのインポート

ここでは、Web ログ インポート データを格納するために使うクラスについて説明します。このデータには、Web サイトへの訪問、注文書の申請、および買い物バスケット トランザクションが含まれます。それぞれのクラスの説明は、次の図の下にあります。これらのクラスの詳細については、「データ ウェアハウスのクラス」を参照してください。

次の図は、ログのインポートに使う主なクラスと、各クラス間の関連を示しています。

Web ログのインポートに関するクラス

UriQuery
HitsInfo
Win32
Status
Http
Status
Request
OpenUser
Visit
Visit
Info
Referrer
Domain
User
Agent
Visit
URI
LevelNDir
LogUser
Task History
Hostname
Ref
IpRef
Referrer
Import
Options

HitsInfo

このクラスは、Web サイトのヒット数の要約です。

HostnameRef

このクラスは、IP アドレスのホスト名参照を表します。

HttpStatus

このクラスは、Web サイトのログ ファイルに格納される HTTP 状態コードを表します。

ImportOptions

このクラスは、インポートのためのオプションを表します。

IPRef

このクラスは、LogUser オブジェクトの IP 参照を表します。IPRef オブジェクトは、IP アドレス、その IP アドレスの被参照回数、および参照状態を含んでいます。

IPRef オブジェクトは、IP アドレスに関連付けられたホストを表す HostNameRef オブジェクトと関連付けられます。

LevelNDir

このクラスは、階層ディレクトリ構造の 6 段階のレベルを表すために使う 6 つのクラスを象徴しています。各レベルには、ディレクトリ名と、URI オブジェクトへのリンクが含まれています。

LogUser

このクラスは、Commerce Server 2000 Web サイトと対話するユーザーに関する情報を格納します。これは、RegisteredUser クラスと、Web サイトへの訪問中に実行される処理との間のプライマリ リンクとなります。

Commerce Server 2000 Web サイトを訪れた人のことをユーザーと呼びます。LogUser オブジェクトはユーザーごとに作成され、cookie のデータやユーザー名などのそのユーザーに関する情報を記録するために使われます。ユーザーが Web サイトを訪問すると、そのたびに Visit オブジェクトが作成されます。新しく作成された Visit オブジェクトは、そのユーザーの LogUser オブジェクトにリンクされます。LogUser オブジェクトは、匿名ユーザー、組織に属しているユーザー、および Commerce Server 2000 Web サイトに登録されているユーザーを表すことができます。

ユーザーの IP 情報は、LogUser オブジェクトに関連付けられた IPRef オブジェクト内に格納されます。HostNameRef オブジェクトは、IPRef オブジェクトのホスト名情報を格納します。

OpenUserVisit

このクラスは、ログ ファイルがインポートされた時点で開いていた、Web サイトへの訪問を表します。このクラスによって、ログを次にインポートしたときに、オープンされていた訪問に接続し、それを閉じることが可能になります。訪問が終了する (閉じられる) と、OpenUserVisit オブジェクトが削除され、VisitInfo オブジェクトのインスタンスが作成されます。

Referrer

このクラスは、要求の参照元 URL を表します。

ReferrerDomain

このクラスは、要求の参照元ドメインを表します。

Request

要求は、訪問のコンテキストに作成されます。Request オブジェクトは、ユーザーやそのほかの訪問の詳細を示す情報に接続します。

要求は、URI の一部であることがあります。その場合、URI オブジェクトは Request オブジェクトにリンクされます。URI に含まれるクエリ文字列は、Request オブジェクトにリンクされた URIQuery オブジェクトによって表現されます。

または、サイトの URL を使って Request が作成されることがあります。サイトの URL は、URI オブジェクトを介して Request オブジェクトにリンクされる SiteURL オブジェクトによって表されます。SiteURL オブジェクトは、実際の Web サイト、または仮想サーバーを表します。Request オブジェクトにサイトに対するクエリ文字列が含まれている場合、SiteURL オブジェクトは、SiteURL オブジェクトをそのクエリ文字列にリンクするための 1 つ以上の LinkSVQStringName オブジェクトまたは LinkMVQStringName オブジェクトを含んでいます。

TaskHistory

このクラスは、DTS タスクの実行と、その実行結果を追跡します。データ ウェアハウス内で実行された、すべてのインポートおよび削除の履歴を保持しています。

URI

このクラスは統一リソース識別子 (URI) を表します。URI は、URL を識別するだけでなく、Commerce Server 2000 Web サイト上でクエリやトランザクションを実行するために使われます。URI オブジェクトは、SiteURL オブジェクトを介して Commerce Server 2000 Web サイトと関連付けられます。

サイトの識別は、サイトの最初の位置、またはサイトの最上位の部分 (ドメイン名など) を格納する SiteURL オブジェクト、およびそのサイトの残りの URL を格納するリンクされた URI オブジェクトによって行われます。URI オブジェクトが階層的なディレクトリ構造を表している場合は、適切な LevelNDir オブジェクトにリンクされます。

ビジネス トランザクションは URI クエリを介して発生することがあります。そのトランザクションは、1 つ以上の Request オブジェクトと URI オブジェクトとのリンクにより表されます。

URI オブジェクトは、ページだけを表し、グラフィック、バナーなどは表しません。

URIQuery

このクラスは、1 つ以上のトランザクション要求に関連付けられた URI クエリを表します。

UserAgent

このクラスは、Web サイトを訪問したユーザーが使っている、オペレーティング システムや Web ブラウザなどのソフトウェア インフラストラクチャを表します。

Visit

Visit オブジェクトは、Commerce Server 2000 Web サイト上でのユーザーの利用状況を表す情報を記録します。Visit オブジェクトは、LogUser オブジェクトおよび Site オブジェクトと関連付けられます。LogUser はユーザーに関する情報を含んでいます。Visit オブジェクトは、訪問日時など、訪問のコンテキストの内容を表します。

VisitInfo

このクラスは、Web サイトへの訪問 (終了したもの) に関する情報を表しています。ログをインポートする時点で訪問が終了していない場合は、このオブジェクトではなく OpenUserVisit オブジェクトがインスタンス化されます。

VisitInfo クラスは、Commerce Server 2000 Web サイトにおけるユーザーの利用状況を記録するための基本構造です。ここでは、Commerce Server 2000 Web サイトとデータをやり取りする人のことをユーザーと呼びます。VisitInfo クラスは、ユーザーの利用状況に関する情報を記録します。

VisitInfo オブジェクトは、LogUser オブジェクトおよび UserAgent オブジェクトと関連付けられます。LogUser はユーザーに関する情報を含んでいます。UserAgent オブジェクトは、ユーザーが使っているソフトウェアとコンピュータに関する情報を含んでいます。

VisitInfo オブジェクトは、訪問日時などの、訪問のコンテキストの内容を表します。VisitInfo オブジェクトは、日付情報が含まれる Date 構造体とリンクしています。

Win32Status

このクラスは、Web サイトのログ ファイルに格納される Win32 状態コードを表します。


Web トポロジ

ここでは、Web サイト、仮想サーバー、URL/URI などの Web 構成データを表すために使うクラスについて説明します。Web 構成データは、ビジネス トランザクションに対する訪問、要求などのイベントに関連付けられています。それぞれのクラスの説明は、次の図の下にあります。これらのクラスの詳細については、「データ ウェアハウスのクラス」を参照してください。

次の図は、Web トポロジに使う主なクラスと、各クラス間の関連を示しています。

Web トポロジに関するクラス

MVQString
Name
SVQString
Name
URI
SiteURL
Virtual
Server
Crawler
Site
Summary
Site
Server
Binding
Server
Group

Crawler

このクラスは、サイトに関連付けられた Web クローラを表します。

MVQStringName

このクラスは、複数の値を持つカスタム クエリ文字列の名前を表します。

ServerBinding

このクラスは、仮想サーバーについてのサーバーへのバインド情報を表します。

ServerGroup

このクラスは、サーバー グループを表します。

Site

このクラスは、Commerce Server 2000 Web サイトを表します。ログに記録された Commerce Server 2000 Web サイトの利用状況情報は、Site オブジェクトに格納または接続されます。このサイトの URL は、SiteURL オブジェクトと URI オブジェクトの組み合わせです。

サイトが仮想サーバー グループの一部になっていることがあります。この場合、サイトは SiteURL オブジェクトを介して VirtualServer オブジェクトに接続されます。ビジネス トランザクションは URI クエリを介して発生することがあります。そのトランザクションは、1 つ以上の Request オブジェクトと URI オブジェクトとをリンクすることで表されます。サイトへの訪問は、1 つ以上の Visit オブジェクトを介してリンクされます。サイトにクローラが関連付けられている場合は、Crawler オブジェクトが作成され、Site オブジェクトにリンクされます。

SiteSummary

このクラスは、サイトの訪問総数や総ヒット数などの要約情報を格納します。

SiteURL

このクラスは、サイトと仮想サーバー間の URL ベースの接続を表します。Web サイトと仮想サーバーとの間の関連付けは、Site オブジェクトへのリンクと VirtualServer オブジェクトへのリンクによって表されます。

SiteURL オブジェクトは、サイト名の最初の位置または最上位の部分 (ドメイン名など) を格納します。必要に応じて SiteURL オブジェクトに URI オブジェクトがリンクされ、サイトの URL 全体が形成されます。

サイトの URL に関連付けられているクエリ文字列 (SVQStringName オブジェクトまたは MVQStringName オブジェクト) が存在する場合、そのクエリ文字列は、LinkSVQStringName オブジェクトまたは LinkMVQStringName オブジェクトを介して SiteURL オブジェクトにリンクされます。

SVQStringName

このクラスは、URL に関連付けられた、カスタムの単一値クエリ文字列を表します。

VirtualServer

このクラスは、別個の Web サイトを論理的にバインドした、仮想サーバーを表します。

仮想サーバーに関連付けられた Web サイトは、一連の SiteURL オブジェクトを介して表されます。サーバーへのバインドは、1 つ以上の ServerBinding オブジェクトと関連付けることによって発生します。

VirtualServer オブジェクトは、より大きなサーバー グループの一部となることができます。この場合、VirtualServer オブジェクトは ServerGroup オブジェクトを介してリンクされます。

URI を介して仮想サーバーに対してビジネス トランザクションが実行されると、Request オブジェクトは適切な SiteURL オブジェクトと URI オブジェクトを介してリンクされます。


データ ウェアハウスを拡張する

ここでは、Commerce Server 2000 データ ウェアハウス論理スキーマの拡張について説明します。論理スキーマのアーキテクチャは、データ ウェアハウス メタモデルによって管理されます。論理スキーマを拡張するには、メタモデルに関する十分な知識が必要です。詳細については、「データ ウェアハウスのメタモデル」を参照してください。

注意

  • 可能な限り、既存のデータ ウェアハウスの構造を使ってデータを格納してください。論理スキーマの削除は、このバージョンの Commerce Server 2000 ではサポートされていません。

  • Commerce Server をインストールしたルート ディレクトリにある SQL スクリプト csdwschema.sql が論理スキーマを作成します。このスクリプトは、空のデータベース上で実行する必要があります。論理スキーマを再インストールする必要がある場合は、古いデータベースを削除して、データベースを新規作成し、スクリプトを再実行します。

データ ウェアハウスを拡張する手順を次に示します。

  1. データ ウェアハウスに接続して、スキーマ変更モードをオンにします。この手順の詳細については、「データ ウェアハウス、分析、および OLE DB プロバイダ」を参照してください。

  2. クラスを作成します。この手順の詳細については、「新しいクラスを作成する」を参照してください。

  3. 作成したクラスに、適切なデータ メンバを挿入します。この手順の詳細については、「新しいクラス データ メンバを作成する」を参照してください。

  4. 必要に応じて、クラスのキーを明示的に作成します。メンバ キー 1 つに対してクラス キーを 1 つ黙示的に作成できます。この手順の詳細については、「新しいクラス キーを作成する」を参照してください。

  5. 必要に応じて、クラス キー メンバを明示的に作成します。この手順の詳細については、「新しいクラス キー メンバを作成する」を参照してください。

  6. 必要に応じて、クラス間に関連を作成します。既存の論理スキーマに新しい構造体をリンクする場合は、新しいクラスと既存のデータ ウェアハウスのクラスとの間に関連を作成する必要があります。この手順の詳細については、「新しいクラスの関連を作成する」を参照してください。

  7. 必要に応じて、クラス間にデータ関連メンバを作成します。この手順の詳細については、「新しいクラス関連メンバを作成する」を参照してください。

既存のデータ ウェアハウスのクラスを使ってこの手順を実演するためのサンプル実行コードを提供します。既存のクラスを使って、構造体をどのようにして論理スキーマにフィットさせるかを洞察することができます。作成されるクラスは、既存の OrderFormHeader クラスです。注文は、組織が注文を処理するために必要な情報を表す OrderFormHeader クラスと、購入内容の詳細を示す OrderFormLineItems クラスで構成されています。単純にするために、この例では品目の詳細を無視して、OrderFormHeader クラスの作成と、OrderFormHeader クラスを既存の OrderGroup クラスにリンクすることに焦点を当てて説明します。

この例では、正しく機能するコードに必要な、エラーのチェックや特定の手続きは示されていません。

この例の後に、フィルタ処理について説明します。

ここでは、次のトピックについて説明します。

  • 新しいクラスを作成する

  • 新しいクラス データ メンバを作成する

  • 新しいクラス キーを作成する

  • 新しいクラス キー メンバを作成する

  • 新しいクラスの関連を作成する

  • 新しいクラス関連メンバを作成する

  • フィルタ処理によって要約クラスを作成する


新しいクラスを作成する

ここでは、データ ウェアハウス内に新しいクラスを作成する方法について説明します。クラスを作成するには、クラス定義 (ClsDef) テーブル内に新しいインスタンスを挿入し、属性を設定して、変更を保存します。クラス定義テーブルについては、「クラス定義メタデータ」を参照してください。

サンプルの実行を開始します。注文フォームの処理に必要なヘッダー情報を表す "新しい" OrderFormHeader クラスを作成します。既存のクラスの詳細については、「OrderFormHeader」を参照してください。

既定では、Binary (6) 型の一意の ID がこのクラスに対して自動的に生成されます。

OrderFormHeader クラスは複数のメンバを持つキーを持っているので、GenerateKeyDef 属性が False (0) に設定されます。キー メンバが 1 つであるクラスの場合、この属性を True に設定して (同時に、そのキーに対応するメンバ定義の IsPrimaryKey 属性を True に設定し)、OLE DB Provider for Commerce Server がキーを自動的に生成するようにできます。クラス キーの作成の詳細については、「新しいクラス キーを作成する」を参照してください。

次の表は、OrderFormHeader クラスのクラス定義テーブル内の属性と値の一覧です。あまり使われないオプション属性については、示していません。"必須/省略可能" 欄の "R" は必須の属性を表し、"O" は省略可能な属性を表しています。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
ClassDefName | "OrderFormHeader" | 文字列 | R | データ ウェアハウス論理スキーマ内のクラスを一意に識別します。
SourceDefName | "DataSource" | 文字列 | R | クラスのインスタンスを格納するデータ ソースを識別します。
Description | "Header data for a order form." | 文字列 | O | 論理クラスを説明します。
GenerateKeyDef | 0 | Integer | O | 自動的にキーを生成しません。キーは、"ClsKeyDef" メタデータ コンポーネントを使って手動で指定します。
IsActive | 1 | Integer | O | クラスがアクティブです (インスタンスを追加できます)。
IsPersistent | 1 | Integer | O | インスタンス データを保存します。

サンプル実行コード : 手順 1 および 2

データ ウェアハウスに接続し、OrderFormHeader クラスを作成します。

'Create an ADO connection object
   Dim cnnConnection
   Set cnnConnection = CreateObject("ADODB.Connection")

'Create an ADO command object.
   Dim cmdCommand
   Set cmdCommand = CreateObject("ADODB.Command")

'Create an ADO record object.
   Dim recNew
   Set recNew = CreateObject("ADODB.Record")

'Open a connection (bind) to the provider.
   cnnConnection.Open "URL=mscop://InProcConnect/Server=MyServer:" _ &
    "Catalog=DWSchema:Database=Retail_dw:User=admin:Password=*****:" _ &
    "FastLoad=True"

'Set the connection in the command object
   Set cmdCommand.ActiveConnection = cnnConnection

'Turn on "Schema Change" mode
   cmdCommand.CommandText = "SchemaMode=1"
   cmdCommand.Execute

'Create an instance in the Class Definition table.
   recNew.Open "ClsDef/OrderFormHeader", cnnConnection, _
    adModeWrite, adCreateOverwrite

'Set the attributes
   recNew("SourceDefName") = "DataSource"
   recNew("Description") = "Header data for a order form."

'Create our own key
   recNew("GenerateKeyDef") = 0
   recNew("IsActive") = 1
   recNew("IsPersistent") = 1

'Save the new row.
   recNew("__Commit") = 1
   recNew.Fields.Update

新しいクラスが作成されました。このクラスにデータ メンバを生成します。


新しいクラス データ メンバを作成する

ここでは、データ ウェアハウス内のクラスに新しいデータ メンバを作成する方法について説明します。データ メンバを作成する前に、クラスが存在している必要があります。

クラス メンバを作成するには、メンバ定義 (MemDef) テーブル内に新しいインスタンスを挿入し、属性を設定して、変更を保存します。メンバ定義テーブルについては、「メンバ定義メタデータ」を参照してください。

「新しいクラスを作成する」で作成したサンプル実行コードを続行するには、OrderFormHeader クラスの OrderForm_Id メンバと ordergroup_id メンバを作成します。既存のクラスの詳細については、「OrderFormHeader」を参照してください。同じ方法でクラス メンバを追加できます。

次の表は、OrderForm_Id メンバのメンバ定義テーブル内の属性と値の一覧です。あまり使われないオプション属性については、示していません。"必須/省略可能" 欄の "R" は必須の属性を表し、"O" は省略可能な属性を表しています。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
MemberDefName | "OrderForm_Id" | 文字列 | R | クラスのデータ メンバを一意に識別するための ID です。
ClassDefName | "OrderFormHeader" | 文字列 | R | この属性が含まれているクラスの名前を格納します。
TypeName | "UUID" | 文字列 | R | データ メンバのデータ型を識別します。
Description | "Identifier for an order form." | 文字列 | O | データ メンバについての論理上の基本コンセプトの説明です。
IsActive | 1 | Integer | O | アクティブなデータ メンバであるかどうか、つまりインスタンスが追加されるかどうかを表します。
IsPersistent | 1 | Integer | O | 基になるデータ ストアに、このデータ メンバのインスタンスを保存します。
IsPrimaryKey | 0 | Integer | O | この属性は、クラス定義で GenerateKeyDef 属性が True になっている場合、プロバイダがクラス キーを自動的に生成できるように True (1) に設定されます。ただし、複数のメンバを持つキーの場合は True に設定できません。
IsRequired | 1 | Integer | O | このデータ メンバが必須メンバであることを表します。

次の表は、ordergroup_id メンバのメンバ定義テーブル内の属性と値の一覧です。あまり使われないオプション属性については、示していません。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
MemberDefName | "ordergroup_d" | 文字列 | R | クラスのデータ メンバを一意に識別するための ID です。
ClassDefName | "OrderFormHeader" | 文字列 | R | この属性が含まれているクラスの名前を格納します。
TypeName | "UUID" | 文字列 | R | データ メンバのデータ型を識別します。
Description | "Unique identifier for the OrderGroup class." | 文字列 | O | データ メンバについての論理上の基本コンセプトの説明です。
IsActive | 1 | Integer | O | アクティブなデータ メンバであるかどうか、つまりインスタンスが追加される可能性があるかどうかを表します。
IsPersistent | 1 | Integer | O | 基になるデータ ストアに、このデータ メンバのインスタンスを保存します。
IsPrimaryKey | 0 | Integer | O | この属性は、クラス定義で GenerateKeyDef 属性が True になっている場合、プロバイダがクラス キーを自動的に生成できるように True (1) に設定されます。ただし、複数のメンバを持つキーの場合は True に設定できません。
IsRequired | 1 | Integer | O | このデータ メンバが必須メンバであることを表します。

サンプル実行コード : 手順 3

OrderFormHeader クラスの新しい OrderForm_Id データ メンバと ordergroup_id データ メンバを作成します。

'Create an instance in the Member Definition table for the first member.
   recNew.Open "MemDef/OrderFormHeader/OrderForm_Id", cnnConnection, _
    adModeWrite, adCreateOverwrite

'Set the attributes
   recNew("ClassDefName") = "OrderFormHeader"
   recNew("TypeName") = "UUID"
   recNew("Description") = "Identifier for an order form."
   recNew("IsActive") = 1
   recNew("IsPersistent") = 1
   recNew("IsPrimaryKey") = 0
   recNew("IsRequired") = 1

'Save the new row.
   recNew("__Commit") = 1
   recNew.Fields.Update

'Create an instance in the Member Definition table for the second member.
   recNew.Open "MemDef/OrderFormHeader/ordergroup_id", cnnConnection, _
    adModeWrite, adCreateOverwrite

'Set the attributes.
   recNew("ClassDefName") = "OrderFormHeader"
   recNew("TypeName") = "UUID"
   recNew("Description") = "Identifier for an order form."
   recNew("IsActive") = 1
   recNew("IsPersistent") = 1
   recNew("IsPrimaryKey") = 0
   recNew("IsRequired") = 1

'Save the new row.
   recNew("__Commit") = 1
   recNew.Fields.Update

次に説明する操作では、OrderFormHeader クラスのインスタンスを一意に識別するために使うキーを作成します。


新しいクラス キーを作成する

ここでは、クラスの一意の識別子としてのキーを作成する方法について説明します。キーを作成する前に、クラスが存在している必要があります。各キーは、1 つのメンバだけ持つことも、複数のメンバを持つこともできます。

単一値のキーを作成する方法には、次の 2 つがあります。

  • 作成するキーに対応するクラス定義テーブルの GenerateKeyDef 属性とメンバ定義テーブルの IsPrimaryKey 属性の値を共に True (1) に設定することによって、キーを暗黙的に作成します。その後で、クラス キー定義テーブルの新しいインスタンスを明示的に作成する必要はありません。

  • 次の 2 段階の手順でキーを明示的に作成します。まず、クラス キー定義 (ClsKeyDef) テーブル内に新しいインスタンスを挿入し、属性を設定して、変更を保存します。クラス キー定義テーブルについては、「キー定義メタデータ」を参照してください。次に、クラス キー メンバ (KeyMem) テーブルを使ってキーのメンバを定義します。この手順の詳細については、「新しいクラス キー メンバを作成する」を参照してください。

複数のメンバを持つキーの場合は、2 番目の方法しか使用できません。

「新しいクラスを作成する」で開始したサンプル実行コードを続行します。今度は OrderFormHeader クラスのキー (複数メンバ) を作成します。

次の表は、 OrderFormHeader クラスのクラス キー定義テーブルの属性と値の一覧です。あまり使われないオプション属性については、示していません。"必須/省略可能" 欄の "R" は必須の属性を表し、"O" は省略可能な属性を表しています。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
ClassKeyDefName | "OrderFormHeaderKey" | 文字列 | R | クラス キーを一意に識別します。
ClassDefName | "OrderFormHeader" | 文字列 | R | キーのクラスの名前です。
Description | "Unique key for the OrderFormHeader Class." | 文字列 | O | キーについての論理上の基本コンセプトの説明です。

サンプル実行コード : 手順 4

OrderFormHeader クラスの新しいキーを作成します。

'Create an instance in the Class Key Definition table.
   recNew.Open "ClsKeyDef/OrderFormHeaderKey", cnnConnection, _
    adModeWrite, adCreateOverwrite

'Set the attributes.
   recNew("ClassDefName") = "OrderFormHeader"
   recNew("Description") = "Unique key for the OrderFormHeader class."

'Save the new row.
   recNew("__Commit") = 1
   recNew.Fields.Update

次に説明する操作で、このキーのメンバを定義します。


新しいクラス キー メンバを作成する

ここでは、クラス メンバを定義して、単一メンバを持つキーまたは複数メンバを持つキーを、クラスに対して明示的に作成する方法について説明します。キー メンバのクラスは、定義済みのクラス キーと共に既に存在している必要があります。そのクラスには、示されているデータ メンバが既に含まれている必要があります。

キー メンバを作成するには、キー メンバ (KeyMem) テーブル内に新しいインスタンスを挿入し、属性を設定して、変更を保存します。クラス キー メンバ テーブルについては、「キー メンバ定義メタデータ」を参照してください。

次の表は、OrderFormHeader クラス キーの最初のメンバである "ordergroup_id" のクラス キー メンバ テーブルの属性と値の一覧です。あまり使われないオプション属性については、示していません。"必須/省略可能" 欄の "R" は必須の属性を表し、"O" は省略可能な属性を表しています。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
KeyDefName | "OrderFormHeaderKey" | 文字列 | R | クラスキーの名前です。
MemDefName | "ordergroup_id" | 文字列 | R | クラス キーの一部になっているデータ メンバの ID です。
OrdinalPosInKey | 0 | Integer | R | 作成されたキーにおけるデータ メンバの位置です。0 から始まります。キーが一意であることが保証されるのは、データ メンバが特定の順序で処理された場合だけです。
Description | "First member of OrderFormHeaderKey." | 文字列 | O | キー メンバの説明です。

次の表は、OrderFormHeader クラス キーの 2 番目のメンバである "OrderForm_Id" のクラス キー メンバ テーブルの属性と値の一覧です。あまり使われないオプション属性については、示していません。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
KeyDefName | "OrderFormHeaderKey" | 文字列 | R | クラスキーの名前です。
MemDefName | "OrderForm_Id" | 文字列 | R | クラス キーの一部になっているデータ メンバの ID です。
OrdinalPosInKey | 1 | Integer | R | 作成されたキーにおけるデータ メンバの位置です。0 から始まります。
Description | "Second member of OrderFormHeaderKey." | 文字列 | O | キー メンバの説明です。

サンプル実行コード : 手順 5

OrderFormHeader クラス キーのメンバを作成します。

'Create an instance in the Key Member table for the first member.
   recNew.Open "KeyMem/OrderFormHeaderKey/ordergroup_id", _
    cnnConnection, adModeWrite, adCreateOverwrite

'Set the attributes for the first key member.
   recNew("MemDefName") = "ordergroup_id"
   recNew("OrdinalPosInKey") = 0
   recNew("Description") = "First member of OrderFormHeaderKey."

'Save the new row.
   recNew("__Commit") = 1
   recNew.Update

'Create an instance in the Key Member table for the second member.
   recNew.Open "KeyMem/OrderFormHeaderKey/OrderForm_Id", _
    cnnConnection, adModeWrite, adCreateOverwrite

'Set the attributes for the second key member.
   recNew("MemDefName") = "OrderForm_Id"
   recNew("OrdinalPosInKey") = 1
   recNew("Description") = "Second member of OrderFormHeaderKey."

'Save the new row.
   recNew("__Commit") = 1
   recNew.Fields.Update

次に説明する操作で、"新しい" OrderFormHeader クラスと既存の OrderGroup クラスとの間の関連を作成します。


新しいクラスの関連を作成する

ここでは、データ ウェアハウスの各クラス間に親子の関連を作成する方法について説明します。関連を作成する前に、対象となるクラスと、親クラスのキーが存在している必要があります。関連の名前は一意である必要があります。

注

  • 継承を含む関連におけるメンバ名は、親クラスと子クラスで重複しないようにする必要があります。親クラスのメンバはすべて、子クラスで可視になるためです。

  • 同じ理由により、一対多の関連でも、親のキー メンバ名は、子クラスのメンバ名と重複しないようにする必要があります。

  • 2 つのクラスの間では、関連は 1 つしか定義しないようにします。

  • あるクラスの IsPersistent 属性がゼロ (0) に設定されていても、そのクラスを親クラスとして定義した場合は、このクラスの IsPersistent 属性の値は、プロバイダによって 1 に変更されます。

クラスの関連を作成するには、関連定義 (RelDef) テーブル内に新しいインスタンスを挿入し、属性を設定して、変更を保存します。関連定義テーブルについては、「関連定義メタデータ」を参照してください。

「新しいクラスを作成する」で開始したサンプル実行コードを続行します。既存の OrderGroup クラスと "新しい" OrderFormHeader クラスとの間に一対多 (タイプ 2) の関連を作成します。この 2 つのクラスの詳細については、「OrderGroup」と「OrderFormHeader」を参照してください。既存のデータ ウェアハウスのクラスに対してこの関連を作成することにより、論理スキーマにリンクします。データ ウェアハウスを拡張するために、既存の論理スキーマにリンクする必要はありません。

次の表は、OrderGroup クラスと OrderFormHeader クラス間の関連に対する、関連定義テーブル内の属性と値の一覧です。あまり使われないオプション属性については、示していません。"必須/省略可能" 欄の "R" は必須の属性を表し、"O" は省略可能な属性を表しています。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
RelDefName | "OrderGroupToOrderFormHeader" | 文字列 | R | クラス間の関連を一意に識別します。
RelType | 2 | Integer | R | 関連の種類を定義します。最も一般的なのはタイプ "2" の一対多です。
ParentClassName | "OrderGroup" | 文字列 | R | 親子関連における親クラスを識別します。
ParentClassKey | "OrderGroupKey" | 文字列 | R | 親クラスのキーを識別します。
ChildClassName | "OrderFormHeader" | 文字列 | R | 親子関連における子クラスを識別します。
Description | "OrderGroup to OrderFormHeader relation." | 文字列 | O | 関連についての論理上の基本コンセプトの説明です。

サンプル実行コード : 手順 6

OrderFormHeader クラスを OrderGroup クラスにリンクさせる関連を作成します。

'Create an instance in the Relation Definition table.
   recNew.Open "RelDef/OrderGroupToOrderFormHeader", cnnConnection, _
     adModeWrite, adCreateOverwrite

'Set the required attributes
   recNew("ParentClassName") = "OrderGroup"
   recNew("ParentClassKey") = "OrderGroupKey"
   recNew("ChildClassName") = "OrderFormHeader"
   recNew("RelType") = 2
   recNew("Description") = "OrderGroup to OrderFormHeader relation."

'Save the new row.
   recNew("__Commit") = 1
   recNew.Fields.Update

OrderFormHeader クラスとそのほかのクラス (既存の論理スキーマの Date クラスなど) と間の関連を追加するには、この操作を繰り返します。次に説明する操作で、親クラスと子クラスの特定のデータ メンバ間にメンバ関連を作成します。これらの関連は、OrderFormHeader クラスの外部キーとして使います。


新しいクラス関連メンバを作成する

ここでは、親クラスのメンバをその子クラスのメンバにマップする方法について説明します。親クラスのメンバを子クラスのメンバにマップすると、マップされた親クラスのメンバの子クラスでの表示、設定が可能になります。クラスの関連を作成すると、親クラスのキーは、子クラスのキー メンバでないメンバとして自動的にマップされますが、子クラス内に保存されません。この例では、暗黙的にマップされた親クラスのキーが子クラスのキーの一部としても使われているので、キーのメンバはすべて保存される必要があり、この動作の上書きが必要です。関連メンバを明示的に作成すると、メンバを保存するように設定できます。

クラス間の関連が既に定義してある必要があります。さらに、それぞれのクラスには、関連メンバを作成する前にデータ メンバが存在している必要があります。

関連メンバを作成するには、関連メンバ (RelMem) テーブル内に新しいインスタンスを挿入し、属性を設定して、変更を保存します。関連メンバ テーブルについては、「関連メンバ定義メタデータ」を参照してください。

「新しいクラスを作成する」で開始したサンプル実行コードの最後の手順では、OrderFormHeader クラスと OrderGroup クラスの ordergroup_id データ メンバをマッピングする新しい関連メンバを作成します。

次の表は、ordergroup_id メンバの関連に必要な、関連メンバ テーブルの属性と値の一覧です。オプション属性については示していません。"必須/省略可能" 欄の "R" は必須の属性を表し、"O" は省略可能な属性を表しています。

属性の名称 | 属性の値 | 型 | 必須/省略可能 | 説明
RelationName | "OrderGroupToOrderFormHeader" | 文字列 | R | クラスの関連を識別します。
ParentMemName | "ordergroup_id" | 文字列 | R | 親クラス メンバの名前を識別します。
ChildMemName | "ordergroup_id" | 文字列 | R | 子クラス メンバの名前を識別します。
Description | "OrderGroup.ordergroup_id to OrderFormHeader.ordergroup_id relation member." | 文字列 | O | 関連についての論理上の基本コンセプトの説明です。

サンプル実行コード : 手順 7

OrderFormHeader クラスと OrderGroup クラスの ordergroup_id メンバをマップする関連メンバを作成して、更新したスキーマを保存します。

'Create an instance in the Relation Member Definition table.
   recNew.Open _
   "RelMem/OrderGroupToOrderFormHeader/ordergroup_id/ordergroup_id", _
    cnnConnection, adModeWrite, adCreateOverwrite

'Set the attributes
   recNew("ParentMemName") = "ordergroup_id"
   recNew("ChildMemName") = "ordergroup_id"
   recNew("Description") = "OrderGroup.ordergroup_id to " & _
    "OrderFormHeader.ordergroup_id relation member."

'Save the new row.
   recNew("__Commit") = 1
   recNew.Fields.Update

'Commit the changes to the Data Warehouse schema.
   cmdCommand.CommandText = "CommitSchema"
   cmdCommand.Execute

'Turn off "Schema Change" mode.
   cmdCommand.CommandText = "SchemaMode=0"
   cmdCommand.Execute

'Close the connection.
   cnnConnection.Close

'Release the objects.
   Set recNew = Nothing
   Set cmdCommand = Nothing
   Set cnnConnection = Nothing

これで、データ ウェアハウスを拡張して OrderFormHeader クラスを作成する操作は完了です。

この OrderFormHeader クラスが、以前から存在していたデータ ウェアハウスのクラスでない場合、新しい OrderFormHeader クラスにユーザー データを生成するには、カスタム ログ インポート タスクを作成する必要があります。また、レポートのために新しい構造にアクセスするには、カスタム計算を作成する必要があります。


フィルタ処理によって要約クラスを作成する

ここでは、フィルタ処理によって要約クラスを作成する方法について説明します。フィルタ処理を行うと、基本クラスのメンバの値に基づいてデータを抽出して要約できます。

要約クラスの場合、クラス定義の ClassType 属性は "3" に設定されます。クラス定義の InstExclusionExpr 属性には、フィルタ処理を有効にする式の文字列が含まれています。フィルタ処理の機能では、次の構文を使う IN 演算子と NOT IN 演算子をサポートしています。

   Exclusion string = "BaseClassMemberName IN(value)"
   Exclusion string = "BaseClassMemberName NOT IN(value)"

スキーマを拡張する手順についてはほかで説明しているので、ここでは、フィルタ処理によって要約を作成する特定の手順だけを説明します。

サンプル コード 1

'Set the class name
   Set recNew = CreateObject("ADODB.Record")
   recNew("ClassDefName") = "NewRequestAgg"

'Set the class type to aggregation
   recNew("ClassType") = 3

'Set the name of the base class to use for data
   recNew("BaseClassName") = "Request"

'Set the exclusion string (filter)
'This excludes all data from the aggregation where IsRequest = 1
   recNew("InstExclusionExpr") = "IsRequest IN(1)"

サンプル コード 2

'Set the class name
   recNew("ClassDefName") = "NewHTTPStatustAgg"

'Set the class type to aggregation
   recNew("ClassType") = 3

'Set the name of the base class to use for data
   recNew("BaseClassName") = "Request"

'Set the exclusion string (filter)
'This excludes all hits that have an HTTPStatus not in the given set
   recNew("InstExclusionExpr") = _
    "HttpStatus NOT IN(0,200,202,203,204,304)"


データ ウェアハウスにデータをインポートする

ここでは、Microsoft Visual Basic Scripting Edition スクリプト (VBScript) を使ってデータ ウェアハウスにカスタム データをインポートする方法について説明します。

カスタム インポートの処理には、次の 5 段階の操作を行います。

  1. データ インポートの目的を明確に定義して、必要不可欠なデータしか含まれないようにインポート対象のデータ セットを調整します。インポートに要する時間は、対象のデータ量に比例します。「カスタム インポート タスクを計画する」を参照してください。

  2. 基幹業務 (LOB) ストアまたはログ ファイルにある必要不可欠なデータを、データ ウェアハウス内の既存の構造に一致させます。たとえば、ユーザー データが必要な場合は、RegisteredUser クラスを使ってデータを保持します。「カスタム インポート タスクを計画する」を参照してください。

  3. データ ウェアハウス スキーマを拡張して、既存の構造にない LOB データを組み込みます。たとえば、登録済みユーザーが好むアイス クリームの味を分析することがデータ インポートの目的の場合は、RegisteredUser クラスに fav_flavor_code データ メンバを追加します。既存のスキーマを拡張するのは、どうしても必要な場合だけにしてください。「データ ウェアハウスを準備する」を参照してください。

  4. LOB データを中間形式に解析します。この操作を、データのステージングといいます。データをステージングすることにより、インポートの信頼性が向上して、データ ウェアハウス サーバーとの対話に要する時間が短くなります。必要不可欠なデータを抽出して、データ ウェアハウス スキーマに直接インポートできる形式にします。「データをステージングする」を参照してください。

  5. ステージング領域からデータ ウェアハウスにデータをインポートするプロセスを作成します。Commerce Server 2000 OLE DB プロバイダを使って、データ ウェアハウス スキーマにデータをインポートします。「カスタム インポート タスクを実行する」を参照してください。

この過程を説明するために、サンプルの実行コードを使います。この例では、大量のユーザー データを持つアイス クリーム会社を取り上げています。目的は、データ ウェアハウスを使って、人気のあるアイス クリームの味の地域分布を分析することです。

ここでは、次のトピックについて説明します。

  • カスタム インポート タスクを計画する

  • データ ウェアハウスを準備する

  • データをステージングする

  • カスタム インポート タスクを実行する

関連項目

データ ウェアハウスを拡張する


カスタム インポート タスクを計画する

ここでは、Commerce Server 2000 データ ウェアハウスにカスタム データをインポートする手順のうち、最初の 2 つについて説明します。

この過程を説明するために、サンプルの実行コードを使います。この例では、大量のユーザー データをログ ファイル内に持つアイス クリーム会社を取り上げています。この会社は、前年にその Web サイトに登録した顧客に関する情報を抽出したいと考えています。登録の過程には、好みのアイス クリームの味に関するアンケートに答えることが含まれています。販売促進活動を地域ごとに強化するために、このアイス クリーム会社は、人気のある味の地域分布を分析したいと考えています。

ログ ファイルには、次のデータが含まれています。

データ プロパティの名称 | 値の例
Title | "Mr" "Ms" "Dr"
FullName | "Kevin Verboort"
Email_Address | "kevinv@microsoft.com
TelNum | "800 123-4567x123"
FaxNum | "800 123-4567x321"
AddressLine1 | "Public's Animal Shelter"
AddressLine2 | "223 Normal Coast Way, #85"
City | "Everytown"
State | "WA"
ZipCode | "98434-3424"
Fav_Flavor_Code | 34
Fav_Flavor_Comments | "Can never get enough chocolate!"

ゴールは、人気のある味の地域分布を分析することです。この分析には、少なくとも、"State" のデータと "Fav_Flavor_Code" のデータが必要です。より細かい分布を調べるためには、"City" のデータも含める必要があります。

自社製品の販売促進を行うには、登録済みユーザーの名前と電子メール アドレスが必要です。名前と電子メール アドレスを取得することにより、カスタマイズしたダイレクト メールを顧客に送信できます。

次の表は、必要不可欠であるデータの一覧です。

データ プロパティの名称 | データ型
Title | 文字列
FullName | 文字列
Email_address | 文字列
City | 文字列
State | 文字列
Fav_Flavor_Code | Integer (符号なし)

これで、最初の手順は完了です。

2 番目の手順では、このデータに適合するデータ ウェアハウス スキーマ内の構造を見つけます。最も近いのは、データ ウェアハウスの論理スキーマのプロファイル カテゴリにある RegisteredUser 構造体です。

RegisteredUser クラスには、タイトル (UserTitle)、名前 (FirstName, LastName)、および電子メール アドレス (Email) のデータ メンバが含まれています。市町村、都道府県/州、および好きなアイス クリームの味のデータ メンバは含まれていません。次の表は、ログ データとデータ ウェアハウスの構造体とを突き合わせたものを示しています。

ソース データ | RegisteredUser データ メンバ
Commerce.GenID オブジェクト | UserID
ログ データ : Title | UserTitle
ログ データ : FullName | FirstName, LastName
ログ データ : Email_Address | Email
ログ データ : City | 新しいデータ メンバ : City
ログ データ : State | 新しいデータ メンバ : State
ログ データ : Fav_Flavor_Code | 新しいデータ メンバ : Fav_Flavor_Code

必要不可欠なデータ メンバの最後のものは、RegisteredUser クラスの一意キーです。このキーは UserId データ メンバで、UUID 型です。カスタム データを Commerce Server 2000 データ ウェアハウスに適合させてインポートするには、このキーを正しく割り当てます。Commerce Server 2000 は UUID ジェネレータを提供します。Commerce.GenID オブジェクトは、Commerce Server 2000 プロファイル システムでユーザーを識別するために使う UUID を作成します。このオブジェクトを使ってインポート データの UserID キー を作成すると、既存のすべてのデータ、および今後データ ウェアハウスにインポートされるデータとの互換性が保証されます。これで、必要な情報を含む有効な RegisteredUser オブジェクトの作成に必要なデータが完成しました。

次の手順については、「データ ウェアハウスを準備する」を参照してください。


データ ウェアハウスを準備する

ここでは、Commerce Server 2000 データ ウェアハウスにカスタム データをインポートする処理のうちの 3 番目の手順について説明します。最初の 2 つの手順については、「カスタム インポート タスクを計画する」を参照してください。2 番目の手順で、RegisteredUser クラスを拡張して基幹業務 (LOB) データを含める必要があることを確認しました。具体的には、City、State、および Fav_Flavor_Code の 3 つのデータ メンバが必要です。

注意

  • 既存のデータ ウェアハウス スキーマを拡張するのは、どうしても必要な場合だけにしてください。データ ウェアハウスに対して行った変更を元に戻すことはできません。

既存のクラスにデータ メンバを追加する方法の詳細については、「新しいクラス データ メンバを作成する」を参照してください。次の表は、MemDef メタデータ属性の設定についてまとめて示しています。

MemDef 属性 | City | State | Fav_Flavor_Code
MemDefName | "City" | "State" | "Fav_Flavor_Code"
TypeName | "String" | "String" | "ULONG"
IsPrimaryKey | 0 | 0 | 0
IsExported | 0 | 0 | 0
IsActive | 0 | 0 | 0
IsPersistent | 1 | 1 | 1
GenerateColumnDef | 1 | 1 | 1
Description | "User Loc:City" | "User Loc:State" | "Ice Cream Flavor"

新しいデータ メンバが RegisteredUser クラスに追加されました。次の手順については、「データをステージングする」を参照してください。


データをステージングする

ここでは、Commerce Server 2000 データ ウェアハウスにカスタム データをインポートする処理のうち 4 番目の手順について説明します。この前の手順については、「データ ウェアハウスを準備する」を参照してください。

データのステージングの主な作業は、データ ソースから適切な情報を抽出することです。これらの情報は、データ ウェアハウス スキーマの構造体に直接インポートできるように書式化されています。

次の表は、データのソース、処理、および処理後の値についてまとめて示しています。

ソース データ (既存のログ ファイルまたは Commerce オブジェクト) | 処理 | 処理後の値 (ステージングされた新しいデータ ファイル)
Title (文字列) | コピー | UserTitle (文字列)
Fullname (文字列) | First Name の解析 | FirstName (文字列)
FullName (文字列) | Last Name の解析 | LastName (文字列)
Email_address (文字列) | コピー | Email (文字列)
City (文字列) | コピー | City (文字列)
State (文字列) | コピー | State (文字列)
Fav_Flavor_Code (Integer) | ULONG に変換 | Fav_Flavor_Code (ULONG)

入力ログ ファイルの処理中に、エントリの数を追跡します。こうすることで、インポート処理の最後の手順が簡単になります。

サンプル実行コードでは、ステージングされたデータ ファイルのデータは、ユーザーによってグループ化されています。最後の手順には、ステージングされたデータ ファイルから次のデータを抽出する機能が必要です。この例では、処理の最適化は行っていません。

これで、データのステージングが完了して、データをインポートする準備ができました。最後の手順については、「カスタム インポート タスクを実行する」を参照してください。


カスタム インポート タスクを実行する

ここでは、Commerce Server 2000 データ ウェアハウスにカスタム データをインポートする処理のうち、最後の手順について説明します。この前の手順については、「データをステージングする」を参照してください。

この手順では、ステージングされたデータ ファイルからデータを読み取り、データ ウェアハウス スキーマの構造体に挿入するためのカスタム ADO スクリプトを作成します。正しくデータ マッピングを行うには、OLE DB プロバイダが必要です。この処理過程は最適化されていません。大規模なインポート タスクにスクリプトを使うことはお勧めしません。ここでは、実例を示す目的でのみスクリプトを使っています。

次の ADO スクリプトを使うには、ステージングされたデータ ファイルから次の値を抽出するための解析関数 GetNextValue が必要です。ステージングされたファイルの書式は、次のパターンに一致していると想定されます。

#users
user1title user1fname user1lname user1email user1city user1state user1ffc
user2title user2fname user2lname ...

この ADO スクリプトでは、OLE DB Provider for Commerce Server を使います。このプロバイダは、データベースの各エントリに必要なキーの値を作成します。さらにデータを適切に書式化し、基になるデータ ストアに対してそのデータをパーティションに分割します。データ ストアを直接操作するのではなく、プロバイダを使うようにしてください。

'Create the ADO DB record object.
   Dim rec
   Set rec = CreateObject("ADODB.Record")

'Create the ADO DB Connection object.
   Dim cnnConnection
   Set cnnConnection = CreateObject("ADODB.Connection")

'Create the connection string.
'The "fastload=true:" option is required.
   Dim strConn
   strConn = "URL=mscop://InProcConnect/Server=DWServer:" & _
    "catalog=dwschema:database=Retail_dw:user=admin:" & _
    "password=*****:fastload=true:"

'Connect to the Data Warehouse.
   cnnConnection.Open strConn

'Retrieve the number of users to process.
   Dim nUsers
   nUsers = GetNextValue()

'Instantiate the commerce GUID generator.
   Dim oGenID
   Set oGenID = CreateObject("Commerce.GenID")

'Iterate through the users.
   Dim i
   For i = 0 to nUsers

      'Create a new blank RegisteredUser row.
      rec.Open "instance/registereduser", cnnConnection, _
       adModeWrite, adCreateCollection

      'Create the GUID.
      rec("UserID") = oGenID.GenGUIDString()

      'Get user title.
      rec("title") = GetNextValue()

      'Get user first name.
      rec("firstname") = GetNextValue()

      'Get user last name.
      rec("lastname") = GetNextValue()

      'Repeat for email, city, and state.

      'Get fav_flavor_code.
      rec("fav_flavor_code") = GetNextValue()

      'Bookkeeping.
      rec("UserIDChangedBy") = "DW Custom Import"
      rec("DateCreated") = Cdate(Now())
      rec("DateLastChanged") = Cdate(Now())

      'Save the new row.
      rec("__Commit") = 1
      rec.Fields.Update

      'Done with current user.
      rec.Close
   Next

'Close the connection and release the objects.
   cnnConnection.Close
   Set oGenID = Nothing
   Set cnnConnection = Nothing


Passport と統合する

Microsoft Passport には、次の 2 つのサービスがあります。どちらも Microsoft Commerce Server の Web サイトに統合できます。これらのサービスは別々に統合することも、同じサイトに統合することもできます。

  • Passport シングル サイン イン : Passport 認証対応の Web サイトであれば、認証が必要なアクセスに 1 つのユーザー名とパスワードで使用できる、Passport の認証サービスです。

  • Passport Express Purchase : Passport の wallet サービスです。ユーザーはクレジット カードと住所の情報を Passport に保存して、Passport の wallet に対応しているサイトでその情報を利用できます。

Passport を統合することによって顧客が得られる利点には、1 つのユーザー名とパスワードを覚えるだけでよいこと、オンラインで買い物をするたびにクレジット カードと住所の情報を入力しなくてもよいこと、機密性の高い情報を保管している場所が少なくて済むことがあります。さらに、Passport 対応 Web サイトでは、標準化されたプライバシ保護ポリシーに準拠することが義務付けられています。

Passport を統合することによってマーチャントが得られる利点は、ユーザーが快適な経験をすることによって Web サイトの登録ユーザーになるケースが増え、ショッピング カートが途中で放棄されることが少なくなるという点です。標準化されたプライバシ保護ポリシーがあるので、ユーザーは個人情報を入力することに対して抵抗を感じません。

ここでは、この 2 つの統合を別々に説明します。

次のトピックについて説明します。

  • Passport シングル サイン インを統合する : Passport の認証サービスと、それを Commerce Server Web サイトに統合する方法を説明します。

  • Passport Express Purchase を統合する : Passport の wallet サービスと、それを Commerce Server Web サイトに統合する方法を説明します。

  • Passport との統合の次のステップ : Passport に関する情報を得るための参照先を示し、それを Commerce Server Web サイトに統合する方法を説明します。


Passport シングル サイン インを統合する

Microsoft Commerce Server 2000 では、認証とプロファイルを分けています。Commerce Server のプロファイルは、Commerce Server が認証に使用されなくても、認証プロセスの後に使用できます。このように分離していることで、Commerce Server プロファイル サービスの統合機能を維持しながら、Commerce Server に組み込まれている認証モードの代わりに Microsoft Passport シングル サイン インによる認証サービスが使用できます。

Passport の認証処理の手順

Passport の認証は次の手順で行われます。

  1. 認証されていないユーザーが、マーチャントの Web サイトの保護されたページにアクセスしようとします。

  2. ページのコードにより、Passport の Manager オブジェクトが呼び出され、ユーザーのブラウザは Passport Web サイトのログオン ページにリダイレクトされます。リダイレクト用の URL にはクエリ文字列が含まれており、その中には戻り先 URL も入っています。

  3. ユーザーは、Passport Web サイトのログオン ページで Passport の標準的な資格情報を入力します。

  4. ユーザーの資格情報が受理されると、Passport Web サイトはクエリ文字列に暗号化された Passport のプロファイル データを入れ、ユーザーのブラウザをマーチャントの Web サイトに戻します。

  5. Passport の Manager オブジェクトは、そのクエリ文字列データを解析して消去し、ユーザーのブラウザにセッション cookie を送信します。

  6. ユーザーのログイン設定に従って、セッション cookie または固定 cookie が設定されます。

  7. マーチャントの保護されたページでの以後の認証は、Passport の cookie に基づいて行われます。

お勧めする統合方法

Passport の認証サービスの統合については、Commerce Server プロファイル サービスを Passport シングル サイン イン認証サービスと統合して使用する方法をお勧めします。この方法では、Commerce Server プロファイル サービスと Commerce Server のほかの機能との統合が組み込まれていることによる利点が維持できます。

Passport を通じてユーザーが認証されると、Commerce Server プロファイル サービスからユーザー プロファイルが取得され、以後のセッションで使用されます。このような統合を実現するには、次の操作を行います。

  • ユーザー プロファイルを変更して PassportID という新しいプロパティを追加します。このプロパティには、Pairwise Unique ID (PUID) という、Passport サービスで使用される 64 ビットの一意のユーザー ID を設定します。PUID の詳細については、Passport SDK のドキュメントを参照してください。

  • Passport でユーザーが認証されたら、Passport のコア プロファイルから MemberIDHigh プロパティと MemberIDLow プロパティを取得し、次の数式を使用して PUID を計算します。
    dim sPassportKey, sHex
sHex = Hex(nMemberIDHigh)
sPassportKey = String(8 - len(sHex), "0") & sHex
sHex = Hex(nMemberIDLow)
sPassportKey = sPassportKey & String(8 - len(sHex), "0") & sHex

    PUID の詳細な計算例については、Passport Web サイト (www.passport.com/business/) を参照してください。

  • 計算された PUID を使用して、それに対応する Commerce Server のユーザー プロファイルを取得します。次のようなコードを使用します。
    Dim csUserProfile
Set csUserProfile = ProfileService.GetProfileByKey( _
                                      "PassportID", _
                                      sPassportKey, _
                                        "UserObject")
  • AuthManager オブジェクトを使用して、ユーザーのチケットの種類とユーザー ID を設定します。次に示す、Commerce Server SDK の Passport サイトレットの Include\Profilelib.asp ファイルにある LogOnUser 関数からの 2 行のコードは、これらの値を設定する方法を示します。
    objAuthMgr.SetAuthTicket strUserName, fCookieSupport, strTimeout
objAuthMgr.SetUserID enumMSCS_ProfileTicketType, _
                     objProfile.Fields(USER_ID).Value

    それぞれの詳細については、「AuthManager.SetAuthTicket」と「AuthManager.SetUserID」を参照してください。

  • 対応する Commerce Server ユーザー プロファイルが見つからない場合は、その新しいユーザーについてユーザー プロファイルを作成し、PUID をその PassportID プロパティに保存します。次のようなテストを行います。
    If ( csUserProfile Is Nothing ) Then
    ' Use your standard method for creating new
    ' user profiles here, probably involving calls
    ' to GenID.GenGUIDString and ProfileService.CreateProfile.
    ' Don't forget to store the PUID so that the proper
    ' profile can be stored next time.For example:
    CreateNewUserProfile(sPassportKey)
End If
  • 対応する Commerce Server ユーザー プロファイルが見つかった場合は、Passport の最新のプロファイル データを Commerce Server のプロファイルの対応するデータと同期させる必要があります。こうすると、ユーザーは予期したとおりの結果を得られます。つまり、Passport Web サイトにある自分の個人データへの変更が、Passport に対応しているマーチャントの Web サイトで使用されます。

    Passport のプロファイルには ProfileVersion プロパティがあり、ユーザーのプロファイル データが前回の訪問から変更しているかどうかを特定することができます。

Passport ユーザーに対しては Passport シングル サイン インを提供し、Passport を使用しないユーザーには Commerce Server の認証メカニズムを使用する認証ソリューションを開発することもできます。


Passport Express Purchase を統合する

Microsoft Passport には wallet 機能があり、この機能を使用すると、ユーザーはクレジット カード情報や配送先住所など、オンライン ショッピングに必要なデータを、単一の集中化された場所である Passport Web サイトに供給することができます。Passport プログラムに参加しているマーチャントであれば、Passport の wallet の Web サイトからこの情報を取得することができるので、ユーザーは買い物をするたびに同じデータを入力する必要がなくなります。Passport シングル サイン イン認証サービスとは異なり、Passport Express Purchase サービスでは Passport 固有の Component Object Model (COM) オブジェクトをマーチャントの Web サーバーにインストールする必要はありません。マーチャントは、Passport シングル サイン インを認証に使用するかどうかとは関係なく、Passport Express Purchase サービスを使用できます。

Passport Express Purchase 処理の手順

Passport Express Purchase は次の手順で行われます。

  1. ユーザーが、マーチャントの Web サイトのページで Passport Express Purchase によるチェックアウトを選択します。

  2. ユーザーのブラウザは、Passport Web サイトの wallet のページにリダイレクトされます。リダイレクト用の URL にはクエリ文字列が含まれており、その中には戻り先 URL、クレジット カードに関する設定、および共通で使用するデータが入っています。

  3. まだ Passport にサインインしていないユーザーは、Passport の標準的な資格情報を入力するよう求められます。

  4. wallet のページで、ユーザーは使用するクレジット カード、請求先住所と配送先住所などを選択します。新しいクレジット カード情報や別の配送先住所の入力、自分の wallet に既に入力されている情報の編集もできます。

  5. Passport Web サイトはユーザーのブラウザをマーチャントの Web サイトにリダイレクトして戻し、選択された wallet 情報が入ったフォームを送付します。このフォームは Electronic Commerce Markup Language (ECML) を使用して書式設定されています。

  6. マーチャントの Web サイトでは、返された wallet データを使用して、購入手続きを完了します。

お勧めする統合方法

Passport Express Purchase の統合については、できるだけ購入手続きを合理化する方法をお勧めします。ユーザーは wallet のページで既に自分のクレジット カードと住所のデータを確認しているので、再びマーチャントの Web サイトで個人データの確認を明示的に求めるべきではありません。Passport の wallet サイトから返されたデータは、任意の方法で検証し、必要な情報があればそれを収集した後、注文のサマリー ページを表示して、ユーザーがそこで最終的な承認をできるようにします。Passport の wallet サイトから供給された情報はサマリー ページに再度表示され、ここでユーザーの暗黙的な確認を得ます (ただし、クレジット カードの番号すべては表示されません)。

重要

  • Passport の wallet サイトから返されたデータを、ユーザーが避けられないフォームのページに既定の情報を入力するためだけに使用するのはやめてください。これでは、そもそも "express purchase (迅速な購入手続き)"のために Passport を使用する意味がありません。

Passport のページが自社の Web サイトにシームレスにつながるように、提携を検討することをお勧めします。Passport に登録すると、カスタマイズ可能なスタイル シート (CSS) ファイルの URL が指定できます。このファイルによって、Passport のログイン、登録、および wallet に関するページのほとんどすべての要素の色やプロパティを定義できます。また、ほとんどの wallet ページに、自社サイト独自の質問を含む、独自のコンテンツを注入できます。このメカニズムを使用すると、購入手続きを完了するために必要な追加情報を Passport の wallet ページで収集できるので、自社の Web サイトに戻ってきたユーザーをすぐに注文サマリー ページに導くことができます。


Passport との統合の次のステップ

Passport シングル サイン イン認証サービスと Passport Express Purchase サービスを Commerce Server Web サイトにうまく統合するには、次のことが必要です。

  • Passport Web サイトを利用して、Passport とその提供サービスについてさらに学びます。このサイトにはホワイト ペーパー、デモ、導入ガイド、サンプル コードがあります。また、Passport のディスカッション グループに関する情報や、Passport チームに質問する方法も掲載されています。

  • Passport サイト登録は、www.passport.com/business でできます。登録が済むと、Passport Software Development Kit (SDK) がダウンロードできるようになり、その機能を詳細に学習することができます。

  • 自社の Web サイトが、Passport Web サイトとして要求される標準に準拠していることを確認します。この標準は、プライバシやセキュリティなどに関するものです。

  • Passport Express Purchase サービスを利用するには、認定された証明機関から証明書を取得します。Passport Express Purchase サービスではセキュリティに Secure Socket Layer (SSL) テクノロジを使用するため、証明書が必要になります。

  • Commerce Server SDK で提供している Passport サイトレットのソース コードを詳しく調べてください。詳細については、「SDK ロード マップ」を参照してください。


プログラマーズ リファレンス

ここでは、Microsoft Commerce Server 2000 のプラットフォームにおけるプログラミングに関するリファレンス マニュアルを提供します。呼び出すことのできる Component Object Model (COM) オブジェクト、実装できる COM インターフェイス、用意されているパイプライン コンポーネント、XML 構造、データベース スキーマ、ビジネス デスク ユーティリティなどについて紹介します。

ここでは、次のトピックについて説明します。

  • オブジェクト リファレンス : Commerce Server で用意されている COM オブジェクト、およびそのプロパティとメソッドに関するリファレンス マニュアルです。これらのオブジェクトは、明示的に作成し、呼び出します。オブジェクトを異なるプログラミング言語の観点から別々に説明するリファレンス ページが並行して用意されています。それらの言語とは次の 2 つです。
    • Microsoft Visual Basic/Microsoft Visual Basic Scripting Edition (VBScript)

    • C++
  • インターフェイス リファレンス : Commence Server によってオブジェクトを呼び出せるようにするために実装する COM インターフェイスに関するリファレンス マニュアルです。これには、独自のパイプライン コンポーネントを作成するために実装するパイプライン インターフェイス、およびサイト パッケージャと Commerce Server マネージャで呼び出すことのできるオブジェクトを構築できるようにするサイト パッケージャ インターフェイスが含まれます。

  • パイプライン コンポーネント リファレンス : Commerce Server で用意されているパイプライン コンポーネントに関するリファレンス マニュアルです。

  • OLE DB Provider for Commerce Server : Commerce Server 内のプロファイル サービスとデータ ウェアハウスへのアクセスを提供する、OLE DB プロバイダに関するリファレンス マニュアルです。

  • ビジネス デスク リファレンス : Commerce Server ビジネス デスクに関するリファレンス マニュアルです。説明には HTML コンポーネント (HTC) のイベント、プロパティ、およびメソッドの詳細が含まれます。また、ビジネス デスクで提供される定数、グローバル変数、およびユーティリティ ルーチンについても詳細に説明します。

  • XML リファレンス : Commerce Server で使われる各種 XML 文書の構造に関するリファレンス マニュアルです。

  • スキーマ リファレンス : スキーマについての十分な知識が重要となる、Commerce Server の主要な領域で使われる各種データベース スキーマに関するリファレンス マニュアルです。

  • データベース テーブル リファレンス : Commerce Server データベースと、それらに含まれるテーブルに関するリファレンス マニュアルです。この情報は、SQL レプリケーションを確立する際に役立ちます。

  • スタイル シート リファレンス : Commerce Server ビジネス デスクで使われるカスケード スタイル シート (CSS) に関するリファレンス マニュアルです。


オブジェクト リファレンス

ここでは、Microsoft Commerce Server 2000 で提供されている Component Object Model (COM) オブジェクトについて詳しく説明します。オブジェクトについて、次の 2 つのプログラミング言語に分けて説明するために、並列のリファレンス ページを用意しています。

  • Microsoft Visual Basic/Microsoft Visual Basic Scripting Edition (VBScript)

  • C++

注 :

  • Commerce Server オブジェクトへの、Java および Microsoft JScript からのアクセスはサポートされていません。

ここでは、次のトピックについて説明します。

  • COM パラメータのメモリを管理する : COM オブジェクトの呼び出し前および呼び出し後における、COM パラメータのメモリ所有権について説明します。

  • 標準 COM エラー : Commerce Server COM オブジェクトの多くが使用する、標準 COM エラーについて説明します。標準 COM エラーは、呼び出し元にエラーを通知するために使われます。

  • Visual Basic からの呼び出し : Commerce Server COM オブジェクトについて、Microsoft Visual Basic および VBScript の観点から説明します。

  • C++ からの呼び出し : Commerce Server COM オブジェクトについて、C++ の観点から説明します。


COM パラメータのメモリを管理する

ここでは、Component Object Model (COM) オブジェクトのプロパティとメソッドの間でやりとりするパラメータに関連する、メモリ所有権の問題についてのハイレベルな情報をいくつか示します。

さらに詳しい情報は、http://www.microsoft.com/japan/developer/ に示されています。

パラメータ ダイレクションの概要

次の一般的な文は、COM オブジェクトのメソッドやプロパティに対して、オブジェクトなどの非スカラ パラメータや文字列を受け渡す場合に適用されます。

  • [in] パラメータの場合は、呼び出し元がメモリを割り当てて、呼び出しが返されたらメモリを開放する必要があります。

  • [out] パラメータの場合は、メソッドまたはプロパティがメモリを割り当てて、呼び出し元がそのメモリを開放する必要があります。

  • [in, out] パラメータの場合は、呼び出し元がメモリを割り当てます。メソッドまたはプロパティは、任意にその割り当て解除を行い、再び割り当てることができます。最終的には、呼び出し元がメモリを削除する必要があります。

VB

Microsoft Visual Basic (VB) または Visual Basic Scripting Edition (VBScript) のどちらかでプログラミングを行っている場合、メソッドまたはプロパティがオブジェクトを返して、そのオブジェクトへの参照を変数に割り当てたら、処理を終了したときにその変数を Nothing に設定する必要があることを忘れないでください。次に例を示します。

' Assume object oCalledObject already exists.
Dim oRetObject
oCalledObject.GetAnObject(oRetObject)

' Do something with the returned object.
oRetObject.DoSomething

' Release the reference to the returned object.
Set oRetObject= Nothing

C++

C++ でプログラミングを行っている場合は、次の点に注意してください。

  • メソッド (get_ および put_ property メソッドを含む) に BSTR として文字列を渡す場合は、呼び出しの前後両方で BSTR を所有します。オブジェクトが文字列を覚えている必要がある場合は、オブジェクトによりコピーが作成されます。この目的に設計された特殊なヒープから、SysAllocString および SysFreeString ファミリの関数を使用して、BSTR を割り当て、かつ割り当て解除を行います。

  • 文字列がメソッド (get_ および put_ property メソッドを含む) から、プログラマが指定した BSTR ポインタを使用して返される場合は、呼び出し元がこの BSTR を所有し、SysFreeString ファミリの関数を使用して、それを割り当て解除する必要があります。メソッドが BSTR を割り当て、プログラマがそれを割り当て解除することに注意してください。

  • 単純なスカラ タイプは値渡しされるため、関連するメモリとは特に関係ありません。

  • COM オブジェクト (そのインターフェイスへのポインタ) がパラメータとしてメソッドに渡される場合は、そのオブジェクトの有効期間を管理するために、通常の COM AddRef および Release メカニズムが使用されます。メソッドの呼び出し元は、メソッド呼び出しの前に AddRef メソッドを (おそらく間接的に) 呼び出していて、オブジェクトへの参照を必要としなくなると、おそらくメソッド呼び出しが返された後などに、必ず Release メソッドを呼び出します。

    オブジェクトは、メソッド呼び出しが返された後でも、オブジェクトへの参照を保存する必要がある場合、AddRef メソッドを呼び出して、その実行中の参照を記録します。このように、メソッドの呼び出し元が、メソッドが返された後で Release メソッドを呼び出す場合でも、オブジェクトはその参照を保存し、オブジェクトは削除されません。

  • COM オブジェクト (そのインターフェイスへのポインタ) がメソッドから返された場合、メソッドは、返される前に指定されたインターフェイス ポインタのアドレスを使用して、呼び出し元のために AddRef メソッドを呼び出しています。呼び出し元は、オブジェクトの処理を終了したときに、Release メソッドを呼び出すだけです。

  • SAFEARRAY は、特殊な OLE アロケータを使用して、この目的で提供された SafeArrayCreate ファミリのルーチンから割り当てる必要があります。スクリプト作成可能なオブジェクトの場合、SAFEARRAY の内容は、BSTR などの別のスカラではなく、Variant でなければなりません。

  • Variant は、VariantInit/VariantClear ファミリの関数に、値の処理と解放に役立つ特殊なヘルパ関数を備えています。


標準 COM エラー

多くの場合、Commerce Server オブジェクトのプロパティとメソッドは、標準的な Component Object Model (COM) の HRESULT 戻り値を使用して、処理が正常に行われたかどうかを伝えます。

C++ では、これらの値は、メソッド (プロパティ get_ および put_ メソッドを含む) 自体からの実際の戻り値になります。プログラムは、これらの戻り値を調べて明示的にエラー検査を実行するか、または何らかの構造化エラー処理を使用する必要があります。

Active Server Pages (ASP) で使用される Microsoft Visual Basic (VB) および Visual Basic Scripting Edition (VBS) では、これらの値は、グローバル Err オブジェクトの Number プロパティに置かれます。エラー処理は、自動的に処理されて標準的なエラー ダイアログ ボックスを表示するか、またはプログラムによって明示的に処理されてグローバル Err オブジェクトの Number プロパティの値を確認するかのどちらかです。On Error Resume Next コマンドは、自動エラー処理を無効にして、明示的なエラー処理を有効にします。

次の表は、Commerce Server オブジェクトのプロパティとメソッドによって返される最も一般的な標準 COM エラーを示しています。

定数 | 値 (32 ビット) | 説明
S_OK | 00000000 | 正常終了を伝えるために使用される標準的な戻り値です。
S_FALSE | 00000001 | 通常、正常だが非標準終了を伝えるために使用される代替成功値です。正確な意味は、問題となるメソッドまたはプロパティによって異なります。
E_UNEXPECTED | 8000FFFF | 重大な障害エラーです。
E_NOTIMPL | 80004001 | 実装されていないエラーです。
E_OUTOFMEMORY | 8007000E | メモリ不足エラーです。
E_INVALIDARG | 80070057 | 1 つまたは複数の引数が無効なエラーです。
E_NOINTERFACE | 80004002 | インターフェイスがサポートされていないエラーです。
E_POINTER | 80004003 | ポインタ無効エラーです。
E_HANDLE | 80070006 | ハンドル無効エラーです。
E_ABORT | 80004004 | 操作中止エラーです。
E_FAIL | 80004005 | 不明なエラーです。
E_ACCESSDENIED | 80070005 | 一般的なアクセス拒否エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。Visual Basic では、Err オブジェクトの Description プロパティに、エラーのテキスト文字列を含めることができます。

C++ 呼び出しでは、API 関数 GetErrorInfo を呼び出して、現在の論理スレッドの中で最も新しく設定された IErrorInfo ポインタを取得します。このインターフェイスの GetDescription メソッドは、エラーのテキスト説明を返すことがあります。


Visual Basic からの呼び出し

ここでは、Microsoft Commerce Server 2000 で提供されている Component Object Model (COM) について、それらの持つプロパティやメソッドを Microsoft Visual Basic または Microsoft Visual Basic Scripting Edition (VBScript) から呼び出す方法と共に説明します。次の表では各オブジェクトを一覧表示し、その目的を簡単に説明します。

オブジェクト | 説明
AdminEventLog | イベント ログにエラー、情報、警告、成功の各メッセージを書き込みます。
AdminFiles | サーバー側のバイナリ ファイルとテキスト ファイルに読み取り専用アクセスを指定します。
AdminSite | サイト構成プロパティに読み取りアクセスと書き込みアクセスを指定し、サイト管理ができるようにします。 このオブジェクトは下位互換性の目的にのみ提供されています。
AdminWebServer | Web サイトとそのプロパティを列挙します。
AppConfig | 国と地域のコードおよび名前をサイト構成ストアから取得します。
AppFrameWork | Active Server Pages (ASP) のフォームでの処理を簡素化する書式設定と検証に関するメソッドを提供します。
AsyncRpt | 静的レポートの非同期化された表示とエクスポートを行います。
Auction | オークションをサポートするメソッドを提供します。
AuthManager | ユーザーの認証を管理するために、安全で標準化され、かつ拡張可能な方法を提供します。
BizDeskSecurity | 特定の Commerce Server ビジネス デスク モジュールを特定のユーザーに対して非表示にします。
CacheManager | 汎用的なキャッシュ サービスを提供します。
CatalogManager | 商品カタログ システム全体にわたってカタログを管理します。
CatalogSets | さまざまなユーザーや組織の複数のカスタム カタログをフィルタ処理します。
CatalogToVendorAssociation | カタログを特定の製造元に関連付けます。
Category | 特定のカタログ内の商品の階層を管理します。
ContentList | 指定されたコンテンツの要求に当てはまる各コンテンツ項目が表示されます。フィルタ処理やソートなどのコンテンツ選択フレームワーク (CSF) コンポーネントのサービスも提供します。
ContentListFactory | ContentList オブジェクトを作成し、これらのオブジェクトで共有されるデータを格納します。
ContentListSchema | ContentListFactory オブジェクトのスキーマを操作します。
ContentSelector | ページのコンテンツの指定と取得ができるようにします。
DataFunctions | ロケール ベースのデータ型の処理と値の範囲チェックを実行するメソッドを提供します。
DBStorage | Dictionary オブジェクトと SimpleList オブジェクトを、データベースと相互にマッピングするメソッドを提供します。主に、発注情報とレシート情報の保存に使います。
Dictionary | メモリ内の名前と値の組み合わせの作成、保存、取得をサポートします。
DictionaryXMLTransforms | Dictionary オブジェクトのデータの拡張マークアップ言語 (XML) への変換や、XML データの Dictionary オブジェクトへの変換を行います。
EuroDisplay | 複数の通貨を表示する必要がある場合に、使用通貨に応じて金額を変換およびフォーマットします。
ExpressionEval | 一連のプロファイルに対して 1 つ以上の式を選択および評価します。
ExpressionStore | 式を作成、保存、変更、および取得するメソッドを提供します。
ExprEvalContext | 複数式の評価操作に使う特定の評価コンテキスト(一連のプロファイル)を保存します。
ExprFltrQueryBldr | XML 形式の式を SQL フィルタ文字列に変換します。
GenID | グローバル一意識別子 (GUID) を生成するメソッド、およびデータベースに保存されている複数のグローバルなシーケンシャル カウンタを作成および維持するメソッドを提供します。
GlobalConfig | グローバル リソースの構成管理用のメソッドを提供します。
ListManager | リストを作成、破棄、管理、および操作するメソッドを提供します。
LRUCache | CacheManager オブジェクトに対して LRU キャッシュを提供します。限られた数のエントリを保存し、使用頻度の最も少ない要素から順にそのエントリをソートします。
MessageManager | 複数の言語でテキスト文字列を保存します。よくある使い方として、注文フォーム処理中に発生するエラー状態を記述するために、注文処理パイプライン (OPP) コンポーネントによって使われる例があります。
MicroPipe | パイプライン構成ファイル(.pcf)を使わずに、ASP ページからパイプライン コンポーネントを実行します。
MtsPipeline | 非トランザクション Microsoft Commerce Server 2000 パイプラインを実行します。
MtsTxPipeline | トランザクション Microsoft Commerce Server 2000 パイプラインを実行します。
OrderForm | ユーザー情報および購入情報用にメモリ内に記憶領域を用意します。
OrderGroup | 異なるサプライアや複数の発送先からの商品が含まれる注文など、複雑な注文の管理を可能にします。
OrderGroupManager | OrderGroup オブジェクトおよび OrderForm オブジェクトを管理するメソッドを提供します。
OrderPipeline | Microsoft Commerce Server 2000 のパイプラインを実行します。これはコンテンツ選択フレームワークに特に有益です。
Page | ASP ページのフォームでの処理を簡素化する書式設定と検証に関するメソッドを提供します。 このオブジェクトは下位互換性の目的にのみ提供されています。
PooledPipeline | パフォーマンス向上のため、COM+ オブジェクトプーリングを使う非トランザクション Microsoft Commerce Server 2000 のパイプラインを実行します。
PooledTxPipeline | パフォーマンス向上のため、COM+ オブジェクトプーリングを使うトランザクション Microsoft Commerce Server 2000 のパイプラインを実行します。
PredictorClient | 予測モデルのダウンロード、予測コンテキストの設定、および予測の実行に使うメソッドを提供します。
PredictorServiceAdmin | 予測モデルと予測モデルの構成を取得します。
PredictorServiceSiteAdmin | 予測モデルと予測モデルの構成を管理します。
PredModelBuilder | 予測モデルの複数の構築スレッドを制御するプロパティとメソッドを提供します。
Product | 商品バリエーションと商品カテゴリの関連付けを操作します。
ProductCatalog | カタログ データの作成、削除、変更をできるようにします。
ProfileObject | プロファイル プロパティのデータにランタイム読み取りアクセスと書き込みアクセスを、プロパティ属性に読み取り専用アクセスを与えます。
ProfileService | プロファイル スキーマのインスタンスを作成、削除、および取得できるようにします。
ReportRenderer | 静的レポートの同期化された表示およびエクスポートを行います。
RowCollection | ContentList オブジェクトの ActiveRows プロパティや AllRows プロパティ、検索から返された行、およびContentListFactory オブジェクトの AllRows プロパティや検索から返された行を列挙します。
Shipping | 送料のプレビュー情報を作成します。
ShippingMethodManager | 複数の送付方法を管理します。
SimpleFindResultInfo | OrderGroup オブジェクトと OrderGroupManager オブジェクトを使うときの検索条件を指定します。
SimpleFindSearchInfo | OrderGroup オブジェクトと OrderGroupManager オブジェクトを使って検索操作および削除操作を実行するときの検索条件を指定します。
SimpleList | 列挙型をサポートする Variant の配列を作成します。
SiteConfig | サイト リソースの構成を管理します。
SiteConfigReadOnly | 管理データベースからグローバル構成の値とサイト構成の値を読み取るメソッドを提供します。
StandardSManager | ユーザー ID のランタイム時の作成と取得を容易にします。 このオブジェクトは下位互換性の目的にのみ提供されています。


AdminEventLog オブジェクト

このオブジェクトは、エラー メッセージ、情報メッセージ、および警告メッセージをイベント ログに書き込むために使います。

ProgID: | Commerce.AdminEventLog (外部作成可能)
COM クラス名: | AdminEventLog
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

次の表は、AdminEventLog オブジェクトのメソッドを示しています。

メソッド | 説明
Initialize | イベントを書き込むために、サイト、ソース、およびイベント サーバーを初期化します。
WriteErrorEvent | Commerce Server のイベント ログに、リソースに問題がある、ファイルが見つからないなどのエラー メッセージを書き込みます。
WriteInformationalEvent | Commerce Server のイベント ログに、ログオンしたユーザーの名前などの情報メッセージを書き込みます。
WriteWarningEvent | Commerce Server のイベント ログに、メモリの残量が少ないなどの警告メッセージを書き込みます。


AdminEventLog.Initialize

このメソッドは、オブジェクトを初期化するために使います。

定義

Sub Initialize(
bstrServer As String
)

パラメータ

bstrServer

サーバー名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAdminEventLog is a Commerce.AdminEventLog object.

oAdminEventLog.Initialize("ServerName")

関連項目

AdminEventLog オブジェクト


AdminEventLog.WriteErrorEvent

このメソッドは、Commerce Server イベント ログにエラー イベントを書き込むために使います。

定義

Sub WriteErrorEvent(
String bstrSiteName,
String bstrMessage
)

パラメータ

bstSiteName

サイト名を含む文字列です。

bstrMessage

エラー イベントのメッセージ文字列を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAdminEventLog is a Commerce.AdminEventLog object.

oAdminEventLog.WriteErrorEvent("MySite", _
                               "Database does not exist")

関連項目

AdminEventLog オブジェクト

AdminEventLog.WriteInformationalEvent

AdminEventLog.WriteWarningEvent


AdminEventLog.WriteInformationalEvent

このメソッドは、Commerce Server イベント ログに情報イベントを書き込むために使います。

定義

Sub WriteInformationalEvent(
String bstrSiteName,
String bstrMessage
)

パラメータ

bstSiteName

サイト名を含む文字列です。

bstrMessage

情報イベントのメッセージ文字列を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAdminEventLog is a Commerce.AdminEventLog object.

oAdminEventLog.WriteInformationalEvent("MySite", _
                         "Database accessed successfully")

関連項目

AdminEventLog オブジェクト

AdminEventLog.WriteErrorEvent

AdminEventLog.WriteWarningEvent


AdminEventLog.WriteWarningEvent

このメソッドは、Commerce Server イベント ログに警告イベントを書き込むために使います。

定義

Sub WriteWarningEvent(
String bstrSiteName,
String bstrMessage
)

パラメータ

bstSiteName

サイト名を含む文字列です。

bstrMessage

警告イベントのメッセージ文字列を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAdminEventLog is a Commerce.AdminEventLog object.

oAdminEventLog.WriteWarningEvent("MySite", _
                                 "Low Memory Availability")

関連項目

AdminEventLog オブジェクト

AdminEventLog.WriteErrorEvent

AdminEventLog.WriteInformationalEvent


AdminFiles オブジェクト

このオブジェクトは、サーバー側のファイルに読み取り専用アクセスするために使います。バイナリ ファイル用とテキスト ファイル用に、それぞれ別のメソッドが用意されています。

ProgID: | Commerce.AdminFiles (外部作成可能)
COM クラス名: | CAdminFiles
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

次の表は、AdminFiles オブジェクトのメソッドを示しています。

メソッド | 説明
ReadFromBinaryFile | 指定されたバイナリ ファイルの内容を読み取ります。
ReadFromFile | 指定されたテキスト ファイルの内容を読み取ります。

関連項目

汎用オブジェクト


AdminFiles.ReadFromBinaryFile

このメソッドは、指定したバイナリ ファイルの内容を読み取るために使います。数値データやビットマップなど、ファイルの中にどのような種類のデータが含まれていてもかまいません。

定義

Function ReadFromBinaryFile(
bstrFileName As String
) As Variant

パラメータ

bstrFileName

読み取るファイルのパスと名前を指定する文字列です。

戻り値

このメソッドが正常に終了すると、ファイルの内容を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' The following example opens the specified file and
' then uses the Response.BinaryWrite method to download
' the file to a browser.
' oFile is a Commerce AdminFiles object.
' vFileContents is a variable of type Variant.
vFileContents = oFile.ReadFromBinaryFile("c:\temp\postcard.jpg")
Response.ContentsType = "image/jpeg"
Response.BinaryWrite vFileContents

関連項目

AdminFiles オブジェクト

AdminFiles.ReadFromFile


AdminFiles.ReadFromFile

このメソッドは、指定したテキスト ファイルの内容を返すために使います。ファイルの内容はテキスト文字列として返されます。

定義

Function ReadFromFile(
bstrFileName As String
) As String

パラメータ

bstrFileName

読み取るファイルのパスと名前を指定する文字列です。

戻り値

このメソッドが正常に終了すると、ファイルの内容を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oFile is a reference to a Commerce AdminFiles object.
' sFileContents is a varaible of type String.
sFileContents = oFile.ReadFromFile("c:\temp\newfile.asp")

関連項目

AdminFiles オブジェクト

IAdminFiles::ReadFromBinaryFile


AdminSite オブジェクト

このオブジェクトは、Site Server 3.0 Commerce Edition サイト構成への集中アクセスを取得し、サイトの構成とメンテナンスを行うために使います。

重要

  • このオブジェクトは、Commerce Server 2000 サイトに対して使うことはできません。このオブジェクトは Site Server 3.0 Commerce Edition との下位互換性を維持する目的でのみ用意されています。
ProgID: | Commerce.AdminSite (外部作成可能)
COM クラス名: | AdminSite
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

次の表は、AdminSite オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Directory | 文字列 | 現在登録されている Site Server 3.0 Commerce Edition サイトの物理ディレクトリを格納します。 このプロパティは読み取りと書き込みが可能です。
Status | Variant | Site Server 3.0 Commerce Edition サイトが開いているか、それとも閉じているかという状態を格納します。 このプロパティは読み取りと書き込みが可能です。
Version | long | Site Server 3.0 Commerce Edition のバージョン番号を格納します。 このプロパティは読み取り専用です。

次の表は、AdminSite オブジェクトのメソッドを示しています。

メソッド | 説明
Create | Site Server 3.0 Commerce Edition サイトを作成します。
Delete | Site Server 3.0 Commerce Edition サイトを削除します。
Initialize | AdminSite オブジェクトを初期化し、Site Server 3.0 Commerce Edition サイトに関する情報を読み込みます。
InitializeFromMDPath | メタベースのパスにある情報を使って、AdminSite オブジェクトを初期化します。
IsValidName | 指定されたテキスト文字列が、Site Server 3.0 Commerce Edition サイトのショートネームとして有効であるかどうかを判定します。
ReadDefaultProperties | Site.csc ファイルからプロパティを読み取って、それらのプロパティを含む Dictionary オブジェクトを返します。
ReadManagerProperties | Site\Manager\Config\Site.csc ファイルからプロパティを読み取って、それらのプロパティを含む Dictionary オブジェクト (サイト ディクショナリ) を返します。
Reload | Site Server 3.0 Commerce Edition サイト用のアプリケーションおよびセッション オブジェクトをすべて閉じ、もう一度読み込みます。
WriteDefaultProperties | 指定されたサイト ディクショナリからプロパティを読み取って、Site.csc ファイルに書き込みます。
WriteManagerProperties | 指定されたサイト ディクショナリからプロパティを読み取って、Site\Manager\Config\Site.csc ファイルに書き込みます。

解説

AdminSite オブジェクトには、データ ソースやユーザー アカウントの指定などのサイト管理を実行するためのメソッドが用意されています。このオブジェクトは、構成に関するさまざまなプロパティを "サイト ディクショナリ" 中に保持します。サイト ディクショナリは、MSCSSite という名前の Dictionary オブジェクトとして実装されます。これらのプロパティは、サイト、保護付きのホスト、および保護なしのホストが持つショートネームとロングネームを含んでいます。また、名前付き接続文字列や名前付きクエリの一覧など、ほかの Dictionary オブジェクトの名前も含んでいます。

関連項目

下位互換性オブジェクト


AdminSite.Create

このメソッドは、Site Server 3.0 Commerce Edition サイトを作成し、必要に応じてアプリケーションと Config\SQL\SqlSvr and Config\SQL\Oracle サブディレクトリを作成するために使います。

定義

Sub Create(
bstrInstance As String,
bstrVDir As String,
bstrDir As String,
nAuthorization As Long,
bIsApplication As Boolean,
bIsCommerceSite As Boolean
)

パラメータ

bstrInstance

Web サイトを表す文字列として表現された数値です。既定の Web サイトの場合は (1) を指定します。

bstrVDir

Site Server 3.0 Commerce Edition サイトのショートネーム (仮想ディレクトリ) を含む文字列です。

bstrDir

サイトを作成する物理ディレクトリを指定する文字列です。

nAuthorization

サイト認証の種類を含む long です。

bIsApplication

サイト用にアプリケーションを作成するかどうかを制御する Boolean です。True に設定すると、サイト用にアプリケーションが作成されます。それ以外の値に設定した場合、アプリケーションは作成されません。Site Server 3.0 Commerce Edition サイトの場合は、True に設定する必要があります。

bIsCommerceSite

サイト用に SQL Server と Oracle の各サブディレクトリを作成するかどうかを制御する Boolean です。True に設定すると、Site Server 3.0 Commerce Edition で管理するようにサイトがマークされ、Directory\Config\SQL\SqlSvr と Directory\Config\SQL\Oracle の各サブディレクトリが作成されます (Directory は bstrDir パラメータで渡された値です)。False に設定すると、最上位の Directory だけが作成されます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AdminSite オブジェクトが持つメソッドのほとんどは、AdminSite オブジェクトの初期化後しか呼び出せません。例外は Create メソッドと IsValidName メソッドです。AdminSite オブジェクトの Create メソッドによって作成されたオブジェクトは、自動的に初期化されます。Initialize メソッドを明示的に呼び出す必要はありません。

Web サイト名に使用できる文字および Web サイト名の最大長は、Microsoft SQL Server のテーブル名に課されている制限の内容によって決まります。また、サーバー上のほかのショートネームと同じ名前を使うことはできません。

サイトの作成前に IsValidName メソッドを使って、サイトのショートネームが有効なものであることを確認してください。そのショートネームが多くの環境で有効であるためには、いくつかの命名規則に従う必要があります。たとえば、Commerce Server はサイトのショートネームをデータベース テーブルおよび生成されたページに追加します。

例

' oAdminSite is a Commerce.AdminSite object
' The szSite argument contains the site short name,
'  and szSiteRoot contains the physical directory.
AdminSite.Create ("1", szSite, NULL, szSiteRoot, true, true)

関連項目

AdminSite オブジェクト

AdminSite.Delete

AdminSite.Initialize

AdminSite.IsValidName


AdminSite.Delete

このメソッドは、Site Server 3.0 Commerce Edition サイトを削除するために使います。Delete メソッドは、インターネット インフォメーション サービス (IIS) のメタベースからサイトの属性を削除します。ディレクトリとデータベースは削除されません。

定義

Sub Delete()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AdminSite オブジェクトが持つメソッドのほとんどは、AdminSite オブジェクトの初期化後しか呼び出せません。例外は Create メソッドと IsValidName メソッドです。AdminSite オブジェクトの Create メソッドによって作成されたオブジェクトは、自動的に初期化されます。Initialize メソッドを明示的に呼び出す必要はありません。

関連項目

AdminSite オブジェクト

AdminSite.Create


AdminSite.Directory

Directory プロパティは読み取りと書き込みが可能な文字列で、現時点で登録済みの Site Server 3.0 Commerce Edition サイトの物理ディレクトリを含んでいます。

定義

Property Directory As String

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Web サイト名に使用できる文字および Web サイト名の最大長は、ファイル システムにおける制限事項によって決まります。

関連項目

AdminSite オブジェクト

AdminSite.InitializeFromMDPath


AdminSite.Initialize

このメソッドは、AdminSite オブジェクトを初期化し、Site Server 3.0 Commerce Edition サイトに関する情報を読み込めるようにするために使います。サイトは、サイトのショートネームとサーバー インスタンスを使うことで一意に識別されます。ReadDefaultProperties メソッドは、この情報を使ってサイトのプロパティを読み込みます。

定義

Sub Initialize(
bstrInstance As String,
bstrVDir As String
)

パラメータ

bstrInstance

Web サイトを表す文字列として表現された数値です。

bstrVDir

Site Server 3.0 Commerce Edition サイトのショートネーム (仮想ディレクトリ) を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AdminSite オブジェクトのメソッドは、AdminSite オブジェクトの初期化後しか使用できません。例外は Create メソッドと IsValidName メソッドです。AdminSite オブジェクトの Create メソッドによって作成されたオブジェクトは、自動的に初期化されます。Initialize メソッドを明示的に呼び出す必要はありません。

関連項目

AdminSite オブジェクト

AdminSite.ReadDefaultProperties

AdminSite.Create

AdminSite.IsValidName


AdminSite.InitializeFromMDPath

このメソッドは、指定したインターネット インフォメーション サービス (IIS) メタベースのパスにある AdminSite オブジェクトを初期化するために使います。メタベースのパスは、Request.ServerVariables メソッドの呼び出しを使うことで取得できます。

定義

Sub InitializeFromMDPath(
bstrMDPath As String
)

パラメータ

bstrMDPath

メタベースのパスを含む文字列です。メタベースのパスは、Request.ServerVariables メソッドの呼び出しを使うことで取得できます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Initialize メソッドではサーバー インスタンスと仮想ディレクトリを個別に指定する必要がありますが、このメソッドで指定する必要があるのはメタベースのパスです。

例

' The following example initializes an AdminSite object
' for the application's metabase path:
' oAdmSite is a Commerce.AdminSite object
' The szSite argument contains the site short name,
'  and szSiteRoot contains the physical directory.
AdminSite.Create ("1", szSite, szSiteRoot, true, true)

Call oAdmSite.InitializeFromMDPath(Request.ServerVariables("APPL_MD_Path"))

' The Request.ServerVariables("APPL_MD_Path") expression returns
'  the metabase path in the form /LM/W3SVC/1/mySite , where
'  LM refers to the Local Machine, W3SVC refers to the
' Internet Service, 1 is the server instance, and mySite is the
' root of the Web site. This method works only if the application
' is created at the virtual directory (not a sub-directory).

関連項目

AdminSite オブジェクト

AdminSite.Initialize


AdminSite.IsValidName

このメソッドは、サイト名の有効性を判定するために使います。IsValidName メソッドは、指定された Site Server 3.0 Commerce Edition サイトのショートネームが有効な場合には True を返し、無効な場合には False を返します。

定義

Function IsValidName(
bstrName As String,
bstrInstance As String
) As Boolean

パラメータ

bstrName

テストされるショートネームを指定する文字列です。

bstrInstance

Web サーバー インスタンスを指定する文字列です。サーバー インスタンスの一覧を取得するには、GetWebSites メソッドを使います。既定の Web サイトの場合は "1" を指定します。

戻り値

このメソッドが正常に終了すると、Boolean が返されます。値が True の場合、サイトのショートネームが有効であることを示し、False の場合は、有効でないことを示しています。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Web サイト名に使用できる文字および Web サイト名の最大長は、Microsoft SQL Server のテーブル名に課されている制限の内容によって決まります。また、サーバー上のほかのショートネームと同じ名前を使うことはできません。

サイトを実際に作成する前に、サイトのショートネームが有効なものであることを、このメソッドを使って確認してください。そのショートネームが多くの環境で有効であるためには、いくつかの命名規則に従う必要があります。たとえば、Commerce Server はサイトのショートネームをデータベース テーブルおよび生成されたページに追加します。

オブジェクトが持つ IsValidName メソッドは、そのオブジェクトの Initialize メソッドや Create メソッドを呼び出さなくても使用できます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAdminSite is a Commerce.AdminSite object
' The szSite argument contains the site short name
' bResult is a Boolean
bResult = oAdminSite.IsValidName(szSite,"1")

関連項目

AdminSite オブジェクト

AdminSite.Initialize


AdminSite.ReadDefaultProperties

このメソッドは、Site.csc ファイルからプロパティを読み取って、それらのプロパティが含まれるサイト ディクショナリを返すために使います。

定義

Function ReadDefaultProperties() As Object

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、Site.csc ファイルから読み取られたプロパティを含む Dictionary オブジェクトへの参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Site Server 3.0 Commerce Edition サイトの Site.csc ファイルは、<サイト名>\Config ディレクトリにあります。管理サイトの Site.csc ファイルは <サイト名>\Manager\Config ディレクトリにあります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト

AdminSite.WriteDefaultProperties

AdminSite.ReadManagerProperties

AdminSite.Initialize


AdminSite.ReadManagerProperties

このメソッドは、管理ページの構成ファイル (<サイト名>\Manager\Config\Site.csc) からプロパティを読み取って、それらのプロパティが含まれるサイト ディクショナリを返すために使います。

定義

Function ReadManagerProperties() As Object

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、管理ページの構成ファイルから読み取られたプロパティを含む Dictionary オブジェクトへの参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

管理サイトのディクショナリのプロパティは、DefaultConnectionString と ConnectionStringMap です。これらのプロパティは、メイン サイト構成におけるそれぞれのプロパティとは別のものです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト

AdminSite.WriteManagerProperties

AdminSite.ReadDefaultProperties


AdminSite.Reload

このメソッドは、Site Server 3.0 Commerce Edition サイトのすべてのアプリケーションとセッション オブジェクトを閉じ、もう一度読み込むために使います。

定義

Sub Reload()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

再読み込みが行われた後、次のブラウザ要求が発生すると Global.asa ファイルが読み込まれます。

関連項目

AdminSite オブジェクト


AdminSite.Status

Status プロパティは読み取りと書き込みが可能な Boolean で、Site Server 3.0 Commerce Edition サイトが開いているかどうかを示します。また、Status プロパティに値が設定されると、Site Server 3.0 Commerce Edition サイトが開かれたり閉じられたりします。

定義

Property Status As Boolean

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティを変更すると、サイト構成に "Open" または "Closed" というテキスト値が設定されます。サイトの再読み込みが実行されると、Global.asa ファイルによってこの値が読み取られ、サイトの Dictionary オブジェクトの com_compref_frnc.htm 値に格納されます。その後、Site Server 3.0 Commerce Edition サイト内の各ページは Site.Status プロパティの値を確認し、ブラウザをリダイレクトするかどうかを決めます。テキストが "Open" 以外の場合、ブラウザは Site.CloseRedirectURL プロパティで指定されているアドレスにリダイレクトされます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト


AdminSite.Version

Version プロパティは読み取り専用の整数値で、使用中の Site Server 3.0 Commerce Edition のバージョンを返すために使われます。

定義

Property Version As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

AdminSite オブジェクト


AdminSite.WriteDefaultProperties

このメソッドは、指定したサイト Dictionary オブジェクトからプロパティを読み取って、Site.csc ファイルに書き込むために使います。

定義

Sub WriteDefaultProperties(
pIDictProp As Object
)

パラメータ

pIDictProp

Site.csc ファイルへ書き込むプロパティを含む Dictionary オブジェクトへの参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

AdminSite オブジェクト

AdminSite.ReadDefaultProperties

AdminSite.WriteManagerProperties


AdminSite.WriteManagerProperties

このメソッドは、指定したサイト Dictionary オブジェクトからプロパティを読み取って、管理ページの構成ファイル (<サイト名>\Manager\Config\Site.csc) に書き込むために使います。

定義

Sub WriteManagerProperties(
pIDictProp As Object
)

パラメータ

pIDictProp

管理ページの構成ファイルへ書き込むプロパティを含む Dictionary オブジェクトへの参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

管理サイトのディクショナリのプロパティは、DefaultConnectionString と ConnectionStringMap です。これらのプロパティは、メイン サイト構成におけるそれぞれのプロパティとは別のものです。サイトの管理ページへのアクセスに必要なユーザー名とパスワードは、ユーザー ページで使われているものと異なる可能性があります。

関連項目

AdminSite オブジェクト

AdminSite.ReadManagerProperties

AdminSite.WriteDefaultProperties


AdminWebServer オブジェクト

このオブジェクトは、サーバー上のすべての Web サイトを列挙してそれらのサイトのプロパティを取得したり、Web サイト上のすべての Commerce Server サイトを列挙したりするために使います。

ProgID: | Commerce.AdminWebServer (外部作成可能)
COM クラス名: | AdminWebServer
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

次の表は、AdminWebServer オブジェクトのメソッドを示しています。

メソッド | 説明
GetCommerceSites | Web サイトのサーバー インスタンスが指定されたとき、その Web サイト上の Site Server 3.0 Commerce Edition サイトをすべて列挙します。
GetWebSiteProperties | サーバー インスタンスが指定されたとき、そのサイトのプロパティを Dictionary オブジェクト内の名前と値のペアとして返します。
GetWebSites | すべての Web サイトを列挙し、それらの Web サイト (サーバー インスタンス) が持つ番号の配列を返します。

解説

インターネット インフォメーション サービス (IIS) のメタベースにアクセスする Active Server Pages (ASP) スクリプトは、IIS を実行しているコンピュータ上の管理者特権を持っていなければなりません。これらのスクリプトをリモート コンピュータから実行する場合は、Microsoft 暗号化認証などの、セキュリティが設定された接続を介して行う必要があります。管理作業のために作成した .asp ファイル用にサーバーまたはディレクトリを作成し、そのサーバーやディレクトリのディレクトリ セキュリティ認証方法を "Microsoft 暗号化認証" に設定します。

関連項目

構成オブジェクト


AdminWebServer.GetCommerceSites

このメソッドは、指定した Web サイトに関連付けられている Commerce Server サイトをすべて列挙するために使います。このメソッドは、すべての Commerce Server サイト インスタンスが持つ番号の配列を返します。

このメソッドは、Commerce Server 2000 サイトに対しては使用できません。このメソッドは、Site Server 3.0 Commerce Edition サイトとの下位互換性を維持する目的でのみ用意されています。

定義

Function GetCommerceSites(
bstrInstance As String
) As Variant

パラメータ

bstrInstance

サイトのサーバー インスタンスを表す、文字列として表現された数値です。

戻り値

このメソッドは、すべての Commerce Server サイト インスタンスを表す数値の配列を含む Variant を返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetCommerceSites メソッドは、メタベースに保存されているキーを検査することで、サイトが Commerce Server サイトであるかどうかを判定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAdminWebServer is a Commerce.AdminWebServer object
' The following example enumerates all the Web sites on a server and
' displays the number of each server instance. Then for each Web site, it
' enumerates all the Commerce Server sites within that Web site:
' Create AdminWebServer object
Set objWebServer = CreateObject("Commerce.AdminWebserver")
' Get Web sites
WebSites = objWebServer.GetWebSites
For WebInstance = LBound(WebSites, 1) To UBound(WebSites, 1)
   ' For each web site, get all Commerce sites in an array of instances
        CommerceSites = objWebServer.GetCommerceSites(WebSites(WebInstance))
   ' Enumerate all Commerce sites
      For CSite = LBound(CommerceSites, 1) To UBound(CommerceSites, 1)
         Response.Write "<br>" + CommerceSites(CSite)
      Next
 Next

関連項目

AdminWebServer オブジェクト


AdminWebServer.GetWebSiteProperties

このメソッドは、サーバー インスタンスが指定されたとき、サイトのプロパティを Dictionary オブジェクト内の名前と値のペアとして取得します。

定義

Function GetWebSiteProperties(
bstrInstance As String
) As Object

パラメータ

bstrInstance

サイトのサーバー インスタンスを表す、文字列として表現された数値です。

戻り値

このメソッドは、指定したサイトのプロパティを含む Dictionary オブジェクトへの参照を返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<%
' Create AdminWebServer object
Set objWebServer = CreateObject("Commerce.AdminWebServer")

' Get Web sites
WebSites = objWebServer.GetWebSites
For WebInstance = LBound(WebSites, 1) To UBound(WebSites, 1)
    ' Return its properties in a dictionary
    Set objDict = objWebServer.GetWebSiteProperties(WebSites(WebInstance))

    ' Enumerate and display the dictionary
   For Each property in objDict
      Response.Write  property & " = " & objDict.value(property) & "<br>"
    next
Next

' Destroy objects
Set objDict = Nothing
Set objWebServer = Nothing
%>

関連項目

AdminWebServer オブジェクト


AdminWebServer.GetWebSites

このメソッドは、すべての Web サイトを列挙するために使います。各 Web サイトのサーバー インスタンス番号を表している番号の配列を返します。

定義

Function GetWebSites() As Variant

パラメータ

なし。

戻り値

このメソッドは、すべてのサーバー インスタンスを表す数値の配列を含む Variant を返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

pvarInstances パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminWebServer オブジェクト


AppConfig オブジェクト

このオブジェクトは、サイト構成ストアからサイトの構成設定を取得するために使います。また、サイト構成ストアからさまざまな国/地域の名称と国/地域コードを取得する場合にも使います。

ProgID: | Commerce.AppConfig (外部作成可能)
COM クラス名: | AppCfg
タイプ ライブラリ名: | Microsoft Commerce 2000 App Helper Type Library
DLL 名: | AppHelper.dll
スレッド モデル: | 両方

次の表は、AppConfig オブジェクトのメソッドを示しています。

メソッド | 説明
DecodeStatusCode | 指定された状態コードをデコードします。
GetCountryCodeFromCountryName | 指定された国の国コードを返します。
GetCountryNameFromCountryCode | 指定された国コードに対応する国名を返します。
GetCountryNamesList | 国名のアルファベット順一覧を返します。
GetOptionsDictionary | サイト構成キーをサイト構成値にマップしている Dictionary オブジェクトを返します。
GetRegionCodeFromCountryCodeAndRegionName | 指定された国コードと地域名に対応する、地域コードを返します。
GetRegionNameFromCountryCodeAndRegionCode | 指定された国コードと地域コードに対応する、地域名を返します。
GetRegionNamesListFromCountryCode | 指定された国コードに対応する地域名をアルファベット順に並べた一覧を返します。
Initialize | AppConfig オブジェクトを初期化します。
RefreshCache | AppConfig オブジェクトのキャッシュを最新の状態に更新します。

解説

このオブジェクトは、パフォーマンスへの影響を避けるために、通常は Global.asa ファイル内で 1 回だけ作成され、初期化されます。このオブジェクトのインスタンスは、Application オブジェクトに格納され、必要になったときに ASP ページ上で使われます。

次のサンプル コードは、これらの処理の例を示しています。

Dim oAppConfig
Set oAppConfig = Server.CreateObject("Commerce.AppConfig")
Set Application("MSCSAppCfg") = oAppConfig

国コードは、ビジネス デスクで追加された値に応じて変化するため、ISO の国コードとは一致しないこともあります。

関連項目

構成オブジェクト

国名と国コードの対応表


AppConfig.DecodeStatusCode

このメソッドは、指定した状態コードをデコードするために使います。

定義

Function DecodeStatusCode(
iStatusCode As Integer
) As String

パラメータ

iStatusCode

デコード対象の状態コードを指定する Integer です。

戻り値

このメソッドが正常に終了すると、デコードされた状態コードを含む文字列が返されます。指定した状態コードがシステムにない場合は、同じ状態コードが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

状態コードは、Commerce Server ビジネス デスクで入力します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト


AppConfig.GetCountryCodeFromCountryName

このメソッドは、指定した国名に対応する国コードを取得するために使います。

定義

Function GetCountryCodeFromCountryName(
bstrCountryName As String
) As String

パラメータ

bstrCountryName

要求されている国コードに対応する国名を含む文字列です。

戻り値

このメソッドが正常に終了すると、国コードを含んだ文字列が返されます。国コードが見つからない場合は、空文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

国コードが見つからない場合は、空文字列が返されます。

国コードと国名は、Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppConfig is a Commerce.AppConfig object
' sCode is a String
sCode = oAppConfig.GetCountryCodeFromCountryName("United States of _
America")

関連項目

AppConfig オブジェクト

AppConfig.GetCountryNameFromCountryCode

AppConfig.GetCountryNamesList

国名と国コードの対応表


AppConfig.GetCountryNameFromCountryCode

このメソッドは、指定した国コードに対応する国名を取得するために使います。

定義

Function GetCountryNameFromCountryCode(
bstrCountryCode As String
) As String

パラメータ

bstrCountryCode

要求されている国名に対応する国コードを含む文字列です。

戻り値

このメソッドが正常に終了すると、国名を含んだ文字列が返されます。名前が見つからない場合は、国コードが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

国名が見つからない場合は、bstrCountryCode パラメータに指定した国コードが返されます。

国コードと国名は、Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

' oAppConfig is a Commerce.AppConfig object
' sCountryName is a String
sCountryName = oAppConfig.GetCountryNameFromCountryCode("us")

関連項目

AppConfig オブジェクト

AppConfig.GetCountryCodeFromCountryName

AppConfig.GetCountryNamesList

国名と国コードの対応表


AppConfig.GetCountryNamesList

このメソッドは、サイト構成データベース内にある国名のアルファベット順一覧を取得するために使います。

定義

Function GetCountryNamesList() As Object

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、SimpleList オブジェクトへの参照が返されます。このオブジェクトは、国名のアルファベット順一覧を含んでいます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

国コードと国名は、Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppConfig is a Commerce.AppConfig object
' listCountries is a SimpleList object
Set listCountries = oAppConfig.GetCountryNamesList()
For Each sCountry in listCountry
Response.Write sCountry
Next

関連項目

AppConfig オブジェクト

AppConfig.GetCountryCodeFromCountryName

国名と国コードの対応表


AppConfig.GetOptionsDictionary

このメソッドは、サイト構成情報を含んでいる Dictionary オブジェクトを取得するために使います。

定義

Function GetOptionsDictionary(
bstrUserID As String
) As Object

パラメータ

bstrUserID

空の文字列 ("") を含む文字列です。

戻り値

このメソッドが正常に終了すると、サイト構成情報を含む Dictionary オブジェクトへの参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

i_AuctionOptions などのいくつかのオプション ディクショナリ キーは、将来の使用のために予約されています。次の表は、このメソッドによって返される Dictionary オブジェクトが含むキーのうち、Microsoft 管理コンソール (MMC) にマップされているものの一覧です。

プログラム上の定義名 | MMC での既定の構成のマッピング
i_AddItemRedirectOptions | [品目の追加リダイレクト オプション]
i_AddressBookOptions | [アドレス帳オプション]
f_AltCurrencyConversionRate | [通貨 : 代替通貨の変換レート]
i_AltCurrencyLocale | [通貨 : 代替通貨のロケール]
i_AltCurrencyOptions | [通貨 : 代替通貨オプション]
i_BaseCurrencyLocale | [通貨 : 基本通貨のロケール]
i_BillingOptions | [支払いオプション : 請求書オプション]
i_BizTalkOptions | [BizTalk オプション]
i_CookiePathCorrectionOptions | [Cookie パス訂正オプション]
i_CurrencyDisplayOrderOptions | [通貨 : 通貨の表示順序オプション]
i_DelegatedAdminOptions | [代理管理者オプション]
i_FormLoginOptions | [フォーム ログイン オプション]
i_FormLoginTimeOut | [認証マネージャの認証チケットのタイムアウト]
i_HostNameCorrectionOptions | [ホスト名訂正オプション]
i_PaymentOptions | [支払いオプション]
i_SitePrivacyOptions | [サイト プライバシ オプション]
i_SiteRegistrationOptions | [サイト登録オプション]
i_SiteTicketOptions | [サイト チケット オプション]
s_AltCurrencySymbol | [通貨 : 代替通貨記号]
s_BaseCurrencySymbol | [通貨 : 基本通貨記号]
s_BizTalkCatalogDocType | [BizTalk カタログの形式]
s_BizTalkConnString | [BizTalk 接続文字列]
s_BizTalkOrderDocType | [BizTalk 注文書の形式]
s_BizTalkSourceQualifierID | [BizTalk 送信元組織の修飾子]
s_BizTalkSourceQualifierValue | [BizTalk 送信元組織の修飾子の値]
s_BizTalkSubmittypeQueue | [BizTalk 送信形式]
s_PageEncodingCharset | [ページ エンコーディング文字セット]
s_SMTPServerName | [SMTP サーバー名]
s_WeightMeasure | [重量測定単位]

次の表は、このメソッドによって返される Dictionary が含むキーのうち、MMC にマップされていないものの一覧です。

プログラム上の定義名 | 値または説明
i_IsFullTextSearchInstalled | SQL Server でフルテキスト検索が有効になっているかどうかを示します。
s_BizDataStoreConnectionString | プロファイル サービス : s_BizDataStoreConnectionString
s_CampaignsConnectionString | キャンペーン : connstr_db_Campaigns
s_CatalogConnectionString | 商品カタログ : connstr_db_Catalog
s_CommerceProviderConnectionString | プロファイル サービス : s_CommerceProviderConnectionString
s_NonSecureHostname | この値は、global.asa ファイル内でアプリケーションの保護なしホスト名に設定されます。
s_ProfileServiceConnectionString | プロファイル サービス : s_ProfileServiceConnectionString
s_SecureHostname | この値は、global.asa ファイル内でアプリケーションの保護付きホスト名に設定されます。
s_SiteName | サイトの名前です。
s_TransactionConfigConnectionString | トランザクション構成 : connstr_db_TransactionConfig
s_TransactionsConnectionString | トランザクション : connstr_db_Transactions

例

' oAppConfig is a Commerce.AppConfig object
' dDictConfig is a Dictionary object
Set dictConfig = oAppConfig.GetOptionsDictionary("")
For Each sKey In dictConfig
    Response.Write sKey & "=" & dictConfig.Value(sKey)
Next

関連項目

AppConfig オブジェクト


AppConfig.GetRegionCodeFromCountryCodeAndRegionName

このメソッドは、指定した国コードと地域名に対応した地域コードを含む文字列を取得するために使います。

定義

Function GetRegionCodeFromCountryCodeAndRegionName(
bstrCountryCode As String,
bstrRegionName As String
) As String

パラメータ

bstrCountryCode

要求されている地域コードに対応する国コードを含む文字列です。

bstrRegionName

要求されている地域コードに対応する地域名を含む文字列です。

戻り値

このメソッドが正常に終了すると、要求された地域コードを含む文字列が返されます。空の文字列は、コードが見つからなかったことを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

地域コードが見つからなかった場合は、空文字列が返されます。

国コード、国名、地域コード、および地域名は Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppCfg is a Commerce.AppConfig object, sResult is a string
sResult = oAppCfg.GetRegionCodeFromCountryCodeAndRegionName("us", "Utah")

関連項目

AppConfig オブジェクト

AppConfig.GetCountryCodeFromCountryName

AppConfig.GetCountryNamesList

AppConfig.GetRegionNameFromCountryCodeAndRegionCode

AppConfig.GetRegionNamesListFromCountryCode

国名と国コードの対応表


AppConfig.GetRegionNameFromCountryCodeAndRegionCode

このメソッドは、指定した国コードと地域コードに対応する地域名を取得するために使います。

定義

Function GetRegionNameFromCountryCodeAndRegionCode(
bstrCountryCode As String,
bstrRegionCode As String
) As String

パラメータ

bstrCountryCode

要求されている地域名に対応する国コードを含む文字列です。

bstrRegionCode

要求されている地域名に対応する地域コードを含む文字列です。

戻り値

このメソッドが正常に終了すると、地域名を含んだ文字列が返されます。地域名が見つからない場合、文字列には bstrRegionCode パラメータに指定された地域コードが含まれています。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

地域名が見つからない場合は、bstrRegionCode パラメータに指定した地域コードが返されます。

国コード、国名、地域コード、および地域名は Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppCfg is a Commerce.AppConfig object, sResult is a String
sResult = oAppCfg.GetRegionNameFromCountryCodeAndRegionCode("us", "UT")

関連項目

AppConfig オブジェクト

AppConfig.GetCountryCodeFromCountryName

AppConfig.GetCountryNamesList

AppConfig.GetRegionCodeFromCountryCodeAndRegionName

AppConfig.GetRegionNamesListFromCountryCode

国名と国コードの対応表


AppConfig.GetRegionNamesListFromCountryCode

このメソッドは、指定した国コードに対応する地域名のアルファベット順一覧を取得するために使います。

定義

Function GetRegionNamesListFromCountryCode(
bstrCountryCode As String
) As Object

パラメータ

bstrCountryCode

地域名の一覧が要求されている国の国コードを含む文字列です。

戻り値

このメソッドが正常に終了すると、指定した国コードに対応する地域名のアルファベット順一覧を含む SimpleList オブジェクトへの参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

国コード、国名、地域コード、および地域名は Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppCfg is a Commerce.AppConfig object
' listRegions is a SimpleList object
Set listRegions = oAppConfig.GetRegionNamesListFromCountryCode("us")
For Each sRegion In listRegions
  Response.Write sRegion
Next
' The above example will provide a list of USA state names

関連項目

AppConfig オブジェクト

AppConfig.GetCountryCodeFromCountryName

AppConfig.GetCountryNamesList

AppConfig.GetRegionCodeFromCountryCodeAndRegionName

国名と国コードの対応表


AppConfig.Initialize

このメソッドは、AppConfig オブジェクトを初期化するために使います。

定義

Sub Initialize(
bstrSiteName As String
)

パラメータ

bstrSiteName

この AppConfig オブジェクトが関連付けられているサイトの名前を含む文字列です。この名前では、大文字と小文字は区別されません。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AppConfig オブジェクトのほかのメソッドを使うには、このオブジェクトをあらかじめ初期化しておく必要があります。初期化は、通常はオブジェクトの作成直後に Global.asa ファイル内で一度実行されるだけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppCfg is a Commerce.AppConfig object
oAppCfg.Initialize("Retail")

関連項目

AppConfig オブジェクト

AppConfig.RefreshCache


AppConfig.RefreshCache

このメソッドは、AppConfig オブジェクトに関連付けられたキャッシュを最新の状態に更新するために使います。

定義

Sub RefreshCache()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

国コード、地域コード、およびそのほかの値は、Commerce Server ビジネス デスクを使って追加したり変更したりできます。それらの変更内容は、プログラム内部で RefreshCache メソッドを使うことにより、いつでも反映させることができます。

関連項目

AppConfig オブジェクト

AppConfig.Initialize


国名と国コードの対応表

国コードは、ビジネス デスクで追加された値に応じて変化するため、ISO の国コードとは一致しないこともあります。次の表は、国名と、それに対応する国コードを示しています。

公式略称 | 公式名称 | ISO コード | ISO 略称 | ISO 名称 | UN コード | 首都または主要都市
アフガニスタン | アフガニスタン・イスラム国 | 4 | AF | AFG | 4 | カブール
アルバニア | アルバニア共和国 | 8 | AL | ALB | 8 | ティラナ
アルジェリア | アルジェリア民主人民共和国 | 12 | DZ | DZA | 12 | アルジェ
サモア | 米領サモア | 16 | AS | ASM | 16 |
アンドラ | アンドラ公国 | 20 | AD | AND | 20 | アンドララヴェラ
アンゴラ | アンゴラ共和国 | 24 | AO | AGO | 24 | ルアンダ
アンギラ |  | 660 | AI | AIA | 660 |
南極 |  | 10 | AQ | ATA | 10 |
アンティグア・バーブーダ | アンティグア・バーブーダ | 28 | AG | ATG | 28 | セントジョンズ
アルゼンチン | アルゼンチン共和国 | 32 | AR | ARG | 32 | ブエノスアイレス
アルメニア | アルメニア共和国 | 51 | AM | ARM | 51 | エレバン
アルバ |  | 533 | AW | ABW | 533 |
オーストラリア | オーストラリア | 36 | AU | AUS | 36 | キャンベラ
オーストリア | オーストリア共和国 | 40 | AT | AUT | 40 | ウィーン
アゼルバイジャン | アゼルバイジャン共和国 | 31 | AZ | AZE | 31 | バクー
バハマ | バハマ国 | 44 | BS | BHS | 44 | ナッソー
バーレーン | バーレーン国 | 48 | BH | BHR | 48 | マナーマ
バングラデシュ | バングラデシュ人民共和国 | 50 | BD | BGD | 50 | ダッカ
バルバドス |  | 52 | BB | BRB | 52 | ブリッジタウン
ベラルーシ | ベラルーシ共和国 | 112 | BY | BLR | 112 | ミンスク
ベルギー | ベルギー王国 | 56 | BE | BEL | 56 | ブリュッセル
ベリーズ |  | 84 | BZ | BLZ | 84 | ベルモパン
ベナン | ベナン共和国 | 204 | BJ | BEN | 204 | ポルトノボ
バミューダ諸島 |  | 60 | BM | BMU | 60 |
ブータン | ブータン王国 | 64 | BT | BTN | 64 | ティンプー
ボリビア | ボリビア共和国 | 68 | BO | BOL | 68 | スクレ
ボスニア・ヘルツェゴビナ | ボスニア・ヘルツェゴビナ | 70 | BA | BIH | 70 | サラエボ
ボツワナ | ボツワナ共和国 | 72 | BW | BWA | 72 | ハボローネ
ブーベ島 |  | 74 | BV | BVT | - |
ブラジル | ブラジル連邦共和国 | 76 | BR | BRA | 76 | ブラジリア
英領インド洋地域 | 英領インド洋地域 | 86 | IO | IOT | - |
ブルネイ | ブルネイ・ダルサラーム国 | 96 | BN | BRN | 96 | バンダルスリブガワン
ブルガリア | ブルガリア共和国 | 100 | BG | BGR | 100 | ソフィア
ブルキナファソ |  | 854 | BF | BFA | 854 | ワガドゥーグー
ブルンジ | ブルンジ共和国 | 108 | BI | BDI | 108 | ブジュンブラ
コートジボワール | コートジボワール共和国 | 384 | CI | CIV | 384 | ヤムスクロ
カンボジア | カンボジア王国 | 116 | KH | KHM | 116 | プノンペン
カメルーン | カメルーン共和国 | 120 | CM | CMR | 120 | ヤウンデ
カナダ |  | 124 | CA | CAN | 124 | オタワ
カーボベルデ | カーボベルデ共和国 | 132 | CV | CPV | 132 | プライア
ケイマン諸島 |  | 136 | KY | CYM | 136 |
中央アフリカ共和国 | 中央アフリカ共和国 | 140 | CF | CAF | 140 | バンギ
チャド | チャド共和国 | 148 | TD | TCD | 148 | ンジャメナ
チャンネル諸島 |  | - | GB-CHA | - | 830 |
チリ | チリ共和国 | 152 | CL | CHL | 152 | サンティアゴ
中華人民共和国 | 中華人民共和国 | 156 | CN | CHN | 156 | 北京
クリスマス島 | クリスマス島 | 162 | CX | CXR | - |
ココス諸島/キーリング諸島 | ココス諸島/キーリング諸島 | 166 | CC | CCK | - |
コロンビア | コロンビア共和国 | 170 | CO | COL | 170 | サンタフェデボゴタ
コモロ | コモロ・イスラム連邦共和国 | 174 | KM | COM | 174 | モロニ
コンゴ共和国 | コンゴ共和国 | 178 | CG | COG | 178 | ブラザビル
コンゴ民主共和国 | コンゴ民主共和国 | 180 | CD | COD | 180 | キンシャサ
クック諸島 |  | 184 | CK | COK | 184 |
珊瑚海諸島地域 | 珊瑚海諸島地域 | - | AU | - | - |
コスタリカ | コスタリカ共和国 | 188 | CR | CRI | 188 | サンホセ
クロアチア | クロアチア共和国 | 191 | HR | HRV | 191 | ザグレブ
キューバ | キューバ共和国 | 192 | CU | CUB | 192 | ハバナ
キプロス | キプロス共和国 | 196 | CY | CYP | 196 | ニコシア
チェコ共和国 | チェコ共和国 | 203 | CZ | CZE | 203 | プラハ
デンマーク | デンマーク王国 | 208 | DK | DNK | 208 | コペンハーゲン
ジブチ | ジブチ共和国 | 262 | DJ | DJI | 262 | ジブチ
ドミニカ | ドミニカ国 | 212 | DM | DMA | 212 | ロゾー
ドミニカ共和国 | ドミニカ共和国 | 214 | DO | DOM | 214 | サントドミンゴ
東ティモール |  | 626 | TP | TMP | 626 | ディリ
エクアドル | エクアドル共和国 | 218 | EC | ECU | 218 | キト
エジプト | エジプト・アラブ共和国 | 818 | EG | EGY | 818 | カイロ
エルサルバドル | エルサルバドル共和国 | 222 | SV | SLV | 222 | サンサルバドル
赤道ギニア | 赤道ギニア共和国 | 226 | GQ | GNQ | 226 | マラボ
エリトリア | エリトリア国 | 232 | ER | ERI | 232 | アスマラ
エストニア | エストニア共和国 | 233 | EE | EST | 233 | タリン
エチオピア | エチオピア連邦民主共和国 | 231 | ET | ETH | 231 | アディスアベバ
フォークランド (マルビナス) 諸島 | フォークランド (マルビナス) 諸島 | 238 | FK | FLK | 238 |
フェロー諸島 |  | 234 | FO | FRO | 234 |
フィジー諸島 | フィジー諸島共和国 | 242 | FJ | FJI | 242 | スバ
フィンランド | フィンランド共和国 | 246 | FI | FIN | 246 | ヘルシンキ
フランス | フランス共和国 | 250 | FR | FRA | 250 | パリ
フランス領自治区 |  | 249 | FX | FXX | - |
フランス領ギアナ | フランス領ギアナ | 254 | GF | GUF | 254 |
フランス領ポリネシア | フランス領ポリネシア | 258 | PF | PYF | 258 |
フランス領南極地方 | フランス領南極地方 | 260 | TF | ATF | - |
ガボン | ガボン共和国 | 266 | GA | GAB | 266 | リーブルビル
ガンビア | ガンビア共和国 | 270 | GM | GMB | 270 | バンジュール
ガザ地区 |  | - | PS | PSE | 275 |
グルジア | グルジア | 268 | GE | GEO | 268 | トビリシ
ドイツ | ドイツ連邦共和国 | 276 | DE | DEU | 276 | ベルリン
ガーナ | ガーナ共和国 | 288 | GH | GHA | 288 | アクラ
ジブラルタル |  | 292 | GI | GIB | 292 |
ギリシャ | ギリシャ共和国 | 300 | GR | GRC | 300 | アテネ
グリーンランド |  | 304 | GL | GRL | 304 |
グレナダ |  | 308 | GD | GRD | 308 | セントジョージズ
グアドループ | グアドループ | 312 | GP | GLP | 312 |
グアム | グアム | 316 | GU | GUM | 316 |
グアテマラ | グアテマラ共和国 | 320 | GT | GTM | 320 | グアテマラ
ガーンジー島 | ガーンジー島 | - | GB-GSY | - | - |
ギニア | ギニア共和国 | 324 | GN | GIN | 324 | コナクリ
ギニアビサウ | ギニアビサウ共和国 | 624 | GW | GNB | 624 | ビサウ
ガイアナ | ガイアナ協同共和国 | 328 | GY | GUY | 328 | ジョージタウン
ハイチ | ハイチ共和国 | 332 | HT | HTI | 332 | ポルトープランス
ハード・マクドナルド諸島 | ハード・マクドナルド諸島 | 334 | HM | HMD | - |
ホンジュラス | ホンジュラス共和国 | 340 | HN | HND | 340 | テグシガルパ
香港 SAR | 香港特別自治区 | 344 | HK | HKG | 344 |
ハンガリー | ハンガリー共和国 | 348 | HU | HUN | 348 | ブダペスト
アイスランド | アイスランド共和国 | 352 | IS | ISL | 352 | レイキャビク
インド | インド | 356 | IN | IND | 356 | ニューデリー
インドネシア | インドネシア共和国 | 360 | ID | IDN | 360 | ジャカルタ
イラン | イラン・イスラム共和国 | 364 | IR | IRN | 364 | テヘラン
イラク | イラク共和国 | 368 | IQ | IRQ | 368 | バグダッド
アイルランド | アイルランド共和国 | 372 | IE | IRL | 372 | ダブリン
イスラエル | イスラエル国 | 376 | IL | ISR | 376 | エルサレム
イタリア | イタリア共和国 | 380 | IT | ITA | 380 | ローマ
ジャマイカ |  | 388 | JM | JAM | 388 | キングストン
日本 |  | 392 | JP | JPN | 392 | 東京
ジャージー島 | ジャージー島 | - | GB-JSY | - | - |
ヨルダン | ヨルダン・ハシミテ王国 | 400 | JO | JOR | 400 | アンマン
カザフスタン | カザフスタン共和国 | 398 | KZ | KAZ | 398 | アスタナ
ケニア | ケニア共和国 | 404 | KE | KEN | 404 | ナイロビ
キリバス | キリバス共和国 | 296 | KI | KIR | 296 | バイリキ
大韓民国 | 大韓民国 | 410 | KR | KOR | 410 | ソウル
クウェート | クウェート国 | 414 | KW | KWT | 414 | クウェート
キルギス | キルギス共和国 | 417 | KG | KGZ | 417 | ビシュケク
ラオス | ラオス人民民主共和国 | 418 | LA | LAO | 418 | ビエンチャン
ラトビア | ラトビア共和国 | 428 | LV | LVA | 428 | リガ
レバノン | レバノン共和国 | 422 | LB | LBN | 422 | ベイルート
レソト | レソト王国 | 426 | LS | LSO | 426 | マセル
リベリア | リベリア共和国 | 430 | LR | LBR | 430 | モンロビア
リビア | 社会主義人民リビア・アラブ国 | 434 | LY | LBY | 434 | トリポリ
リヒテンシュタイン | リヒテンシュタイン公国 | 438 | LI | LIE | 438 | ファドゥーツ
リトアニア | リトアニア共和国 | 440 | LT | LTU | 440 | ビリニュス
ルクセンブルグ | ルクセンブルグ大公国 | 442 | LU | LUX | 442 | ルクセンブルグ
マカオ SAR | マカオ特別自治区 | 446 | MO | MAC | 446 |
マケドニア旧ユーゴスラビア共和国 | マケドニア旧ユーゴスラビア共和国 | 807 | MK | MKD | 807 | スコピエ
マダガスカル | マダガスカル共和国 | 450 | MG | MDG | 450 | アンタナナリボ
マラウイ | マラウイ共和国 | 454 | MW | MWI | 454 | リロングウェ
マレーシア | マレーシア | 458 | MY | MYS | 458 | クアラルンプール
モルディブ | モルディブ共和国 | 462 | MV | MDV | 462 | マレ
マリ | マリ共和国 | 466 | ML | MLI | 466 | バマコ
マルタ | マルタ共和国 | 470 | MT | MLT | 470 | バレッタ
マン島 |  | - | GB-IOM | - | 833 |
マーシャル諸島 | マーシャル諸島共和国 | 584 | MH | MHL | 584 | マジュロ
マルチニーク島 | マルチニーク島 | 474 | MQ | MTQ | 474 |
モーリタニア | モーリタニア・イスラム共和国 | 478 | MR | MRT | 478 | ヌアクショット
モーリシャス | モーリシャス共和国 | 480 | MU | MUS | 480 | ポートルイス
マイヨット島 | マイヨット島 | 175 | YT | MYT | - |
メキシコ | メキシコ合衆国 | 484 | MX | MEX | 484 | メキシコシティ
ミクロネシア | ミクロネシア連邦 | 583 | FM | FSM | 583 | パリキール
モルドバ | モルドバ共和国 | 498 | MD | MDA | 498 | キシニョフ
モナコ | モナコ公国 | 492 | MC | MCO | 492 | モナコ
モンゴル |  | 496 | MN | MNG | 496 | ウランバートル
モンセラット |  | 500 | MS | MSR | 500 |
モロッコ | モロッコ王国 | 504 | MA | MAR | 504 | ラバト
モザンビーク | モザンビーク共和国 | 508 | MZ | MOZ | 508 | マプート
ミャンマー | ミャンマー連邦 | 104 | MM | MMR | 104 | ヤンゴン (ラングーン)
ナミビア | ナミビア共和国 | 516 | NA | NAM | 516 | ウィントフック
ナウル | ナウル共和国 | 520 | NR | NRU | 520 | ヤレン
ネパール | ネパール王国 | 524 | NP | NPL | 524 | カトマンズ
オランダ領アンティル |  | 530 | AN | ANT | 530 |
オランダ | オランダ王国 | 528 | NL | NLD | 528 | アムステルダム
ニューカレドニア | ニューカレドニア | 540 | NC | NCL | 540 |
ニュージーランド |  | 554 | NZ | NZL | 554 | ウェリントン
ニカラグア | ニカラグア共和国 | 558 | NI | NIC | 558 | マナグア
ニジェール | ニジェール共和国 | 562 | NE | NER | 562 | ニアメ
ナイジェリア | ナイジェリア連邦共和国 | 566 | NG | NGA | 566 | アブジャ
ニウエ |  | 570 | NU | NIU | 570 |
ノーフォーク島 | ノーフォーク島 | 574 | NF | NFK | 574 |
朝鮮民主主義人民共和国 | 朝鮮民主主義人民共和国 | 408 | KP | PRK | 408 | 平壌
北マリアナ諸島 | 北マリアナ諸島 | 580 | MP | MNP | 580 |
ノルウェー | ノルウェー王国 | 578 | NO | NOR | 578 | オスロ
オマーン | オマーン国 | 512 | OM | OMN | 512 | マスカット
パキスタン | パキスタン・イスラム共和国 | 586 | PK | PAK | 586 | イスラマバード
パラオ | パラオ共和国 | 585 | PW | PLW | 585 | コロール
パナマ | パナマ共和国 | 591 | PA | PAN | 591 | パナマ
パプアニューギニア | パプアニューギニア | 598 | PG | PNG | 598 | ポートモレスビー
パラグアイ | パラグアイ共和国 | 600 | PY | PRY | 600 | アスンシオン
ペルー | ペルー共和国 | 604 | PE | PER | 604 | リマ
フィリピン | フィリピン共和国 | 608 | PH | PHL | 608 | マニラ
ピトケアン | ピトケアン | 612 | PN | PCN | 612 |
ポーランド | ポーランド共和国 | 616 | PL | POL | 616 | ワルシャワ
ポルトガル | ポルトガル共和国 | 620 | PT | PRT | 620 | リスボン
プエルトリコ | プエルトリコ | 630 | PR | PRI | 630 |
カタール | カタール国 | 634 | QA | QAT | 634 | ドーハ
レユニオン | レユニオン | 638 | RE | REU | 638 |
ルーマニア |  | 642 | RO | ROM | 642 | ブカレスト
ロシア | ロシア連邦 | 643 | RU | RUS | 643 | モスクワ
ルワンダ | ルワンダ共和国 | 646 | RW | RWA | 646 | キガリ
サントメ・プリンシペ | サントメ・プリンシペ | 678 | ST | STP | 678 | サントメ
サモア | サモア独立国 | 882 | WS | WSM | 882 | アピア
サンマリノ | サンマリノ共和国 | 674 | SM | SMR | 674 | サンマリノ
サウジアラビア | サウジアラビア王国 | 682 | SA | SAU | 682 | リヤド
セネガル | セネガル共和国 | 686 | SN | SEN | 686 | ダカール
セイシェル | セイシェル共和国 | 690 | SC | SYC | 690 | ビクトリア
シエラレオネ | シエラレオネ共和国 | 694 | SL | SLE | 694 | フリータウン
シンガポール | シンガポール共和国 | 702 | SG | SGP | 702 | シンガポール
スロバキア | スロバキア共和国 | 703 | SK | SVK | 703 | ブラチスラバ
スロベニア | スロベニア共和国 | 705 | SI | SVN | 705 | リュブリャナ
ソロモン諸島 |  | 90 | SB | SLB | 90 | ホニアラ
ソマリア | ソマリア民主共和国 | 706 | SO | SOM | 706 | モガディシュ
南アフリカ | 南アフリカ共和国 | 710 | ZA | ZAF | 710 | プレトリア
サウスジョージア・サウスサンドウィッチ諸島 | サウスジョージア・サウスサンドウィッチ諸島 | 239 | GS | SGS | - |
スペイン | スペイン | 724 | ES | ESP | 724 | マドリード
スリランカ | スリランカ民主社会主義共和国 | 144 | LK | LKA | 144 | スリジャヤワルダナプラコッテ
セントヘレナ | セントヘレナ | 654 | SH | SHN | 654 |
セントクリストファー・ネイビス | セントクリストファー・ネイビス | 659 | KN | KNA | 659 | バセテール
セントルシア | セントルシア | 662 | LC | LCA | 662 | カストリーズ
サンピエール・ミクロン | サンピエール・ミクロン | 666 | PM | SPM | 666 |
セントビンセント | セントビンセントおよびグレナディーン諸島 | 670 | VC | VCT | 670 | キングスタウン
スーダン | スーダン共和国 | 736 | SD | SDN | 736 | ハルツーム
スリナム | スリナム共和国 | 740 | SR | SUR | 740 | パラマリボ
スバールバル諸島およびヤンマイエン島 |  | 744 | SJ | SJM | 744 |
スワジランド | スワジランド王国 | 748 | SZ | SWZ | 748 | ムババーネ
スウェーデン | スウェーデン王国 | 752 | SE | SWE | 752 | ストックホルム
スイス | スイス連邦 | 756 | CH | CHE | 756 | ベルン
シリア | シリア・アラブ共和国 | 760 | SY | SYR | 760 | ダマスカス
台湾 |  | 158 | TW | TWN | 158 | 台北
タジキスタン | タジキスタン共和国 | 762 | TJ | TJK | 762 | ドゥシャンベ
タンザニア | タンザニア連合共和国 | 834 | TZ | TZA | 834 | ダルエスサラーム
タイ | タイ王国 | 764 | TH | THA | 764 | バンコク
トーゴ | トーゴ共和国 | 768 | TG | TGO | 768 | ロメ
トケラウ諸島 |  | 772 | TK | TKL | 772 |
トンガ | トンガ王国 | 776 | TO | TON | 776 | ヌクアロファ
トリニダード・トバゴ | トリニダード・トバゴ共和国 | 780 | TT | TTO | 780 | ポートオブスペイン
チュニジア | チュニジア共和国 | 788 | TN | TUN | 788 | チュニス
トルコ | トルコ共和国 | 792 | TR | TUR | 792 | アンカラ
トルクメニスタン | トルクメニスタン | 795 | TM | TKM | 795 | アシハバード
タークス・カイコス諸島 |  | 796 | TC | TCA | 796 |
ツバル |  | 798 | TV | TUV | 798 | フナフティ
米領オセアニア諸島 | 米領オセアニア諸島 | 581 | UM | UMI | 581 |
ウガンダ | ウガンダ共和国 | 800 | UG | UGA | 800 | カンパラ
ウクライナ |  | 804 | UA | UKR | 804 | キエフ
アラブ首長国連邦 |  | 784 | AE | ARE | 784 | アブダビ
英国 | グレートブリテンおよび北部アイルランド連合王国 | 826 | GB | GBR | 826 | ロンドン
米国 | アメリカ合衆国 | 840 | US | USA | 840 | ワシントン D.C.
ウルグアイ | ウルグアイ東方共和国 | 858 | UY | URY | 858 | モンテビデオ
ウズベキスタン | ウズベキスタン共和国 | 860 | UZ | UZB | 860 | タシケント
バヌアツ | バヌアツ共和国 | 548 | VU | VUT | 548 | ポートビラ
バチカン | バチカン市国 | 336 | VA | VAT | 336 | バチカン
ベネズエラ | ベネズエラ | 862 | VE | VEN | 862 | カラカス
ベトナム | ベトナム社会主義共和国 | 704 | VN | VNM | 704 | ハノイ
バージン諸島 | 米領バージン諸島 | 850 | VI | VIR | 850 |
英領バージン諸島 |  | 92 | VG | VGB | 92 |
ワリス・フテュナ諸島 | ワリス・フテュナ諸島 | 876 | WF | WLF | 876 |
イエメン | イエメン共和国 | 887 | YE | YEM | 887 | サナア
ユーゴスラビア | ユーゴスラビア連邦共和国 | 891 | YU | YUG | 891 | ベオグラード
ザンビア | ザンビア共和国 | 894 | ZM | ZMB | 894 | ルサカ
ジンバブエ | ジンバブエ共和国 | 716 | ZW | ZWE | 716 | ハラーレ


AppFrameWork オブジェクト

このオブジェクトは、Active Server Pages (ASP) のフォームでの処理を簡素化するために使います。

ProgID: | Commerce.AppFrameWork (外部作成可能)
COM クラス名: | AppFrameWork
タイプ ライブラリ名: | AspLib 1.0 Type Library
DLL 名: | asplib.dll
スレッド モデル: | 両方

次の表は、AppFrameWork オブジェクトのメソッドを示しています。

メソッド | 説明
Option | ページ上に選択肢を表示するための、タグを生成します。
RequestDate | URL クエリ文字列またはフォーム送信変数から値を取得し、それを Date 値 (Date Variant) に変換します。
RequestDateTime | URL クエリ文字列またはフォーム送信変数から値を取得し、それを Date/Time 値 (Date Variant) に変換します。
RequestFloat | URL クエリ文字列またはフォーム送信変数から値を取得し、それを浮動小数点値に変換します。
RequestMoneyAsNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、指定されたロケールに基づいてそれを金額に変換します。
RequestNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、それを数値に変換します。
RequestString | URL クエリ文字列またはフォーム送信変数から値を取得し、その値に対して文字列処理を実行します。
RequestTime | URL クエリ文字列またはフォーム送信変数から値を取得し、それを Time 値 (Date Variant) に変換します。
VerifyWith | 検証する値を入れるための、非表示の入力フィールドを生成します。
VirtualDirectory | サイトの仮想ディレクトリ名を返します。

解説

AppFrameWork オブジェクトのメソッドは、大きく次のカテゴリに分けられます。

  • 書式設定 : Option メソッドを使うと、HTML ページの項目の書式を簡単に設定できるほか、可能な場合には、ページ内のほかの変数を実行時に評価し、それに基づいて HTML 項目の値を決定することができます。

  • 検証 : これらのメソッドは、"Request" で始まり、URL クエリ文字列から値を取得し、その値のデータ型をロケール値に基づいて変換した後、それらの値が指定した範囲に収まっているかどうかを検証するために使います。

このオブジェクトを作成するには、アプリケーション スコープ内であらかじめ Commerce.DataFunctions オブジェクトを作成しておく必要があります。

関連項目

表示オブジェクト


AppFrameWork.Option

このメソッドは、HTML フォームの選択肢リストに表示される OPTION (選択肢) 項目を生成するために使います。値および選択状態を指定することができます。

定義

Function Option(
vtVal1 As Variant,
vtVal2 As Variant
) As String

パラメータ

vtVal1

選択肢リストに表示される選択肢の値を含む Variant です。

vtVal2

選択肢が選択された状態であるかどうかを示す値を含む Variant です。vtVal2 パラメータが vtVal1 パラメータと同値の場合、選択肢リストの定義に HTML キーワードの SELECTED が挿入されます。

戻り値

このメソッドが正常に終了すると、OPTION 項目を含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' The following example generates a selection field in an
' HTML form to enable the customer to select the expiration
' year of their credit card. The Option method generates
' <OPTION VALUE="> tags and marks the current year
' as selected:
<% iyear = Year(date) %>

<SELECT NAME="_cc_expyear">
    <% = oAppFrameWork.Option(2000, iyear) %> 2000
    <% = oAppFrameWork.Option(2001, iyear) %> 2001
    <% = oAppFrameWork.Option(2002, iyear) %> 2002
    <% = oAppFrameWork.Option(2003, iyear) %> 2003
</SELECT>
' Following is the HTML output that is produced,
' assuming that the current year is 2001:
<SELECT NAME="_cc_expyear">
    <OPTION VALUE="2000"> 2000
    <OPTION VALUE="2001" SELECTED> 2001
    <OPTION VALUE="2002"> 2002
    <OPTION VALUE="2003"> 2003
</SELECT>

関連項目

AppFrameWork オブジェクト


AppFrameWork.RequestDate

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date 値 (Date Variant) に変換するために使います。

定義

Function RequestDate(
bstrName As String,
Optional vtDefault As Variant,
Optional vtMin As Variant,
Optional vtMax As Variant,
Optional vtLocale As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列またはフォーム ポスト変数が存在しない場合や、存在しても値を持たない場合に返される日付を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Date/Time 値や Time 値を格納することはできません。このパラメータは省略可能です。

vtMin

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための日付値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換後の値が vtMin より小さい場合は、Null が返されます。このパラメータは省略可能です。

vtMax

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための日付値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換後の値が vtMax より大きい場合は、Null が返されます。このパラメータは省略可能です。

vtLocale

日付を変換するときに使われる、ロケールを指定するための数値を含む Variant です。この値が指定されていない場合、RequestDate メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、処理済みの日付値を含んだ Date Variant が返されます。検証に失敗した場合、戻り値は Null に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' This example assumes that the date value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="Date">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the date into the form and clicks the
' Send Info button, the value of this form field can be
' retrieved by the RequestDate method as follows:
vDate = oAppFrameWork.RequestDate("Date", "2/27/01", "1/1/01", _
    "12/31/01",1033)

関連項目

AppFrameWork オブジェクト

DataFunctions.Locale

AppFrameWork.RequestDateTime

DataFunctions.ConvertDateString

DataFunctions.Date


AppFrameWork.RequestDateTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date/Time 値 (Date Variant) に変換するために使います。

定義

Function RequestDateTime(
bstrName As String,
Optional vtDefault As Variant,
Optional vtMin As Variant,
Optional vtMax As Variant,
Optional vtLocale As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列やフォーム送信変数が存在しない場合、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Time 値を格納することはできません。このパラメータは省略可能です。

vtMin

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための Date/Time 値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換後の値が vtMin より小さい場合は、Null が返されます。このパラメータは省略可能です。

vtMax

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための Date/Time 値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換後の値が vtMax より大きい場合は、Null が返されます。このパラメータは省略可能です。

vtLocale

日付/時刻文字列の変換に使われるロケールを示す数値を含む Variant です。このパラメータが指定されていない場合、RequestDateTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、Date/Time 値を含む Variant が返されます。検証に失敗した場合、戻り値は Null に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' This example assumes that the DateTime value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="DateTime">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the date into the form and clicks
' the Send Info button, the value of this form field can
' be retrieved by the RequestDate method as follows:
vDate = oAppFrameWork.RequestDateTime("DateTime", _
    "1/1/01 12:00:01 AM", "1/1/01 12:00:01 AM", _
     "12/31/01 11:59:59 PM", 1033)

関連項目

AppFrameWork オブジェクト

DataFunctions.Locale

AppFrameWork.RequestDate

DataFunctions.ConvertDateTimeString

AppFrameWork.RequestTime


AppFrameWork.RequestFloat

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを浮動小数点数値に変換するために使います。

RequestFloat メソッドでも、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

定義

Function RequestFloat(
bstrName As String,
Optional vtDefault As Variant,
Optional vtMin As Variant,
Optional vtMax As Variant,
Optional vtLocale As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列やフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。このパラメータは省略可能です。

vtMin

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換後の値が vtMin より小さい場合は、Null が返されます。このパラメータは省略可能です。

vtMax

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換後の値が vtMax より大きい場合は、Null が返されます。このパラメータは省略可能です。

vtLocale

値を変換するときに使われる、ロケールを示す数値を含む Variant です。この値が指定されていない場合、RequestFloat メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、浮動小数点値を含む Variant が返されます。検証に失敗した場合、戻り値は Null に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' vFloat is a Variant.
' This example assumes that the float value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="Float">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the number into the form and clicks the
' Send Info button, the value of this form field can be
' retrieved by the RequestFloat method as follows:
vFloat = oAppFrameWork.RequestFloat("Float", 0, 0, 100, 1033)

関連項目

AppFrameWork オブジェクト

DataFunctions.Locale

AppFrameWork.RequestNumber

DataFunctions.ConvertFloatString

DataFunctions.Float

DataFunctions.ValidateFloat


AppFrameWork.RequestMoneyAsNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールに基づいて、それを金額に変換するために使います。

定義

Function RequestMoneyAsNumber(
bstrName As String,
Optional vtDefault As Variant,
Optional vtMin As Variant,
Optional vtMax As Variant,
Optional vtLocale As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列やフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。この値も指定されていない場合は、Null が返されます。既定値が文字列値である場合、値は基本通貨単位の値に変換されます。そのほかのデータ型である場合、値は基本通貨単位で表現されていると仮定されます。このパラメータは省略可能です。

vtMin

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための金額値を含む Variant です。vtMin パラメータでは、値が基本通貨単位で表現されている必要があります。変換後の値が vtMin より小さい場合は、Null が返されます。このパラメータは省略可能です。

vtMax

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための値を含む Variant です。vtMax パラメータでは、値が基本通貨単位で表現されている必要があります。変換後の値が vtMax より大きい場合は、Null が返されます。このパラメータは省略可能です。

vtLocale

bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestMoneyAsNumber は DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、指定したロケールまたは既定のロケールの基本通貨単位で表現された数値を含む Variant が返されます。検証に失敗した場合、戻り値は Null に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが正常に終了すると、指定した文字列値を表現する数値が返されます。この数値の単位は、指定されたロケールの基本通貨単位です。たとえば、値の単位が米ドルである場合は、その値をセント単位で表現した数値が返されます。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' In the following example, the value of a field on the purchase
' form (filled out by the customer) is read into the
' variable list_price.

<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="list_price">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' The vtMax argument is the upper limit
' of a Variant variable. Using this value as the upper limit and
' zero (0) as the lower limit of the range check ensures that
' the value is not negative:
list_price = oAppFrameWork .RequestMoneyAsNumber("list_price", 0, 0, _
    2147483647)

関連項目

AppFrameWork オブジェクト

DataFunctions.Locale

DataFunctions.ConvertMoneyStringToNumber

DataFunctions.Money

AppFrameWork.RequestFloat

AppFrameWork.RequestNumber


AppFrameWork.RequestNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを数値に変換するために使います。

RequestNumber メソッドでも、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

定義

Function RequestNumber(
bstrName As String,
Optional vtDefault As Variant,
Optional vtMin As Variant,
Optional vtMax As Variant,
Optional vtLocale As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列やフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。このパラメータは省略可能です。

vtMin

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための数値を含む Variant です。変換後の値が vtMin より小さい場合は、Null が返されます。このパラメータは省略可能です。

vtMax

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。変換後の値が vtMax より大きい場合は、Null が返されます。このパラメータは省略可能です。

vtLocale

bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestNumber メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、変換後の数値を含んだ Variant が返されます。検証に失敗した場合、戻り値は Null に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' In the following example, the value of a field on the purchase
' form (filled out by the customer) is read into the
' variable cc_expmonth.

<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="_cc_expmonth">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' Because the Default parameter is specified
' as 7, the RequestNumber method will return 7 if the field is empty
' or missing.
cc_expmonth = oAppFrameWork.RequestNumber("_cc_expmonth",7, 1, 12)

関連項目

AppFrameWork オブジェクト

DataFunctions.Locale

AppFrameWork.RequestFloat

DataFunctions.ConvertNumberString

DataFunctions.Number

DataFunctions.ValidateNumber


AppFrameWork.RequestString

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、その値に対して文字列処理を実行するために使います。

定義

Function RequestString(
bstrName As String,
Optional vtDefault As Variant,
Optional vtMin As Variant,
Optional vtMax As Variant,
Optional vtStripWhite As Variant,
Optional vtStripReturn As Variant,
Optional vtCase As Variant,
Optional vtLocale As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

指定した URL クエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。このパラメータは省略可能です。

vtMin

bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最短の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMin パラメータの値が考慮されません。この値が無効なものである場合、または bstrName パラメータや vtDefault パラメータの長さが指定範囲をはずれている場合には、Null が返されます。このパラメータは省略可能です。

vtMax

bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最長の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMax パラメータの値が考慮されません。この値が無効なものである場合、または bstrName パラメータや vtDefault パラメータの長さが指定範囲をはずれている場合には、Null が返されます。このパラメータは省略可能です。

vtStripWhite

文字列から先頭と末尾の空白を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。このパラメータは省略可能です。

vtStripReturn

文字列から先頭と末尾の改行文字を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。このパラメータは省略可能です。

vtCase

文字列を大文字/小文字のどちらに変換するかを示す数値を含む Variant です。既定値は 0 です。この場合、文字列の大文字/小文字変換は実行されません。vtCase パラメータが 1 の場合、文字列は大文字に変換されます。vtCase パラメータが 2 の場合、文字列は小文字に変換されます。このパラメータは省略可能です。

vtLocale

ロケールを指定する数値を含む Variant です。変換はこのロケールに基づいて行われます。この値が指定されていない場合、RequestString メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、処理済みの文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドを使うと、何種類かの文字列処理を実行することもできます。実行可能なのは、文字列から先頭と末尾の空白 (空白文字とタブ文字) を除去する、文字列から改行文字を削除する、および文字列の大文字/小文字を変換するという 3 つの処理です。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' vString is a Variant.
' This example assumes that the string value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="String">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the string into the form and clicks the
' Send Info button, the value of this form field can be
' retrieved by the RequestString method as follows:
vString = oAppFrameWork.RequestString("String", "Default String", _
    1, 100, True, True, 0, 1033)
' In this example, the string is checked to ensure that it contains
' between 1 and 100 characters; all leading and trailing white
' spaces are removed, all carriage returns are removed, no
' modification is made to character case, and the string is
' converted according to the locale 1033. If no string is
' input, the string "Default String" will be loaded into the
' variable vString.

関連項目

AppFrameWork オブジェクト

DataFunctions.Locale


AppFrameWork.RequestTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date Variant に変換するために使います。

定義

Function RequestTime(
bstrName As String,
Optional vtDefault As Variant,
Optional vtMin As Variant,
Optional vtMax As Variant,
Optional vtLocale As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

指定した URL クエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Date/Time 値や Date 値を格納することはできません。このパラメータは省略可能です。

vtMin

bstrName パラメータが特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための時刻値を含む Variant です。既定では下限が設定されておらず、検証は実行されません。このパラメータは省略可能です。変換後の値が vtMin より小さい場合は、Null が返されます。

vtMax

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための時刻値を含む Variant です。既定では上限値が設定されておらず、検証は実行されません。変換後の値が vtMax より大きい場合は、Null が返されます。このパラメータは省略可能です。

vtLocale

Date/Time 値を変換するときに使われる、ロケールを指定する数値を含む Variant です。この値が指定されていない場合、RequestTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、日付を含んだ Variant が返されます。検証に失敗した場合、戻り値は Null に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' This example assumes that the time value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="Time">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the date into the form and clicks
' the Send Info button, the value of this form field can
' be retrieved by the RequestTime method as follows:
vTime = oAppFrameWork.RequestTime("Time", "12:00:01 AM", _
    "12:00:01 AM", "11:59:59 PM", 1033)

関連項目

AppFrameWork オブジェクト

DataFunctions.Locale

DataFunctions.ConvertTimeString

AppFrameWork.RequestDate


AppFrameWork.VerifyWith

このメソッドは、検証する値を入れるための、非表示の入力フィールドを生成する場合に使います。

定義

Function VerifyWith(
pdispOrder As Object
 pParams As Variant
) As Variant

パラメータ

pdispOrder

検証対象フィールドを含んでいる OrderForm オブジェクトへのオブジェクト参照です。

pParams

指定された OrderForm オブジェクト内にある確認対象フィールドの名前を含む、Variant 型引数の変数リスト。

戻り値

このメソッドが正常に終了すると、HTML タグを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、HTML フォーム内に <INPUT TYPE="HIDDEN"> という形式の HTML タグを出力するために使います。これらの非表示フィールドには、OrderForm オブジェクト内で指定された値が含まれています。それらの値は、OrderForm オブジェクトの表示中から最終的な購入までの間に、注文内容が変更されていないかどうかを検証するために使われます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAppFrameWork is a Commerce.AppFrameWork object.
' The following example generates hidden fields containing
' the values stored in the _total_total,and _tax_total fields
' of the supplied OrderForm object:
<FORM METHOD="POST"
    ACTION="http://example.microsoft.com/xt_orderform_purchase.asp">
    <% = oAppFrameWork.VerifyWith(mscsOrderForm, "_total_total", _
 "_tax_total") %>
' When the page containing this call is loaded in the client
' browser, the document source for the page would contain the
' following HTML script (assuming a total of 138.95 and a tax
' of 8.75):
<FORM METHOD="POST"
ACTION="http://example.microsoft.com/xt_orderform_purchase.asp">
<INPUT TYPE=HIDDEN NAME="_VERIFY_WITH" VALUE="_total_total=13895">
<INPUT TYPE=HIDDEN NAME="_VERIFY_WITH" VALUE="_tax_total=875">

関連項目

AppFrameWork オブジェクト

OrderForm オブジェクト


AppFrameWork.VirtualDirectory

このメソッドは、サイトの仮想ディレクトリ名を返すために使います。

定義

Function VirtualDirectory() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、サイトの仮想ディレクトリ名を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

AppFrameWork オブジェクト

StandardSManager オブジェクト


AsyncRpt オブジェクト

このオブジェクトは、静的レポートを非同期的に表示したりエクスポートしたりするために使います。

ProgID: | Commerce.AsyncRpt (外部作成可能)
COM クラス名: | AsyncRpt
タイプ ライブラリ名: | Microsoft Commerce 2000 Async Report Manager Type Library
DLL 名: | AsyncReport.dll
スレッド モデル: | 両方

次の表は、AsyncRpt オブジェクトのメソッドを示しています。

メソッド | 説明
RunReport | レポートを実行またはエクスポートします。

解説

AsyncRpt オブジェクトは、レポートを非同期的に表示またはエクスポートします。

ReportRender オブジェクトは、レポートを同期的に表示またはエクスポートします。

AsyncRpt オブジェクトは、ReportRender オブジェクトを呼び出して、表示に必要なパラメータが含まれる文字列を渡します。表示プロセスの詳細については、「ReportRenderer オブジェクト」を参照してください。

関連項目

分析とレポート作成のためのスキーマ

分析とレポートのための XML 構造

カスタム レポートを作成する

ListManager オブジェクト

ReportRenderer オブジェクト

レポートを実行する


AsyncRpt.RunReport

このメソッドは、AsyncRpt オブジェクトを初期化し、静的レポートを非同期的に表示またはエクスポートするために使います。

定義

Sub RunReport(
bstrRepParam As String
)

パラメータ

bstrRepParam

AsyncRpt オブジェクトに対してパラメータを設定するために使う文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは E_FAIL (&H80004005) に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

解説

AsyncRpt オブジェクトは、ReportRender オブジェクトを呼び出して bstrRepParam パラメータを渡します。

bstrRepParam パラメータは、ReportRender オブジェクトの Init メソッドが持つ sParamString パラメータと同じものです。詳細については、「ReportRenderer オブジェクト」を参照してください。

関連項目

AsyncRpt オブジェクト


Auction オブジェクト

このオブジェクトは、サイトにオークション機能を実装させるために使います。このオブジェクトを使うと、簡単なものから複雑なものまでさまざまなルールを使って、サイト上で商品のオークション、入札価格提示の受付、および落札者の決定を行えるようになります。ユーザーは、オークションにかける品物の最低競売価格、最低入札価格、入札開始/終了日、入札価格を増額するときの増分単位、および同位の入札者が複数いる場合の解決方法を設定できます。オークションの参加者に、重要なお知らせを DHTML、HTML、または電子メールで定期的に通知することもできます。

ProgID: | Commerce.Auction (外部作成可能)
COM クラス名: | Auction
タイプ ライブラリ名: | Commerce Server 4.0 Auction Component
DLL 名: | auction.dll
スレッド モデル: | アパートメント

次の表は、Auction オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AuctionID | 文字列 | AuctionID の GUID を格納します。 このプロパティは読み取り専用です。
dtAMT | Date | オークションの実行エンジンが使う日付/時刻スタンプを格納します。 このプロパティは読み取りと書き込みが可能です。
objMessageManager | オブジェクト | エラー メッセージを生成するために使われる MessageManager オブジェクトを格納します。 このプロパティは読み取りと書き込みが可能です。
szBidOrderBy | 文字列 | 同位の入札者が複数いるときに、順位を決めるために使われる並べ替え文字列を格納します。 このプロパティは読み取りと書き込みが可能です。
szBidTableName | 文字列 | Bid テーブルの名前をデータベースに格納します。 このプロパティは読み取りと書き込みが可能です。
szDSN | 文字列 | データベースへの接続文字列を格納します。 このプロパティは読み取りと書き込みが可能です。
szItemTableName | 文字列 | Item テーブルの名前をデータベースに格納します。 このプロパティは読み取りと書き込みが可能です。
szLanguage | 文字列 | エラー メッセージを生成するときに MessageManager オブジェクトが使う言語を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、Auction オブジェクトのメソッドを示しています。

メソッド | 説明
AuctionAddBid | オークションに入札価格を提示したり、入札価格を更新したりします。
AuctionAddItem | Auction データベースに新しいオークション品目を追加します。
AuctionBidNormalize | 入札価格の端数を切り捨てて、入札価格の増分単位の倍数にします。
AuctionDeleteBid | オークションから入札価格を削除します。
AuctionDeleteBids | 特定のオークションから、すべての入札価格を削除します。
AuctionDeleteItem | 特定のオークションから、ある品物とその品物のすべての入札価格を削除します。
AuctionGetBid | 特定のオークション品目について、特定のユーザーが提示した入札価格が含まれた行セットを返します。
AuctionGetBids | あるオークション品目についてのすべての入札価格が含まれた行セットを返します。
AuctionGetItem | オークションに出品されている品物についての行セットを返します。
AuctionGetStatus | オークションに出品中の品物についての行セットを含んでいる Dictionary オブジェクトを返します。
AuctionInit | Auction オブジェクトを初期化します。
AuctionRandomBids | 運用テストを支援するために、オークションに対して、無作為に生成した複数の入札価格を入力します。
AuctionResolve | 現在の設定とルールに基づいて、オークションを終結させます。
AuctionUpdateItem | Auction データベース内にあるオークション品目を更新します。

解説

Auction オブジェクトは、サイトのデータベースに格納される Item テーブルと Bid テーブルに依存しています。また、MessageManager オブジェクトを利用してエラー メッセージを保持します。Auction オブジェクトを初めて使うときまでに、これらのテーブルを作成しておく必要があります。また、Auction オブジェクトがユーザーにエラー メッセージを戻せるようにするために、MessageManager オブジェクトが適切な形で初期化されている必要があります。


Auction.AuctionAddBid

このメソッドは、品物の入札価格を提示したり、更新したりするために使います。入札価格は、オークションの現在のルールに基づいて検証されます。

定義

Function AuctionAddBid(
szAuctionId As String,
szShopperId As String,
szBidName As String,
szEmail As String,
cyBidPrice As Currency,
nDesired As Long,
fTakeLess As Boolean,
cyMinimumBid As Currency,
objErrorList As Object,
Optional bResolve As Boolean
) As Long

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

szShopperId

入札者の一意の ID を含む文字列です。

szBidName

入札者名を含む文字列です。

szEmail

入札者の電子メール アドレスを含む文字列です。

cyBidPrice

入札価格を含む Currency です。

nDesired

品物の希望数量を含む long です。

fTakeLess

品物が希望する数量よりも少なくても入札者が受け入れるかどうかを示す Boolean です。値が False の場合、入札者は希望する数量より量が少ない場合には入札しないことを示します。

cyMinimumBid

最低入札価格を含む Currency です。

objErrorList

MessageManager オブジェクトによって生成されたエラーのリストを含む SimpleList オブジェクトです。

bResolve

AuctionResolve メソッドを呼び出すかどうかを示す Boolean です。値が True の場合、メソッドの bOptimize パラメータが True に設定された状態でメソッドが呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。既定値は True です。

戻り値

メソッドが正常に終了すると、objErrorList オブジェクトに書き込まれたエラー文字列の数を含む long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'lNumErrStrings is a Long
'szAuctionID is a String containing a GUID
'oErrorList is an object

lNumErrStrings = oAuction.AuctionAddBid(szAuctionID, "Bidder123456", szBidName, "Bidder123456@isp.com", 25.00, 5, FALSE, 19.99, oErrorList, TRUE)

関連項目

Auction オブジェクト


Auction.AuctionAddItem

このメソッドは、オークション システムに新しい品物を追加するために使います。

定義

Function AuctionAddItem(
szSKU As String,
cyReservePrice As Currency,
nAvailable As Long,
cyBidIncrement As Currency,
nAuctionType As Long,
cyMinimumBid As Currency,
fSealedBid As Boolean,
fSealedInventory As Boolean,
fActive As Boolean,
dtStartDate As Date,
dtEndDate As Date,
nAutoCloseSeconds As Long,
objErrorList As Object
) As Long

パラメータ

szSKU

品物の一意の ID を含む文字列です。

cyReservePrice

売り手が望む、品物の最低競売価格を含む Currency です。最低競売価格は、最低入札価格より大きくなくてはなりません。

nAvailable

競売する品物の数を含む long です。

cyBidIncrement

品物の入札で、入札価格を増額するときの増額単位を含む Currency です。

nAuctionType

オークションの種類を含む long です。詳細については、"解説" の表を参照してください。

cyMinimumBid

最低入札価格 (入札開始価格) を含む Currency です。

fSealedBid

入札価格を、最低入札価格と比較して確認するかどうかを示す Boolean です。値が True の場合、最低入札価格の確認は省略されます。

fSealedInventory

入札されている品物の総希望数量と、競売されている品物の数とを比較して確認するかどうかを示す Boolean です。値が False の場合、品物を確認することを示します。値が True の場合、確認処理を省略します。入札処理における fTakeLess パラメータは無視されます。

fActive

オークションが進行中かどうかを示す Boolean です。値が True の場合、進行中のオークションであることを示します。値が False の場合、オークションの入札が中断されます。

dtStartDate

品物の入札申し込みの受付開始日時を特定する Date です。

dtEndDate

オークションが終了し、品物が購入可能になる最終日時を特定する Date です。

nAutoCloseSeconds

最後の入札価格を受け付けてから、次の入札までに何秒経過すると、オークションを自動的に終了させるかを示す long です。この値を指定すると、終了期日より前にオークションを終了させることができます。値が 0 の場合は、最後の入札の時刻とは関係なく、設定どおり終了期日になったらオークションを終了させることを示します。

objErrorList

エラー一覧を含む IDispatch インターフェイスです。

戻り値

メソッドが正常に終了すると、objErrorList オブジェクトに書き込まれたエラー文字列の数を含む long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

落札者および落札者の支払金額を決定するための方法は、オークションの種類によって決まります。次の表は、利用可能なオークションの種類とその説明です。

オークションの種類 | 値 | 説明 | 例
落札価格型 | 0 | 落札者は、本人が提示した入札価格を支払って品物を受け取ることができます。品物が複数ある場合には、落札者は、希望した数を本人が入札した価格で受け取ることができます。 | オークションに、ある品物が 2 個出品されています。入札者 A は 10.00 ドルで入札し、入札者 B と入札者 C はそれぞれ 5.00 ドルと 3.00 ドルで入札しました。各人とも品物の購入希望数は1 個です。 入札者 A は品物 1 個を 10.00 ドルで受け取り、入札者 B は 1 個 5.00 ドルで受け取ります。ただし、入札者 A が 1 個 10.00 ドルで 2 個の品物を希望していた場合には、品物は 2 個とも入札者 A に渡ります。
最低落札価格型 | 1 | 落札者は、入札されている品物を、一番低い落札価格を支払って受け取ることができます。 | 状況が "落札価格型" オークションの例と同じだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 5.00 ドルで受け取ります。
第 2 落札価格型 | 2 | 落札者は、次のうちで最も小さい金額を支払います。 入札にもれた価格のうち 1 番高いものと入札価格増額単位との合計、落札価格のうち最も低いもの、または最低競売価格。最低競売価格以上で落札された数量は、入手可能な品物の数量より少ないと仮定しています。 | 状況は "落札価格型" オークションの例と同じで、入札価格の増額単位が 0.50 ドルだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 3.50 ドルで受け取ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'lNumErrStrings is a Long
'dtStartDate is a Date
'dtEndDate is a Date
'oErrors is a list object

lNumErrStrings = oAuction.AuctionAddItem("123456", 2.50, 2, 0.50, 1, 1.50, False, False, True, dtStartDate, dtEndDate, 0, oErrors)

関連項目

Auction オブジェクト


Auction.AuctionBidNormalize

このメソッドは、入札価格を入札価格増額単位の倍数にするために使います。入札価格は、最低入札価格に入札価格増額単位の倍数を加えたものとなり、端数が出た場合は切り捨てられます。

定義

Function AuctionBidNormalize(
cyBidAmount As Currency,
cyBidIncrement As Currency,
cyMinimumBid As Currency
) As Currency

パラメータ

cyBidAmount

入札価格を含む Currency です。

cyBidIncrement

入札価格の増分単位を含む Currency です。

cyMinimumBid

許容される最低の入札価格を含む Currency です。

戻り値

このメソッドが正常に終了すると、端数切り捨て後の入札価格を含む Currency が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' currNormBid is a Currency, the bid amount is $10.50
currNormBid = oAuction.AuctionBidNormalize(10.50, 1.00, 8.00)
' After the call, currNormBid = 10.00

関連項目

Auction オブジェクト


Auction.AuctionDeleteBid

このメソッドは、オークション対象の品物について提示されている入札価格を削除するために使います。

定義

Function AuctionDeleteBid(
szAuctionId As String,
szShopperId As String,
Optional bResolve As Boolean
) As Variant

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

szShopperId

入札者の一意の ID を含む文字列です。

bResolve

AuctionResolve メソッドを呼び出すかどうかを示す Boolean です。値が True の場合、メソッドの bOptimize パラメータが True に設定された状態でメソッドが呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。既定値は True です。

戻り値

戻り値は、将来の使用のために予約されています。戻り値は無視してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'You can treat this function as a subroutine to ignore the return value.
oAuction.AuctionDeleteBid szAuctionId, szShopperId, bResolve

関連項目

Auction オブジェクト


Auction.AuctionDeleteBids

このメソッドは、オークションにかけられている、ある品物についての入札価格をすべて削除するために使います。品物は、オークション データベース内には保持されているので、新しい入札価格が提示されれば受け付けられます。

定義

Function AuctionDeleteBids(
szAuctionId As String,
Optional bResolve As Boolean
) As Variant

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

bResolve

AuctionResolve メソッドを呼び出すかどうかを示す Boolean です。値が True の場合、メソッドの bOptimize パラメータが True に設定された状態でメソッドが呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。既定値は True です。

戻り値

戻り値は、将来の使用のために予約されています。戻り値は無視してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.AuctionDeleteItem

このメソッドは、ある品物およびその品物に対して提示されているすべての入札価格を、オークション データベースから削除するために使います。

定義

Function AuctionDeleteItem(
szAuctionId As String
) As Variant

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

戻り値

戻り値は、将来の使用のために予約されています。戻り値は無視してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.AuctionGetBid

このメソッドは、特定のオークション品目について特定の入札者が提示した入札価格を取得するために使います。

定義

Function AuctionGetBid(
szShopperId As String,
szAuctionId As String
) As Object

パラメータ

szShopperId

入札者の一意の ID を含む文字列です。

szAuctionId

オークションの一意の ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定した入札価格を含む ADODB.Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' rsBid is a Recordset object
rsBid = oAuction.AuctionGetBid(szShopperId, szAuctionId)

関連項目

Auction オブジェクト


Auction.AuctionGetBids

このメソッドは、指定したオークション品目に対して提示されている、すべての入札価格を取得するために使います。

定義

Function AuctionGetBids(
szAuctionId As String,
Optional dtSinceDate As Date
) As Object

パラメータ

szAuctionId

オークション ID を含む文字列です。

dtSinceDate

この日付以降に状態が変化している入札価格だけを返すことを指定するための、省略可能な Date です。状態の変化は、入札価格や計算済みのフィールドが更新されることによって起こります。値が Null の場合、すべての入札価格が返されることを示します。

戻り値

このメソッドが正常に終了すると、指定した入札価格を含む ADODB.Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' rsBids is a Recordset object
rsBids = oAuction.AuctionGetBids(szAuctionId, dtSinceDate)

関連項目

Auction オブジェクト


Auction.AuctionGetItem

このメソッドは、オークションにかけられている品物を取得するために使います。

定義

Function AuctionGetItem(
szAuctionId As String
) As Object

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定した品物を含む ADODB.Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.AuctionGetStatus

このメソッドは、オークションにかけられている品物およびその品物の入札価格に関する情報が含まれた Dictionary オブジェクトを取得するために使います。

定義

Function AuctionGetStatus(
szAuctionId As String
) As Object

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定した品物とその品物に対する入札価格を含む Dictionary オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Dictonary オブジェクトには、rsAuctionItem と rsAuctionBids という 2 つの Recordset オブジェクトが含まれています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.AuctionID

AuctionID プロパティは読み取り専用の文字列で、Auction オブジェクトを一意に識別するための GUID が含まれています。

定義

Property AuctionID() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.AuctionInit

このメソッドは、Auction オブジェクトを初期化するために使います。

定義

Function AuctionInit(
szDSN As String,
szItemTableName As String,
szBidTableName As String,
szBidOrderBy As String,
objMessageManager As Object,
szLanguage As String,
dtAMT As Date
) As Variant

パラメータ

szDSN

Bid テーブルと Item テーブルを持つデータベースへの接続文字列を含む文字列です。

szItemTableName

Item テーブル名を含む文字列です。

szBidTableName

Bid テーブル名を含む文字列です。

szBidOrderBy

入札価格の既定の並べ替え順 (SQL の ORDER BY 句) を含む文字列です。

objMessageManager

MessageManager オブジェクトです。

szLanguage

MessageManager オブジェクトで使う言語を含む文字列です。

dtAMT

タイム スタンプを含む Date です。

戻り値

戻り値は、将来の使用のために予約されています。戻り値は無視してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'szDSN = _
'AppConfig.GetOptionsDictionary("").s_TransactionsConnectionString
'objMessageManager is the MessageManager object stored at application
'scope.
'dtAMT is a timestamp.
'Ignore return value by treating AuctionInit as a subroutine.
oAuction.AuctionInit szDSN, "AuctionItem", "AuctionBid", "modified_date", objMessageManager, "English", dtAMT

関連項目

Auction オブジェクト


Auction.AuctionRandomBids

このメソッドは、運用テストやデモンストレーションなどの目的で、オークションに無作為に生成した入札価格を入力するために使います。

定義

Function AuctionRandomBids(
szAuctionId As String,
fDelete As Boolean,
nNumberBids As Long
) As Variant

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

fDelete

新しい入札価格を追加する前に、以前無作為に生成した入札価格を削除するかどうかを示す Boolean です。値が True の場合、入札価格を削除することを指定します。値が False の場合、入札価格を保存しておくことを指定します。

nNumberBids

追加する無作為生成の入札価格の数を含む long です。

戻り値

戻り値は、将来の使用のために予約されています。戻り値は無視してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

無作為に生成された入札者の名前には、"Random" が割り振られます。入札価格は、少なくとも最低入札価格以上になります。購入希望数は、1 個から入手可能な最大個数までの間で決まります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'szAuctionId is a GUID
oAuction.AuctionRandomBids szAuctionId, FALSE, 25

関連項目

Auction オブジェクト


Auction.AuctionResolve

このメソッドは、オークションの実行エンジンを実行し、オークションの状態を決定するために使います。このメソッドによって、Item と Bid の両テーブルにある計算済みの値が更新されます。

定義

Function AuctionResolve(
szAuctionId As String,
Optional bOptimize As Boolean
) As Variant

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

bOptimize

落札価格の検索をいつ止めるかを決める、省略可能な Boolean です。値が True の場合、落札者が選択されたら落札価格の確認を止めることを示します。値が False の場合、データベース内の全レコードを対象として検索を実行し、落札価格を探すことを示します。既定値は True です。

戻り値

戻り値は、将来の使用のために予約されています。戻り値は無視してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.AuctionUpdateItem

このメソッドは、オークション システム内の既存の品物を更新するために使います。

定義

Function AuctionUpdateItem(
szAuctionId As String,
szSKU As String,
cyReservePrice As Currency,
nAvailable As Long,
cyBidIncrement As Currency,
nAuctionType As Long,
cyMinimumBid As Currency,
fSealedBid As Boolean,
fSealedInventory As Boolean,
fActive As Boolean,
dtStartDate As Date,
dtEndDate As Date,
nAutoCloseSeconds As Long,
objErrorList As Object,
Optional bResolve As Boolean
) As Long

パラメータ

szAuctionId

オークションの一意の ID を含む文字列です。

szSKU

品物の一意の ID を含む文字列です。

cyReservePrice

売り手が望む、品物の最低競売価格を含む Currency です。最低競売価格は、最低入札価格より大きくなくてはなりません。

nAvailable

競売する品物の数を含む long です。

cyBidIncrement

品物の入札で、入札価格を増額するときの増額単位を含む Currency です。

nAuctionType

オークションの種類を含む long です。詳細については、"解説" を参照してください。

cyMinimumBid

最低入札価格 (入札開始価格) を含む Currency です。

fSealedBid

入札価格を、最低入札価格と比較して確認するかどうかを示す Boolean です。値が True の場合、最低入札価格の確認は省略されます。値が False の場合、最低入札価格と比較しての確認が実行されます。

fSealedInventory

入札されている品物の総希望数量と、競売されている品物の数とを比較して確認するかどうかを示す Boolean です。値が True の場合、確認処理を省略します。入札処理における fTakeLess パラメータは無視されます。値が False の場合、入手可能な品物の数と比較しての確認が実行されます。

fActive

オークションが進行中かどうかを示す Boolean です。値が True の場合、オークションが進行中であることを示します。値が False の場合、オークションの入札が中断されます。

dtStartDate

品物の入札申し込みの受付開始日時を特定する Date です。

dtEndDate

オークションが終了し、品物が購入可能になる最終日時を特定する Date です。

nAutoCloseSeconds

最後の入札価格を受け付けてから、次の入札までに何秒経過すると、オークションを自動的に終了させるかを示す long です。この値を指定すると、終了期日より前にオークションを終了させることができます。値が 0 の場合は、最後の入札の時刻とは関係なく、設定どおり終了期日になったらオークションを終了させることを示します。

objErrorList

エラー一覧を含む IDispatch インターフェイスです。

bResolve

AuctionResolve メソッドを呼び出すかどうかを示す Boolean です。値が True の場合、メソッドの bOptimize パラメータが False に設定された状態でメソッドが呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。既定値は True です。

戻り値

メソッドが正常に終了すると、objErrorList オブジェクトに書き込まれたエラー文字列の数を含む long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

落札者および落札者の支払金額を決定するための方法は、オークションの種類によって決まります。次の表は、利用可能なオークションの種類とその説明です。

オークションの種類 | 値 | 説明 | 例
落札価格型 | 0 | 落札者は、本人が提示した入札価格を支払って品物を受け取ることができます。品物が複数ある場合には、落札者は、希望した数を本人が入札した価格で受け取ることができます。 | オークションに、ある品物が 2 個出品されています。入札者 A は 10.00 ドルで入札し、入札者 B と入札者 C はそれぞれ 5.00 ドルと 3.00 ドルで入札しました。各人とも品物の購入希望数は1 個です。 入札者 A は品物 1 個を 10.00 ドルで受け取り、入札者 B は 1 個 5.00 ドルで受け取ります。ただし、入札者 A が 1 個 10.00 ドルで 2 個の品物を希望していた場合には、品物は 2 個とも入札者 A に渡ります。
最低落札価格型 | 1 | 落札者は、入札されている品物を、一番低い落札価格を支払って受け取ることができます。 | 状況が "落札価格型" オークションの例と同じだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 5.00 ドルで受け取ります。
第 2 落札価格型 | 2 | 落札者は、次のうちで最も小さい金額を支払います。 入札にもれた価格のうち 1 番高いものと入札価格増額単位との合計、落札価格のうち最も低いもの、または最低競売価格。最低競売価格以上で落札された数量は、入手可能な品物の数量より少ないと仮定しています。 | 状況は "落札価格型" オークションの例と同じで、入札価格の増額単位が 0.50 ドルだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 3.50 ドルで受け取ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' lNumErrStrings is a Long
lNumErrStrings = oAuction.AuctionUpdateItem(szAuctionId, szSKU, cyReservePrice, nAvailable, cyBidIncrement, nAuctionType, cyMinimumBid, fSealedBid, fSealedInventory, fActive, dtStartDate, dtEndDate, nAutoCloseSeconds, objErrorList, bResolve)

関連項目

Auction オブジェクト


Auction.dtAMT

dtAMT プロパティは読み取りと書き込みが可能な Date で、オークションに対する操作にタイムスタンプを付けるために使われます。

定義

Property dtAMT() As Date

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.objMessageManager

objMessageManager プロパティは読み取りと書き込みが可能な MessageManager オブジェクトで、入札者にエラー メッセージを返すために使われます。

定義

Property objMessageManager() As Object

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.szBidOrderBy

szBidOrderBy プロパティは読み取りと書き込みが可能な文字列で、同位の入札者が複数いる場合に順位を決めるために使われます。

定義

Property szBidOrderBy() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

この文字列には Bid テーブルから取得したフィールドが含まれています。このフィールドは、1 つの品物について同じ入札価格が複数提示された場合に、オークションの落札者を選択するための選択基準として使われます。この文字列は、落札者を選択するためにデータベースに渡される SQL 文字列の ORDER BY 句に追加されます。既定の文字列は "desired, modified_date" です。これは、2 人の入札者が同じ価格を提示した場合、より多くの品物を購入しようとした入札者が落札することを意味します。同位の入札者がまだ複数いる場合は、最初にその入札価格を提示した人が落札します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.szBidTableName

szBidTableName プロパティは読み取りと書き込みが可能な文字列で、データベースに Bid テーブルの名前を格納するために使われます。

定義

Property szBidTableName() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Bid テーブルには、オークション品目に対して提示された入札価格に関する情報が含まれています。サイト データベースにおけるこのテーブルの既定の名前は、Auction_bid です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.szDSN

szDSN プロパティは読み取りと書き込みが可能な文字列で、データベースへの接続文字列を格納するために使われます。

定義

Property szDSN() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

接続文字列は既定では空文字列であるため、Auction オブジェクトを使う前にあらかじめ設定しておく必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.szItemTableName

szItemTableName プロパティは読み取りと書き込みが可能な文字列で、データベースに Item テーブルの名前を格納するために使われます。

定義

Property szItemTableName() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Item テーブルには、オークションで入手可能な品物に関する情報が含まれています。サイト データベースにおけるこのテーブルの既定の名前は、Auction_item です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


Auction.szLanguage

szLanguage プロパティは読み取りと書き込みが可能な文字列で、エラー メッセージ生成時に MessageManager オブジェクトが使用する言語を格納するために使われます。

定義

Property szLanguage() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


AuthManager オブジェクト

このオブジェクトは、ユーザーの識別と認証を実行し、ユーザーのセキュリティ情報を管理するために使います。このオブジェクトには、cookie を使う参照と cookie を使わない参照のメソッドも含まれています。

ProgID: | Commerce.AuthManager (外部作成可能)
COM クラス名: | MSCSAuthManager
タイプ ライブラリ名: | Microsoft Commerce 2000 AuthManager Type Library
DLL 名: | mscsauth.dll
スレッド モデル: | 両方

次の表は、AuthManager オブジェクトのメソッドを示しています。

メソッド | 説明
GenerateEncryptionKey | cookie データの管理用に暗号化キーを生成します。このメソッドは管理コンポーネントまたはセットアップ コンポーネントだけで使用します。
GetProperty | cookie またはクエリ文字列に格納されている指定のカスタム プロパティを取得します。
GetURL | 省略可能な名前と値の組み合わせを含む Uniform Resource Locator (URL) を生成します。
GetUserID | 現在のユーザーの一意の ID を取得します。
GetUserIDFromCookie | cookie からユーザー ID を取得します。
Initialize | 必要なサイト構成リソースのプロパティをすべてキャッシュして、AuthManager オブジェクトを初期化します。
IsAuthenticated | ユーザーが現在、認証されているかどうかを示します。
Refresh | いずれかのプロパティを変更してから、キャッシュされたサイト構成リソースのプロパティを更新します。
SetAuthTicket | 登録済みユーザー用に暗号化された MSCSAuth チケットを生成します。
SetProfileTicket | 匿名ユーザー用に暗号化された MSCSProfile チケットを生成します。
SetProperty | プロパティと値の組み合わせをチケットが含まれる cookie またはクエリ文字列に追加します。
SetUserID | チケットにユーザー ID プロパティを設定します。
UnInitialize | サイト固有の構成リソースのプロパティをキャッシュから削除します。
URLArgs | URL エンコード処理されたクエリ文字列をパラメータ名およびパラメータ値の配列から生成します。
URLShopperArgs | URL エンコード処理されたクエリ文字列をパラメータ名およびパラメータ値の配列から生成し、ユーザーのチケットを文字列に追加します。

解説

AuthManager オブジェクトは、ユーザーを識別してユーザー認証に使う情報を集めます。このオブジェクトのメソッドとプロパティは、cookie やエンコードされた URL 文字列の内容を制御し、かつその内容へアクセスします。

Commerce Server 2000 のコンテキストでは、認証にチケットを使います。チケットはプロパティと値を組み合わせた文字列で、ユーザーに関する情報を提供します。2 種類のチケットがサポートされています。MSCSAuth という認証チケットは登録済みユーザーに、MSCSProfile というプロファイル チケットは匿名ユーザーに使われます。このコンテキストで登録済みユーザーとは、サイトに識別に使う情報を提供したユーザーのことです。

ユーザーは両方の種類のチケットを持てます。この場合、MSCSAuth チケットが優先されます。

チケットには一意のユーザー ID が含まれます。認証チケットには前回ログインした時刻と時間ウィンドウが含まれます。cookie を許可する匿名ユーザーの場合、MSCSProfile チケットはユーザーのローカル コンピュータに固定 cookie として格納されます。cookie を許可する登録済みユーザーの場合、MSCSAuth チケットはセッション Cookie に格納され、セッションまたは指定された時間ウィンドウの継続中は有効で、その後削除されます。

ユーザーが cookie を許可しない場合、チケットはエンコードされた URL 文字列に格納されます。URL 文字列は、ページ間やサイト間でユーザー情報を渡すために使われます。ただし、すべての URL およびクエリ文字列が AuthManager オブジェクトで生成されている場合に限られます。

AuthManager オブジェクトは、チケットが cookie に格納されていても URL クエリ文字列に格納されていても、チケットに対して透過的なインターフェイスを提供し、チケットの暗号化と複合化を処理してセキュリティを保証します。

AuthManager オブジェクトは、Active Server Pages (ASP) 固有のオブジェクトに依存しているため、ASP を介してのみ使うことを目的としています。AuthManager オブジェクトは個々のユーザー セッションに依存しているため、アプリケーション スコープ内には作成しないでください。AuthManager オブジェクトは、それぞれの ASP ページで作成および破棄する必要があります。

関連項目

サイト セキュリティ オブジェクト

サイト セキュリティとフィルタを使用する


AuthManager.GenerateEncryptionKey

このメソッドは、チケットに使われる cookie およびクエリ文字列データを、暗号化および暗号解読するための暗号化キーを生成するために使います。

定義

Function GenerateEncryptionKey() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、暗号化キーを含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_GENERATE_ENCRYPTIONKEY_FAILED | &HC1004C26 | CryptoAPI. を使って暗号化キーを生成している間にエラーが発生しました。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、セットアップおよびインストール中の Commerce Server Site Packager コンポーネントで使われ、後で暗号化キーを変更するために使うこともできます。

暗号化キーは、管理データベースにサイト構成リソースのプロパティの一部として格納されます。

このメソッドは、C++ アプリケーションで使われる数少ない AuthManager メソッドの 1 つです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


AuthManager.GetProperty

このメソッドは、指定されたカスタム プロパティの値を現在のユーザー チケットから取得するために使います。

定義

Function GetProperty(
enumTicketType As EnumMSCS_TicketType,
propName As String
) As Variant

パラメータ

enumTicketType

[in] プロパティを含むチケットの種類を示す EnumMSCS_TicketType です。

propName

[in] 検索するプロパティの名前を含む文字列です。

戻り値

このメソッドが正常が終了すると、現在のユーザー チケット内で指定されているプロパティの値を含む Variant が返されます。プロパティが見つからない場合は、空の Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_PROPERTY | &HC1004C27 | カスタム プロパティの名前または値が無効です。
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
E_UPM_AUTHMANAGER_TICKET_NOT_SET | &HC1004C25 | 必要なチケットが設定されていません。
MSG_UPM_AUTH_PROPNOTFOUND_ERROR | &HC1004C00 | 必要なプロパティがチケットにありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

SetProperty メソッドは、カスタム プロパティ値を現在のユーザーのチケットに設定するために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sPasswordValue is a String
' oAuthManager is a Commerce AuthManager object

sPasswordValue = oAuthManager.GetProperty(enumMSCS_AuthTicketType, _
 "Password")

関連項目

AuthManager オブジェクト

AuthManager.SetProperty


AuthManager.GetURL

このメソッドは、エンコードされた Uniform Resource Locator (URL) 文字列を生成するために使います。

定義

Function GetURL(
FileName As String,
fCookie As Boolean,
fSecure As Boolean,
Optional pVarURLParameters As Variant,
Optional pVarURLValues As Variant
) As String

パラメータ

FileName

[in] URL 内で参照するファイル名を含む文字列です。

fCookie

[in] ユーザーが cookie を許容するかどうかを示す Boolean です。

fSecure

[in] URL が保護されているかどうかを示す Boolean (HTTPS 対 HTTP) です。

pVarURLParameters

[in, optional] URL に含めるパラメータ名のリストを含む SafeArray です。

pVarURLValues

[in, optional] パラメータ名に対応する値を含む SafeArray です。

戻り値

このメソッドが正常に終了すると、エンコードされた URL を含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

エンコードされた URL には、ホスト名 (サイト構成から取得)、ファイルが格納される仮想ディレクトリ (スクリプト コンテキストにより決定)、ファイルの名前、cookie サポートおよびセキュリティのフラグ、省略可能なカスタム名とカスタム値の組み合わせ (たとえば、"SKU" とショッピング カートにある品物の在庫保管単位 (SKU) の値) が含まれます。

cookie が許可されていない場合、cookie のフラグは False に設定され、チケットが URL に追加されます。

注

  • キャッシュされた HTML セグメント (追加されたチケットを持つ URL を含む) が取得されている場合、 チケットは正しいものと置き換える必要があります (現在のユーザー コンテキストについて)。

参照先のホストが保護されている場合、保護付きフラグは True に設定されます。

URLArgsメソッドまたは URLShopperArgs メソッドは、名前と値の組み合わせから URL クエリ文字列をエンコードするために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' saParameterNames and saParameterValues are SafeArrays
' sURL is a string
' oAuthManager is a Commerce AuthManager object

saParameterNames(0) = "sku"
saParameterValues(0) = "12345"
sURL = oAuthManager.GetURL("filename.asp", False, True, _
 saParameterNames, saParameterValues)

' sURL = http://host_name/virtual_directory/filename.asp?sku=12345&MSCSAuth=Q0H4SE915ASH2KC000Q79QB1E

関連項目

AuthManager オブジェクト


AuthManager.GetUserID

このメソッドは、チケットに格納されているユーザー ID を取得するために使います。

定義

Function GetUserID(
enumTicketType As EnumMSCS_TicketType
) As Variant

パラメータ

enumTicketType

ユーザー ID を含むチケットのタイプを示す EnumMSCS_TicketType です。

戻り値

このメソッドが正常に終了すると、ユーザー ID が設定された Variant が返されます。適切なチケット タイプが見つからないか、ユーザー ID がない場合、メソッドは Null を返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

チケットが MSCSAuth チケットで、かつ期限が切れている場合、このチケットは削除され、戻り値ではチケットがなかったように表されます。

チケットが MSCSAuth チケットで、期限が切れてから 5 分以内の場合、前回のログイン時刻を現在の時刻に更新し、チケットの有効期間を延長できます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vUserID is a Variant
' oAuthManager is a Commerce AuthManager object

vUserID = oAuthManager.GetUserID(enumMSCS_ProfileTicketType)

関連項目

AuthManager オブジェクト


AuthManager.GetUserIDFromCookie

このメソッドは、cookie に格納されているユーザー ID を取得するために使います。

定義

Function GetUserIDFromCookie(
cookieData As String
) As String

パラメータ

cookieData

[in] cookie を含む文字列です。

戻り値

このメソッドが正常に終了すると、ユーザー ID を含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

cookie データは必ず URL にデコードされます。

Commerce Server 2000 の分析アプリケーションでは、このメソッドを使って、インターネット インフォメーション サービス (IIS) のログで検出された cookie からユーザー ID を抽出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


AuthManager.Initialize

このメソッドは、AuthManager オブジェクトを初期化するために使います。

定義

Sub Initialize(
bstrSiteName As String
)

パラメータ

bstrSiteName

[in] Commerce Server 2000 Web サイトの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AuthManager オブジェクトを作成したら、ほかの AuthManager オブジェクトのメソッドを使う前に、このオブジェクトを有効なサイト名に正しく初期化する必要があります。

AuthManager オブジェクトがこのメソッドを初めて使うときは、AuthManager オブジェクトは管理データベースに接続し、SiteConfig オブジェクトを使ってサイト構成データをキャッシュします。後続の AuthManager オブジェクトがこのメソッドを呼び出す場合は、データはキャッシュから読み取られます。

Refresh メソッドは、いずれかのプロパティを変更してからサイト構成データを更新するために使います。

UnInitialize メソッドは、サイトが有効でなくなったときに、サイト固有の構成リソースのプロパティをキャッシュから削除するために使います。

Global.asa ファイル内の AuthManager オブジェクトのインスタンス作成および初期化は、パフォーマンス上の理由から、オブジェクトのインスタンスが少なくとも 1 つは存在すること、またダイナミック リンク ライブラリ (DLL) がメモリに読み込まれていて、インターネット インフォメーション サービス (IIS) によってフラッシュされていないことを確かめるために行うことをお勧めします。この AuthManager オブジェクトは、ほかの場所では使わないでください。AuthManager オブジェクトの個々のインスタンスは、それぞれの ASP ページ上で作成および破棄する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


AuthManager.IsAuthenticated

このメソッドは、現在のユーザーが有効な MSCSAuth チケットを持っているかどうかを判断するために使います。このメソッドでは、ユーザーが指定された期間内に認証されているかどうかを判断することもできます。

定義

Function IsAuthenticated(
Optional TimeWindow As Long
) As Boolean

パラメータ

TimeWindow

[in, optional, defaultvalue (0)] 時間間隔を分単位で含む long です。

戻り値

このメソッドが正常に終了すると、現在のユーザーの認証ステータスを示す Boolean が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

MSCSAuth チケットには、ユーザーが前回ログインした時刻と有効期間を示す有効な時間ウィンドウが含まれています。チケットが生成されたときに、前回のログイン以降の時間が SetAuthTicket メソッドで指定された時間ウィンドウを超えた場合、チケットは有効ではなくなります。

このメソッドの省略可能なパラメータである TimeWindow を使うと、ユーザーの前回のログインから有効期間が切れるまでの時間を、SetAuthTicket メソッドで指定された時間ウィンドウよりも短く設定することができます。既定値のゼロ (0) にすると、SetAuthTicket メソッドで指定したものと同じ値を、時間ウィンドウに設定したことになります。

ユーザーが MSCSAuth チケットを持っていない場合、チケットが無効な場合、またはユーザーの前回のログイン以降の時間が指定された時間ウィンドウを超えた場合、このメソッドは False を返します。

チケットの前回のログイン時刻が現在の時刻に更新されてから 5 分以内の場合、チケットの有効期間を延長できます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


AuthManager.Refresh

このメソッドは、いずれかのプロパティを変更してから、キャッシュされたサイト構成リソースのプロパティを更新するために使います。

定義

Sub Refresh(
bstrSiteName As String
)

パラメータ

bstrSiteName

サイト名を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、認証に関連するいずれかのサイト構成リソースのプロパティを変更した直後に呼び出す必要があります。また、このメソッドは、Active Server Pages (ASP) と Microsoft Visual Basic Scripting Edition (VBScript) のファイルを切り替えて、サイト構成のプロパティを更新するときにも使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


AuthManager.SetAuthTicket

このメソッドは、登録済みユーザー用に暗号化された MSCSAuth チケットを設定するために使います。

定義

Sub SetAuthTicket(
UserID As String,
fCookieSupport As Boolean,
TimeWindow As Long
)

パラメータ

UserID

[in] 現在のユーザーの一意な ID を含む文字列です。

fCookieSupport

[in] セッション cookie がサポートされているかどうかを示す Boolean です。

TimeWindow

[in] MSCSAuth チケットが有効である時間ウィンドウを分単位で定義する long です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | &HC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ユーザーが前回ログインした時刻と、前回のログインからのチケットの有効期間がチケットに保存されています。

ユーザーの MSCSAuth チケットが既に存在し、空の文字列がユーザーの ID (UserID) として渡された場合、既存のチケットは削除されます。

現在のユーザーが匿名の場合、SetProfileTicket メソッドを使って MSCSProfile チケットを生成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAuthManager is a Commerce AuthManager object

oAuthManager.SetAuthTicket "JoeUser@microsoft.com", True, 30

関連項目

AuthManager オブジェクト

AuthManager.IsAuthenticated


AuthManager.SetProfileTicket

このメソッドは、匿名ユーザーの MSCSProfile チケットを設定するために使います。匿名ユーザーはサイトには登録されません。

定義

Sub SetProfileTicket(
UserID As String,
fCookieSupport As Boolean
)

パラメータ

UserID

[in] 現在のユーザーの一意な ID を含む文字列です。

fCookieSupport

[in] 永続的な cookie がサポートされているかどうかを示す Boolean です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | &HC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ユーザーの MSCSProfile チケットが既に存在し、空の文字列がユーザーの ID (UserID) に渡された場合、既存のチケットは削除されます。

現在のユーザーを登録済みの場合、SetAuthTicket メソッドを使って MSCSAuth チケットを生成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAuthManager is a Commerce AuthManager object

oAuthManager.SetProfileTicket "74A38551-D6D8-FFD0-12BF-0A20C90DC8D1", True

関連項目

AuthManager オブジェクト

AuthManager.IsAuthenticated


AuthManager.SetProperty

このメソッドは、カスタム プロパテイの名前と値の組み合わせをユーザーの現在のチケットに設定するために使います。

定義

Sub SetProperty(
EnumMSCS_TicketType enumTicketType,
propName As String,
propVal As String
)

パラメータ

enumTicketType

[in] チケットの種類を示す EnumMSCS_TicketType です。

propName

[in] プロパティの名前を含む文字列です。

propVal

[in] 指定されたプロパティに対応する値を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | &HC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHID_INVALID_PROPERTY | &HC1004C27 | カスタム プロパティの名前または値が無効です。
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetProperty メソッドは、現在のチケットからカスタム プロパテイ値を取得するために使います。

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

注

  • "Ticket" という名前のプロパティは、AuthManager オブジェクトが Commerce Server 2000 関連の情報を保存するために使います。カスタム プロパティを作成するときは、プロパティ名を "Ticket" に設定しないでください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAuthManager is a Commerce AuthManager object

oAuthManager.SetProperty enumMSCS_AuthTicketType, "Password", "MyPassword123"

関連項目

AuthManager オブジェクト

AuthManager.GetProperty


AuthManager.SetUserID

このメソッドは、チケットのユーザー ID プロパティを変更するために使います。

定義

Sub SetUserID(
enumTicketType As EnumMSCS_TicketType,
newUserID As String
)

パラメータ

enumTicketType

ユーザー ID を含むチケットのタイプを示す EnumMSCS_TicketType です。

newUserID

現在のユーザーの一意な ID を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | &HC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ユーザー ID の値は、登録済みユーザーのログオン名、匿名ユーザーのグローバル一意識別子 (GUID) 、または任意の一意な値にすることができます。

適切なチケットが既に存在する場合、ユーザー ID の値は更新されます。チケットが既に存在し、空の文字列がユーザー ID の値 (newUserID) として渡された場合、既存のチケットは削除されます。

チケットが存在しない場合は、残りのデータの既定値でチケットが作成されます。

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oAuthManager is a Commerce AuthManager object

oAuthManager.SetUserID enumMSCS_AuthTicketType, "JoeUser@microsoft.com"

関連項目

AuthManager オブジェクト


AuthManager.UnInitialize

このメソッドは、サイトが有効でなくなったときに、キャッシュからサイト固有の構成リソースのプロパティを削除するために使います。

定義

Sub UnInitialize(
bstrSiteName As String
)

パラメータ

bstrSiteName

[in] サイトの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、指定されたサイトから AuthManager オブジェクトのキャッシュを切断するために呼び出す必要があります。

Initialize メソッドは、サイト構成リソースのプロパティをキャッシュに読み込むために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


AuthManager.URLArgs

このメソッドは、名前と値を組み合わせたクエリ文字列をエンコードした Uniform Resource Locator (URL) を生成するために使います。

定義

Function URLArgs(
pVarURLParameters As Variant,
pVarURLValues As Variant
) As String

パラメータ

pVarURLParameters

[in] パラメータ名を含む SafeArray です。

pVarURLValues

[in] パラメータ名に対応する値を含む SafeArray です。

戻り値

このメソッドが正常に終了すると、エンコードされた URL クエリ文字列を含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、パラメータの名前と値の組み合わせを URL にエンコードされた文字列に関連付けます。パラメータ名と値を含む 2 つの配列のサイズが同じでない場合、このメソッドは失敗します。

URLShopperArgs メソッドは、同じ URL エンコードを実行し、チケットが設定されている場合はチケットをクエリ文字列に追加します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' saParameterNames and saParameterValues are SafeArrays
' sURLArg is a string
' oAuthManager is a Commerce AuthManager object

saParameterNames(0) = "sku1"
saParameterNames(1) = "sku3"
saParameterValues(0) = "12345"
saParameterValues(1) = "98765"
sURLArg = oAuthManager.URLArgs(saParameterNames, saParameterValues)

' sURLArg = "sku1=12345&sku3=98765"

関連項目

AuthManager オブジェクト

AuthManager.URLShopperArgs


AuthManager.URLShopperArgs

このメソッドは、名前と値を組み合わせたクエリ文字列をエンコードした Uniform Resource Locator (URL) を生成し、チケットが設定されている場合はチケットをクエリ文字列に追加するために使います。

定義

Function URLShopperArgs(
pVarURLParameters As Variant,
pVarURLValues As Variant
) As String

パラメータ

pVarURLParameters

[in] パラメータ名を含む SafeArray です。

pVarURLValues

[in] パラメータ名に対応する値を含む SafeArray です。

戻り値

このメソッドが正常に終了すると、暗号化された URL 文字列を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | &HC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | &HC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、パラメータの名前と値の組み合わせを URL にエンコードされた文字列に関連付け、チケットを追加します。これは cookie を使わないショッピングのサポートに便利です。パラメータと値を含む 2 つの配列のサイズが同じでない場合、このメソッドは失敗します。

両方の種類のチケットが存在する場合、MSCSAuth チケットが優先されます。

URLArgs メソッドは、チケットを追加せずにパラメータと値の組み合わせを URL にエンコードするために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' saParameterNames and saParameterValues are SafeArrays
' sURLShopArg is a string
' oAuthManager is a Commerce AuthManager object

saParameterNames(0) = "sku1"
saParameterNames(1) = "sku3"
saParameterValues(0) = "12345"
saParameterValues(1) = "98765"
sURLShopArg = oAuthManager.URLShopperArgs(saParameterNames, saParameterValues)

' sURLShopArg = "sku1=12345&sku3=98765&MSCSAuth=Q0H4SE915ASH2KC000Q79QB1E"

関連項目

AuthManager オブジェクト

AuthManager.SetProperty

AuthManager.SetAuthTicket

AuthManager.SetProfileTicket

AuthManager.URLArgs


BizDeskSecurity オブジェクト

このオブジェクトは、Commerce Server ビジネス デスクのナビゲーション ウィンドウにモジュールを表示するかどうかを決定するために使います。

ProgID: | Commerce.BizDeskSecurity (外部作成可能)
COM クラス名: | BizDeskSecurity
タイプ ライブラリ名: | Microsoft Commerce 2000 BizDesk Security Type Library
DLL 名: | BDSecurity.dll
スレッド モデル: | フリー

次の表は、BizDeskSecurity オブジェクトのメソッドを示しています。

メソッド | 説明
CanUserAccess | 指定されたファイルへの読み取りアクセス権をユーザーが持っているかどうかを判定します。

解説

ビジネス デスク フレームワークは、このオブジェクトを呼び出すことによって、現在のユーザーにどのモジュールを表示するのかを決定します。

関連項目

サイト セキュリティ オブジェクト


BizDeskSecurity.CanUserAccess

このメソッドは、指定した Commerce Server ビジネス デスク モジュールの読み取りアクセス権を現在のユーザーが持っているかどうかを判定するために使います。

定義

Function CanUserAccess(
bstrPath As String,
) As Boolean

パラメータ

bstrPath

ビジネス デスク モジュールのファイル名とパスを含む文字列です。

戻り値

このメソッドが正常に終了すると、True または False に設定された Boolean が返されます。値が True の場合、指定されたファイルへの読み取りアクセス権を現在のユーザーが持っていることを示します。値が False の場合は、指定されたファイルへの読み取りアクセス権を現在のユーザーが持っていないことを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

指定したビジネス デスク モジュールの読み取りアクセス権をユーザーが持っているかどうかは、ファイルのアクセス制御リスト (ACL) に設定されているエントリによって決まります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

' bAccess is a Boolean
' oBizDeskSecurity is a Commerce.BizDeskSecurity object
' CatalogEditor.asp is an ASP page corresponding to a Business Desk module

bAccess = oBizDeskSecurity.CanUserAccess("CatalogEditor.asp")

関連項目

BizDeskSecurity オブジェクト


CacheManager オブジェクト

このオブジェクトは、データ キャッシュのコレクションを設定して利用するために使います。各データ キャッシュは、Dictionary オブジェクトまたは LRUCache オブジェクトのいずれかになります。どちらを使うかは、CacheObjectProgID プロパティを設定することで指定できます。

ProgID: | Commerce.CacheManager (外部作成可能)
COM クラス名: | CacheManager
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、CacheManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AppUrl | 文字列 | アプリケーションの完全な URL (Uniform Resource Locator) を格納します。 このプロパティは読み取りと書き込みが可能です。
CacheObjectProgId | 文字列 | CacheManager オブジェクトの内部でキャッシュ機能を使うための、オブジェクトのプログラム ID (ProgID) を格納します。GetCache メソッドによって返されるオブジェクトの種類を決定します。 このプロパティは読み取りと書き込みが可能です。
LoaderConfig | IDispatch | ローダー コンポーネントに渡される構成 Dictionary オブジェクトを格納します。 このプロパティは読み取りと書き込みが可能です。
LoaderProgId | 文字列 | データ キャッシュ作成およびデータ格納に使われるコンポーネントの ProgID を格納します。 このプロパティは読み取りと書き込みが可能です。
RefreshInterval | long | キャッシュ自動更新の実行間隔 (秒) を格納します。 このプロパティは読み取りと書き込みが可能です。
RetryInterval | long | キャッシュの読み込みに失敗してから読み込みを再試行するまでの、待機時間 (秒) を格納します。 このプロパティは読み取りと書き込みが可能です。
WriterConfig | IDispatch | ライタ コンポーネントに渡される構成 Dictionary オブジェクトを格納します。 このプロパティは読み取りと書き込みが可能です。
WriterProgId | 文字列 | 前回の更新後から蓄積されているデータをキャッシュから取得するためのライタ コンポーネントの ProgID を格納します。蓄積され得るデータの一例としては、広告イベント データがあります。 このプロパティは読み取りと書き込みが可能です。

次の表は、CacheManager オブジェクトのメソッドを示しています。

メソッド | 説明
GetCache | 指定されたデータ キャッシュ名に関連付けられているデータ キャッシュ Dictionary オブジェクトを取得します。
RefreshCache | キャッシュを同期させるための更新を直ちに実行します。

関連項目

汎用プログラミングの概念

カスタム キャッシュ コンポーネントを実装するためのコード


CacheManager.AppUrl

AppUrl プロパティは読み取りと書き込みが可能な文字列で、アプリケーションの完全な URL (Uniform Resource Locator) を含んでいます。

定義

Property AppUrl() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティの既定値は、現行のインターネット インフォメーション サービス (IIS) 5.0 アプリケーションの URL です。IIS アプリケーションを起動した後、最初にアクセスしたときに使った URL によっては、この URL に "localhost" という特殊なホスト名が含まれていることがあります。その場合は、外部からアクセスすることができません。このため、このプロパティに対しては、明示的に IIS アプリケーションの完全な URL を設定することをお勧めします。

キャッシュごとに設定される CacheManager オブジェクトのそのほかのプロパティとは異なり、AppUrl プロパティはグローバルなプロパティです。AppUrl プロパティの通常の用途は、Web サーバー ファームで実行されているキャッシュをすべて登録することです。これにより、管理者がキャッシュを明示的に登録しなくてもキャッシュを管理できます。Commerce Server ビジネス デスクのキャンペーン発行モジュールは、この例です。

キャッシュ オブジェクトが Dictionary オブジェクトである場合、このプロパティの値は、キャッシュが更新されるたびに CacheLoader オブジェクトと CacheWriter オブジェクトに渡されます。値は Dictionary オブジェクトの _AppUrl キーに挿入されます。

関連項目

CacheManager オブジェクト


CacheManager.GetCache

このメソッドは、指定したキャッシュ名を持つ Dictionary オブジェクトまたは LRUCache オブジェクトを取得するために使います。

定義

Function GetCache(
bstrName As String
) As IDispatch

パラメータ

bstrName

取得するキャッシュの名前を含む文字列です。

戻り値

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、リソースの消費を少なくし、高速に動作するよう設計されています。通常は、任意の指定 ASP ページ上で何度も呼び出されます。

GetCache メソッドまたは RefreshCache メソッドを初めて呼び出したとき、データ キャッシュ オブジェクトが作成され、そこにデータを取り込むための構成済み CacheLoader コンポーネントが呼び出されます。その後に GetCache メソッドを呼び出すと、同じキャッシュ オブジェクトか、キャッシュ更新時に作成された新しいキャッシュ オブジェクトが返されます。

特定のキャッシュに対して、GetCache メソッドの最初の呼び出しで更新に失敗したときは、同じキャッシュに対して多くの GetCache メソッド呼び出しが行われているので、CacheManager オブジェクトはすぐには更新を再試行しません。これは、データベース接続が一時的に利用できなくなるなど、タイムアウトの繰り返し発生によるシステム障害を回避するためです。この障害シナリオでは、以降に GetCache メソッドを呼び出すと、キャッシュ読み込み不能を示すエラーが返されます。更新時期に達するまで時間が経過するか、RefreshCache メソッドが明示的に呼び出されるまで更新は再試行されません。

キャッシュが正常に作成された後に更新が失敗した場合、更新が成功するまでは既存のキャッシュ オブジェクトが返されます。CacheManager オブジェクトを使うことで、可用性の高いキャッシュ データを利用できますが、それにはキャッシュ データを常に最新の状態に保っておく必要があります。

例

'oMyCache is an object
'strMyCacheName is a String containing the name of an existing cache.

Set oMyCache = myCacheManager.GetCache(strMyCacheName)

関連項目

CacheManager オブジェクト


CacheManager.CacheObjectProgId

CacheObjectProgId プロパティは、読み取りと書き込みが可能な文字列で、CacheManager オブジェクトのキャッシュ機能を利用するために内部で使われるオブジェクトの名前を含んでいます。GetCache メソッドによって返されるオブジェクトの種類も、このプロパティによって決まります。

定義

Property CacheObjectProgId(
bstrName As String
) As String

パラメータ

bstrName

キャッシュ オブジェクトの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

既定では、CacheManager オブジェクトのこのプロパティの値は "Commerce.Dictionary" と設定されています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CacheManager オブジェクト


CacheManager.LoaderConfig

LoaderConfig プロパティは、ローダー コンポーネント用の構成情報が含まれる Dictionary オブジェクトへの参照で、読み取りと書き込みが可能です。

定義

Property LoaderConfig(
bstrName As String
) As IDispatch

パラメータ

bstrName

ローダー コンポーネント構成情報を提供または取得するデータ キャッシュの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、特定のローダー コンポーネント用の構成情報が含まれる Dictionary オブジェクトです。このプロパティは、関連付けられたデータ キャッシュを読み込むためにローダー コンポーネントが作成されたとき、そのローダー コンポーネントに渡されます。このプロパティを設定すると、ディクショナリは軽度に複製され、その複製されたディクショナリが CacheManager オブジェクトに格納されます。これは、単にディクショナリへの参照を格納するやり方とは対照的なものです。軽度の複製とは、ディクショナリ内のスカラは値渡しによってコピーされ、ディクショナリ内のそのほかのオブジェクトは参照渡しによってコピーされることを意味します。ローダー コンポーネントは、ディクショナリから構成値を読み取るために、IPipelineComponentAdmin インターフェイス、特にこのインターフェイスの SetConfigData メソッドを実装している必要があります。このプロパティによって識別される Dictionary オブジェクトは、SetConfigData メソッドを使って、新しく作成されたローダー コンポーネントに渡されます。

関連項目

CacheManager オブジェクト


CacheManager.LoaderProgId

LoaderProgId プロパティは読み取りと書き込みが可能な文字列で、キャッシュへのデータ取り込みに使うコンポーネントのプログラム ID (ProgID) を含んでいます。

定義

Property LoaderProgId(
bstrName As String
) As String

パラメータ

bstrName

ローダー コンポーネントの ProgID を提供または取得するデータ キャッシュの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

CacheManager オブジェクト


CacheManager.RefreshCache

このメソッドは、データ キャッシュ Dictionary オブジェクトを直ちに最新の状態に更新するために使います。このメソッドは同期型で、指定されたデータ キャッシュが更新されるまで呼び出し元に制御を戻しません。

定義

Sub RefreshCache(
bstrName As String
)

パラメータ

bstrName

更新するデータ キャッシュの名前を含む文字列です。

戻り値

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

バックグラウンドのタイマ スレッドや別のフォアグラウンド スレッドによって RefreshCache メソッドが呼び出された場合に、指定されたキャッシュが更新の最中であったときは、このメソッドは更新処理が完了するまで待機した後、制御を戻します。もう一度更新処理が実行されることはありません。

例

'strMyCacheName is a String containing the name of an existing cache.

myCacheManager.RefreshCache(strMyCacheName)

関連項目

CacheManager オブジェクト


CacheManager.RefreshInterval

RefreshInterval プロパティは読み取りと書き込みが可能な数値で、指定したキャッシュの自動更新が行われるおおよその間隔を、秒数で指定します。

定義

Property RefreshInterval(
bstrName As String
) As Long

パラメータ

bstrName

更新間隔を提供または取得するデータ キャッシュの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

更新間隔が 0 の場合、キャッシュは自動的には更新されないことを意味します。

既定の更新間隔値は 0 です。

この値は、キャッシュの自動更新処理が実行される間隔を秒数で表したものです。

関連項目

CacheManager オブジェクト


CacheManager.RetryInterval

RetryInterval プロパティは読み取りと書き込みが可能な数値で、データ キャッシュの読み込みに失敗した後、読み込みを再試行するまでのおおよその期間を秒数で指定します。

定義

Property RetryInterval(
bstrName As String
) As Long

パラメータ

bstrName

再試行間隔を提供または取得するデータ キャッシュの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

再試行間隔の値には、キャッシュ更新処理が失敗した場合に、失敗後から再試行までに CacheManager オブジェクトが待機しなければならない秒数を指定します。

既定の再試行間隔値は 60 (秒) です。

再試行間隔値は、少なくとも 1 (秒) 以上にする必要があります。

関連項目

CacheManager オブジェクト


CacheManager.WriterConfig

WriterConfig プロパティは、ライタ コンポーネント用の構成情報が含まれる Dictionary オブジェクトへの参照で、読み取りと書き込みが可能です。

定義

Property WriterConfig(
bstrName As String
) As IDispatch

パラメータ

bstrName

ライタ コンポーネント構成情報を提供または取得するデータ キャッシュの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、特定のライタ コンポーネント用の構成情報が含まれる Dictionary オブジェクトです。このプロパティは、キャッシュの使用状況に関するレポートを作成するためにライタ コンポーネントが作成されたとき、そのライタ コンポーネントに渡されます。このプロパティを設定すると、ディクショナリは軽度に複製され、その複製されたディクショナリが CacheManager オブジェクトに格納されます。これは、単にディクショナリへの参照を格納するやり方とは対照的なものです。軽度の複製とは、ディクショナリ内のスカラは値渡しによってコピーされ、ディクショナリ内のそのほかのオブジェクトは参照渡しによってコピーされることを意味します。ライタ コンポーネントは、ディクショナリから構成値を読み取るための IPipelineComponentAdmin インターフェイス、特にこのインターフェイスの SetConfigData メソッドを実装している必要があります。このプロパティによって識別される Dictionary オブジェクトは、SetConfigData メソッドを使って、新しく作成されたライタ コンポーネントに渡されます。

関連項目

CacheManager オブジェクト


CacheManager.WriterProgId

WriterProgId プロパティは読み取りと書き込みが可能な文字列で、キャッシュへのデータ取り込みに使うコンポーネントのプログラム ID (ProgID) を含んでいます。

定義

Property WriterProgId(
bstrName As String
) As String

パラメータ

bstrName

ライタ コンポーネントの ProgID を提供または取得するデータ キャッシュの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

CacheManager オブジェクト


CatalogManager オブジェクト

このオブジェクトは、商品カタログ システム全体に対する処理を行うために使います。このオブジェクトのメソッドとプロパティは、商品カタログ システムに含まれているカタログすべてに作用します。

ProgID: | Commerce.CatalogManager (外部作成可能)
COM クラス名: | CatalogManager
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

次の表は、CatalogManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Catalogs | _Recordset | 商品カタログ システム内にある各カタログのレコードが含まれるレコードセットを、カタログが持つプロパティと共に返します。 このプロパティは読み取り専用です。
CategoryDefinitions | _Recordset | カテゴリ定義の名前がすべて含まれたレコードセットを返します。現時点で商品カタログ システム内にあるカテゴリ定義がすべて返されます。 このプロパティは読み取り専用です。
CustomCatalogs | _Recordset | 各カスタム カタログのレコードを含んでいるレコードセットを返します。これらのレコードには、カスタム カタログ名や、カスタム カタログの基となったカタログの名前が含まれています。 このプロパティは読み取り専用です。
ProductDefinitions | _Recordset | 商品定義の名前がすべて含まれたレコードセットを返します。現時点で商品カタログ システム内にある商品定義が、すべて返されます。 このプロパティは読み取り専用です。
Properties | _Recordset | プロパティの名前がすべて含まれたレコードセットを返します。現時点で商品カタログ システム内にあるプロパティが、すべて返されます。 このプロパティは読み取り専用です。

次の表は、CatalogManager オブジェクトのメソッドを示しています。

メソッド | 説明
AddDefinitionProperty | 定義にプロパティを追加します。
AddDefinitionVariantProperty | 定義にバリエーション プロパティを追加します。
AddPropertyValue | このプロパティ用の定義済みの値のリストに、値を追加します。列挙型の値についてのみ使用可能です。
CreateCatalog | 新しいカタログを作成します。
CreateCategoryDefinition | 新しいカテゴリ定義を作成します。
CreateProductDefinition | 新しい商品定義を作成します。
CreateProperty | 新しいプロパティを作成します。
DeleteCatalog | カタログを削除します。
DeleteDefinition | 商品定義またはカテゴリ定義を削除します。
DeleteProperty | プロパティを削除します。
ExportCSV | カタログ データをカンマ区切り値形式のファイルとしてエクスポートします。
ExportXML | カタログ データを拡張マークアップ言語 (XML) 形式のファイルとしてエクスポートします。
FreeTextSearch | カタログのフリーテキスト検索を実行します。
GetCatalog | 指定したカタログ オブジェクトを返します。
GetDefinitionProperties | 指定した商品定義またはカテゴリ定義のプロパティを返します。
GetPropertyAttributes | 指定したプロパティのすべての属性を返します。
GetPropertyValues | 列挙型プロパティの適切な値のリストを返します。
ImportCSV | カンマ区切り値形式のファイルをカタログ データとしてインポートします。
ImportXML | XML 形式のファイルをカタログ データとしてインポートします。
Initialize | CatalogManager オブジェクトを初期化します。
Query | 1 つ以上のカタログにある商品、バリエーション、およびカテゴリ データに対してクエリを実行します。
RemoveDefinitionProperty | 指定したプロパティまたはバリエーション プロパティを定義から削除します。
RemovePropertyValue | 列挙型プロパティから定義済みの値を削除します。
RenameDefinition | 定義を削除します。
RenameProperty | プロパティを削除します。
SetDefinitionProperties | このメソッドは、カテゴリ定義または商品定義のプロパティを変更するために使います。
SetPropertyAttributes | プロパティの属性を変更します。

解説

CatalogManager オブジェクトのいくつかのメソッドは、トランザクション中のオブジェクト内で呼び出すことができません。これらのメソッドは、CreateCatalog、DeleteCatalog、GenerateCustomCatalog、ImportCSV、ImportXML、および RegenerateFreeTextSearchIndex です。これらのメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

Required または Requires New プロパティ セットを持つ COM+ コンポーネントの CatalogManager にバインドすると、実行時エラーが発生します。


CatalogManager.AddDefinitionProperty

このメソッドは、既存のカテゴリ定義または商品定義に既存のプロパティを追加するために使います。

定義

Sub AddDefinitionProperty(
strDefinitionName As String,
strPropertyName As String
)

パラメータ

strDefinitionName

プロパティの追加先となる定義の名前を含む文字列です。

strPropertyName

プロパティの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した定義は存在しません。
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_IN_DEFINITION | &H8898000D | 指定したプロパティは既に定義に存在します。
OLE_E_BLANK | &H80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、プロパティを定義に追加します。その定義を基に作成された商品とカテゴリにも、そのプロパティが保持されます。プロパティは、一度しか定義に追加できません。商品定義の各プロパティは、プロパティとバリエーション プロパティの両方として使うことはできません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.AddDefinitionProperty "Printers", "Manufacturer"

関連項目

CatalogManager オブジェクト

CatalogManager.AddDefinitionVariantProperty

CatalogManager.RemoveDefinitionProperty


CatalogManager.AddDefinitionVariantProperty

このメソッドは、バリエーション プロパティを定義に追加するために使います。このメソッドは、AddDefinitionProperty メソッドに似ています。このメソッドで追加したプロパティは、商品バリエーションのみで使われます。

定義

Sub AddDefinitionVariantProperty(
strDefinitionName As String,
strPropertyName As String
)

パラメータ

strDefinitionName

指定したバリエーション プロパティの追加先となる定義の名前を含む文字列です。

strPropertyName

指定した定義に追加するプロパティの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した定義は存在しません。
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_IN_DEFINITION | &H8898000D | 指定したプロパティは既に定義に存在します。
OLE_E_BLANK | &H80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、バリエーション プロパティを定義に追加します。その定義を基に作成された商品にも、そのプロパティが保持されます。プロパティは、一度しか定義に追加できません。商品定義の各プロパティは、プロパティとバリエーション プロパティの両方として使うことはできません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.AddDefinitionVariantProperty "T-Shirts", "Size"

関連項目

CatalogManager オブジェクト

CatalogManager.AddDefinitionProperty

CatalogManager.RemoveDefinitionProperty


CatalogManager.AddPropertyValue

このメソッドは、指定した列挙型プロパティに使用する定義済みの値のリストに、値を追加するために使います。

定義

Sub AddPropertyValue(
strPropertyName As String,
strLegalValue As String
)

パラメータ

strPropertyName

新しい値を定義する列挙型プロパティの名前を含む文字列です。

strLegalValue

新しい値を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_NOT_ENUM | &H88980007 | 指定したプロパティは、cscEnumeration 型ではありません。
E_CAT_VALUE_ALREADY_ADDED | &H88980008 | 指定した列挙値は既にリストに存在します。
OLE_E_BLANK | &H80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AddPropertyValue メソッドは、cscEnumeration データ型のプロパティに対してのみ使います。

このメソッドは、列挙型プロパティに使用する定義済みの値のリストに、新しい値を追加します。クライアントがこのプロパティを未定義の値に設定しようとすると、エラーになります。このメソッドは、少量の固定した値しか持っていないプロパティを自動的に検証する場合に役立ちます。たとえば、Color プロパティには、定義済みの値として赤、緑、および青だけを保持することができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.AddPropertyValue "color", "Blue"

関連項目

CatalogManager オブジェクト

CatalogManager.GetPropertyValues

CatalogManager.RemovePropertyValue


CatalogManager.Catalogs

Catalogs プロパティは読み取り専用レコードセットで、商品カタログ システムに存在するカタログをすべて記述しています。返されるレコードセットには、各カタログのプロパティが含まれています。

定義

Property Catalogs() As _Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
OLE_E_BLANK | &H80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティが返すレコードセットに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、次のフィールドが含まれます。

フィールド名 | データ型 | 説明
CatalogName | 文字列 (128 文字) | なし
Locale | Integer | なし
StartDate | Date/Time | なし
EndDate | Date/Time | なし
VariantID | 文字列 (128 文字) | 商品バリエーションを一意に識別するプロパティの名前
ProductID | 文字列 (128 文字) | 商品を一意に識別するプロパティの名前
Currency | 文字列 (128 文字) | なし
WeightMeasure | 文字列 (128 文字) | なし
TimeStamp | Timestamp | なし
CatalogID | Integer | カタログを一意に識別する番号
CustomCatalog | bit | このレコードセットがカスタム カタログかどうかを示すフラグ
FreeTextIndexCreated | Date/Time | なし
ProductTableUpdated | Date/Time | なし

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

CatalogManager.CreateCatalog

CatalogManager.DeleteCatalog


CatalogManager.CategoryDefinitions

CategoryDefinitions プロパティは読み取り専用レコードセットで、商品カタログ システムのすべての商品定義の名前を含んでいます。

定義

Property CategoryDefinitions() As _Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティが返すレコードセットに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されたレコードセットには、DefinitionName という 1 つのフィールドと、商品カタログ システムのカテゴリ定義ごとに 1 つの行が含まれています。このフィールドは 128 文字の文字列です。

現在、商品カタログ システムにカテゴリ定義が存在しない場合、返されたレコードセットの EOF プロパティは VARIANT_TRUE に設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

CatalogManager.CreateCategoryDefinition

CatalogManager.DeleteDefinition


CatalogManager.CreateCatalog

このメソッドは、新しいカタログを作成するために使います。

定義

Function CreateCatalog(
strCatalogName As String,
strProductID As String,
Optional strProductVariantID As Variant,
Optional lcidLocale As Variant,
Optional strCurrency As Variant,
Optional strWeightMeasure As Variant,
Optional dtStartDate As Variant,
Optional dtEndDate As Variant
) As ProductCatalog

パラメータ

strCatalogName

作成するカタログの名前を含む文字列です。使用できない文字については、"解説" を参照してください。

strProductID

商品 ID プロパティを含む文字列です。

strProductVariantID

商品バリエーション ID プロパティを含む Variant です。

lcidLocale

作成するカタログのロケール ID (LCID) を含む Variant です。

strCurrency

作成するカタログの通貨型を含む Variant です。

strWeightMeasure

作成するカタログの、重量または長さの単位を含む Variant です。

dtStartDate

Date という内部処理形式の開始日付を含む Variant です。

dtEndDate

Date という内部処理形式の終了日付を含む Variant です。

戻り値

このメソッドが正常に終了すると、作成された ProductCatalog オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_EXISTS | &H88980001 | 指定した名前のカタログは既に存在します。カタログ名は、商品カタログ システム全体で一意でなければなりません。
E_CAT_PRODID_DOESNT_EXIST | &H88980010 | ProductID に指定したプロパティは、商品カタログ システムのプロパティに存在しません。
E_CAT_UPDATE_FREETEXT_INDEX_FAILED | &H88980015 | このエラーが発生するのは、フルテキスト検索がインストールされた後に、フルテキスト検索用インデックスの更新に失敗した場合です。 カタログは作成されますが、フルテキスト検索は機能しません。カタログをフルテキスト検索できるようにするには、カタログを削除して作成し直してください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す ProductCatalog に有効なデータが含まれるのは、ProductCatalog が正常に作成された場合だけです。

このカタログでバリエーションを使う予定がある場合は、省略可能なパラメータ strProductVariantID にプロパティ名を必ず指定してください。作成時にこのパラメータを指定しなかったカタログには、商品バリエーションを作成できません。

strProductID または strProductVariantID パラメータのデータ型が cscString、cscEnumeration、または cscFileName の場合、長さは 256 文字に制限されます。

返される ProductCatalog オブジェクトは、あらかじめ初期化され使用可能な状態になっています。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • カタログ名、つまり strCatalogName パラメータには、シャープ記号 (#) で始まる名前、および次の文字を含む名前は指定できません。
    • スペース ( )

    • 二重引用符 (")

    • カンマ (,)

    • ピリオド (.)

    • 左角かっこ ([)

    • 右角かっこ (])

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set oNewCatalog = myCatalogManager.CreateCatalog ("NewCatalog", "ItemNum", "SKU")

関連項目

CatalogManager オブジェクト

CatalogManager.DeleteCatalog

CatalogManager.GetCatalog


CatalogManager.CreateCategoryDefinition

このメソッドは、新しいカテゴリ定義を作成するために使います。

定義

Sub CreateCategoryDefinition(
strDefinitionName As String
)

パラメータ

strDefinitionName

新しいカテゴリ定義の名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_EXISTS | &H8898000A | 指定したカテゴリ定義名は既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カテゴリ定義名と商品定義名は、商品カタログ システム全体でグローバルに一意でなければなりません。カテゴリ定義と商品定義は、同じ名前にすることはできません。

初期定義は、作成時には空です。個々のプロパティを定義に追加するには、AddDefinitionProperty メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.CreateCategoryDefinition "Housewares"

関連項目

CatalogManager オブジェクト

CatalogManager.AddDefinitionProperty

CatalogManager.CreateProductDefinition

CatalogManager.DeleteDefinition


CatalogManager.CreateProductDefinition

このメソッドは、新しい商品定義を作成するために使います。

定義

Sub CreateProductDefinition(
strDefinitionName As String
)

パラメータ

strDefinitionName

新しい商品定義の名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_EXISTS | &H8898000A | 指定した商品定義名は既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カテゴリ定義名と商品定義名は、商品カタログ システム全体でグローバルに一意でなければなりません。カテゴリ定義と商品定義は、同じ名前にすることはできません。

初期定義は、作成時には空です。個々のプロパティを定義に追加するには、AddDefinitionProperty メソッドまたは AddDefinitionVariantProperty メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.CreateProductDefinition "Microwave"

関連項目

CatalogManager オブジェクト

CatalogManager.AddDefinitionProperty

CatalogManager.AddDefinitionVariantProperty

CatalogManager.CreateCategoryDefinition

CatalogManager.DeleteDefinition


CatalogManager.CreateProperty

このメソッドは、新しいプロパティを作成するために使います。

定義

Function CreateProperty(
strPropertyName As String,
eDataType As CatalogDataTypeEnum,
Optional varMaxLength As Variant
) As _Recordset

パラメータ

strPropertyName

新しいプロパティの名前を含む文字列です。このパラメータに含めることができるのは、XML タグで使える文字だけです。

eDataType

新しいプロパティのデータ型を指定する列挙値です。有効な値については、"解説" を参照してください。

varMaxLength

プロパティの最大長を含む Variant です。このパラメータは省略可能ですが、プロパティのデータ型が cscString の場合は必須です。データ型 cscEnumeration のプロパティの既定値は定数 128 であり、これを変更することはできません。データ型 cscFilePath のプロパティの既定値は定数 256 であり、これを変更することはできません。

戻り値

このメソッドが正常に終了すると、プロパティの属性を含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_EXISTS | &H88980003 | 指定したプロパティ名は既に存在します。プロパティ名は、商品カタログ システム全体で一意でなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティが返すレコードセットに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このメソッドは、新しく作成されたプロパティを含む単一行の Recordset オブジェクトを返します。この Recordset オブジェクトのフィールドの詳細については、「PropertyAttribute レコードセット」を参照してください。

次の表は、CatalogDataTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscInteger | 0 | -2[31] (-2,147,483,648) ～ 2[31] -1 (2,147,483,647) の範囲の数値。
cscBigInteger | 1 | 有効桁数 19 (符号付きの場合) または 20 (符号なしの場合)、小数部桁数 0 の符号付き固定小数点数値 (符号付きの場合 -2[63] ～ 2[63] - 1、符号なしの場合 0 ～ 2[64] - 1) [3], [9]。
cscFloat | 2 | 負または正の浮動小数点数。正の値の範囲は、およそ 2.23E –308 ～ 1.79E 308、負の値の範囲は、およそ –2.23E –308 ～ –1.79E 308 です。
cscDouble | 3 | 負または正の浮動小数点数。正の値の範囲は、およそ 2.23E –308 ～ 1.79E 308、負の値の範囲は、およそ –2.23E –308 ～ –1.79E 308 です。
cscBoolean | 4 | Boolean (bit)。1 または 0 を保持します。1 または 0 以外の整数値も受け付けますが、その場合は常に 1 と見なされます。
cscString | 5 | 最大長 255 文字の可変長の文字列。
cscDateTime | 6 | Microsoft SQL Server のDate/Time データ型。
cscCurrency | 7 | Microsoft SQL Server のMoney 型。
cscFilePath | 8 | ファイル パスを保持する文字列。
cscEnumeration | 9 | 定義済み定数に関連付けられた Integer。
cscInvalid | -1 | 予約されています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'varMaxLength is a Variant
'cscString is an enum of type cscEnumeration
varMaxLength = 128
Set rsNewPropAttribs = myCatalogManager.CreateProperty("Format", cscString, varMaxLength)

関連項目

CatalogManager オブジェクト

CatalogManager.DeleteProperty

CatalogManager.GetPropertyAttributes

CatalogManager.SetPropertyAttributes


CatalogManager.CustomCatalogs

CustomCatalogs プロパティは読み取り専用レコードセットで、商品カタログ システムのカスタム カタログ、およびそれらの基となる基本カタログを記述しています。

定義

Property CustomCatalogs() As _Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティが返す Recordset オブジェクトに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

Recordset オブジェクトには、次のフィールドが含まれます。

フィールド | データ型 | 説明
CustomCatalogName | 文字列 (128 文字) | なし
CatalogName | 文字列 (128 文字) | なし
CustomCatalogID | Integer | カタログを一意に識別する番号
TimeStamp | Timestamp | なし

Recordset オブジェクトは、CustomCatalogName フィールドで並べ替えられています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

CatalogManager.Catalogs


CatalogManager.DeleteCatalog

このメソッドは、カタログを削除するため、および商品カタログ システムから派生したカスタム カタログを削除するために使います。

定義

Sub DeleteCatalog(
strCatalogName As String
)

パラメータ

strCatalogName

削除するカタログの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_EXIST | &H88980002 | 指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • カタログを削除すると、そのカタログから派生したカスタム カタログも削除されます。

例

myCatalogManager.DeleteCatalog "OurStore"

関連項目

CatalogManager オブジェクト

CatalogManager.CreateCatalog


CatalogManager.DeleteDefinition

このメソッドは、商品カタログ システムから定義を削除するために使います。

定義

Sub DeleteDefinition(
strDefinitionName As String,
Optional fForceDelete As Boolean
)

パラメータ

strDefinitionName

削除する定義の名前を含む文字列です。

fForceDelete

強制的に削除するかどうかを指定する Boolean です。値が True の場合、カタログで使用中でも定義は削除されることを示します。値が False の場合、カタログで使用中でなければ定義は削除されることを示します。既定値は False です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した定義は存在しません。
E_CAT_DEFINITION_USED_IN_CATALOG | &H8898000C | このエラーが返されるのは、fForceDelete パラメータが False に設定され、定義がカタログで使われていた場合だけです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

fForceDelete パラメータに値 True を使用する場合は、カテゴリ定義や商品定義だけでなく、全カタログ内のそれらの定義に基づくカテゴリと商品もすべて削除されるので、細心の注意を払ってください。結果として、データを損失する可能性があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.DeleteDefinition "T-Shirts", FALSE

関連項目

CatalogManager オブジェクト

CatalogManager.CreateCategoryDefinition

CatalogManager.CreateProductDefinition


CatalogManager.DeleteProperty

このメソッドは、商品カタログ システムからプロパティを削除するために使います。

定義

Sub DeleteProperty(
strPropertyName As String
)

パラメータ

strPropertyName

削除するプロパティの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_IS_ID | &H88980011 | 指定したプロパティは、1 つ以上のカタログで ProductID プロパティまたは VariantID プロパティとして使われています。これらのプロパティは、カタログの作成時に定義され、削除することはできません。
E_CAT_PROP_STILL_IN_DEF | &H88980004 | 指定したプロパティは、定義で使われています。プロパティを定義から削除するには、このメソッドを呼び出す前に RemoveDefinitionProperty メソッドを呼び出してください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.DeleteProperty "Width"

関連項目

CatalogManager オブジェクト

CatalogManager.CreateProperty


CatalogManager.ExportCSV

このメソッドは、カタログ データをカンマ区切り値 (CSV) 形式のファイルにエクスポートするために使います。

定義

Sub ExportCSV(
strCSVDestination As String,
strCatalogToExport As String
fRunSynchronously As Boolean
)

パラメータ

strCSVDestination

作成するエクスポート ファイルのフル パスとファイル名を含む文字列です。

strCatalogToExport

エクスポートするカタログの名前を含む文字列です。

fRunSynchronously

メソッドを同期的に実行するかどうかを指定する Boolean です。値が True の場合、エクスポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、エクスポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | &H88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_CREATION_FAILED | &H88980018 | メソッドが出力ファイルを作成できません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ExportCSV メソッドを使うと、Microsoft Excel など、ほかのプログラムで使用できる形式で、商品カタログ システムから商品データを出力できます。

このメソッドは、同時には 1 つのカタログからしか商品データを出力できません。

生成されたカンマ区切り値 (CSV) ファイルには、商品のみが含まれます。カテゴリ、関連付け、および階層は、CSV ファイルに書き込まれません。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

注意

  • エクスポートの処理中にカタログに対して行った変更は、出力ファイルに反映される場合と反映されない場合があります。エクスポートの処理中に追加および削除した場合は、出力ファイルが破損する可能性があります。エクスポートの処理中の変更は避ける必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.ExportCSV "c:\exports\ourcatalog.csv", "OurStore"

関連項目

CatalogManager オブジェクト

CatalogManager.ExportXML

CatalogManager.ImportCSV


CatalogManager.ExportXML

このメソッドは、カタログ データを拡張マークアップ言語 (XML) ファイルにエクスポートするために使います。

定義

Sub ExportXML(
strXMLFilePath As String,
Optional strCatalogsToExport As Variant
VARIANT_BOOL fRunSynchronously
)

パラメータ

strXMLFilePath

作成する XML ファイルのパスとファイル名を含む文字列です。

strCatalogsToExport

エクスポートするカタログを含む Variant です。詳細については、"解説" を参照してください。

fRunSynchronously

メソッドを同期的に実行するかどうかを指定する Boolean です。値が True の場合、エクスポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、エクスポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | &H88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_CREATION_FAILED | &H88980018 | メソッドが出力ファイルを作成できません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

strCatalogsToExport パラメータ自体を指定しなかった場合、またはこのパラメータに空文字列を指定した場合、すべてのカタログがエクスポートされます。それ以外の場合、strCatalogsToExport パラメータには、エクスポートするカタログ名をカンマで区切ったリストで指定します。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

注意

  • エクスポートの処理中にカタログに対して行った変更は、出力ファイルに反映される場合と反映されない場合があります。エクスポートの処理中に追加および削除した場合は、出力ファイルが破損する可能性があります。エクスポートの処理中の変更は避ける必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.ExportXML "c:\exports\ourcatalog.xml", "OurStore"

関連項目

CatalogManager オブジェクト

CatalogManager.ExportCSV

CatalogManager.ImportXML


CatalogManager.FreeTextSearch

このメソッドは、カタログのフリーテキスト検索を実行するために使います。

定義

Function FreeTextSearch(
strPhrase As String,
Optional strCatalogsToSearch As Variant,
Optional eClassTypeRequired As Variant,
Optional strPropertiesToReturn As Variant,
Optional strPropertyToSortOn As Variant,
Optional fSortAscending As Boolean,
Optional lStartingRecord As Variant,
Optional lRecordsToRetrieve As Variant,
Optional plTotalRecordsInQuery As Variant
) As _Recordset

パラメータ

strPhrase

検索語句を含む文字列です。

strCatalogsToSearch

検索するカタログをカンマ区切りリスト形式で含む Variant です。空文字列の場合、すべてのカタログが検索されます。

eClassTypeRequired

目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

strPropertiesToReturn

返すプロパティを含む Variant です。これは、カンマで区切られた文字列です。

strPropertyToSortOn

並べ替えに使用するプロパティを含む Variant です。指定しない場合、返されるレコードセットは並べ替えが行われません。

fSortAscending

並べ替えを昇順にするか、または降順にするかを指定する Boolean です。値が True の場合、返されるレコードセットは昇順に並べ替えられることを示します。値が False の場合、返されるレコードセットは降順に並べ替えられることを示します。既定値は True です。

lStartingRecord

取得開始レコード番号を含む Variant です。これは、先頭レコードからのオフセットです。

lRecordsToRetrieve

取得開始レコードから数えて、いくつのレコードを取得するかを指定する Variant です。

plTotalRecordsInQuery

検索によって返されたレコードの数を返すために使う Variant です。

戻り値

このメソッドが正常に終了すると、検索結果を含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_MULTI_CAT_QUERY_NEEDS_PROPS | &H8898000F | strPropertiesToReturn パラメータは、複数のカタログを検索する場合に指定する必要があります。
E_CAT_NO_CATALOGS | &H88980013 | 商品カタログ システムにカタログが存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返すレコードセットに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

FreeTextSearch メソッドは、1 つ以上のカタログにある単語または語句に対して任意の字句比較を実行するために使います。商品カタログ システムの FreeTextSearch 機能は、SQL Server 2000 のフルテキスト インデックスに基づいているので、フリー テキスト検索を制御するキーワードと演算子を SQL Server 2000 から継承しています。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

strPropertiesToReturn パラメータに関するプログラミング ルールは、strCatalogsToSearch パラメータに 1 つのカタログ名を渡すか、または複数のカタログ名を渡すかによって異なります。1 つのカタログ名を渡す場合、strPropertiesToReturn パラメータは省略可能で、既定ではすべてのプロパティになります。複数のカタログ名を渡す場合、strPropertiesToReturn パラメータは必須です。

strPropertiesToReturn パラメータに値を指定しなかった場合、メソッドは、指定したカタログのすべてのフィールドを返します。strPropertiesToReturn パラメータに値を指定した場合は、指定したフィールドだけを返します。

詳細については、「CatalogProduct レコードセット」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'rsFTSResults is a recordset object
'plTotalRecordsInQuery is a Variant.
'Check it after the method returns for the
'total number of records that match the query.
Set rsFTSResults = myCatalogManager.FreeTextSearch("red ribbons", "Craft Supplies", "", "Price", True, 0, 20, plTotalRecordsInQuery)

関連項目

CatalogManager オブジェクト

CatalogManager.Query


CatalogManager.GetCatalog

このメソッドは、指定したカタログを商品カタログ システムから取得するために使います。

定義

Function GetCatalog(
strCatalogName As String
) As ProductCatalog

パラメータ

strCatalogName

取得するカタログの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定されたカタログを含む ProductCatalog オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ProductCatalog オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set oCatalog = myCatalogManager.GetCatalog("Cdcatalog")

関連項目

CatalogManager オブジェクト

CatalogManager.CreateCatalog

CatalogManager.DeleteCatalog


CatalogManager.GetDefinitionProperties

このメソッドは、指定したカタログ定義または商品定義のプロパティを返すために使います。

定義

Function GetDefinitionProperties(
strDefinitionName As String
) As _Recordset

パラメータ

strDefinitionName

プロパティを返す定義の名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定された定義のプロパティを含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した定義は存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返すレコードセットに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
DefinitionID | Integer | 定義を一意に識別する番号です。
PropertyName | 文字列 (256 文字) | なし。
PropertyOrder | Integer | なし。
PropertyType | Integer | 0 は商品またはカテゴリを示し、1 は商品バリエーションを示します。
TimeStamp | Timestamp | なし。

レコードセットの行は、PropertyOrder フィールドで並べ替えられています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set rsDefProps = myCatalogManager.GetDefinitionProperties("T-Shirts")

関連項目

CatalogManager オブジェクト

CatalogManager.AddDefinitionProperty

CatalogManager.AddDefinitionVariantProperty

CatalogManager.RemoveDefinitionProperty


CatalogManager.GetPropertyAttributes

このメソッドは、指定したプロパティの属性を返すために使います。

定義

Function GetPropertyAttributes(
strPropertyName As String
) As _Recordset

パラメータ

strPropertyName

属性を返すプロパティの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定されたプロパティの属性のリストを含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返すレコードセットに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドは、要求したプロパティを含む単一行の Recordset オブジェクトを返します。この Recordset オブジェクトのフィールドの詳細については、「PropertyAttribute レコードセット」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set rsPropAttribs = myCatalogManager.GetPropertyAttributes("Size")

関連項目

CatalogManager オブジェクト

CatalogManager.SetPropertyAttributes


CatalogManager.GetPropertyValues

このメソッドは、列挙型プロパティに定義した値のリストを返すために使います。

定義

Function GetPropertyValues(
strPropertyName As String
) As _Recordset

パラメータ

strPropertyName

定義済みの値を返す列挙型プロパティの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、列挙内の定義済の値を含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返されるレコードセットに有効なデータは含まれるのは、メソッドが正常に終了した場合だけです。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
PropertyName | 文字列 (256 文字) | なし
Value | 文字列 (256 文字) | なし

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set rsEnumValues = myCatalogManager.GetPropertyValues("Color")

関連項目

CatalogManager オブジェクト

CatalogManager.AddPropertyValue

CatalogManager.RemovePropertyValue


CatalogManager.ImportCSV

このメソッドは、カンマ区切り値 (CSV) 形式のファイルをカタログ データとしてインポートするために使います。

定義

Sub ImportCSV(
strCSVFileSource As String,
strProductIDColumnName As String,
strPriceColumnName As String,
strCatalogName As String,
fUpdateOnly As Boolean
fRunSynchronously As Boolean
)

パラメータ

strCSVFileSource

インポートする CSV ファイルのパスとファイル名を含む文字列です。

strProductIDColumnName

列の名前を含む文字列です。カタログにインポートする商品のための一意の ID の値を提供する列の名前です。

strPriceColumnName

CSV ファイル内で商品価格を保持している列の名前を含む文字列です。

strCatalogName

CSV ファイルをインポートするカタログの名前を含む文字列です。カタログ名には、"#" で始まる名前、およびスペースだけで構成される名前は指定できません。

fUpdateOnly

既存のカタログを更新するか、または新しいカタログを作成するかを指定する Boolean です。値が True の場合、strCatalogName パラメータに指定したものと同じ名前のカタログがシステムに存在すると、そのカタログはインポートのデータで更新されることを示します。値が False の場合、既存のカタログは削除され、新しいカタログがインポートのデータで作成されることを示します。既定値は False です。

fRunSynchronously

メソッドを同期的に実行するかどうかを指定する Boolean です。値が True の場合、インポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、インポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | &H88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_OPEN_ERROR | &H88980020 | メソッドがファイルを開けません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

存在しないカタログを strCatalogName パラメータに指定した場合、新しいカタログが作成され、fUpdateOnly パラメータの値は無視されます。

ImportCSV メソッドは、既存データをさまざまなソースから商品カタログ システムに移動するために使います。CSV ファイルは、次の形式に従う必要があります。

  • データの先頭行は、カンマで区切られた列名で構成されます。行は、テキスト ファイルの新しい行で区切られます。

  • 後続の各行 (データ行) には、先頭行と同数のカンマが必要です。言い換えれば、CSV のすべての列は先頭行によって定義する必要があります。

  • CSV ファイル (1 項目につき 1 行) のすべての項目は商品と見なされ、共通の商品定義を基に作成されます。商品定義が送信先のカタログに存在しない場合、インポートの処理中に、1 つの商品定義が作成されます。

  • 各項目について、Price 列と ProductID 列には必ず値を指定しなければなりません。

  • 欠落したデータは、2 つのカンマが隣接します。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、指定したファイルを開けること、および、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.ImportCSV "c:\imports\ourcatalog.csv", "SKU", "Price", "OurCatalog", TRUE

関連項目

CatalogManager オブジェクト

CatalogManager.ExportCSV

CatalogManager.ImportXML


CatalogManager.ImportXML

このメソッドは、拡張マークアップ言語 (XML) ファイルをカタログ データとしてインポートするために使います。

定義

Sub ImportXML(
strXMLFilePath As String,
fUpdateOnly As Boolean
fRunSynchronously As Boolean
)

パラメータ

strXMLFilePath

インポートする XML ファイルのパスとファイル名を含む文字列です。

fUpdateOnly

既存のカタログを更新するか、または新しいカタログを作成するかを指定する Boolean です。値が True の場合、strCatalogName パラメータに指定したものと同じ名前のカタログがシステムに存在すると、そのカタログはインポートのデータで更新されることを示します。値が False の場合、既存のカタログは削除され、新しいカタログがインポートのデータで作成されることを示します。

fRunSynchronously

メソッドを同期的に実行するかどうかを指定する Boolean です。値が True の場合、インポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、インポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | &H88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_OPEN_ERROR | &H88980020 | メソッドがファイルを開けません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

部分的なインポートまたは差分のインポートを実行する場合、つまり、新しいカタログ データまたは変更されたカタログ データをインポートして既存カタログを更新する場合、インポートするデータのスキーマが既存カタログのスキーマと一致していることが重要です。カタログ スキーマの詳細については、「インポート セマンティクス」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、指定したファイルを開けること、および、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

  • カタログ名には、"#" で始まる名前、およびスペースだけで構成される名前は指定できません。

  • カタログに存在するプロパティの種類と、インポート ファイルに存在する同じ名前のプロパティの種類が異なる場合、インポートは失敗します。たとえば、カタログでは SKU プロパティが文字列であるのに対して、インポートする XML ファイルでは SKU プロパティが整数であるとします。このような場合にエラーが発生します。

例

myCatalogManager.ImportXML "c:\imports\ourcatalog.xml", TRUE

関連項目

CatalogManager オブジェクト

CatalogManager.ExportXML

CatalogManager.ImportCSV


CatalogManager.Initialize

このメソッドは、CatalogManager オブジェクトを初期化するために使います。ほかのメソッドまたはプロパティを呼び出す前に、このメソッドを一度呼び出す必要があります。

定義

Sub Initialize(
strConfigString As String,
fIsADOConnectionString As Boolean
)

パラメータ

strConfigString

構成文字列を含む文字列です。

fIsADOConnectionString

strConfigString パラメータが指しているのが、ADO 接続文字列であるか、またはサイト名であるかを指定する Boolean です。値が True の場合、ADO 接続文字列であることを示します。値が False の場合、サイト名であることを示します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATMGR_ALREADY_INITIALIZED | &H88980062 | CatalogManager オブジェクトは既に初期化されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.Initialize strConfigString, TRUE

関連項目

CatalogManager オブジェクト


CatalogManager.ProductDefinitions

ProductDefinitions プロパティは読み取り専用 Recordset オブジェクトで、商品カタログ システムのすべての商品定義の名前を含んでいます。

定義

Property ProductDefinitions() As _Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Recordset オブジェクトに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されたレコードセットには、DefinitionName という 1 つのフィールドと、商品カタログ システムの商品定義ごとに 1 つの行が含まれています。このフィールドは 128 文字の文字列です。

現在、商品カタログ システムに商品定義が存在しない場合、返されたレコードセットの EOF プロパティは VARIANT_TRUE に設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

CatalogManager.CreateProductDefinition

CatalogManager.DeleteDefinition


CatalogManager.Properties

Properties プロパティは読み取り専用レコードセットで、現在商品カタログ システムに存在する各プロパティの名前を返します。カタログ名が指定された場合は、そのカタログで使われているプロパティだけを返します。

定義

Function Properties(
Optional strCatalogName As Variant
) As _Recordset

パラメータ

strCatalogName

カタログの名前を含む Variant です。このカタログのプロパティが返されます。この省略可能なパラメータを省略すると、すべてのプロパティが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Recordset オブジェクトに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このメソッドは、返されるプロパティごとに 1 つの行を含む Recordset オブジェクトを返します。この Recordset オブジェクトのフィールドの詳細については、「PropertyAttribute レコードセット」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set rsProps = myCatalogManager.Properties ("ShoesCatalog")

関連項目

CatalogManager オブジェクト

CatalogManager.CreateProperty

CatalogManager.DeleteProperty


CatalogManager.Query

このメソッドは、1 つ以上のカタログにある商品、カテゴリ、およびバリエーション データに対してクエリを実行するために使います。

定義

Function Query(
strPhrase As String,
Optional strCatalogsToSearch As Variant,
Optional eClassTypeRequired As Variant,
Optional strPropertiesToReturn As Variant,
Optional strPropertyToSortOn As Variant,
Optional fSortAscending As Boolean,
Optional lStartingRecord As Variant,
Optional lRecordsToRetrieve As Variant,
Optional plTotalRecordsInQuery As Variant
) As _Recordset

パラメータ

strPhrase

検索語句を含む文字列です。

strCatalogsToSearch

検索するカタログを、カンマで区切られたリスト形式で含む Variant です。空文字列の場合、すべてのカタログが検索されます。

eClassTypeRequired

目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

strPropertiesToReturn

返すプロパティを、カンマで区切られたリスト形式で含む Variant です。

strPropertyToSortOn

並べ替えに使用するプロパティを含む Variant です。

fSortAscending

並べ替えを昇順にするか、または降順にするかを指定する Boolean です。値が True の場合、返されるレコードセットは昇順に並べ替えられることを示します。値が False の場合、返されるレコードセットは降順に並べ替えられることを示します。既定値は True です。

lStartingRecord

取得開始レコードを含む Variant です。これは、先頭レコードからのオフセットです。

lRecordsToRetrieve

取得開始レコードから数えて、いくつのレコードを取得するかを指定する Variant です。

plTotalRecordsInQuery

クエリに当てはまるレコード総数を返すために使う Variant です。

戻り値

このメソッドが正常に終了すると、検索結果を含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_MULTI_CAT_QUERY_NEEDS_PROPS | &H8898000F | strPropertiesToReturn パラメータは、複数のカタログを検索する場合に指定する必要があります。
E_CAT_NO_CATALOGS | &H88980013 | 商品カタログ システムにカタログが存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返される Recordset オブジェクトと plTotalRecordsInQuery パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

Query メソッドは、1 つ以上のカタログにある商品、商品バリエーション、およびカテゴリ データに対して任意のクエリを実行するために使います。strPhrase パラメータは、ADO レコードセットの Filter プロパティによく似ています。簡単なクエリを作成する場合は、たとえば length < 100 のように、キー、演算子、値という順番の規則に従います。クエリに文字列データ型の値を使う場合は、たとえば color = 'Blue' のように、その値を一重引用符で囲みます。

より高度なクエリを作成する場合は、たとえば (level > 10) OR (Name = 'Bob' AND Title = 'CPA') のように、AND 演算子と OR 演算子を使って複数の句をグループ化することができます。

strPropertiesToReturn パラメータに関するプログラミング ルールは、strCatalogsToSearch パラメータに 1 つのカタログ名を渡すか、または複数のカタログ名を渡すかによって異なります。1 つのカタログ名を渡す場合、strPropertiesToReturn パラメータは省略可能で、既定ではすべてのプロパティになります。複数のカタログ名を渡す場合、strPropertiesToReturn パラメータは必須です。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

strPropertiesToReturn パラメータに値を指定しなかった場合、メソッドは、指定したカタログのすべてのフィールドを返します。strPropertiesToReturn パラメータに値を指定した場合は、指定したフィールドだけを返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'plTotalRecordsInQuery is an existing Long.
'Examine it after the method returns to see if
'there are more records to get.
Set rsQueryResults = myCatalogManager.Query("Productid='blue suede'", "ShoeCatalog", cscProductClass,"Price, SKU, Size", "SKU", TRUE, 1, 25, plTotalRecordsInQuery)

関連項目

CatalogManager オブジェクト

CatalogManager.FreeTextSearch


CatalogManager.RemoveDefinitionProperty

このメソッドは、指定したプロパティまたはバリエーション プロパティを、指定した定義から削除するために使います。

定義

Sub RemoveDefinitionProperty(
strDefinitionName As String,
strPropertyName As String
)

パラメータ

strDefinitionName

定義の名前を含む文字列です。指定したプロパティがこの定義から削除されます。

strPropertyName

削除するプロパティの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した定義は存在しません。
E_CAT_PROP_NOT_IN_DEFINITION | &H8898000E | 指定したプロパティはこの定義には含まれていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

定義から削除されるプロパティは、その定義を基に作成されたすべての商品、商品バリエーション、およびカテゴリからも削除されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注意

  • このメソッドの使用には、細心の注意を払ってください。このメソッドを呼び出すと、ほとんどの場合データが削除されることになります。

  • 商品グループ定義のバリエーション プロパティをすべて削除すると、その商品グループ定義は商品定義に変換され、この定義に基づく既存の商品バリエーションはすべて削除されます。

例

myCatalogManager.RemoveDefinitionProperty "T-Shirts", "Color"

関連項目

CatalogManager オブジェクト

CatalogManager.AddDefinitionProperty

CatalogManager.AddDefinitionVariantProperty

CatalogManager.GetDefinitionProperties


CatalogManager.RemovePropertyValue

このメソッドは、列挙型プロパティから定義済みの値を削除するために使います。

定義

Sub RemovePropertyValue(
strPropertyName As String,
strLegalValue As String
)

パラメータ

strPropertyName

列挙型プロパティの名前を含む文字列 です。指定した値がこの列挙型プロパティから削除されます。

strLegalValue

削除する値を含む文字列です。この値は、指定した列挙型プロパティから選びます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_NOT_ENUM | &H88980007 | 指定したプロパティは、cscEnumeration 型ではありません。列挙型プロパティに対してのみ、このメソッドを呼び出してください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注意

  • 列挙型プロパティから値を削除すると、該当のプロパティが削除対象の値に設定されている商品はすべて、その値が Null に変更されます。

例

myCatalogManager.RemovePropertyValue "Color", "Pink"

関連項目

CatalogManager オブジェクト

CatalogManager.AddPropertyValue

CatalogManager.GetPropertyValues


CatalogManager.RenameDefinition

このメソッドは、定義の名前を変更するために使います。

定義

Sub RenameDefinition(
strOldName As String,
strNewName As String
)

パラメータ

strOldName

既存の定義の名前を含む文字列です。

strNewName

変更後の定義の名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した古い定義名が存在しません。
E_CAT_DEFINITION_EXISTS | &H8898000A | 指定した新しい名前の定義は既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、定義を使うすべての商品とカテゴリに影響を与えます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.RenameDefinition "T-Shirts", "Tee-Shirts"

関連項目

CatalogManager オブジェクト

CatalogManager.RenameProperty


CatalogManager.RenameProperty

このメソッドは、プロパティの名前を変更するために使います。

定義

Sub RenameProperty(
strOldPropertyName As String,
strNewPropertyName As String
)

パラメータ

strOldPropertyName

既存のプロパティの名前を含む文字列です。

strNewPropertyName

変更後のプロパティの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定した古いプロパティ名が存在しません。
E_CAT_PROP_EXISTS | &H88980003 | 指定した新しい名前のプロパティは既に存在します。
E_CAT_PROP_IS_ID | &H88980011 | 指定したプロパティ名は、カタログの ProductID または VariantID として使われています。これらのプロパティは、カタログの作成時に指定され、名前を変更したり、削除したりすることはできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.RenameProperty "Weight", "Wt."

関連項目

CatalogManager オブジェクト

CatalogManager.RenameDefinition


CatalogManager.SetDefinitionProperties

このメソッドは、カテゴリ定義または商品定義のプロパティを変更するために使います。

定義

Sub SetDefinitionProperties(
strDefinitionName As _String,
pRSNewState As _Recordset,
)

パラメータ

strDefinitionName

定義の名前を含む文字列です。

pRSProperties

新しいプロパティを指定する _Recordset です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定した名前のプロパティが存在しません。
E_CAT_PROP_CHANGED | &H88980006 | このプロパティの属性は、そのプロパティが前回読み取られた後に変更されています。このエラーが発生するのは、sForceUpdate パラメータが False で、CreateProperty メソッドまたは GetPropertyAttributes メソッドの呼び出し後にプロパティの属性が変更された場合です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.SetDefinitionProperties "Shirt",pRSProperties

関連項目

CatalogManager オブジェクト

CatalogManager.CreateProperty


CatalogManager.SetPropertyAttributes

このメソッドは、プロパティの属性を変更するために使います。

定義

Sub SetPropertyAttributes(
pRSNewState As _Recordset,
Optional fForceUpdate As Variant
)

パラメータ

pRSNewState

新しい属性値を指定する _Recordset オブジェクトです。

fForceUpdate

強制的に更新するかどうかを指定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_CHANGED | &H88980006 | このプロパティの属性は、そのプロパティが前回読み取られた後に変更されています。このエラーが発生するのは、sForceUpdate パラメータが False で、CreateProperty メソッドまたは GetPropertyAttributes メソッドの呼び出し後にプロパティの属性が変更された場合です。
E_CAT_PROP_DOESNT_EXIST | &H88980005 | 指定した名前のプロパティが存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetPropertyAttributes メソッドまたは CreateProperty メソッドから返される Recordset オブジェクトを pRSNewState パラメータとして使うと、エラー検出のために、そのタイムスタンプを既存のプロパティのタイムスタンプと比較することができます。データ型を除いて、プロパティの属性はすべて変更することができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogManager.SetPropertyAttributes pRSNewState, TRUE

関連項目

CatalogManager オブジェクト

CatalogManager.CreateProperty

CatalogManager.GetPropertyAttributes


PropertyAttribute レコードセット

PropertyAttribute レコードセットには、CatalogAttributes テーブルにあるプロパティ定義が反映されます。

次の表は、PropertyAttribute レコードセットのフィールドを示しています。

フィールド名 | データ型
PropertyName | String
DataType | Small integer
u_DefaultValue | String
i_DefaultValue | Integer
dt_DefaultValue | datetime
cy_DefaultValue | money
f_DefaultValue | bit
fp_DefaultValue | float
i_MinValue | Integer
i_MaxValue | Integer
dt_MinValue | datetime
dt_MaxValue | datetime
fp_MinValue | float
fp_MaxValue | float
IsFreeTextSearchable | bit
IncludeInSpecSearch | bit
MinLength | Integer
MaxLength | Integer
cy_MinValue | money
cy_MaxValue | money
TimeStamp | timestamp
DisplayOnSite | bit
DisplayName | String
AssignAll | bit
ExportToDW | bit
DisplayInProductsList | bit


CatalogSets オブジェクト

このオブジェクトは、カタログ管理システムのカタログ セットを操作するために使います。カタログ セットによって、異なるユーザーや組織に対して、別々のカタログの集まりを提供することができます。

ProgID: | Commerce.CatalogSets (外部作成可能)
COM クラス名: | CatalogSets
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Sets Type Library
DLL 名: | CatalogSets.dll
スレッド モデル: | アパートメント

次の表は、CatalogSets オブジェクトのメソッドを示しています。

メソッド | 説明
CreateCatalogSet | 新しいカタログ セットを作成します。
DeleteCatalogSet | 指定したカタログ セットを削除します。
GetCatalogs | すべてのカタログのリストを返します。
GetCatalogSetIDForUser | ユーザーのカタログ セット ID を返します。
GetCatalogSetInfo | 指定したカタログ セットに関する情報を返します。
GetCatalogSets | すべてのカタログ セットのリストを返します。
GetCatalogsForUser | 指定したユーザーに関連付けられたカタログのリストを返します。
GetCatalogsInCatalogSet | 指定したカタログ セットに関連付けられたカタログのリストを返します。
GetCatalogsNotInCatalogSet | 指定したカタログ セットに関連付けられていないカタログをすべて含むリストを返します。
Initialize | CatalogSets オブジェクトを初期化します。
RemoveCatalogFromCatalogSets | すべてのカタログ セットからカタログを削除します。
UpdateCatalogSet | 既存のカタログ セットを変更することができます。


CatalogSets.CreateCatalogSet

このメソッドは、カタログ データベースに新しいカタログ セットを作成するために使います。

定義

Function CreateCatalogSet(
CatalogSetName As String,
CatalogSetDescription As String,
bWildCard As Boolean,
Optional CatalogNamesRS As _Recordset
) As String

パラメータ

CatalogSetName

新しいカタログ セットの名前を含む文字列です。入力できる文字数は、最大 128 文字です。

CatalogSetDescription

新しいカタログ セットの説明を含む文字列です。

bWildCard

将来作成される可能性がある新しいカタログも含め、すべてのカタログをこのカタログ セットに自動的に含めるかどうかを示す Boolean です。値が True の場合、このカタログ セットには既存のすべてのカタログが含まれることを示します。値が False の場合、このカタログ セットにはカタログの特定のセットしか含まれないことを示します。

CatalogNamesRS

新しいカタログ セットに含めるカタログを指定する ADO Recordset オブジェクトへの参照です。Recordset オブジェクトは CatalogName という名前の 1 つの列で構成され、含めるカタログごとに 1 つの行を保持します。bWildCard パラメータが True の場合、このパラメータは無視されます。

戻り値

このメソッドが正常に終了すると、新しいカタログ セットの ID を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返された文字列に有効な ID が含まれるのは、新しいカタログ セットが正常に作成された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'The following example shows the creation of a catalog set
'associated with all the catalogs in the catalog management system.
strCatalogSetID = myCatalogSets.CreateCatalogSet("PremiumCatalogs", "Premium catalog set", TRUE)

'The following example shows the creation of a catalog set
'associated with two specific catalogs.
set rsCatalogNames = CreateObject("ADODB Recordset")
call rsCatalogNames.Fields.Append("CatalogName", adBSTR)
rsCatalogNames.Open
rsCatalogNames.AddNew
rsCatalogNames.Fields("CatalogName").value = "Catalog1"
rsCatalogNames.Update
rsCatalogNames.AddNew
rsCatalogNames.Fields("CatalogName").value = "Catalog2"
rsCatalogNames.Update

strCatalogSetID = myCatalogSets.CreateCatalogSet("CombinedCatalog", "A one and a two", FALSE, rsCatalogNames)

関連項目

CatalogSets オブジェクト


CatalogSets.DeleteCatalogSet

このメソッドは、カタログ データベースから既存のカタログ セットを削除するために使います。

定義

Sub DeleteCatalogSet(
CatalogSetID As String
)

パラメータ

CatalogSetID

削除対象のカタログ セットの ID を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カタログ セットを削除しても、カタログ セット ID は削除されません。無効になったカタログ セット ID を参照しても、ソリューション サイトにはアクセスできません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'strCatalogSetID1 is a GUID
myCatalogSets.DeleteCatalogSet strCatalogSetID1

関連項目

CatalogSets オブジェクト


CatalogSets.GetCatalogs

このメソッドは、すべてのカタログのリストを返します。

定義

Function GetCatalogs() As Recordset

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、すべてのカタログのリストを含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、CatalogName という 128 文字のフィールドだけが含まれます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

set rsMyCatalogs = myCatalogSets.GetCatalogs()

関連項目

CatalogSets オブジェクト


CatalogSets.GetCatalogSetIDForUser

このメソッドは、特定のユーザーの CatalogSetID を返すために使います。

定義

Function GetCatalogSetIDForUser(
objProfileService As IDispatch,
user_id As String,
defaultCatalogSetID As String
) As Variant

パラメータ

objProfileService

ProfileService オブジェクトです。

user_id

ユーザー ID を含む文字列です。

defaultCatalogSetID

既定のカタログ セット ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、CatalogSetID を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す Variant に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

objProfileService パラメータで定義されたユーザーが、自分に関連付けられたカタログ セットを持っている場合、このメソッドはそのカタログ セット ID を返します。持ってない場合は、そのユーザーの組織に関連付けられたカタログ セットを返します。このカタログ セットが存在しない場合は、defaultCatalogSetID パラメータに指定された値を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

strCatalogSetID = myCatalogSets.GetCatalogSetIDForUser(oProfileService, user_id, defaultCatalogSetID)

関連項目

CatalogSets オブジェクト

ProfileService オブジェクト


CatalogSets.GetCatalogSetInfo

このメソッドは、カタログ セットの基本的なプロパティを返すために使います。

定義

Function GetCatalogSetInfo(
CatalogSetID As String
) As Recordset

パラメータ

CatalogSetID

カタログ セット ID (GUID) を含む文字列です。

戻り値

このメソッドが正常に終了すると、Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドは、前方スクロール タイプの Recordset オブジェクトを返します。このオブジェクトには 1 つの行が含まれ、その行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogSetID | GUID | なし。
CatalogSetName | 文字列 (最大 255 文字) | なし。
CatalogSetDescription | 文字列 (最大 255 文字) | なし。
bWildCard | Integer | 将来作成される可能性がある新しいカタログも含め、すべてのカタログをこのカタログ セットに自動的に含めるかどうかを示す Boolean です。値が True の場合、このカタログ セットには既存のすべてのカタログが含まれることを示します。値が False の場合、このカタログ セットにはカタログの特定のセットしか含まれないことを示します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'
set rsMyCatalogSetInfo = myCatalogSets.GetCatalogSetInfo(strCatalogSetID)

関連項目

CatalogSets オブジェクト


CatalogSets.GetCatalogSets

このメソッドは、すべてのカタログ セットのリストを返すために使います。

定義

Function GetCatalogSets() As Recordset

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、すべてのカタログ セットのリストを含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドは、前方スクロール タイプの Recordset オブジェクトを返します。このオブジェクトには、カタログ セットごとに 1 つの行が含まれ、各行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogSetID | GUID | なし。
CatalogSetName | 文字列 (255 文字) | なし。
CatalogSetDescription | 文字列 (255 文字) | なし。
bWildCard | Integer | 将来作成される可能性がある新しいカタログも含め、すべてのカタログをこのカタログ セットに自動的に含めるかどうかを示す Boolean です。値が True の場合、このカタログ セットには既存のすべてのカタログが含まれることを示します。値が False の場合、このカタログ セットにはカタログの特定のセットしか含まれないことを示します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

set rsMyCatalogSets = myCatalogSets.GetCatalogSets()

関連項目

CatalogSets オブジェクト


CatalogSets.GetCatalogsForUser

このメソッドは、特定のユーザーのプロファイルに指定されたカタログ セットによってそのユーザーに割り当てられているカタログのリストを返すために使います。

定義

Function GetCatalogsForUser(
objProfileService As IDispatch,
user_id As String,
defaultCatalogSetID As String
) As Recordset

パラメータ

objProfileService

プロファイル サービス オブジェクトです。

user_id

ユーザー ID を含む文字列です。

defaultCatalogSetID

既定のカタログ セット ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、カタログのリストを含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、user_id パラメータのユーザー プロファイルに関連付けられたカタログ セット内のカタログごとに 1 つの行が含まれ、各行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogName CatalogSet_Catalogs テーブルのフィールド | 文字列 (最大 255 文字) | なし。
CatalogName CatalogGlobal テーブルのフィールド | 文字列 (最大 128 文字) | なし。

このメソッドに渡されるユーザー プロファイル オブジェクトが初期化されていない場合、このオブジェクトは既定のカタログ セットを返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set objProfileService = Server.CreateObject("Commerce.ProfileService")
Call objProfileService.Initialize(sProfileServiceConnectionString, "Profile Definitions")
set rsCatalogSet = myCatalogSets.GetCatalogsForUser(objProfileService, user_id, defaultCatalogSetID)

関連項目

CatalogSets オブジェクト


CatalogSets.GetCatalogsInCatalogSet

このメソッドは、特定のカタログ セットに含まれるカタログを返すために使います。

定義

Function GetCatalogsInCatalogSet(
CatalogSetID As String
) As Recordset

パラメータ

CatalogSetID

カタログ セット ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、カタログのリストを含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、カタログ セット内のカタログごとに 1 つの行が含まれ、各行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogName CatalogSet_Catalogs テーブルのフィールド | 文字列 (最大 255 文字) | なし。
CatalogName CatalogGlobal テーブルのフィールド | 文字列 (最大 128 文字) | なし。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

set rsCatalogNames = myCatalogSets.GetCatalogsInCatalogSet(CatalogSetID)

関連項目

CatalogSets オブジェクト


CatalogSets.GetCatalogsNotInCatalogSet

このメソッドは、指定したカタログ セットに含まれないカタログを返すために使います。

定義

Function GetCatalogsNotInCatalogSet(
CatalogSetID As String
) As Recordset

パラメータ

CatalogSetID

カタログ セット ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが返す Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、CatalogName という 128 文字のフィールドだけが含まれます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'strCatalogSetID is the GUID of a catalog set
set rsCatalogs = myCatalogSets.GetCatalogsNotInCatalogSet(strCatalogSetID)

関連項目

CatalogSets オブジェクト


CatalogSets.Initialize

このメソッドは、新しい CatalogSet オブジェクトを初期化するために使います。

定義

Sub Initialize(
CatalogConnectionString As String,
TransactionConfigConnectionString As String
)

パラメータ

CatalogConnectionString

カタログの接続文字列を含む文字列です。

TransactionConfigConnectionString

トランザクション構成の接続文字列を含む文字列です。このパラメータは使われていません。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注

  • TransactionConfigConnectionString パラメータは必須ですが、使われていません。その文字列の内容は無視されます。このパラメータは、将来の使用のために予約されています。

例

myCatalogSets.Initialize strCatalogConnection, ""

関連項目

CatalogSets オブジェクト


CatalogSets.RemoveCatalogFromCatalogSets

このメソッドは、すべてのカタログ セットからカタログを削除するために使います。

定義

Sub RemoveCatalogFromCatalogSets(
CatalogName As String
)

パラメータ

CatalogName

削除するカタログ名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カタログを削除する場合は、CatalogManager.DeleteCatalog メソッドまたは ProductCatalog.DeleteCustomCatalog メソッドを呼び出す前、または呼び出した後に、このメソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

MyCatalogManager.DeleteCatalog "Shoes"
myCatalogSets.RemoveCatalogFromCatalogSets "Shoes"

関連項目

CatalogSets オブジェクト


CatalogSets.UpdateCatalogSet

このメソッドは、既存のカタログ セットとその基本的なプロパティを更新するために使います。

定義

Sub UpdateCatalogSet(
CatalogSetID As String,
CatalogSetName As String,
CatalogSetDescription As String,
bWildCard As Boolean,
Optional CatalogNamesRS As Recordset
)

パラメータ

CatalogSetID

カタログ セット ID (GUID) を含む文字列です。

CatalogSetName

カタログ セット名を含む文字列です。入力できる文字数は、最大 128 文字です。

CatalogSetDescription

カタログ セットの説明を含む文字列です。

bWildCard

使用するカタログを示す Boolean です。値が True の場合は、すべてのカタログを使うことを示します。値が False の場合は、CatalogNameRS パラメータに指定されたカタログを使うことを示します。

CatalogNamesRS

カタログ名を含む Recordset オブジェクトです。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'strCatalogSetID is the GUID for the CatalogSet.
'rsCatalogNames is a Recordset as described in the parameter description.

myCatalogSets.UpdateCatalogSet strCatalogSetID, "Clothing", "All soft goods", FALSE, rsCatalogNames

関連項目

CatalogSets オブジェクト


CatalogToVendorAssociation オブジェクト

このオブジェクトは、カタログを製造元に関連付けるために使います。

ProgID: | Commerce.CatalogToVendorAssociation (外部作成可能)
COM クラス名: | CatalogToVendorAssociation
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Vendor Association Type Library
DLL 名: | CatalogVendorAssociation.dll
スレッド モデル: | アパートメント

次の表は、CatalogToVendorAssociation オブジェクトのメソッドを示しています。

メソッド | 説明
GetVendorInfoForCatalog | 指定したカタログに関連付けられた製造元に関する情報を返します。
GetVendorList | カタログに関連付けるために利用できる製造元のリストを返します。
Initialize | 適切なデータベースに接続して、CatalogToVendorAssociation オブジェクトを初期化します。
SpecifyVendorForCatalog | 指定した製造元とカタログを関連付けます。
UnspecifyVendorForCatalog | 指定した製造元とカタログとの関連付けを解除します。


CatalogToVendorAssociation.GetVendorInfoForCatalog

このメソッドは、指定したカタログに関連付けられた製造元に関する情報を取得するために使います。

定義

Function GetVendorInfoForCatalog(
szCatalogID As String
) As Recordset

パラメータ

szCatalogID

製造元情報が返されるカタログの ID を含む文字列です。

戻り値

このメソッドが正常に終了すると、要求された製造元情報を含む ADO Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を含むときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を含むときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返される ADO Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

set rsVendorInfo = myCatalogToVendorAssociation.GetVendorInfoForCatalog(szCatalogID)

関連項目

CatalogToVendorAssociation オブジェクト


CatalogToVendorAssociation.GetVendorList

このメソッドは、渡された別名修飾子と値に関連付けられ製造元、および入力ドキュメント名に関連付けられた製造元のリストを取得するために使います。

定義

Function GetVendorList(
szSourceAliasQualifier As String,
szSourceAliasValue As String,
szInputDocumentName As String
) As Recordset

パラメータ

szSourceAliasQualifier

ソースの別名修飾子を含む文字列です。

szSourceAliasValue

ソースの別名値を含む文字列です。

szInputDocumentName

入力ドキュメント名を含む文字列です。

戻り値

このメソッドが正常に終了すると、要求された製造元のリストを含む ADO Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返される ADO Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

注

  • このメソッドを利用できるのは、BizTalk Server がインストールされている場合だけです。このメソッドは、BizTalKDBInternal オブジェクトを必要とします。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

set rsVendorList = myCatalogToVendorAssociation.GetVendorList(szSourceAliasQualifier, szSourceAliasValue, szInputDocumentName)

関連項目

CatalogToVendorAssociation オブジェクト


CatalogToVendorAssociation.Initialize

このメソッドは、CatalogToVendorAssociation オブジェクトを初期化するために使います。

定義

Sub Initialize(
vConnectionString As String
)

パラメータ

vConnectionString

カタログと製造元との関連付けを示すデータベースへの接続文字列を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。.

例

myCatalogToVendorAssociation.Initialize vConnectionString

関連項目

CatalogToVendorAssociation オブジェクト


CatalogToVendorAssociation.SpecifyVendorForCatalog

このメソッドは、製造元を特定のカタログに関連付ける場合に使います。

定義

Sub SpecifyVendorForCatalog(
szCatalogID As String,
szVendorQualifier As String,
szVendorQualifierValue As String,
szVendorName As String
)

パラメータ

szCatalogID

指定した製造元に関連付けられたカタログの識別子を含む文字列です。

szVendorQualifier

指定したカタログに関連付けられた製造元の修飾子を含む文字列です。

szVendorQualifierValue

指定したカタログに関連付けられた製造元の修飾子の値を含む文字列です。

szVendorName

指定したカタログに関連付けられた製造元の名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogToVendorAssociation.SpecifyVendorForCatalog szCatalogID, szVendorQualifier, szVendorQualifierValue, szVendorName

関連項目

CatalogToVendorAssociation オブジェクト


CatalogToVendorAssociation.UnspecifyVendorForCatalog

このメソッドは、以前に関連付けた製造元とカタログとの関連付けを解除するために使います。

定義

Sub UnspecifyVendorForCatalog(
szCatalogID As String
)

パラメータ

szCatalogID

製造元との関連付けを解除するカタログの識別子を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCatalogToVendorAssociation.UnspecifyVendorForCatalog szCatalogID

関連項目

CatalogToVendorAssociation オブジェクト


Category オブジェクト

このオブジェクトは、カテゴリと商品との関連付けを操作するために使います。カテゴリの親子関係を操作する場合にも、このオブジェクトを使うことができます。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | Category
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

次の表は、Category オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AncestorCategories | Recordset | このカテゴリの上に存在し、また直接間接を問わず、階層内にこのカテゴリを持つカテゴリ名のレコードセットを含みます。 このプロパティは読み取り専用です。
CatalogName | 文字列 | この Category オブジェクトがメンバになっているカタログの名前が含まれます。 このプロパティは読み取り専用です。
CategoryName | BSTR | このカテゴリの名前が含まれます。 このプロパティは読み取り専用です。
ChildCategories | Recordset | このカテゴリの子 Category オブジェクトを保持するレコードセットが含まれます。 このプロパティは読み取り専用です。
DescendantProducts | Recordset | このカテゴリの下位に存在する商品がすべて含まれます。ルート カテゴリでこのプロパティにアクセスすると、カタログ全体の商品がすべて返されます。 このプロパティは読み取り専用です。
GetCategoryProperties | Recordset | このカテゴリのプロパティ値を保持するレコードセットが含まれます。 このプロパティは読み取り専用です。
ParentCategories | Recordset | このカテゴリの親カテゴリである Category オブジェクトの名前を保持するレコードセットが含まれます。 このプロパティは読み取り専用です。
Products | Recordset | このカテゴリ内に存在して、子孫カテゴリには存在しない商品が含まれます。 このプロパティは読み取り専用です。
RelatedCategories | Recordset | このカテゴリに関連付けを持っているカテゴリと商品グループをすべて記述するレコードセットが含まれます。 このプロパティは読み取り専用です。
RelatedProducts | Recordset | このカテゴリに関連付けを持っている商品バリエーションと商品グループをすべて記述するレコードセットが含まれます。 このプロパティは読み取り専用です。

次の表は、Category オブジェクトのメソッドを示しています。

メソッド | 説明
AddChildCategory | 指定した別のカテゴリをこのカテゴリの子として追加します。
AddParentCategory | 指定した別のカテゴリをこのカテゴリの親として追加します。
AddProduct | 指定した別の商品バリエーションをこのカテゴリの子として追加します。
AddRelationshipToCategory | 別のカテゴリからの関連付けをこのカテゴリに追加します。
AddRelationshipToProduct | このカテゴリからの関連付けを、指定した商品に追加します。
RemoveChildCategory | このカテゴリの子として指定したカテゴリを削除します。
RemoveParentCategory | このカテゴリの親として指定したカテゴリを削除します。
RemoveProduct | このカテゴリから商品を削除します。
RemoveRelationshipToCategory | このカテゴリと指定したカテゴリとの関連付けを削除します。
RemoveRelationshipToProduct | このカテゴリと指定した商品との関連付けを削除します。
SetCategoryProperties | 新しいプロパティをカテゴリに割り当てます。

解説

Category オブジェクトは従属オブジェクトです。このオブジェクトへの参照を取得するには、次のいずれかのメソッドを呼び出します。

  • ProductCatalog.CreateCategory

  • ProductCatalog.GetCategory


Category.AddChildCategory

このメソッドは、カテゴリをこのカテゴリの子として追加するために使います。

定義

Sub AddChildCategory(
strCategoryName As String
)

パラメータ

strCategoryName

このカテゴリに子として追加されるカテゴリの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_ALREADY_ADDED | &H8898002D | 指定したカテゴリは、このカテゴリの子として既に追加されています。
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。
E_CAT_INVALID_CHILDCATEGORY | &H8898005D | 指定したカテゴリは、このカテゴリの親として既に存在します。
E_CAT_INVALID_RELATION | &H88980039 | カテゴリは、そのカテゴリ自身の親または子になることはできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.AddChildCategory "shirts"

関連項目

Category オブジェクト

Category.AddParentCategory

Category.RemoveChildCategory


Category.AddParentCategory

このメソッドは、指定したカテゴリをこのカテゴリの親として追加するために使います。

定義

Sub AddParentCategory(
strCategoryName As String
)

パラメータ

strCategoryName

このカテゴリに親として追加されるカテゴリの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_ALREADY_ADDED | &H8898002D | 指定したカテゴリは、既にこのカテゴリの子になっています。
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。
E_CAT_PARENT_CAT_EXISTS_AS_CHILD | &H88980052 | 親カテゴリとして指定したカテゴリは、このカテゴリの子カテゴリとして既に存在します。
E_CAT_INVALID_RELATION | &H88980039 | カテゴリは、そのカテゴリ自身の親または子になることはできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.AddParentCategory "Apparel"

関連項目

Category オブジェクト

Category.AddChildCategory

Category.RemoveParentCategory


Category.AddProduct

このメソッドは、指定したカテゴリをこのカテゴリに追加するために使います。

定義

Sub AddProduct(
varProductID As Variant
)

パラメータ

varProductID

追加する商品の ID を含む Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | 指定した商品はカタログに存在しません。
E_CAT_PRODUCT_ALREADY_ADDED | &H88980029 | 指定した商品はこのカテゴリに既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

1 つの商品が同時に複数のカテゴリに、際限なく存在する場合があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.AddProduct "SKU4005"

関連項目

Category オブジェクト

Category.RemoveProduct


Category.AddRelationshipToCategory

このメソッドは、このカテゴリからの関連付けを、指定した別のカテゴリに追加するために使います。

定義

Sub AddRelationshipToCategory(
strRelatedCategoryName As String,
strRelationshipName As String,
Optional strRelationshipDescription As Variant
)

パラメータ

strRelatedCategoryName

関連付けの追加先のカテゴリの名前を含む文字列です。

strRelationshipName

関連付けの名前を含む文字列です。

strRelationshipDescription

関連付けについて説明した文字列サブタイプを含む Variant です (省略可能)。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。
E_CAT_INVALID_RELATION | &H88980039 | この関連付けは無効です。カテゴリまたは商品を、それ自身に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | &H88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | &H88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_RELATIONSHIP_EXISTS | &H88980033 | 指定した関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

関連付けについて、名前は必ず指定しなければなりませんが、説明は必要に応じて指定します。説明には、カテゴリ間の関連付けの性質を記述する情報 (たとえば "アクセサリ"、"アドオン" など) を含めることができます。関連付けは一方向です。つまり、カテゴリ A からカテゴリ B への関連付けがある場合、逆方向のカテゴリ B からカテゴリ A への関連付けは作成されません。

同じ 2 つのカテゴリ間で複数の関連付けを作成する場合は、それぞれの関連付けには一意の名前を付けなければなりません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.AddRelationshipToCategory "Apparel", "Accessory", "This would go great with that!"

関連項目

Category オブジェクト

Category.RemoveRelationshipToCategory


Category.AddRelationshipToProduct

このメソッドは、指定した商品とこのカテゴリとの関連付けを追加するために使います。この関連付けについて、名前は必ず指定しなければなりませんが、説明は必要に応じて指定します。説明には、カテゴリ間の関連付けの性質を記述する情報 (たとえば "アクセサリ"、"アドオン" など) を含めることができます。

定義

Sub AddRelationshipToProduct(
varRelatedProductID As Variant,
strRelationshipName As String,
Optional strRelationshipDescription As Variant
)

パラメータ

varRelatedProductID

関連付けられた商品の ID を含む Variant です。

strRelationshipName

関連付けの名前を含む文字列です。

strRelationshipDescription

関連付けの説明を含む Variant です (省略可能)。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_INVALID_RELATION | &H88980039 | この関連付けは無効です。カテゴリまたは商品を、それ自身に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | &H88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | &H88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | 指定した商品は存在しません。
E_CAT_RELATIONSHIP_EXISTS | &H88980033 | 指定した商品との関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドが正常に終了するには、指定した商品が存在していなければなりません。

カテゴリと商品との間に複数の関連付けを作成する場合は、それぞれの関連付けには一意の名前を付けなければなりません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.AddRelationshipToProduct "SKU4005", "Accessory", "This would go great with that"

関連項目

Category オブジェクト

Category.RemoveRelationshipToProduct


Category.AncestorCategories

AncestorCategories プロパティは読み取り専用 Recordset オブジェクトで、このカテゴリの上位階層に存在するカテゴリの名前を含んでいます。

定義

Property AncestorCategories() As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AncestorCategories プロパティに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

AncestorCategories プロパティは、Name という 128 文字のフィールドを 1 つだけ持つ Recordset オブジェクトです。

関連項目

Category オブジェクト

Category.ParentCategories

Category.ChildCategories


Category.CatalogName

CatalogName プロパティは読み取り専用文字列で、このカテゴリが存在するカタログの名前を含んでいます。

定義

Property CatalogName() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

CatalogName プロパティに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

Category オブジェクト


Category.CategoryName

CategoryName プロパティは読み取り専用文字列で、このカテゴリの名前を含んでいます。

定義

Property CategoryName() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

CategoryName プロパティに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

Category オブジェクト


Category.ChildCategories

ChildCategories プロパティは読み取り専用 Recordset オブジェクトで、このカテゴリの下位階層に存在するカテゴリの名前を含んでいます。

定義

Property ChildCategories() As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ChildCategories プロパティに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

ChildCategories レコードセットには、このカテゴリの子カテゴリごとに 1 つの行が含まれています。次の表は、ChildCategories レコードセットのフィールドを示しています。

フィールド | データ型 | 説明
CategoryName | 文字列 (最大 128 文字) | カテゴリの名前
DefinitionName | 文字列 (最大 128 文字) | 定義の名前
CatalogName | 文字列 (最大 128 文字) | カテゴリを含むカタログの名前

このカテゴリに子がない場合、EOF プロパティが VARIANT_TRUE に設定された空のレコードセットが返されます。ユーザーはこのプロパティの値を確認し、子カテゴリが存在するかどうかを判断しなければなりません。

関連項目

Category オブジェクト

Category.ParentCategories

Category.AncestorCategories


Category.DescendantProducts

DescendantProducts プロパティは読み取り専用 Recordset オブジェクトで、このカテゴリの下位に存在するすべての商品を含んでいます。ルート カテゴリでこのプロパティにアクセスすると、カタログ全体の商品がすべて返されます。

定義

Property DescendantProducts(
Optional eClassTypeRequired As Variant,
Optional lStartingRecord As Variant,
Optional lRecordsToRetrieve As Variant,
Optional plTotalRecordsInQuery As Variant
) As Recordset

パラメータ

eClassTypeRequired

目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。詳細については、"解説" を参照してください。

lStartingRecord

開始レコードを含む Variant です。

lRecordsToRetrieve

取得するレコード数を含む Variant です。

plTotalRecordsInQuery

クエリのレコード総数を返すために使う Variant です。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、このカテゴリの直下またはそれより下位の商品をすべて取得します。

返されるレコードセットには、CatalogProduct レコードセット のフィールドがすべて含まれています。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

Category.RelatedProducts

Category.Products


Category.GetCategoryProperties

GetCategoryProperties プロパティは読み取り専用レコードセットで、このカテゴリのプロパティを含んでいます。このカテゴリの定義にあるプロパティ、および組み込み済みのプロパティの両方が返されます。

定義

Property GetCategoryProperties() As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | このカテゴリはカタログから削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetCategoryProperties プロパティに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、よく使われる CatalogProduct レコードセットのフィールドがすべて含まれています。カテゴリの商品定義にあるフィールドもすべて含まれています。ProductID フィールド (一意の商品 ID) は、商品定義に存在しなくても返されます。

返されたレコードセットは更新可能ですが、接続されていません。このカテゴリがデータベースから削除されていると、このプロパティはエラーを返します。

関連項目

Category オブジェクト

Category.SetCategoryProperties


Category.ParentCategories

ParentCategories プロパティは読み取り専用レコードセットで、このカテゴリの親カテゴリの名前を含んでいます。

定義

Property ParentCategories() As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ParentCategories プロパティに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

ParentCategories には、このカテゴリの親カテゴリのカテゴリ名が含まれています。返されるレコードセットには、Name という 128 文字の文字列の列が 1 つと、存在する親ごとに 1 つの行が含まれています。

このカテゴリがルート カテゴリの場合、親カテゴリは存在しません。また、この場合、EOF プロパティが VARIANT_TRUE に設定された空のレコードセットが返されます。

関連項目

Category オブジェクト

Category.AncestorCategories

Category.ChildCategories


Category.Products

Products プロパティは読み取り専用レコードセットで、このカテゴリに直接存在するすべての商品の商品データを含んでいます。

定義

Property Products(
Optional eClassTypeRequired As Variant,
Optional strPropertyToSortOn As Variant,
Optional lStartingRecord As Variant,
Optional lRecordsToRetrieve As Variant,
Optional plTotalRecordsInQuery As Variant
) As _Recordset

パラメータ

eClassTypeRequired

目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。詳細については、"解説" を参照してください。

strPropertyToSortOn

並べ替えに使用するプロパティを含む Variant です。

lStartingRecord

開始レコード番号を含む Variant です。

lRecordsToRetrieve

取得するレコード数を含む Variant です。

plTotalRecordsInQuery

クエリのレコード総数を返すために使う Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

strPropertyToSortOn パラメータに指定したプロパティが無効である場合、レコードセットは並べ替えが行われません。

注

  • cscCategoryClass の値を eClassTypeRequired パラメータに指定すると、返されるレコードセットには、このカテゴリのすべての商品とすべての子カテゴリが含まれます。

Products プロパティには、このカテゴリのすべての商品の商品データが含まれています。

返されるレコードセットには、CatalogProduct レコードセット のフィールドがすべて含まれています。

このカテゴリに商品が含まれていない場合、Products プロパティは、EOF プロパティが VARIANT_TRUE に設定された空のレコードセットを返します。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

Category.DescendantProducts

Category.RelatedProducts


Category.RelatedCategories

RelatedCategories プロパティは読み取り専用レコードセットで、このカテゴリに関連付けられたカテゴリをすべて含んでいます。

定義

Property RelatedCategories() As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

RelatedCategories プロパティには、このカテゴリがほかのカテゴリに対して持っているすべての関連付けの情報が含まれています。返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
CategoryName | 文字列 (最大 128 文字) | カテゴリの名前
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前
RelationshipDescription | 文字列 (最大 256 文字) | 関連付けの説明

関連項目

Category オブジェクト

Category.AncestorCategories

Category.ChildCategories

Category.ParentCategories

Category.AddRelationshipToCategory

Category.RemoveRelationshipToCategory


Category.RelatedProducts

RelatedProducts プロパティは読み取り専用レコードセットで、このカテゴリに関連付けられたすべての商品に関する情報を含んでいます。

定義

Property RelatedProducts() As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

次の表は、返されるレコードセットのフィールドを示しています。

フィールド | データ型 | 説明
<定義される ProductID フィールド> | 任意のデータ型 | カタログ作成時に定義される一意の商品 ID
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前
RelationshipDescription | 文字列 (最大 256 文字) | 関連付けの説明

関連項目

Category オブジェクト

Category.DescendantProducts

Category.Products

Category.AddRelationshipToProduct

Category.RemoveRelationshipToProduct


Category.RemoveChildCategory

このメソッドは、このカテゴリの子カテゴリを削除するために使います。

定義

Sub RemoveChildCategory(
strCategoryName As String
)

パラメータ

strCategoryName

削除する子カテゴリの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しないか、またはこのカテゴリの子ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

RemoveChildCategory メソッドは、このカテゴリの子カテゴリを削除するために使います。strCategoryName パラメータに指定したカテゴリが存在しない場合、このメソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.RemoveChildCategory "T-Shirts"

関連項目

Category オブジェクト

Category.AddChildCategory

Category.RemoveParentCategory


Category.RemoveParentCategory

このメソッドは、このカテゴリの親として指定したカテゴリを削除するために使います。

定義

Sub RemoveParentCategory(
strCategoryName As String
)

パラメータ

strCategoryName

削除する親カテゴリの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しないか、またはこのカテゴリの親ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

RemoveParentCategory メソッドは、このカテゴリの親カテゴリを削除するために使います。strCategoryName パラメータに指定したカテゴリが存在しない場合、このメソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.RemoveParentCategory "Apparel"

関連項目

Category オブジェクト

Category.AddParentCategory

Category.RemoveChildCategory


Category.RemoveProduct

このメソッドは、このカテゴリの商品を削除するために使います。

定義

Sub RemoveProduct(
varProductID As Variant
)

パラメータ

varProductID

商品 ID を含む Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | 指定した商品は存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.RemoveProduct "Widget"

関連項目

Category オブジェクト

Category.AddProduct


Category.RemoveRelationshipToCategory

このメソッドは、指定したカテゴリとこのカテゴリとの関連付けを削除するために使います。

定義

Sub RemoveRelationshipToCategory(
strRelatedCategoryName As String,
strRelationshipName As String
)

パラメータ

strRelatedCategoryName

関連付けられたカテゴリの名前を含む文字列です。

strRelationshipName

関連付けの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しないか、またはこのカテゴリの親ではありません。
E_CAT_DEFN_NO_RELATIONSHIP_EXISTS | &H88980045 | 指定した関連付けは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

RemoveRelationshipToCategory メソッドは、このカテゴリと strRelatedCategoryName パラメータに指定したカテゴリとの関連付けを削除します。これらの 2 つのカテゴリ間に複数の関連付けが存在する場合があるので、削除する関連付けの名前を strRelationshipName パラメータに指定する必要もあります。strRelatedCategoryName パラメータに指定したカテゴリが存在しない場合、または strRelationshipName パラメータに指定した関連付けが存在しない場合、このメソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.RemoveRelationshipToCategory "Gadget", "Accessory"

関連項目

Category オブジェクト

Category.AddRelationshipToCategory

Category.RemoveRelationshipToProduct


Category.RemoveRelationshipToProduct

このメソッドは、指定した商品とこのカテゴリとの関連付けを削除するために使います。

定義

Sub RemoveRelationshipToProduct(
varRelatedProductID As Variant,
strRelationshipName As String
)

パラメータ

varRelatedProductID

関連付けられた商品の ID を含む Variant です。

strRelationshipName

関連付けの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFN_NO_RELATIONSHIP_EXISTS &H88980045
            指定した関連付けは存在しません。
    E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | 指定した商品は存在しません。

    グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

    解説

    RemoveRelationshipToProduct メソッドは、このカテゴリと varRelatedProductID パラメータに指定した商品との関連付けを削除します。また、このカテゴリと商品との間に複数の関連付けが存在する場合があるので、削除する関連付けの名前を strRelationshipName パラメータに指定する必要があります。varRelatedProductID パラメータに指定した商品が存在しない場合、または strRelationshipName パラメータに指定した関連付けが存在しない場合、このメソッドは失敗します。

    COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

    例

    myCategory.RemoveRelationshipToProduct "Gadget", "FeaturedProduct"

    関連項目

    Category オブジェクト

    Category.AddRelationshipToProduct


Category.SetCategoryProperties

このメソッドは、このカテゴリのプロパティに値を設定するために使います。

定義

Sub SetCategoryProperties(
pRSCategory As _Recordset,
Optional fForceUpdate As Variant
)

パラメータ

pRSCategory

このカテゴリのプロパティを含む Recordset オブジェクトです。

fForceUpdate

カテゴリのプロパティを強制的に更新するための Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_CHANGED | &H88980028 | このカテゴリのプロパティは、前回読み取られた後に変更されています。このエラーが返されるのは、fForceUpdate パラメータが False に設定されている場合だけです。
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | このカテゴリはカタログから削除されています。
E_CAT_INVALIDVALUE_FOR_PROPERTY &H88980038 このエラーが返されるのは次の場合です。
  • いずれかのプロパティが最小/最大条件を満たしていません。

  • 文字列データまたは列挙データのプロパティが最大長を超えています。

  • 列挙型プロパティの値が定義済みの有効な値のいずれにも当てはまりません。
E_CAT_NULL_PRICE_NOT_ALLOWED | &H8898003F | pRSCategory レコードセットの OriginalPrice フィールドが空または Null です。カテゴリが価格カテゴリとして使われている場合、このフィールドは必須です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

SetCategoryProperties メソッドは、カテゴリのプロパティを変更するために使います。pRSCategory パラメータには、このカテゴリの新しいプロパティ値を記述する Recordset オブジェクトを指定します。GetCategoryProperties メソッドが返す Recordset オブジェクトを使うと、エラー確認のために、そのタイムスタンプを比較することができます。

fForceUpdate パラメータが False に設定されていて、pRSCategory パラメータのプロパティ値が変更されていると、このメソッドは失敗します。

このメソッドは、カタログに組み込まれたフィールドを更新しません。このカテゴリが価格カテゴリとして使われている場合、このメソッドは、このカテゴリを価格カテゴリとして使っているすべての商品の価格を更新します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myCategory.SetCategoryProperties pRSCategory, "TRUE"

関連項目

Category オブジェクト


ContentList オブジェクト

このオブジェクトは、コンテンツ項目の特定コレクションにアクセスするために使います。ContentList オブジェクトは、このオブジェクトに格納されている非公開データ、およびこのオブジェクトを作成した ContentListFactory オブジェクトに格納されている共有データへの集計アクセスを提供します。このオブジェクトは、コンテンツ項目のスコア計算のために、コンテンツ選択フレームワーク (CSF) パイプラインを流れます。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | ContentList
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、ContentList オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ActiveRows | IRowCollection | 現在の Threshold プロパティと RowLimit プロパティを満たし、ContentList オブジェクトからフィルタ処理されていない行のコレクション。 このプロパティは読み取り専用です。
AllRows | IRowCollection | ContentList オブジェクトのすべての行のコレクションです。 このプロパティは読み取り専用です。
Count | long | ContentList オブジェクトの行数を格納します。 このプロパティは読み取りと書き込みが可能です。
Factory | IContentListFactory | この ContentList オブジェクトを作成した ContentListFactory オブジェクトへの参照を格納します。 このプロパティは読み取り専用です。
Fields | Fields | ContentList オブジェクトの特定の行の Fields コレクションです。 このプロパティは読み取り専用です。
RowLimit | long | ActiveRows コレクション プロパティに存在可能な最大行数を格納します。 このプロパティは読み取りと書き込みが可能です。
Sorted | Boolean | 返される ActiveRows コレクション プロパティの行がスコアで並べ替えられるかどうかを制御するフラグを格納します。 このプロパティは読み取りと書き込みが可能です。
Threshold | Float | 項目が ActiveRows コレクション プロパティに含まれるために満たさなければならない Threshold スコアを格納します。 このプロパティは読み取りと書き込みが可能です。
TraceMessages | ISimpleList | ContentList オブジェクトの特定の行に蓄積された TraceMessage 文字列のリストを格納します。 このプロパティは読み取り専用です。
TraceMode | Boolean | TraceMode 値を格納します。値が True の場合はスコア追跡が有効になり、False の場合は無効になります。 このプロパティは読み取りと書き込みが可能です。

次の表は、ContentList オブジェクトのメソッドを示しています。

メソッド | 説明
AdjustScore | 乗数を適用することによって、ContentList オブジェクトの項目に関連付けられたスコアを調整します。
BuildIndex | 指定した列に基づいてすべての行にインデックスを作成します。
Filter | 指定した条件に基づいて、ContentList オブジェクトの項目をフィルタ処理します。
GetData | このメソッドは、Microsoft Visual Basic または Microsoft Visual Basic Scripting Edition (VBScript) からは使えません。
GetScore | ContentList オブジェクトの項目のスコアを取得します。
Search | 検索条件に一致するコンテンツ項目のコレクションを返します。
SetData | このメソッドは、Microsoft Visual Basic または Microsoft Visual Basic Scripting Edition (VBScript) からは使えません。
SetScore | ContentList オブジェクトの項目のスコアを設定します。

解説

ContentList オブジェクトと ContentListFactory オブジェクトは両方とも、共通インターフェイス IDataContainer を実装しています。したがって、これらのオブジェクトは次のメソッドとプロパティを共有します。それぞれのメソッドとプロパティは、どちらのオブジェクトでも同一の機能を果たします。

プロパティ :

  • AllRows

  • Count

  • Fields

メソッド :

  • BuildIndex

  • GetData

  • Search

  • SetData

ContentList オブジェクトの機能は次のとおりです。

  • ContentList オブジェクトの非公開データと ContentListFactory オブジェクトの共有データを集計します。

  • コンテンツのリストのスコアリング、検索、およびフィルタ処理の機能を提供します。

ContentList オブジェクトは従属オブジェクトです。ContentListFactory.CreateNewContentList メソッドを呼び出すことによって、新しい ContentList オブジェクトを作成します。

重要

  • ContentList オブジェクトと ContentListFactory オブジェクトは、クライアントと共にインプロセスで実行されるように設計されています。GetData メソッドと SetData メソッドは、良好なパフォーマンスを得るため、ダイレクト メモリ アクセスを前提としています。


ContentList.ActiveRows

ActiveRows プロパティは、RowCollection オブジェクトを返します。このプロパティは読み取り専用ですが、RowCollection オブジェクトは読み取りと書き込みが可能です。RowCollection オブジェクト内のデータに対して行った変更は、ContentList オブジェクトにも反映されます。

定義

Property ActiveRows() As IRowCollection

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ActiveRows の RowCollection オブジェクトを使うと、Threshold プロパティに含まれる現在のしきい値スコア以上のスコアを持つ ContentList オブジェクトのコンテンツ項目にアクセスできます。Threshold プロパティの値が負の数に設定されている場合、Filter メソッドでフィルタ処理された項目でも ActiveRows コレクションに含まれる可能性があります。フィルタ処理される項目は、スコアがゼロに設定され、負のしきい値より大きいためです。

しきい値より大きいスコアを持つ項目の数とは無関係に、ActiveRows オブジェクトの項目数は RowLimit プロパティによって制限されます。

Sorted プロパティが True に設定されていない場合、ActiveRows コレクションの行の順番は定義されません。

関連項目

ContentList オブジェクト

RowCollection オブジェクト


ContentList.AdjustScore

このメソッドは、乗数を適用することによって、ContentList オブジェクトの項目のスコアを調整するために使います。

定義

Sub AdjustScore(
RowNum As Long,
Multiplier As Float,
Component As String,
Description As String
)

パラメータ

RowNum

スコアが調整される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

Multiplier

スコアが乗算される値を含む Float です。

Component

スコアを調整するパイプライン コンポーネントの識別子を含む省略可能な文字列です。規則により、これはパイプライン コンポーネントの ProgID になります。

Description

スコア調整追跡文字列に追加される説明を含む省略可能な文字列です。この文字列に、どのような調整を行うかを簡単に記述します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Component パラメータと Description パラメータは省略可能です。TraceMode プロパティが True に設定されていない場合、これらのパラメータは無視されます。

このメソッドは、CLCOL_SCORE_COLUMN フラグを設定した CLCOL_R4 型の列が ContentList オブジェクトに存在することを前提としています。

例

myContentList.AdjustScore 1, 1.25

関連項目

ContentList オブジェクト


ContentList.AllRows

AllRows プロパティは、新しい RowCollection オブジェクトを返します。このオブジェクトを使うと、ContentList オブジェクトの項目のほか、集計によって ContentListFactory オブジェクトの項目にもアクセスもできます。AllRows プロパティは読み取り専用ですが、RowCollection オブジェクトは読み取りと書き込みが可能です。RowCollection オブジェクトのデータに対して行った変更は、ContentList オブジェクトに反映されます。

定義

Property AllRows() As IRowCollection

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentList オブジェクト

RowCollection オブジェクト


ContentList.BuildIndex

このメソッドは、ContentList オブジェクトの特定の列にインデックスを作成するために使います。

定義

Sub BuildIndex(
vCol As Variant
)

パラメータ

vCol

インデックスを作成する列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

S_FALSE

その列にはインデックスが既に存在します。

解説

インデックスを作成できる列は、非公開列以外の読み取り専用の列で、データ型が、文字列型、Integer 型、あるいは文字列または Integer の配列型の列です。(CLCOL_READONLY が設定されていて、CLCOL_PRIVATE が設定されていない列)。また、CLCOL_I2、CLCOL_I4、CLCOL_STRING、および CLCOL_VARIANTARRAY 型の列に対してのみ、インデックスを付けることができます。非公開以外の列に制限されるので、その列は、対応する ContentListFactory オブジェクトに実際に存在することになります。

インデックスがまだ存在していない列で検索を実行すると、インデックスが自動的に作成されます。つまり、BuildIndex メソッドを呼び出す必要はまったくありませんが、パフォーマンスへの影響を避けるためには、一定の時間を費やして手動でインデックスを作成します。

このメソッドは、ContentListFactory オブジェクトにある同じ名前のメソッドと機能的に同一です。

例

myDataContainer.BuildIndex 10

関連項目

ContentList オブジェクト


ContentList.Count

Count プロパティ は読み取りと書き込みが可能な数値で、ContentList オブジェクトの項目数を取得または設定します。

定義

Property Count() As Long

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

通常、Count プロパティは、ContentList オブジェクトが ContentListFactory オブジェクトによって作成される時点で、既に確定しています。このプロパティは、コンテンツ項目をまだ 1 つも格納していない ContentListFactory オブジェクトによって作成された ContentList オブジェクトの場合だけは設定することができます。また、Count プロパティは、現在の設定より小さい数値に設定することはできません。

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentList オブジェクト


ContentList.Factory

Factory プロパティは、この ContentList オブジェクトを作成した ContentListFactory オブジェクトへの読み取り専用参照です。

定義

Property Factory As ContentListFactory

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

ContentList オブジェクト


ContentList.Fields

Fields プロパティは新しい Fields オブジェクトを作成します。このオブジェクトを使うと、指定したコンテンツ項目のフィールドにアクセスできます。Fields プロパティは読み取り専用ですが、Fields オブジェクトは、このオブジェクトによる変更を ContentList オブジェクトに反映させるため、読み取りと書き込みが可能です。

定義

Property Fields(
RowNum As Long
) As Fields

パラメータ

RowNum

Fields オブジェクトが返される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Fields オブジェクトは、ActiveX Data Objects (ADO) Fields オブジェクトと同じインターフェイスを公開しています。

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentList オブジェクト


ContentList.Filter

このメソッドは、ContentList オブジェクトの項目をフィルタ処理するために使います。フィルタを通過しない項目は、スコアが 0 に設定されます。

定義

Sub Filter(
vColumn As Variant,
vFilterCriteria As Variant,
FilterAction As FilterActionEnum,
Component As String
)

パラメータ

vColumn

インデックスを作成する列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

vFilterCriteria

フィルタ条件を含む Variant です。条件は、単一の文字列、文字列の配列、または Integer です。

FilterAction

列挙値です。有効な値は、FILTER_REQUIRE と FILTER_EXCLUDE です。これら 2 つのアクションの結果の詳細については、"解説" を参照してください。

Component

フィルタ処理を行うパイプライン コンポーネントの名前を示すための文字列です。このパラメータは省略可能で、スコア追跡に使います。追跡メッセージは、フィルタ処理されたコンテンツ項目に対して生成されます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ContentList オブジェクトの項目が条件に一致するのは、指定した列の値が vFilterCriteria parameter パラメータで渡した文字列または数値と正確に一致する場合です。vFilterCriteria パラメータが文字列の配列である場合は、その配列の文字列のいづれかに一致すると、条件に一致したと見なされます。FilterAction パラメータが FILTER_REQUIRE に設定されている場合、一致しない項目はスコアが 0 に設定されます。FilterAction パラメータが FILTER_EXCLUDE に設定されている場合、一致する項目はスコアが 0 に設定されます。

Commerce Server 2000 に用意されているパイプライン コンポーネントは、統一性を保持するために、そのコンポーネントのプログラム ID (ProgID) を Component パラメータに渡します。

例

myContentList.Filter "Score", 3, FILTER_EXCLUDE

関連項目

ContentList オブジェクト


ContentList.GetData

パフォーマンスへの考慮と互換性の問題が原因で、このメソッドは、Microsoft Visual Basic または Microsoft Visual Basic Scripting Edition (VBScript) からは使用できません。

関連項目

ContentList オブジェクト


ContentList.GetScore

このメソッドは、ContentList オブジェクトの項目のスコアを取得するために使います。

定義

Function GetScore(
RowNum As Long
) As Float

パラメータ

RowNum

スコアが返される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

戻り値

このメソッドが正常に終了すると、指定された項目のスコアを含む Float が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

例

'sngScore is a float
sngScore = myContentList.GetScore(12)

関連項目

ContentList オブジェクト


ContentList.RowLimit

RowLimit プロパティは読み取りと書き込みが可能な数値で、オブジェクトが ActiveRows プロパティに選択する最大項目数を指定します。

定義

Property RowLimit() As Long

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

ContentList オブジェクト

ContentList.ActiveRows


ContentList.Search

このメソッドは、RowCollection オブジェクトを作成するために使います。このオブジェクトを使うと、指定した条件に一致する ContentList オブジェクトの各項目にアクセスできます。

定義

Function Search(
vCol As Variant,
vSearchCriteria As Variant
) As IRowCollection

パラメータ

vCol

検索対象の列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

vSearchCriteria

フィルタ条件を含む Variant です。通常、条件は、文字列、文字列の配列、または Integer です。検索処理は、検索する列の型に、強制的にデータ型を合わせて行われます。

戻り値

このメソッドが正常に終了すると、新しい RowCollection オブジェクトへの参照が返されます。このオブジェクトには、一致する項目ごとに 1 つの行が含まれています。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

ContentList オブジェクトには、フィルタ条件に一致する行がありませんでした。その結果、返された RowCollection が空になっています。

解説

インデックス作成と検索のために、列は、共有にして (非公開ではなく)、読み取り専用とする必要があります。また、列のデータ型は、文字列、Integer (long または short) 、または検索可能な Variant 配列にする必要があります。検索条件は、検索する列の型に強制的に型変換できるなら Variant でも可能です。

検索条件がバリアントの配列である場合、返される行のセットには、検索条件の配列要素に一致する行がすべて含まれています。これは、一致する行の和集合です。

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

例

'myCol is a RowCollection object
Set myCol = myContentList.Search(10, "CarAds")

関連項目

ContentList オブジェクト


ContentList.SetData

パフォーマンスへの考慮のため、このメソッドは、Microsoft Visual Basic または Microsoft Visual Basic Scripting Edition (VBScript) からは使用できません。

関連項目

ContentList オブジェクト


ContentList.SetScore

このメソッドは、ContentList オブジェクトの項目に新しいスコアを設定するために使います。

定義

Sub SetScore(
RowNum As Long,
Score As Float,
Component As String,
Description As String
)

パラメータ

RowNum

新しいスコアが設定される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

Score

新しいスコアを含む Float です。

Component

新しいスコアを設定するパイプライン コンポーネントの名前を示すための文字列です。このパラメータは省略可能で、スコア追跡に使います。

Description

たとえば、表示頻度など、スコアが設定される理由を示すための文字列です。このパラメータは省略可能で、スコア追跡に使います。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Component パラメータと Description パラメータは省略可能です。

このメソッドは、CLCOL_SCORE_COLUMN フラグを設定した CLCOL_R4 型の列が ContentList オブジェクトに存在することを前提としています。

Commerce Server 2000 に用意されているパイプライン コンポーネントは、統一性を保持するために、そのコンポーネントのプログラム ID (ProgID) を Component パラメータに渡します。

例

'strProgID is a string
myContentList.SetScore(123456, 0.5, strProgID, "")

関連項目

ContentList オブジェクト


ContentList.Sorted

Sorted プロパティは読み取りと書き込みが可能な Boolean で、ContentList オブジェクトの ActiveRows プロパティで返される項目の列挙がスコアの降順に並べ替えられるかどうかを決定します。

定義

Property Sorted() As Boolean

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

値が True の場合、ContentList オブジェクトの ActiveRows プロパティで返される項目の列挙がスコアの降順に並べ替えられることを示します。値が False の場合は、並べ替えが行われないことを示します。リスト内の項目の位置が実際に変わるわけではありません。つまり、項目を識別する序数が変わることはありません。値を True に設定したときに影響を受けるのは、ActiveRows プロパティで返される項目の列挙だけです。後続の列挙については、このプロパティを再度 True に設定しなければ、並べ替えは行われません。

関連項目

ContentList オブジェクト


ContentList.Threshold

Threshold プロパティは読み取りと書き込みが可能な単精度小数点値です。この数値には、スコアしきい値が含まれます。このスコアしきい値以上でない項目は、ActiveRows コレクション プロパティに含めることができません。

定義

Property Threshold() As float

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

ContentList オブジェクト


ContentList.TraceMessages

TraceMessages プロパティは SimpleList オブジェクトで、ContentList オブジェクト内の特定の項目に蓄積された追跡文字列のリストを含んでいます。TraceMessages プロパティは読み取り専用ですが、SimpleList オブジェクトは読み取りと書き込みが可能です。

定義

Property TraceMessages(
RowNum As Long
) As ISimpleList

パラメータ

RowNum

追跡メッセージが返される行の位置を含む long です。行位置は、1 からではなく、0 から始まります。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

TraceMode プロパティは、スコア追跡を実行するかどうかを制御するグローバル スイッチとして機能します。このプロパティを True に設定すると、スコア追跡が実行されます。False に設定すると、スコア追跡が抑制されます。

スコア追跡を使うと、パフォーマンスが著しく低下します。そのため、普段は、スコア追跡を実行しないでください。しかし、スコア追跡は、スコアリングに関する問題のトラブルシューティングを行う場合に役立ちます。

TraceMode プロパティを False に設定した場合、または項目に対するスコアの変更を行っていない場合、リストは空になります。

リストの各項目の文字列は、次の形式になります。

<component>,<operator><number>,<description>

文字列の各フィールドの定義は次のとおりです。

component

スコアの変更を行うコンポーネントの識別子で、AdjustScore、SetScore、および Filter メソッドに渡されます。

operator

= は、SetScore メソッドまたは Filter メソッドによってスコアが絶対値に設定された場合に使われます。* は、AdjustScore メソッドによって乗数がスコアに適用された場合に使われます。

number

Filter メソッドまたは AdjustScore メソッドによる調整後に、SetScore メソッドから返されるスコアです。

description

スコアが変更された理由です。AdjustScore メソッドまたは SetScore メソッドに渡され、Filter メソッドによって設定されます。

次に、スコア追跡の例を示します。

"Commerce.AdNod,=0.9875,Need of Delivery".

関連項目

ContentList オブジェクト

ContentList.TraceMode


ContentList.TraceMode

TraceMode プロパティは読み取りと書き込みが可能な Boolean で、スコア追跡を有効にするか、または抑制するかを制御します。

定義

Property TraceMode() As Boolean

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、スコア追跡を実行するかどうかを制御するグローバル スイッチとして機能します。値を True に設定すると、追跡メッセージの SimpleList オブジェクトが構築され、TraceMessages プロパティを使ってアクセスすることができます。False に設定すると、スコア追跡が抑制されます。

スコア追跡を使うと、パフォーマンスが著しく低下します。そのため、普段は、スコア追跡を実行しないでください。しかし、スコア追跡は、スコアリングに関する問題のトラブルシューティングを行う場合に役立ちます。

関連項目

ContentList オブジェクト


ContentListFactory オブジェクト

このメソッドは、コンテンツ選択パイプライン (CSP) が Web ページに表示するコンテンツ項目を選択する際に、互いに競合するコンテンツ項目のリストを効率よく保守するために使います。

ProgID: | Commerce.ContentListFactory (外部作成可能)
COM クラス名: | ContentListFactory
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、ContentListFactory オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AllRows | IRowCollection | ContentListFactory オブジェクトのすべての行のコレクションです。 このプロパティは読み取り専用です。
Count | long | ContentListFactory オブジェクトの行数を格納します。 このプロパティは読み取りと書き込みが可能です。
Fields | Fields | ContentListFactory オブジェクトの特定の行の Fields コレクションです。 このプロパティは読み取り専用です。
Schema | IContentListSchema | この ContentListFactory オブジェクトで使われている ContentListSchema オブジェクトへの参照を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、ContentListFactory オブジェクトのメソッドを示しています。

メソッド | 説明
BuildIndex | 指定した列にインデックスを作成します。
ConstructFromRecordset | ContentListFactory オブジェクトを初期化し、ADO Recordset オブジェクトを基に新しい ContentListSchema オブジェクトを作成して初期化します。ContentListFactory オブジェクトには、Recordset オブジェクトからのデータが格納されます。
CreateNewContentList | この ContentListFactory オブジェクトで使われているスキーマに基づいて、新しい ContentList オブジェクトを作成します。新しい ContentList オブジェクトは、作成元の ContentListFactory オブジェクトの共有データにアクセスできます。
GetData | このメソッドは、Visual Basic または VBScript からは使えません。
Search | 検索条件に一致するコンテンツ項目のコレクションが含まれる RowCollection オブジェクトを返します。
SetData | このメソッドは、Visual Basic または VBScript からは使えません。

解説

重要

  • ContentList オブジェクトと ContentListFactory オブジェクトは、クライアントと共にインプロセスで実行できるように設計されています。GetData メソッドと SetData メソッドは、良好なパフォーマンスを得るため、ダイレクト メモリ アクセスを前提としています。

ContentList オブジェクトと ContentListFactory オブジェクトは両方とも、共通インターフェイス IDataContainer を実装しています。したがって、これらのオブジェクトは次のメソッドとプロパティを共有します。それぞれのメソッドとプロパティは、どちらのオブジェクトでも同一の機能を果たします。

プロパティ :

  • AllRows

  • Count

  • Fields

メソッド :

  • BuildIndex

  • GetData

  • Search

  • SetData


ContentListFactory.AllRows

AllRows プロパティは、新しい RowCollection オブジェクトを返します。このオブジェクトを使うと、ContentListFactory オブジェクトの項目にアクセスできます。AllRows プロパティは読み取り専用ですが、RowCollection オブジェクトは、このオブジェクトによる変更を ContentListFactory オブジェクトに反映させるため、読み取りと書き込みが可能です。

定義

Property AllRows() As IRowCollection

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、ContentList オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentListFactory オブジェクト

RowCollection オブジェクト


ContentListFactory.BuildIndex

このメソッドは、ContentListFactory オブジェクトの特定の列にインデックスを作成するために使います。

定義

Sub BuildIndex(
vCol As Variant
)

パラメータ

vCol

インデックスを作成する列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

S_FALSE

その列にはインデックスが既に存在します。

解説

インデックスを作成できる列は、非公開列以外の読み取り専用の列で、データ型が、文字列型、Integer 型、あるいは文字列または Integer の配列型の列です。(CLCOL_READONLY が設定されていて、CLCOL_PRIVATE が設定されていない列)。また、CLCOL_I2、CLCOL_I4、CLCOL_STRING、および CLCOL_VARIANTARRAY 型の列に対してのみ、インデックスを付けることができます。

インデックスがまだ存在していない列で検索を実行すると、インデックスが自動的に作成されます。つまり、BuildIndex メソッドを呼び出す必要はまったくありませんが、パフォーマンスへの影響を避けるためには、一定の時間を費やして手動でインデックスを作成します。

このメソッドは、ContentList オブジェクトにある同じ名前のメソッドと機能的に同一です。

例

call myContentListFactory.BuildIndex("AdType")

関連項目

ContentListFactory オブジェクト


ContentListFactory.ConstructFromRecordset

このメソッドは、新しい ContentListFactory オブジェクトを初期化したり、ADO Recordset オブジェクトを基に新しい ContentListSchema オブジェクトを作成して初期化するために使います。

定義

Sub ConstructFromRecordset(
Recordset As _Recordset,
Skip As Variant,
Add As ContentListSchema
)

パラメータ

Recordset

ContentList オブジェクトが構成される ADO Recordset オブジェクトへの参照です。

Skip

SimpleList オブジェクトである省略可能な Variant です。SimpleList オブジェクトには、Recordset オブジェクトに存在するフィールドのうち、新しい ContentList オブジェクトに列を持たないフィールドの名前が含まれています。

Add

追加の列、または新しい ContentList オブジェクトの作成時に考慮する必要がある既存の列を示す新しいフラグに関する情報を含む ContentListSchema オブジェクトへの省略可能な参照です。追加情報については、"解説" を参照してください。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Skip パラメータと Add パラメータは、いずれも省略可能です。

ContentListSchema オブジェクトに定義されていて、Recordset オブジェクトに存在しない列は、ContentListFactory オブジェクトの新しいスキーマに追加されます。ContentListSchema オブジェクトと Recordset オブジェクトの両方に定義したスキーマ列には、ContentListSchema オブジェクトから取得したフラグ設定が適用され、既定のフラグ設定よりも優先されます。それ以外のスキーマ列には、既定のフラグ設定が適用されます。そのほかの列は、共有または非公開のいずれかになります。この場合、共有列のデータは、SetData メソッドを使って初期化する必要があります。また、非公開列のデータは、対応する ContentList オブジェクトが作成されるまでは利用できません。

Recordset オブジェクトのフィールドを基に作成された列の dwFlags の既定値は、CLCOL_READONLY です。

ContentListFactory オブジェクトは、領域の割り当てが必要なデータの行数を確認するために、Recordset オブジェクトの RecordCount プロパティにアクセスしようとします。すべての Recordset オブジェクトが、この処理をサポートしているとは限りません。RecordCount プロパティを確認できない場合、ContentListFactory オブジェクトは、ファクトリを 100 行のチャンクに拡張します。このため、RecordCount プロパティが定義されている Recordset オブジェクトを渡すのが最も効率的です。

列の型は、次の表に従って Recordset オブジェクトからマップされます。

ADO の型 | ContentList の型
adSmallInt、adUnsignedSmallInt | CLCOL_I2
adInteger、adUnsignedInt、adError | CLCOL_I4
adSingle | CLCOL_I4
adDouble | CLCOL_R8
adDBDate、adDBTime、adDBTimeStamp | CLCOL_DATE
adChar、adVarChar、adLongVarChar、adWChar、adVarWChar、adLongVarWChar | CLCOL_STRING
adChapter*、adDispatch | CLCOL_DISPATCH
adChapter | CLCOL_UNKNOWN
adBoolean | CLCOL_BOOL

注

  • * 1 レベルの階層型 Recordset オブジェクトをサポートしています。子 Recordset オブジェクトが、Dictionary オブジェクトの SimpleList として ContentList オブジェクトに作成されます。

例

'rsSource is an existing recordset.
'vSkip is a simple list of fields to ignore.
'vSchema is a ContentListSchema object.
myContentListFactory.ConstructFromRecordset rsSource, vSkip, vSchema

関連項目

ContentListFactory オブジェクト


ContentListFactory.Count

Count プロパティ は読み取りと書き込みが可能な数値で、ContentListFactory オブジェクトのコンテンツ項目数を取得または設定します。

定義

Property Count() As Long

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ContentList オブジェクトが ContentListFactory オブジェクトによって作成された後は、Count プロパティの変更はできません。また、Count プロパティには、現在の設定よりも小さい数値を設定することはできません。

このプロパティは、ContentList オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentListFactory オブジェクト


ContentListFactory.CreateNewContentList

このメソッドは、この ContentListFactory オブジェクトに設定されたスキーマに基づいて、新しい ContentList オブジェクトを作成するために使います。新しく作成された ContentList オブジェクトは、このオブジェクトに格納されている非公開データ、およびこのオブジェクトを作成した ContentListFactory オブジェクトに格納されている共有データへの統一インターフェイスを提供します。

定義

Function CreateNewContentList() As ContentList

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、新しい ContentList オブジェクトへの参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

新しい ContentList オブジェクトは、この ContentListFactory オブジェクトに設定されたスキーマに基づいて作成されます。スキーマで CLCOL_PRIVATE として指定した列の記憶領域は、ContentList オブジェクトに割り当てられます。ContentList オブジェクトは、作成元のファクトリに戻るポインタを保持します。このファクトリが、"共有" 列の記憶領域が保持されている場所です。

ContentList オブジェクトは、ContentListFactory オブジェクトから独立して存在することはできません。

このメソッドを呼び出すための唯一の前提条件は、スキーマの設定が完了していることです。スキーマを設定するには、Schema プロパティを設定するか、ConstructFromRecordset メソッドを呼び出します。

例

set oMyContentList = myContentListFactory.CreateNewContentList()

関連項目

ContentListFactory オブジェクト


ContentListFactory.Fields

Fields プロパティは新しい Fields オブジェクトを作成します。このオブジェクトを使うと、指定したコンテンツ項目のフィールドにアクセスできます。Fields プロパティは読み取り専用ですが、Fields オブジェクトは、このオブジェクトによる変更を ContentListFactory オブジェクトに反映させるため、読み取りと書き込みが可能です。

定義

Property Fields(
RowNum As Long
) As Fields

パラメータ

RowNum

Fields オブジェクトが返される ContentListFactory オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Fields オブジェクトは、ADO Fields オブジェクトと同じインターフェイスを公開しています。

このプロパティは、ContentList オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentListFactory オブジェクト


ContentListFactory.GetData

パフォーマンスへの影響を考慮して、このメソッドは Visual Basic または VBScript からの使用を想定していません。

関連項目

ContentListFactory オブジェクト


ContentListFactory.Schema

Schema プロパティは、この ContentListFactory オブジェクトで使われているスキーマを含む ContentListSchema オブジェクトです。Schema プロパティは読み取りと書き込みが可能です。

定義

Property Schema() As ContentListSchema

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、1 回だけ設定されることを想定しています。ただし、ContentList オブジェクトが CreateNewContentList メソッドによって作成されるまで、または Count プロパティの設定によって ContentListFactory オブジェクトに行が割り当てられるまでは、このプロパティを変更できます。

このプロパティがまだ書き込まれていないときに、それを読み取ると、空の ContentListSchema オブジェクトが作成され、返されます。

関連項目

ContentListFactory オブジェクト


ContentListFactory.Search

このメソッドは、RowCollection オブジェクトを作成するために使います。このオブジェクトを使うと、指定した条件に一致する ContentListFactory オブジェクトの各項目にアクセスできます。

定義

Function Search(
vCol As Variant,
vSearchCriteria As Variant
) As IRowCollection

パラメータ

vCol

検索対象の列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

vSearchCriteria

フィルタ条件を含む Variant です。通常、条件は、文字列、文字列の配列、または Integer です。検索処理は、検索する列の型に、強制的にデータ型を合わせて行われます。

戻り値

このメソッドが正常に終了すると、新しい RowCollection オブジェクトへの参照が返されます。このオブジェクトには、一致する項目ごとに 1 つの行が含まれています。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

S_FALSE

ContentListFactory オブジェクトには、フィルタ条件に一致する行がありませんでした。その結果、返された RowCollection が空になっています。

解説

インデックス作成と検索のために、列は、共有にして (非公開ではなく)、読み取り専用とする必要があります。また、列のデータ型は、文字列、Integer (long または short) 、または検索可能な Variant 配列にする必要があります。検索条件は、検索する列の型に強制的に型変換できるなら Variant でも可能です。

検索条件が Variant の配列である場合、返される行のセットには、検索条件の配列要素に一致する行がすべて含まれています。これは、一致する行の和集合です。

このメソッドは、ContentList オブジェクトにある同じ名前のメソッドと機能的に同一です。

例

set oMyRowCollection = myDataContainer.Search("AdType", "CarAds")

関連項目

ContentListFactory オブジェクト


ContentListFactory.SetData

パフォーマンスへの影響を考慮して、このメソッドは Visual Basic または VBScript からの使用を想定していません。

関連項目

ContentListFactory オブジェクト


ContentListSchema オブジェクト

このオブジェクトは、ContentListFactory オブジェクトのスキーマを操作するために使います。

ProgID: | Commerce.ContentListSchema (外部作成可能)
COM クラス名: | ContentListSchema
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、ContentListSchema オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ColumnFlags | long | ビット フィールドで表される列フラグを格納します。 このプロパティは読み取りと書き込みが可能です。
ColumnName | 文字列 | 列名を格納します。 このプロパティは読み取りと書き込みが可能です。
ColumnType | ColumnTypeEnum | 列のデータ型を格納します。 このプロパティは読み取りと書き込みが可能です。
Count | long | スキーマで定義した列数を格納します。 このプロパティは読み取り専用です。
Locked | Boolean | このスキーマを変更できるかどうかを示します。 このプロパティは読み取りと書き込みが可能です。最初は False に設定されています。いったん True に設定すると、False に設定し直すことができません。

次の表は、ContentListSchema オブジェクトのメソッドを示しています。

メソッド | 説明
Add | 新しい列をスキーマに追加します。
FindColumn | 名前付き列の位置を返します。列位置は、1 からではなく、0 から始まります。この位置インデックスは、ContentList オブジェクトの GetData、SetData、Filter、および Search メソッドの Column インデックス パラメータとして使用できます。
GetSchema | スクリプトを実行せずに高いパフォーマンスで、スキーマ全体を返します。
SetSchema | スクリプトを実行せずに高いパフォーマンスで、スキーマ全体を設定します。


ContentListSchema.Add

このメソッドは、ContentListFactory オブジェクト、およびそれに関連付けられた ContentList オブジェクトで使われるスキーマに、新しい列を追加するために使います。

定義

Function Add(
sName As String,
Type As ColumnTypeEnum,
Flags As Long
) As Long

パラメータ

sName

新しい列の名前を含む文字列です。

Type

ColumnTypeEnum 列挙からの値です。詳細については、"解説" を参照してください。

Flags

新しい列のビット マスク列フラグ設定を含む long です。

戻り値

このメソッドが正常に終了すると、新しい列の位置を含む long が返されます。列位置は、1 からではなく、0 から始まります。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Locked プロパティが True に設定されると、その後、このメソッドの呼び出しは失敗します。ContentListFactory オブジェクトが、その ContentListSchema オブジェクトの Locked プロパティを True に設定するのは、次の条件のいずれかを満たす場合です。

  • Count プロパティを設定するか、ConstructFromRecordset メソッドを呼び出すことによって、データ行がファクトリに割り当てられている。

  • ContentListFactory オブジェクトを使って、CreateNewContentList メソッドにより ContentList オブジェクトが 1 つ以上構築されている。

次の表は、 ColumnTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
CLCOL_I2 | 2 | 16 ビット整数です。この値は、VARTYPE 値の VT_I2 に対応しています。
CLCOL_I4 | 3 | 32 ビット整数です。この値は、VARTYPE 値の VT_I4 に対応しています。
CLCOL_R4 | 4 | 短精度浮動小数点数です。この値は、VARTYPE 値の VT_R4 に対応しています。
CLCOL_R8 | 5 | 倍精度浮動小数点数です。この値は、VARTYPE 値の VT_R8 に対応しています。
CLCOL_CY | 6 | Currency 型の値を格納する 64 ビット整数です。この値は、VARTYPE 値の VT_CY に対応しています。この型で格納された金額値は、10,000 で位取りされます (小数点以下の桁数が 4 桁になります)。たとえば、値 86900 は、米国では $8.69 という Currency 型の値に対応します。また、これは SQL7 で使われる金額データ型と同じです。
CLCOL_DATE | 7 | Date/Time 型の値を格納するために使う倍精度浮動小数点数です。この値は、VARTYPE 値の VT_DATE に対応しています。
CLCOL_DISPATCH | 9 | スクリプティングまたはオートメーションをサポートするオブジェクトへの参照です (IDispatch から継承します)。この値は、VARTYPE 値の VT_DISPATCH に対応しています。
CLCOL_BOOL | 11 | Boolean 値です。この値は、VARTYPE 値の VT_BOOL に対応しています。C++ の 4 バイトの BOOL 型と混同しないようにしてください。
CLCOL_UNKNOWN | 13 | スクリプティングまたはオートメーションをサポートしていない可能性がある IUnknown ベースのインターフェイスへの参照です (IUnknown から継承します)。この値は、VARTYPE 値の VT_UNKNOWN に対応しています。
CLCOL_STRING | 14 | すべての ContentListFactory オブジェクトが維持しているプライベート ヒープの文字列へのポインタです。対応する VARTYPE 値はありません。
CLCOL_VARIANTARRAY | 15 | SAFEARRAY へのポインタです。対応する Variant 型は、VT_ARRAY または VT_VARIANT です。

注

  • これらの型は、CLCOL_STRING と CLCOL_VARIANTARRAY を除いて、対応する VARTYPE と同一であり、同じ定数値を共有します。これらの型は、VARTYPE として使うこともできます。

例

'"Color" is the column name.
'CLCOL_STRING indicates the column is of type String.
'0 indicates that no flags are applied.

dim iColumnNum as Long
iColumnNum = myContentListSchema.Add("Color", CLCOL_STRING, 0)

関連項目

ContentListSchema オブジェクト


ContentListSchema.ColumnFlags

ColumnFlags プロパティは読み取りと書き込みが可能な long で、列フラグを含んでいます。

定義

Property ColumnFlags(
vColumn As Variant
) As Long

パラメータ

vColumn

処理対象の列を識別するための列名または列位置のいずれかを含む Variant です。列位置は、1 からではなく、0 からカウントされます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

列フラグは、ビット フィールドで表されます。次の表は、列フラグのビットを操作するために、使用するビットの意味と利用できる定数を示しています。

ビット | 定数 | 説明
1 | CLCOL_READONLY (= 0x01) | このビットを設定している列のデータは、読み取り専用で、更新できません。これに関しては、ContentListFactory オブジェクトに格納されているデータも同じようになります。このデータは、複数のページ要求で共有されるためです。 このビットを設定していない列のデータは、読み取りと書き込みが可能で、自由に更新できます。レコードのロックは実行されません。そのため、ContentListFactory オブジェクトのデータを更新するときに、更新の競合が発生する可能性があります。これは、非公開として指定した列には関係がありません。非公開列は ContentList オブジェクトの個別のインスタンスに存在しており、ContentList オブジェクトは通常、単一のスレッドのために作成され、単一のスレッドだけで使用されるからです。
2 | CLCOL_PRIVATE (= 0x02) | このビットを設定した列のデータは、このスキーマに基づいて作成された各 ContentList オブジェクトに公開されません。つまり、このデータは、作成される各 ContentList オブジェクトに別々に格納されます。対応する ContentListFactory オブジェクトの共有列には格納されません。
4 | CLCOL_SCORE_COLUMN (= 0x04) | このビットを設定した列のデータは、コンテンツ項目に関連付けられたスコア値になります。この列の型は、短精度浮動小数点数型 (CLCOL_R4) でなければなりません。また、このフラグを設定できるのは、スキーマ内の 1 つの列に限定されます。さらに、一意のスコア値は個別の各ページ要求に関連付ける必要があるため、このビットの設定は必ず CLCOL_PRIVATE ビットと併せて行います。 言い換えれば、このビットを設定できるのは、ContentListFactory オブジェクトとは対照的な ContentList オブジェクトに格納され、スコア列として指定された列でなければなりません。

関連項目

ContentListSchema オブジェクト


ContentListSchema.ColumnName

ColumnName プロパティは読み取りと書き込みが可能な文字列で、列の名前を含んでいます。

定義

Property ColumnName(
vColumn As Variant
) As String

パラメータ

vColumn

処理対象の列を識別するための列名または列位置のいずれかを含む Variant です。列位置は、1 からではなく、0 からカウントされます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

列名を取得するために vColumn パラメータの値としてその列名を使用しても意味がありません。列名を渡すことに意味があるのは、列名を変更する場合です。

関連項目

ContentListSchema オブジェクト


ContentListSchema.ColumnType

ColumnType プロパティは、ColumnTypeEnum 列挙から取得される読み取りと書き込みが可能な値で、指定した列のデータ型を示します。

定義

Property ColumnType(
vColumn As Variant
) As ColumnTypeEnum

パラメータ

vColumn

処理対象の列を識別するための列名または列位置のいずれかを含む Variant です。列位置は、1 からではなく、0 からカウントされます。

[out,retval] プロパティを取得する場合は、ColumnTypeEnum 列挙から値を返すために使うポインタです。詳細については、"解説" を参照してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、 ColumnTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
CLCOL_I2 | 2 | 16 ビット整数です。この値は、VARTYPE 値の VT_I2 に対応しています。
CLCOL_I4 | 3 | 32 ビット整数です。この値は、VARTYPE 値の VT_I4 に対応しています。
CLCOL_R4 | 4 | 短精度浮動小数点数です。この値は、VARTYPE 値の VT_R4 に対応しています。
CLCOL_R8 | 5 | 倍精度浮動小数点数です。この値は、VARTYPE 値の VT_R8 に対応しています。
CLCOL_CY | 6 | Currency 型の値を格納する 64 ビット整数です。この値は、VARTYPE 値の VT_CY に対応しています。この型で格納された金額値は、10,000 で位取りされます (小数点以下の桁数が 4 桁になります)。たとえば、値 86900 は、米国では $8.69 という Currency 型の値に対応します。また、これは SQL7 で使われる金額データ型と同じです。
CLCOL_DATE | 7 | Date/Time 型の値を格納するために使う倍精度浮動小数点数です。この値は、VARTYPE 値の VT_DATE に対応しています。
CLCOL_DISPATCH | 9 | スクリプティングまたはオートメーションをサポートするオブジェクトへの参照です (IDispatch から継承します)。この値は、VARTYPE 値の VT_DISPATCH に対応しています。
CLCOL_BOOL | 11 | Boolean 値です。この値は、VARTYPE 値の VT_BOOL に対応しています。C++ の 4 バイトの BOOL 型と混同しないようにしてください。
CLCOL_UNKNOWN | 13 | スクリプティングまたはオートメーションをサポートしていない可能性がある IUnknown ベースのインターフェイスへの参照です (IUnknown から継承します)。この値は、VARTYPE 値の VT_UNKNOWN に対応しています。
CLCOL_STRING | 14 | すべての ContentListFactory オブジェクトが維持しているプライベート ヒープの文字列へのポインタです。対応する VARTYPE 値はありません。
CLCOL_VARIANTARRAY | 15 | SAFEARRAY へのポインタです。対応する Variant 型は、VT_ARRAY または VT_VARIANT です。

注

  • これらの型は、CLCOL_STRING と CLCOL_VARIANTARRAY を除いて、対応する VARTYPE と同一であり、同じ定数値を共有します。実際に、これらの型は VARTYPE として使われることもあります。

関連項目

ContentListSchema オブジェクト


ContentListSchema.Count

Count プロパティは読み取り専用の値で、スキーマの現在の列数を含んでいます。

定義

Property Count() As Long

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

ContentListSchema オブジェクト


ContentListSchema.FindColumn

このメソッドは、名前で指定された列の位置を見つけるために使います。

定義

Function FindColumn(
sName As String
) As Long

パラメータ

sName

位置が返される列の名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、新しい列の位置を含む long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

列位置は、1 からではなく、0 からカウントされます。

例

'"Color" is the column name.
Dim iColumnNum as Long

iColumnNum = myContentListSchema.FindColumn("Color")

関連項目

ContentListSchema オブジェクト


ContentListSchema.GetSchema

高いパフォーマンスを得るために、このメソッドは、Microsoft Visual Basic または Microsoft Visual Basic Scripting Edition (VBScript) からの使用を想定していません。

関連項目

ContentListSchema オブジェクト


ContentListSchema.Locked

Locked プロパティは読み取りと書き込みが可能な Boolean で、ContentListSchema オブジェクトを変更できるかどうかを示します。値が True の場合、スキーマはロックされ、変更できないことを示します。値が False の場合、スキーマはロックされず、変更できることを示します。いったんオブジェクトが使用されると、スキーマは変更できなくなります。

定義

Property Locked() As Boolean

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティが True に設定されると、直ちに ContentListSchema オブジェクトが恒久的にロックされます。このオブジェクトに含まれるスキーマは、いったんロックされると、変更することもロックを解除することもできません。行が割り当てられるか、ContentList オブジェクトが作成されると、そのどちらが先に発生したかにかかわらず、直ちに ContentListFactory オブジェクトがスキーマをロックします。

関連項目

ContentListSchema オブジェクト


ContentListSchema.SetSchema

高いパフォーマンスを得るために、このメソッドは、Microsoft Visual Basic または Microsoft Visual Basic Scripting Edition (VBScript) からの使用を想定していません。

関連項目

ContentListSchema オブジェクト


ContentSelector オブジェクト

このメソッドは、Web ページへの表示に 1 つ以上のコンテンツ項目を選択するために使います。コンテンツは、顧客キャンペーン (広告、割引) から取得するか、またはコンテンツ選択フレームワーク (CSF) 上に構築したカスタム アプリケーションから取得することもできます。

Web ページへの表示にカスタム コンテンツを選択する場合、ContentSelector オブジェクトのインスタンスを作成してから使うようにすると、CSF を使用することができます。ContentSelector オブジェクトは、さまざまな CSF パイプラインを呼び出して、GetContent メソッドに渡されたディクショナリーに基づいて、さまざまな種類のコンテンツを選択します。

ProgID: | Commerce.ContentSelector (外部作成可能)
COM クラス名: | CContentSelector
タイプ ライブラリ名: | Microsoft Commerce 2000 CSF Pipeline Component 1.0 Type Library
DLL 名: | CSFComp.dll
スレッド モデル: | 両方

ContentSelector オブジェクトは、Dictionary オブジェクトのメソッドとプロパティをすべて実装します。次の表は、Dictionary オブジェクトから継承されないメソッドだけを示しています。

メソッド | 説明
GetContent | コンテンツ選択パイプラインを実行します。パイプラインは、1 つ以上のコンテンツ項目を選択します。選択されたコンテンツ項目は、SimpleList オブジェクトに格納され、HTML または XML の文字列として書式設定されます。

解説

Context ディクショナリには、その ContextProfile エントリの ContentSelector オブジェクトへの参照が保持されます。この ContentSelector オブジェクトは、任意のプロパティをパイプライン コンポーネントに渡すために使われます。任意のプロパティは ContentSelector オブジェクトに関連付けることができます。ContentSelector オブジェクトは Dictionary オブジェクトから継承されているためです。

関連項目

コンテンツ選択オブジェクト


ContentSelector.GetContent

このメソッドは、コンテンツ選択パイプラインを実行し、取得したコンテンツを SimpleList オブジェクトに返すために使います。

定義

Function GetContent(
dictCSFContext As IDictionary,
) As ISimpleList

パラメータ

dictCSFContext

CSF アプリケーションのインスタンスの構成情報を持つ、グローバル コンテキスト ディクショナリです。このディクショナリには、ContentSelector オブジェクトで使われるグローバルなオブジェクトと構成が含まれています。ContentSelector オブジェクトが実行するパイプラインを認識できるように、このディクショナリには、少なくとも Pipeline キーが含まれていなければなりません。

戻り値

このメソッドが正常に終了すると、選択されたコンテンツを含む SimpleList オブジェクトへの参照が返されます。SimpleList オブジェクトの要素は、HTML または XML の文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

注

  • このメソッドは、呼び出したパイプラインによって返されるエラーを返すこともできます。

解説

ContentSelector オブジェクトは、ディクショナリ オブジェクトに渡された Pipeline キーを読み取り、呼び出すパイプライン オブジェクトを見つけます。そして、渡されたディクショナリの値を新しいディクショナリにコピーします。この新しいディクショナリは、パイプ Context ディクショナリとしてパイプラインに渡されます。空のディクショナリが作成され、Order ディクショナリとしてパイプラインに渡されます。ContentSelector オブジェクトは、それ自身への参照をパイプ Context ディクショナリの ContextProfile キーで追加します。

パイプラインの実行が完了すると、ContentSelector オブジェクトは、Order ディクショナリの _formatted というキーを探し、そのキーに割り当てられたリストを戻り値として返します。_formatted キーに割り当てられたリストが存在しない場合、空のリストが作成され返されます。パイプ Context ディクショナリの自己参照は削除され、循環参照ができなくなります。ContentSelector オブジェクトが制御を戻す前に、Order ディクショナリと Context ディクショナリへの参照が ContentSelector オブジェクトに追加され、パイプラインによってそれらのディクショナリに書き込まれた値にページ アクセスできるようになります。

例

サンプル コードについては、「ContentSelector オブジェクト」を参照してください。

関連項目

CacheManager オブジェクト

コンテンツ選択パイプライン

ContentSelector オブジェクト


DataFunctions オブジェクト

このメソッドは、サイト内で、ロケール ベースの書式設定、解析、および値範囲のチェックを実行するために使います。このオブジェクトには、サイトの開発に役立つ各種ユーティリティもあります。

ProgID: | Commerce.DataFunctions (外部作成可能)
COM クラス名: | DataFunctions_4_0
タイプ ライブラリ名: | Commerce -- MSCSAspHelp Type Library
DLL 名: | MSCSAspHelp.dll
スレッド モデル: | 両方

次の表は、DataFunctions オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Locale | long | 日付、時刻、金額、および数値を書式設定するために使われる既定のロケールを表す数値を格納します。 このプロパティは読み取りと書き込みが可能です。
CurrencySymbol | Variant | ConvertStringToCurrency メソッドと LocalizeCurrency メソッドに通貨記号が指定されなかった場合に使われる通貨記号を格納します。既定値は、システムの既定の通貨記号です。 このプロパティは読み取りと書き込みが可能です。

次の表は、DataFunctions オブジェクトのメソッドを示しています。

メソッド | 説明
CleanString | 指定した文字列を処理します。この処理には、空白の除去、文字列の大文字/小文字変換、および文字列の長さが指定した範囲に収まるかどうかの検証が含まれます。
ConvertDateString | 既定のロケールまたは指定したロケールに基づいて、指定した日付の文字列表記を、Date Variant に変換します。
ConvertDateTimeString | 既定のロケールまたは指定したロケールに基づいて、指定した日付と時刻の文字列表記を、Date Variant に変換します。
ConvertFloatString | 既定のロケールまたは指定したロケールに基づいて、指定した浮動小数点数の文字列表記を、Double Variant に変換します。
ConvertMoneyStringToNumber | 既定のロケールまたは指定したロケールに基づいて、指定した金額値の文字列表記を long Variant に変換します。
ConvertNumberString | 既定のロケールまたは指定したロケールに基づいて、指定した数値の文字列表記を、Integer Variant に変換します。
ConvertTimeString | 既定のロケールまたは指定したロケールに基づいて、指定した時刻値の文字列表記を、Date Variant に変換します。
Date | 既定のロケールまたは指定したロケールに基づいて、Date Variant に格納された日付の文字列表記を返します。
DateTime | 既定のロケールまたは指定したロケールに基づいて、Date Variant に格納された日付と時刻の文字列表記を返します。
Float | 既定のロケールまたは指定したロケールに基づいて、浮動小数点数の文字列表記を返します。
GetLocaleInfo | 指定したロケールに関する情報を取得します。
GetLocaleList | インストールされているロケールのリストを取得します。
Money | 既定のロケールまたは指定したロケールに基づいて、書式設定された通貨の文字列を返します。
Number | 既定のロケールまたは指定したロケールに基づいて、数値の文字列表記を返します。
Time | 既定のロケールまたは指定したロケールに基づいて、date Variant に格納された時刻の文字列表記を返します。
ValidateDateTime | 指定した文字列に有効な日付または時刻、あるいはその両方が含まれているかどうかを確認します。また、指定した範囲に当てはまるかどうかを必要に応じて確認します。
ValidateFloat | 指定した文字列に有効な浮動小数点数が含まれているかどうかを確認します。また、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認します。
ValidateNumber | 指定した文字列に有効な数値が含まれているかどうかを確認します。また、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認します。
CloneObject | SimpleList オブジェクトまたは Dictionary オブジェクトを複製します。
ConvertStringToCurrency | 指定した金額値の文字列表記を Currency Variant に変換します。
LocalizeCurrency | 指定したロケールと通貨記号の書式設定に基づいて、金額値の文字列表記を作成します。


DataFunctions.CleanString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、文字列を処理するために使います。この処理には、先頭と末尾の空白の除去、文字列の大文字/小文字変換、および文字列の長さが指定した範囲に収まっているかどうかの検証が含まれます。

定義

Function CleanString(
vtInput As Variant,
vtMinLen As Variant,
vtMaxLen As Variant,
vtStripWhite As Variant,
vtStripReturn As Variant,
vtCase As Variant,
vtLocale As Variant
) As Variant

パラメータ

vtInput

処理する文字列のテキストを含む Variant です。

vtMinLen

入力文字列の長さが特定の範囲に収まっているかどうかを検証するときに使われる、最短の長さを示すための数値を含む Variant です。このパラメータの既定値は 0 です。

vtMaxLen

入力文字列の長さが特定の範囲に収まっているかどうかを検証するときに使われる、最長の長さを示すための数値を含む Variant です。このパラメータの既定値は無制限です。

vtStripWhite

入力文字列から先頭と末尾の空白を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。

vtStripReturn

入力文字列に格納されている改行文字を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。

vtCase

入力文字列の大文字/小文字変換を指定する Variant です。このパラメータの既定値は 0 です。この場合、入力文字列の大文字/小文字変換は実行されません。このパラメータが 1 に設定されている場合、入力文字列は大文字に変換されます。このパラメータが 2 に設定されている場合、入力文字列は小文字に変換されます。

このパラメータの既定値は 0 です。この場合、入力文字列の大文字/小文字変換は実行されません。このパラメータが 1 に設定されている場合、入力文字列は大文字に変換されます。このパラメータが 2 に設定されている場合、入力文字列は小文字に変換されます。

vtLocale

入力文字列を処理するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、処理済みの文字列を含む文字列 Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Dim Result
Dim strData
strData = " Microsoft Press   "
Result = MSCSDataFunctions.CleanString(strData, 1, 20, True, True, 1)
Response.Write Result
' "MICROSOFT PRESS" will be written to the page
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

Page.RequestString


DataFunctions.CloneObject

このメソッドは、SimpleList オブジェクトまたは Dictionary オブジェクトを複製するために使います。このメソッドは、複製されたオブジェクトのディープ コピーを実行して、新しいメモリがその複製に割り当てられるようにします。

定義

Function CloneObject(
pdispSource As Object
) As Object

パラメータ

pdispSource

複製される SimpleList オブジェクトまたは Dictionary オブジェクトへの参照です。

戻り値

このメソッドが正常に終了すると、SimpleList オブジェクトまたは Dictionary オブジェクトの複製への参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dSource and dCopy are Dictionary objects
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")

dCopy = MSCSDataFunctions.CloneObject(dSource)

関連項目

DataFunctions オブジェクト

DataFunctions.Locale


DataFunctions.ConvertDateString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、日付の文字列を Date Variant に変換するために使います。

定義

Function ConvertDateString(
vtDate As Variant,
vtLocale As Variant
) As Variant

パラメータ

vtDate

変換対象となる日付の文字列表記を含む Variant です。

vtLocale

文字列を処理するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、変換後の値を含む Date Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

DataFunctions.ConvertDateString メソッドは、日付の文字列表記を Date Variant に変換するときに、ラトビア語とブルガリア語のロケールの場合は、Null を返すことがあります。この問題を避けるには、[コントロール パネル] の [地域のオプション] に従って、日付表記文字列の末尾に追加された定数文字列を削除します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
' Converts date using US and France locales
Dim Result
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
myLocale = "1036"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertDateString("12/1/2000", myLocale)
Response.Write "France: " & Result & "<P>"
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertDateString("12/1/2000", myLocale)
Response.Write "USA: " & Result
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertDateTimeString

DataFunctions.Date

DataFunctions.DateTime

Page.RequestTime


DataFunctions.ConvertDateTimeString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、日付と時刻の文字列を Date/Time Variant に変換するために使います。

定義

Function ConvertDateTimeString(
vtDateTime As Variant,
vtLocale As Variant
) As Variant

パラメータ

vtDateTime

変換対象の日付/時刻値を指定する文字列を含む Variant です。

vtLocale

日付を変換するときに使われるロケールを指定する Variant です。この値が指定されなかった場合は、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、変換後の日付/時刻値を含む Date/Time Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
' Converts date time string using US and France locales
' vSourceDateTime is a variant containing a date time string
Dim Result
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
myLocale = "1036"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertDateTimeString(vSourceDateTime, _
    myLocale)
Response.Write "France: " & Result & "<P>"
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertDateTimeString(vSourceDateTime , _
    myLocale)
Response.Write "USA: " & Result
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertDateString

DataFunctions.Date

DataFunctions.DateTime

Page.RequestTime


DataFunctions.ConvertFloatString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、文字列表記された浮動小数点数を Double Variant に変換するために使います。

定義

Function ConvertFloatString(
vtNum As Variant,
vtLocale As Variant
) As Variant

パラメータ

vtNum

変換対象となる浮動小数点数の文字列表記を含む Variant です。

vtLocale

文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、変換後の数値を含んだ Double Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
' Converts float using US and France locales
' vSourceFloat is a variant containing a float string
Dim Result
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
myLocale = "1036"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertFloatString(vSourceFloat , _
    myLocale)
Response.Write "France: " & Result & "<P>"
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertFloatString(vSourceFloat , _
    myLocale)
Response.Write "USA: " & Result
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.Float

DataFunctions.ValidateFloat


DataFunctions.ConvertMoneyStringToNumber

このメソッドは、既定のロケールまたは指定したロケールに基づいて、金額の文字列を数値に変換するために使います。

定義

Function ConvertMoneyStringToNumber(
vtMoney As Variant,
vtLocale As Variant
) As Variant

パラメータ

vtMoney

変換対象となる金額値の文字列表記を含む Variant です。

vtLocale

文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、指定した文字列値を表現する Integer Variant が返されます。この数値の単位は、指定したロケールの基本通貨単位です。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ConvertMoneyStringToNumber メソッドは、指定したロケールの基本通貨単位で値を返します。たとえば、値の単位が米ドルである場合、ConvertMoneyStringToNumber はその値をセント単位で表現した数値を返します。

また、ConvertMoneyStringToNumber は、値の端数処理を行いません。たとえば、"123.009" を渡すと、このメソッドは 12301 ではなく 12300 を返します。

このメソッドは、OLE Currency 型ではなく long 型の Variant を返します。

このメソッドは、金額値の文字列表記を Currency Variant に変換するときに、スウェーデン語とポルトガル語 (標準) のロケールの場合は、Null を返すことがあります。この問題を避けるには、ConvertMoneyStringToNumber メソッドを呼び出す前に、Microsoft Visual Basic Scripting Edition (VBScript) の関数 Replace(MoneyString, CurrencyDigitGroupingSymbol, "") を使って、金額の文字列から通貨の桁区切り記号を削除します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
Amount = "12000"
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertMoneyStringToNumber("34.095", myLocale)
Response.Write "USA: " & Result & "<P>"
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertFloatString

DataFunctions.ConvertNumberString


DataFunctions.ConvertNumberString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、文字列表記された整数を Integer Variant に変換するために使います。

定義

Function ConvertNumberString(
vtNum As Variant,
vtLocale As Variant
) As Variant

パラメータ

vtNum

変換対象となる数値の文字列表記を含む Variant です。

vtLocale

文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、変換後の数値を含んだ Integer Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ConvertNumberString メソッドは、整数のみを受け付けるように設計されています。vtNum パラメータとして浮動小数点数を渡すと、エラーになります。浮動小数点数を変換するには、ConvertFloatString メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
' Converts integer string using US and France locales
' vSourceInt is a variant containing an integer string
Dim Result
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
myLocale = "1036"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertNumberString(vSourceInt , _
    myLocale)
Response.Write "France: " & Result & "<P>"
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertNumberString(vSourceInt , _
    myLocale)
Response.Write "USA: " & Result
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertFloatString

DataFunctions.Number

DataFunctions.ValidateNumber


DataFunctions.ConvertStringToCurrency

このメソッドは、指定したロケールまたは通貨記号に基づいて、金額値の文字列表記を Currency Variant に変換するために使います。

定義

Function ConvertStringToCurrency(
vtMoneyString As Variant,
Optional vtLocale As Variant,
Optional vtCurrencySymbol As Variant
) As Variant

パラメータ

vtMoneyString

変換する通貨の文字列を含む Variant です。

vtLocale

文字列を Currency Variant に変換するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

vtCurrencySymbol

通貨の文字列を変換するときに必要な通貨記号を含む Variant です。

戻り値

このメソッドが正常に終了すると、変更後の金額値の文字列表記を返すために使われる Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
' vtAmount is a string representation of a monetary value
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set to USA
myLocale = 1033
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertStringtoCurrency(vtAmount, _
    myLocale, "$")
Response.Write "USA: " & Result & "<P>"

%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.LocalizeCurrency

DataFunctions.ConvertMoneyStringToNumber


DataFunctions.ConvertTimeString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、時刻の文字列を Date Variant に変換するために使います。

定義

Function ConvertTimeString(
vtDate As Variant,
vtLocale As Variant
) As Variant

パラメータ

vtDate

変換対象となる時刻の文字列表記を指定する Variant です。

vtLocale

文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、時刻を含む Date Variant が返されます。正常に終了しない場合は、Null が返されます。また、文字列表記が日付を含む場合、ConvertTimeString は Null を返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
' vtTimeString is a string representation of a time value
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set to USA
myLocale = 1033
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertTimeString(vtTimeString , myLocale)
Response.Write "USA: " & Result & "<P>"

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.Time

DataFunctions.ValidateDateTime


DataFunctions.CurrencySymbol

CurrencySymbol プロパティは読み取りと書き込みが可能な文字列 Variant で、ConvertStringToCurrency メソッドと LocalizeCurrency メソッドに通貨記号が指定されなかった場合に使われる通貨記号を格納します。既定値は、システムの既定の通貨記号です。

定義

Property CurrencySymbol As Variant

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

DataFunctions オブジェクト

DataFunctions.ConvertStringToCurrency

DataFunctions.LocalizeCurrency


DataFunctions.Date

このメソッドは、既定のロケールまたは指定したロケールに基づいて、Date Variant を、指定した日付の文字列表記に変換するために使います。

定義

Function Date(
dtDate As Date,
vtLocale As Variant
) As Variant

パラメータ

dtDate

書式設定する日付を含む Date Variant です。

vtLocale

日付を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、文字列として書式設定された日付値を含む文字列 Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result, vtDateVar
' vtDateVar is a date variant containing a valid date
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.Date(vtDateVar)
Response.Write "USA: " & Result & "<P>"
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.DateTime

DataFunctions.ValidateDateTime

DataFunctions.ConvertDateString


DataFunctions.DateTime

このメソッドは、既定のロケールまたは指定したロケールに基づいて、Date Variant を、指定した日付値の文字列表記に変換するために使います。

定義

Function DateTime(
dtDate As Date,
vtLocale As Variant
) As Variant

パラメータ

dtDate

変換対象となる日付/時刻値を含む Date です。

vtLocale

Date Variant を文字列に変換するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、指定した日付/時刻値の文字列表記を含む文字列 Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result, vtDateVar
' vtDateVar is a date variant containing a valid date time value
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.DateTime(vtDateVar)
Response.Write "USA: " & Result & "<P>"
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.Date

DataFunctions.ValidateDateTime

Page.RequestTime


DataFunctions.Float

このメソッドは、既定のロケールまたは指定したロケールに基づいて、Double で格納された数値を、その数値の文字列表記に変換するために使います。

定義

Function Float(
fNumber As Double,
vtLocale As Variant
) As Variant

パラメータ

fNumber

変換対象となる浮動小数点数を含む Double です。

vtLocale

浮動小数点数を文字列に変換するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、指定した浮動小数点数の文字列表記を含む文字列 Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
Amount = "12000"
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
myInputFloat = 100.00010
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.Float(myInputFloat, myLocale,True, False)
Response.Write "USA, No Rounding, With Trailing: " & Result & "<P>"
Result = MSCSDataFunctions.Float(myInputFloat, myLocale,True, True)
Response.Write "USA, No Rounding, Trim Trailing: " & Result & "<P>"
Result = MSCSDataFunctions.Float(myInputFloat, myLocale,False, False)
Response.Write "USA, Rounding, With Trailing: " & Result & "<P>"
Result = MSCSDataFunctions.Float(myInputFloat, myLocale,False, True)
Response.Write "USA, Rounding, Trim Trailing: " & Result & "<P>"
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ValidateFloat

DataFunctions.ConvertFloatString


DataFunctions.GetLocaleInfo

このメソッドは、指定したロケールに関する情報を取得するために使います。

定義

Function GetLocaleInfo(
vtInfo As Long,
vtLocale As Variant
) As Variant

パラメータ

vtInfo

返すロケール情報の種類を示す long です。この値は、LCTYPE 定数のうちのいずれかにマップしなければなりません。これらの定数については、Win32 SDK のヘルプを参照してください。

vtLocale

情報を返すロケールを識別する Variant です。この Variant が空 (VT_EMPTY) または Nulll (VT_NULL) の場合、このメソッドは、put_Locale の最新の呼び出しによって指定したロケールの情報を返します。

戻り値

このメソッドが正常に終了すると、要求したロケール情報を含む文字列 Variant を返します。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Locale プロパティには、日付、時刻、金額、および数値の情報を書式設定するために DataFunctions メソッドで使われる既定のロケールを示す数値を格納します。それらの DataFunctions メソッドは、パラメータでロケール値を受け取るため、その値が指定されなかった場合は、このプロパティの値が使われます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Dim vtResult, lInfo
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
vtResult = MSCSDataFunctions.GetLocaleInfo(lInfo, myLocale)

関連項目

DataFunctions オブジェクト

DataFunctions.Locale


DataFunctions.GetLocaleList

このメソッドは、コンピュータ上で利用できるロケールが含まれている SimpleList オブジェクトを取得するために使います。

定義

Function GetLocaleList() As Variant

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、コンピュータ上で利用できるロケールを指定する SimpleList オブジェクトを参照するオブジェクト Variant を返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

DataFunctions.Locale


DataFunctions.Locale

Locale プロパティは、日付、時刻、金額、および数値の情報を書式設定するためにDataFunctions メソッドで使われる既定のロケールを示す読み取りと書き込みが可能な long です。DataFunctions メソッドは、パラメータでロケール値を受け取るため、その値が指定されなかった場合は、このプロパティを初期化したときの値が使われます。

定義

Property Locale As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Commerce Server オブジェクトに実装されたメソッドの多くは、省略可能なパラメータとしてロケール ID を受け取ります。これらの ID は、一意の 16 進コードで表されます。

ロケールと言語の ID のリストは、「National Language Support」 API にあります。この仕様は、Microsoft Developer Network にあります。「Platform SDK Documentation」ブックの「Base Services」に含まれる「International Features」を参照してください。

このリストは常に拡張を続け、さらなるロケールのサポートが将来の製品に追加される可能性があります。

次の表は、これらの 16 進数のロケール ID のリストを示しています。

ID | ロケール
0x0000 | ニュートラル言語
0x0400 | 既定の言語
0x0401 | アラビア語 (サウジアラビア)
0x0801 | アラビア語 (イラク)
0x0c01 | アラビア語 (エジプト)
0x1001 | アラビア語 (リビア)
0x1401 | アラビア語 (アルジェリア)
0x1801 | アラビア語 (モロッコ)
0x1c01 | アラビア語 (チュニジア)
0x2001 | アラビア語 (オマーン)
0x2401 | アラビア語 (イエメン)
0x2801 | アラビア語 (シリア)
0x2c01 | アラビア語 (ヨルダン)
0x3001 | アラビア語 (レバノン)
0x3401 | アラビア語 (クウェート)
0x3801 | アラビア語 (アラブ首長国連邦)
0x3c01 | アラビア語 (バーレーン)
0x4001 | アラビア語 (カタール)
0x0402 | ブルガリア語
0x0403 | カタロニア語
0x0404 | 中国語 (台湾)
0x0804 | 中国語 (中国)
0x0c04 | 中国語 (香港)
0x1004 | 中国語 (シンガポール)
0x0405 | チェコ語
0x0406 | デンマーク語
0x0407 | ドイツ語 (標準)
0x0807 | ドイツ語 (スイス)
0x0c07 | ドイツ語 (オーストリア)
0x1007 | ドイツ語 (ルクセンブルグ)
0x1407 | ドイツ語 (リヒテンシュタイン)
0x0408 | ギリシャ語
0x0409 | 英語 (米国)
0x0809 | 英語 (英国)
0x0c09 | 英語 (オーストラリア)
0x1009 | 英語 (カナダ)
0x1409 | 英語 (ニュージーランド)
0x1809 | 英語 (アイルランド)
0x1c09 | 英語 (南アフリカ)
0x2009 | 英語 (ジャマイカ)
0x2409 | 英語 (カリブ)
0x2809 | 英語 (ベリーズ)
0x2c09 | 英語 (トリニダード)
0x040a | スペイン語 (トラディショナル ソート)
0x080a | スペイン語 (メキシコ)
0x0c0a | スペイン語 (現代ソート)
0x100a | スペイン語 (グアテマラ)
0x140a | スペイン語 (コスタリカ)
0x180a | スペイン語 (パナマ)
0x1c0a | スペイン語 (ドミニカ共和国)
0x200a | スペイン語 (ベネズエラ)
0x240a | スペイン語 (コロンビア)
0x280a | スペイン語 (ペルー)
0x2c0a | スペイン語 (アルゼンチン)
0x300a | スペイン語 (エクアドル)
0x340a | スペイン語 (チリ)
0x380a | スペイン語 (ウルグアイ)
0x3c0a | スペイン語 (パラグアイ)
0x400a | スペイン語 (ボリビア)
0x440a | スペイン語 (エルサルバドル)
0x480a | スペイン語 (ホンジュラス)
0x4c0a | スペイン語 (ニカラグア)
0x500a | スペイン語 (プエルトリコ)
0x040b | フィンランド語
0x040c | フランス語 (標準)
0x080c | フランス語 (ベルギー)
0x0c0c | フランス語 (カナダ)
0x100c | フランス語 (スイス)
0x140c | フランス語 (ルクセンブルグ)
0x040d | ヘブライ語
0x040e | ハンガリー語
0x040f | アイスランド語
0x0410 | イタリア語 (標準)
0x0810 | イタリア語 (スイス)
0x0411 | 日本語
0x0412 | 韓国語
0x0812 | 韓国語 (JoHab)
0x0413 | オランダ語 (標準)
0x0813 | オランダ語 (ベルギー)
0x0414 | ノルウェー語 (ブークモール)
0x0814 | ノルウェー語 (ニーノシク)
0x0415 | ポーランド語
0x0416 | ポルトガル語 (ブラジル)
0x0816 | ポルトガル語 (標準)
0x0418 | ルーマニア語
0x0419 | ロシア語
0x041a | クロアチア語
0x081a | セルビア語 (ラテン)
0x0c1a | セルビア語 (キリル)
0x041b | スロバキア語
0x041c | アルバニア語
0x041d | スウェーデン語
0x081d | スウェーデン語 (フィンランド)
0x041e | タイ語
0x041f | トルコ語
0x0421 | インドネシア語
0x0422 | ウクライナ語
0x0423 | ベラルーシ語
0x0424 | スロベニア語
0x0425 | エストニア語
0x0426 | ラトビア語
0x0427 | リトアニア語
0x0429 | ペルシア語
0x042a | ベトナム語
0x042d | バスク語
0x0436 | アフリカーンス語
0x0438 | フェロー語

関連項目

DataFunctions オブジェクト

DataFunctions.DateTime


DataFunctions.LocalizeCurrency

このメソッドは、指定したロケールと通貨記号の書式設定に基づいて、金額値の文字列表記を取得するために使います。

定義

Function LocalizeCurrency(
cyCurrency As Variant,
Optional vtLocale As Variant,
Optional vtCurrencySymbol As Variant
) As Variant

パラメータ

cyCurrency

文字列として書式設定する値を含む Currency Variant です。

vtLocale

文字列を書式設定するときに使うロケールを含む Variant です。

vtCurrencySymbol

[in, optional] 文字列を書式設定するときに使う通貨記号を含む Variant です。

戻り値

このメソッドが正常に終了すると、書式設定された文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
' vtAmount is a Currency Variant
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set to USA
myLocale = 1033
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.LocalizeCurrency(vtAmount, myLocale, "$")
Response.Write "USA: " & Result & "<P>"

' Set to Minbar
myLocale = 1036
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.LocalizeCurrency(vtAmount, myLocale, "MB")
Response.Write "Minbar: " & Result & "<P>"

%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertStringToCurrency


DataFunctions.Money

このメソッドは、既定のロケールまたは指定したロケールに基づいて、金額値の long を同等の文字列表記に変換するために使います。

定義

Function Money(
lMoney As Long,
vtLocale As Variant
) As Variant

パラメータ

lMoney

変換を実行するために使われるロケールの基本通貨単位で指定した、文字列に変換する金額値を含む long です。この値は OLE Currency 型ではありません。

vtLocale

金額値を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、指定の金額値の文字列表記を含む文字列 Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
' Amount is a long containing a monetary value in base currency units
' (base currency unit for US is cents)
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
myLocale = "1036"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.Money(Amount, myLocale)
Response.Write "France: " & Result & "<P>"
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.Money(Amount, myLocale)
Response.Write "USA: " & Result
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertMoneyStringToNumber


DataFunctions.Number

このメソッドは、既定のロケールまたは指定したロケールに基づいて、long 整数を同等の文字列表記に変換するために使います。

定義

Function Number(
lNumber As Long,
vtLocale As Variant
) As Variant

パラメータ

lNumber

文字列に変換する数値を含む long です。

vtLocale

数値を文字列に変換するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、指定した数値の文字列表記を含む Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.Number(9999999.99,myLocale)
Response.Write "USA: " & Result & "<P>"

' Set Locale to France
myLocale = "1036"
MSCSDataFunctions.Locale = myLocale

Result = MSCSDataFunctions.Number(9999999,myLocale)

Response.Write "France: " & Result & "<P>"
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertNumberString


DataFunctions.Time

このメソッドは、Date を時刻の文字列表記に変換するために使います。

定義

Function Time(
dtDate As Date,
vtLocale As Variant
) As Variant

パラメータ

dtDate

変換する時刻値を含む Date 型です。

vtLocale

時刻値を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

戻り値

このメソッドが正常に終了すると、指定した時刻値の文字列表記を含む文字列 Variant が返されます。正常に終了しない場合は、Null が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
' vResult is a Variant, dDate is a Date
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
vResult = MSCSDataFunctions.Time(dDate, myLocale)
Response.Write "USA: " & Result & "<P>"

%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Locale

DataFunctions.ConvertTimeString


DataFunctions.ValidateDateTime

このメソッドは、文字列に有効な日付または時刻、あるいはその両方が含まれているかどうかを確認するため、および、指定した範囲に当てはまるかどうかを必要に応じて確認するために使います。

定義

Function ValidateDateTime(
vtDate As Variant,
vtMin As Variant,
vtMax As Variant
) As Variant

パラメータ

vtDate

検証する値を含む Variant です。この値には、日付または時刻、あるいはその両方を指定できます。

vtMin

範囲の下限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMin パラメータは範囲の検証では無視されます。

vtMax

範囲の上限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMax パラメータは範囲の検証では無視されます。

戻り値

このメソッドが正常に終了すると、vtDate パラメータが有効かどうかを示す Boolean Variant が返されます。値が True の場合、vtDate パラメータは有効な日付または時刻、あるいは日付/時刻であり、範囲が指定されているときは、その範囲内にあることを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vResult is a Variant, vSourceDate is a Variant containing
' a string representation of a date or date and time
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
vResult = MSCSDataFunctions.ValidateDateTime(vSourceDate,"1/1/1900", _
    "12/31/2525")

関連項目

DataFunctions オブジェクト

DataFunctions.Date

DataFunctions.DateTime

DataFunctions.Time

DataFunctions.ConvertDateString

DataFunctions.ConvertDateTimeString

DataFunctions.ConvertTimeString


DataFunctions.ValidateFloat

このメソッドは、文字列に有効な浮動小数点数が含まれているかどうかを確認するため、および、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認するために使います。

定義

Function ValidateFloat(
vtNumber As Variant,
vtMin As Variant,
vtMax As Variant
) As Variant

パラメータ

vtNumber

検証する浮動小数点数を含む Variant です。

vtMin

範囲の下限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMin パラメータは範囲の検証では無視されます。

vtMax

範囲の上限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMax パラメータは範囲の検証では無視されます。

戻り値

このメソッドが正常に終了すると、vtNumber パラメータが有効かどうかを示す Boolean Variant が返されます。値が Trueの場合は、vtNumber パラメータが有効な浮動小数点数であり、範囲が指定されているときは、その範囲内にあることを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myFloat = 12.33
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ValidateFloat(myFloat, 1, 10)
Response.Write myFloat & " Is this float between 1 & 10?: " & " " _
    & Result & "<P>"
myFloat = 2.33
Result = MSCSDataFunctions.ValidateFloat(myFloat, 1, 10)
Response.Write myFloat & " Is this float between 1 & 10?: " & " " _
    & Result & "<P>"
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Float

DataFunctions.ConvertFloatString


DataFunctions.ValidateNumber

このメソッドは、数値の文字列表記が有効かどうかを確認するため、および、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認するために使います。

定義

Function ValidateNumber(
vtNumber As Variant,
vtMin As Variant,
vtMax As Variant
) As Variant

パラメータ

vtNumber

検証する数値の文字列表記を含む Variant です。

vtMin

範囲の下限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMin パラメータは範囲の検証では無視されます。

vtMax

範囲の上限を指定する値を含む Variant です。vtMax パラメータの既定値は Null です。Null の場合、このパラメータは範囲の検証では無視されます。

戻り値

このメソッドが正常に終了すると、vtNumber パラメータが有効かどうかを示す Boolean Variant が返されます。値が True の場合、vtNumber パラメータは有効な数値であり、範囲が指定されているときは、その範囲内にあることを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
MSCSDataFunctions.Locale = myLocale
myInt = 24
Result = MSCSDataFunctions.ValidateNumber(myInt , 1, 10)
Response.Write myInt & " Is this integer between 1 & 10?: " & _
    " " & Result & "<P>"
myInt = 2
Result = MSCSDataFunctions.ValidateNumber(myInt , 1, 10)
Response.Write myInt & " Is this integer between 1 & 10?: " & _
    " " & Result & "<P>"
%>
</BODY>
</HTML>

関連項目

DataFunctions オブジェクト

DataFunctions.Number

DataFunctions.ConvertNumberString


DBStorage オブジェクト

このメソッドは、主に、発注情報とレシート情報の保存のため、Dictionary オブジェクトと SimpleList オブジェクトを、データベースと相互にマップするために使います。DBStorage オブジェクトは、各ページに必要に応じて作成されます。

ProgID: | Commerce.DBStorage (外部作成可能)
COM クラス名: | MSCSDBStorage_3_0
タイプ ライブラリ名: | Commerce 1.0 Type Library
DLL 名: | Commerce.dll
スレッド モデル: | 両方

次の表は、DBStorage オブジェクトの唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Mapping | オブジェクト | DBStorage オブジェクトがデータの挿入と取得に使う、OrderForm オブジェクトまたは Dictionary オブジェクトのエントリに、データベースの列をマップします。 このプロパティは読み取りと書き込みが可能です。

次の表は、DBStorage オブジェクトのメソッドを示しています。

メソッド | 説明
CommitData | データベースの記憶領域にある 1 つ以上のレコードを更新します。
DeleteData | Dictionary オブジェクトまたは OrderForm オブジェクトに格納されているデータに基づいて、データベースの記憶領域から行を削除します。
DeleteDataKey | 指定したキーに基づいて、データベースの記憶領域からデータ行を削除します。
GetData | 指定したキー値に基づいて、データベースの記憶領域からデータ行を取得します。
InitStorage | オブジェクトを初期化します。ほかの DBStorage メソッドを呼び出す前に、必ずこのメソッドを呼び出さなければなりません。
InsertData | 指定したデータをデータベースの記憶領域に挿入します。
LookupData | 指定した列の名前と値に基づいて、データベースの記憶領域からデータ行を取得します。
LookupMultipleData | データベースの記憶領域から複数の結果を取得します。
ProcessData | 指定した行の MarshalColumn 列に格納されているデータをアンパックして、Dictionary オブジェクトにその結果の行を返します。

解説

DBStorage オブジェクトは、Dictionary オブジェクトおよび OrderForm オブジェクトとサイトのデータベース間のインターフェイスの働きをします。DBStorage オブジェクトには、データベースとデータ オブジェクト間のデータ転送を行うメソッドが含まれています。

Server オブジェクトの CreateObject メソッドを使って DBStorage オブジェクトのインスタンスを作成すると、DBStorage オブジェクトの初期化されていないインスタンスが返されます。返されたオブジェクトのインスタンスを初期化するには、InitStorage メソッドを使います。InitStorage メソッドを呼び出す前に、ほかの DBStorage メソッドを呼び出そうとすると、エラーになります。

DBStorage オブジェクトは、データベースからデータを取得すると、適切な種類のデータ オブジェクト (OrderForm オブジェクトまたは Dictionary オブジェクト) を作成し、要求されたデータをそこに格納した後に、そのデータ オブジェクトを返します。データベースにデータを保存するために DBStorage オブジェクトを使う場合、保存するデータが含まれている OrderForm オブジェクトまたは Dictionary オブジェクトを DBStorage オブジェクトに渡すと、DBStorage オブジェクトは、データをこれらのデータ オブジェクトからデータベースにコピーします。

関連項目

汎用オブジェクト


DBStorage.CommitData

このメソッドは、指定した Dictionary オブジェクトまたは OrderForm オブジェクトの内容に基づいて、データベース テーブルを更新するために使います。

定義

Sub CommitData(
vtReserved As Variant,
pdispData As Object
)

パラメータ

vtReserved

将来の使用のために予約されている Variant です。CommitData メソッドは、このパラメータの値を無視します。

pdispData

更新されたデータを含む OrderFormオブジェクトまたは Dictionary オブジェクトへのオブジェクト参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

CommitData メソッドは、TimeStamp 型のフィールドを含むデータベース テーブルをサポートしていません。代わりに、DBStorage.InitStorage メソッドに対して vtChanged パラメータを使うと、TimeStamp フィールドを使用した場合と同等の機能を実現できます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Order is a Commerce.OrderForm object; OrderFormStorage is
' an initialized Commerce.DBStorage object

Order.order_id = "Order_tmp"
Order.shopper_id = "Shopper_tmp"
OrderFormStorage.CommitData(Null, Order)

関連項目

DBStorage オブジェクト

DBStorage.InitStorage

DBStorage.InsertData


DBStorage.DeleteData

このメソッドは、指定した Dictionary オブジェクトまたは OrderForm オブジェクトに格納されているデータに基づいて、データ ソースから行を削除するために使います。

定義

Sub DeleteData(
vtReserved As Variant,
pdispData As Object
)

パラメータ

vtReserved

将来の使用のために予約されている Variant です。このパラメータは、DeleteData メソッドでは無視されます。

pdispData

削除するデータ オブジェクトへのオブジェクト参照です。このデータ オブジェクトは、OrderForm または Dictionary のいずれかを指定できます。ただし、オブジェクトの種類は、InitStorage メソッドの最初の呼び出しのときに ProgID として指定したオブジェクトの種類に対応しなければなりません。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

DeleteDataKey メソッドは、基になるテーブルのキー列に格納された値しか要求しないという点で、DeleteData メソッドと異なります。このキー列は、InitStorage メソッドの前回の呼び出しのときに、基になるテーブルのキーとして指定した列です。

たとえば、SQL テーブルの IDENTITY フィールドをキーとしてデータ ソースに指定すると、適切なカウンタ値を与えるだけで、指定した行の列をすべて削除できます。また、1 つ以上の列に格納されている値で Dictionary オブジェクトを初期化して、それを DeleteData メソッドに渡すこともできます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Order is a Commerce.OrderForm object; OrderFormStorage is
' an initialized Commerce.DBStorage object

Order.order_id = "Order_tmp"
OrderFormStorage.DeleteData(Null, Order)

関連項目

DBStorage オブジェクト

DBStorage.InitStorage

DBStorage.DeleteDataKey

DBStorage.InsertData


DBStorage.DeleteDataKey

このメソッドは、指定したキー値に基づいて、データ行を削除するために使います。

定義

Sub DeleteDataKey(
vtReserved As Variant,
vtKey As Variant
)

パラメータ

vtReserved

これは、将来の使用のために予約されているパラメータで、現在の DeleteDataKey メソッドのインプリメンテーションでは無視されます。このパラメータは、Site Server 3.0 Commerce Edition との互換性のために必須ですが、現時点ではまだ使われていません。

vtKey

削除する行のキー値を含む Variant です。このキーは、InitStorage メソッドの最初の呼び出しのときにテーブル キーとして指定した列に対応しています。たとえば、InitStorage メソッドを呼び出したときに、"some_column" をテーブル キーとして指定すると、DeleteDataKey メソッドは、vtKey パラメータに格納された値を持つ "some_column" を検索して、対応するデータ行を削除します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

DeleteDataKey メソッドは、基になるテーブルのキー列に格納された値しか要求しないという点で、DeleteData メソッドと異なります。このキー列は、InitStorage メソッドの前回の呼び出しのときに、基になるテーブルにキーとして指定した列です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Order is a Commerce.OrderForm object; OrderFormStorage is
' an initialized Commerce.DBStorage object

Order.shopper_id = "Shopper_tmp"
OrderFormStorage.DeleteDataKey(Null, "1234567890WSXCDERFVBGTRESWER")

関連項目

DBStorage オブジェクト

DBStorage.InitStorage

DBStorage.DeleteData

DBStorage.InsertData


DBStorage.GetData

このメソッドは、指定したキー値に基づいて、データベースからデータ行を取得するために使います。データが見つかると、このメソッドは、OrderForm オブジェクトまたは Dictionary オブジェクトを作成し、要求されたデータを格納して返します。

定義

Function GetData(
vtReserved As Variant,
vtKey As Variant
) As Variant

パラメータ

vtReserved

将来の使用のために予約されている Variant です。GetData メソッドは、このパラメータに格納された値を無視します。

vtKey

検索条件となるキー値を含む Variant です。GetData メソッドは、InitStorage メソッドの最初の呼び出しのときにテーブル キーとして指定したテーブル列でこの値を検索します。

戻り値

このメソッドが正常に終了すると、取得された行を含む Dictionary または OrderForm オブジェクトを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Order is a Commerce.OrderForm object; OrderFormStorage is
' an initialized Commerce.DBStorage object; vtVar is a Variant

Order.order_id = "Order_tmp"
VtVar = OrderFormStorage.GetData(Null, Order.order_id)

関連項目

DBStorage オブジェクト

DBStorage.InitStorage

DBStorage.LookupData


DBStorage.InitStorage

このメソッドは、DBStorage オブジェクトを初期化するために使います。オブジェクトを作成した直後、および、ほかのオブジェクト メソッドを呼び出す直前に、必ずこのメソッドを呼び出さなければなりません。InitStorage メソッドを呼び出す前に、ほかのメソッドを呼び出そうとすると、エラーになります。

定義

Sub InitStorage(
vtDataSourceOrDSN As Variant,
Table As String,
bstrKey As String,
vtProgID As Variant,
vtMarshal As Variant,
vtChanged As Variant
)

パラメータ

vtDataSourceOrDSN

DataSource オブジェクトまたはデータ ソース名 (DSN) への有効なオブジェクト参照を含む Variant です。

Table

データを維持するデータ ソース内のテーブルの名前を含む文字列です。

bstrKey

DBStorage オブジェクトがデータベース テーブルへのキーとして使用する列名を含む文字列です。この列は、一意の値が含まれるように指定する必要があります。

vtProgID

DBStorage メソッドによってデータがやりとりされるオブジェクトの ProgID を含む Variant です。このパラメータには、Dictionary オブジェクトを格納するときは Commerce.Dictionary を指定し、OrderForm オブジェクトを格納するときは Commerce.OrderForm を指定します。データベースから取得したデータを返すメソッド (たとえば GetData など) は、指定されたクラスのインスタンスを作成し、要求されたデータをその中に格納します。

vtMarshal

CommitData または InsertData メソッドが指定のデータ オブジェクトからすべてのデータを、エンコード化されたバイナリ フォーマットにシリアライズして保存するデータベース内の列の名前を示すテキスト文字列 (指定されている場合) を含む Variant です。格納されている項目のオブジェクトがデータベース内に対応する列名を持つ場合も、オブジェクトはデータベースのこれらの列に格納されます。この引数が指定されている場合、データベースにこの名前の列が存在する必要があり、存在しない場合はエラーが発生します。この引数が指定されていない場合、オブジェクトのデータは連続的にならず、バイナリ形式でデータベースに保存されません。また、データベース内に対応する列を持たないオブジェクトの項目は破棄されます。Microsoft SQL Server データベースを使う場合、この列のデータの最大サイズは、 SQL Server のテキストまたはイメージのデータ型 (2,147,483,647 バイト) と同じです。

vtChanged

データの変更時に日付を書き込むデータベースのキーまたは属性の名前を含む Variant です。データベースに存在する列名を指定しないと、変更日付はマーシャリングされたデータに入ります。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' strDSN is the data source connection string; OrderFormStorage
' is an uninitialized Commerce.DBStorage object; "Site_basket"
' is the name of the table in the referenced data source;
' "shopper_id" is the primary key in the "Site_basket" table;
' "marshalled_order" is the name of the column for this DBStorage
' object instance to use for marshaling data; "date_changed"
' is the name of the database column that contains the date
' of the most recent change
' This sample initializes OrderFormStorage as an OrderForm storage object:

OrderFormStorage.InitStorage(strDSN, "Site_basket", "shopper_id", _
    "Commerce.OrderForm", "marshalled_order", "date_changed")

関連項目

DBStorage オブジェクト


DBStorage.InsertData

このメソッドは、指定された Dictionary オブジェクトのコンテンツをデータベース行に挿入するために使います。

定義

Sub InsertData(
vtReserved As Variant,
pdispData As Object
)

パラメータ

vtReserved

将来の使用のために予約されている Variant です。このパラメータは InsertData メソッドに無視されます。

pdispData

挿入するデータを含む Dictionary オブジェクトまたは OrderForm オブジェクトへのオブジェクト参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Order is a Commerce.OrderForm object; OrderFormStorage is
' an initialized Commerce.DBStorage object

Order.order_id = "Order_tmp"
Order.shopper_id = "Shopper_tmp"
OrderFormStorage.InsertData(Null, Order)

関連項目

DBStorage オブジェクト

DBStorage.InitStorage

DBStorage.CommitData


DBStorage.LookupData

このメソッドは、指定した列名と値に基づいて、データ ソースから単一行を取得するために使います。データが見つかると、このメソッドは、要求されたデータが含まれる OrderForm オブジェクトまたは Dictionary オブジェクト (InitStorage メソッドに渡される vtProgID パラメータによって異なる) を作成して返します。

定義

Function LookupData(
vtReserved As Variant,
pvtKeys As Variant,
pvtValues As Variant
) As Variant

パラメータ

vtReserved

将来の使用のために予約されている Variant です。LookupData メソッドは、このパラメータに格納されている値を無視します。

pvtKeys

データを検索する列を識別する Variant です。この Variant は、SimpleList オブジェクトまたは Array のどちらかにできます。

pvtValues

検索する値を識別する Variant です。このパラメータは、SimpleList オブジェクトまたは Array のどちらかにできます。

戻り値

このメソッドが正常に終了すると、検索結果を含む Variant が返されます。この Variant は、行データを含む Dictionary オブジェクトを参照します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

pvtKeys パラメータと pvtValues パラメータは、インデックス間の関連付けにおける LookupData メソッドの共有に渡す配列です。これは、これらに同一数のメンバが含まれていることが必要で、pvtValues (N) パラメータに格納されている値が pvtKeys (N) パラメータで指定されている列で検索されることを意味します。

配列に複数の要素が含まれている場合、 LookupData メソッドは、列と値の組み合わせがすべて一致する行を検索します。

LookupData メソッドは単一行のデータしか返さないため、列と値の情報を指定して複数行を取得しようとすると、エラーが発生します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' OrderFormStorage is an initialized DBStorage object instance.
' In the following example, the LookupData method searches
' for a row in which both the shopper_id column contains the
' value returned by the shopper_id variable and the shopper_name
' column contains the customer name returned by the Page.Request method:

' Attempt to determine if this shopper is already registered.
shopper_id = Page.GetShopperID

On Error Resume Next
Dim keys(1)
Dim values(1)
keys(0) = "shopper_id"
keys(1) = "shopper_name"
values(0) = shopper_id
values(1) = Page.Request("shopper_name", Null, 1, 60)

exists=NULL
set exists = OrderFormStorage.LookupData(Null, keys, values)
If IsNull(exists) Then
' This shopper id and name does not exist in the specified columns

関連項目

DBStorage オブジェクト

DBStorage.InitStorage

DBStorage.GetData

DBStorage.LookupMultipleData


DBStorage.LookupMultipleData

このメソッドは、データベース テーブルから複数の結果を取得するために使います。データが見つかると、このメソッドは SimpleList オブジェクトを作成します。これには、OrderForm オブジェクトまたは Dictionary オブジェクトが含まれます (InitStorage メソッドに渡される vtProgID パラメータによって異なります)。

定義

Function LookupMultipleData(
vtReserved As Variant,
pvtKeys As Variant,
pvtValues As Variant
) As Variant

パラメータ

vtReserved

将来の使用のために予約されている Variant です。LookupData メソッドは、このパラメータに格納されている値を無視します。

pvtKeys

データを検索する列を識別する Variant です。この Variant は、SimpleList オブジェクトまたは Array のどちらかにできます。

pvtValues

検索する値を識別する Variant です。このパラメータは、SimpleList オブジェクトまたは Array のどちらかにできます。

戻り値

このメソッドが正常に終了すると、1 つまたは複数の Dictionary オブジェクト (返されたデータ行ごとに 1 つのオブジェクト) から構成される SimpleList オブジェクトを参照する Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Order is a Commerce.OrderForm object; OrderFormStorage is
' an initialized Commerce.DBStorage object

Order.order_id = "Order_tmp"
Order.shopper_id = "Shopper_tmp"
OrderFormStorage.InsertData(Null, Order)
OrderFormStorage.LookupMultipleData(Null, Array("order_id"), _
Array("Order_tmp"))

関連項目

DBStorage オブジェクト

DBStorage.InitStorage

DBStorage.GetData

DBStorage.LookupData


DBStorage.Mapping

Mapping プロパティは、データベース列を OrderForm オブジェクトまたは Dictionary オブジェクトのエントリにマップします。これらのオブジェクトは、DBStorage オブジェクトによってデータを挿入および取得するために使われます。

定義

Property Mapping As Object

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

マッピング Dictionary オブジェクトを使うと、データベース テーブルの列名をユーザーが選択した 1 つ以上の名前にマップできます。通常は、サイト ユーザーに表示するために使います。たとえば、データベース テーブルに "shopper_name" という名前の列があるが、この列の内容をよりわかりやすく "Shopper Name" と表示するとします。そのためには、Dictionary オブジェクトの "shopper_name" キーを "Shopper Name" に初期化して、この Dictionary オブジェクトを Mapping プロパティの設定のために使います。データ行を Dictionary オブジェクトへ読み取るために、GetData などの DBStorage オブジェクトのデータを取得するメソッドを呼び出すと、"shopper_name" 列の Dictionary キーは "Shopper Name" と読み取られます。これは、値をサイト ユーザーに表示する前に、ユーザーが列名をよりわかりやすい名前に変換する必要がないことを意味します。単純に、GetData メソッドによって返された Dictionary オブジェクトに表示されているとおりに、キーや値を表示することもできます。

関連項目

DBStorage オブジェクト

DBStorage.InitStorage


DBStorage.ProcessData

このメソッドは、指定した行に対するデータベース中の MarshalColumn 行に格納されているデータをアンパックし、その結果の行を Dictionary オブジェクトに返すために使います。

定義

Function ProcessData(
pdispData As IDispatch
) As Object

パラメータ

pdispData

マーシャリングされたデータを含む Dictionary オブジェクトへのオブジェクト参照です。

戻り値

このメソッドが正常に終了すると、マーシャリングを解除されたデータを含む Dictionary オブジェクトへのオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dSource is a Dictionary object; OrderFormStorage is
' an initialized Commerce.DBStorage object; dDictionary is a
' Dictionary object which will receive the unmarshaled data

Order.order_id = "Order_tmp"
Order.shopper_id = "Shopper_tmp"
dDictionary = OrderFormStorage.ProcessData(dSource)

関連項目

DBStorage オブジェクト

DBStorage.InitStorage


Dictionary オブジェクト

このオブジェクトは、メモリ内の名前と値の組み合わせの作成、格納、取得をサポートするために使います。Dictionary オブジェクト内の値はすべて Variant です。これは、大概の値から Dictionary オブジェクトを作成でき (ほかの Dictionary オブジェクトを含む)、どんな組み合わせの Variant でも同じ Dictionary オブジェクトに格納できることを意味します。

ProgID: | Commerce.Dictionary (外部作成可能)
COM クラス名: | CDictionary
タイプ ライブラリ名: | Microsoft Commerce 2000 Core Components Type Library
DLL 名: | MscsCore.dll
スレッド モデル: | 両方

次の表は、Dictionary オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Count | long | Dictionary オブジェクトにある要素の数を返します。 このプロパティは読み取り専用です。
Prefix | 文字列 | Dictionary オブジェクトのコンテンツが保存されるときに (通常はデータベースに)、フィルタとして機能する文字列を格納します。名前と値の組み合わせの名前が特定のプレフィックスで始まる場合、その名前と値の組み合わせは保存されません。 このプロパティは読み取りと書き込みが可能です。
Value | Variant | 指定された Dictionary キーの値を格納します。 このプロパティは読み取りと書き込みが可能です。

解説

Dictionary オブジェクトは汎用コレクションとなるように設計されているので、その内部構造でサポートされていれば、ほとんどのものに使えます。

Dictionary オブジェクトを明示的に作成する必要がある場合 (つまり、ほかの Commerce Server 2000 のオブジェクトでオブジェクトが作成されない場合)、次のように Active Server Pages (ASP) Server オブジェクトの CreateObject メソッドを使います。

Set dictUser = Server.CreateObject("Commerce.Dictionary")

オブジェクトを作成した後、次のようにオブジェクトに要素を追加します。

dictUser.first_name = "Steve"

この例では、first_name が Dictionary キーで、Steve はこのキーに割り当てられた値になります。各ステートメントは、Dictionary キーを宣言し、そのキーを Dictionary オブジェクトに追加し、キーを値に設定するという 3 つの処理を実行します。

Dictionary オブジェクトから値を抽出する方法はいくつかあります。object.key 識別子を単純に代入ステートメントの右辺に配置することができます。こうした代入によって、参照先のキーの値が返されます。

my_first_name = dictUser.first_name

または、Value メソッドを使って、指定されたキーの値を取得することができます。

my_first_name = dictUser.Value("first_name")

Microsoft Visual Basic Scripting Edition (VBScript) の For Each ステートメントを使って、Dictionary オブジェクトのキーまたは値を次のように列挙することもできます (この例では、ディクショナリのすべての値にテキストが含まれているものと仮定しています)。

' Get the key names
For Each element In dictUser
    Response.Write element
Next

' Get the values
For Each element In dictUser
    Response.Write dictUser.Value(element)
Next

Dictionary オブジェクト内のデータは、DBStorage オブジェクトを使ってデータベース テーブルに保存することができます。

Commerce Server 2000 サイトは、Dictionary オブジェクトの実装を使って、ほかのさまざまなオブジェクトやパイプライン コンポーネントで必要となる一連のデータを格納します。

以前のバージョンのディクショナリとは異なり、Commerce Server 2000 のディクショナリは名前と値の組み合わせのハッシュとして実装されています。これによって、ディクショナリは、大量の名前と値の組み合わせが格納されている場合でも速く検索を実行できます。また、ディクショナリ キーの列挙が格納されたときと同じ順番では返されない場合があるという副次的な作用もあります。

ディクショナリ オブジェクトは、パフォーマンス上の理由から Free Threaded Marshaller (FTM) を集計します (ディクショナリがどの COM アパートメントから呼び出されていても、その呼び出しがプロキシを通過しないようにするため) 。このため、ディクショナリにはアパートメント スレッド オブジェクトへの参照を格納できません。これを行うと、オブジェクトのポインタが取得、使用されたときに、RPC_E_WRONGTHREAD などのエラーが発生する可能性があります。

Dictionary オブジェクトは、ICloneable インターフェイスおよび IPersistXML インターフェイスをサポートしています。ICloneable インターフェイスは、すべての名前と値の組み合わせを新しいディクショナリにディープ コピーするために使います。IPersistXML インターフェイスは、Dictionary エントリを XML 文字列に変換し、再び戻すために使います。

関連項目

汎用オブジェクト

IPersistXML インターフェイス

SimpleList オブジェクト


Dictionary.Count

Count プロパティは読み取り専用の long で、Dictionary オブジェクトのインスタンス内にある要素の数を含んでいます。

定義

Property Count As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Count パラメータが有効なデータをポイントするのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Dictionary オブジェクト


Dictionary.Prefix

Prefix プロパティは読み取りと書き込みが可能な文字列で、Dictionary オブジェクト内のコンテンツがデータベースなどに保存されるときに、フィルタとして作用します。名前と値の組み合わせの名前が特定のプレフィックスで始まる場合、その名前と値の組み合わせは保存されません。既定のプレフィックスはアンダースコア (_) です。アンダースコア文字で始まるキーワードは、すべて対象から外れます。

定義

Property Prefix As String

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

既定のプレフィックスはアンダースコア (_) です。アンダースコア文字で始まるキーワードは、すべて対象から外れます。

パイプライン コンポーネントは、通常はレシートに "_cc_" というプレフィックスを設定して保存します。したがって、クレジット カードの情報は、データベースにはまったく保存されません。パイプライン コンポーネントによって使われる実際の文字列は、ほかのものに変更することもできます。

関連項目

Dictionary オブジェクト


Dictionary.Value

Value プロパティを使うと、Dictionary オブジェクト内にある名前と値の対を取得したり、設定したりできます。

定義

Property Value(
bstrName As String
) As Variant

パラメータ

bstrName

値を取得または入力する Dictionary キーの名前を含む文字列です。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dDict is a Commerce.Dictionary object
' first_name is a Dictionary key
' v_first_name is a Variant
v_first_name = dDict.value("first_name")
v_first_name = dDict("first_name")

' use this form if the value contains an object reference:
Set oSubObject = dDict("myObjectKey")

' Property syntax
' Note: There is a slight performance penalty for using
' these forms because a special implementation of IDispatch is used
v_first_name = dDict.first_name
' If the key begins with an underscore then use braces around the key name
v_first_name = dDict.[_first_name]

関連項目

Dictionary オブジェクト


DictionaryXMLTransforms オブジェクト

このオブジェクトは、指定した XML Data-Reduced (XDR) スキーマを使って、データを Dictionary オブジェクトから拡張マークアップ言語 (XML) に、またはその逆方向に変換するために使います。

ProgID: | Commerce.DictionaryXMLTransforms (外部作成可能)
COM クラス名: | DictionaryXMLTransforms
タイプ ライブラリ名: | Microsoft Commerce 2000 DictionaryXMLTransform Type Library
DLL 名: | DictionaryXMLTransforms.dll
スレッド モデル: | アパートメント

重要

  • DictionaryXMLTransforms オブジェクトによって処理できるディクショナリ キーは、XML ノード名として有効な名前を持つものに限られます。使用できる文字は、A ～ Z およびアンダースコア (_) です。*、\、および英語以外の言語の文字などは使用できません。

  • ディクショナリ キーの値は、すべて URL エンコードされている必要があります。

次の表は、DictionaryXMLTransforms オブジェクトのメソッドを示しています。

メソッド | 説明
GenerateSampleXMLInstanceFromDictionary | 指定された Dictionary オブジェクトを基にして、XML インスタンスを作成します。
GenerateXMLForDictionaryUsingSchema | Dictionary オブジェクトから、指定されたスキーマに準拠した XML インスタンスを抽出します。
GetXMLFromFile | 指定されたファイルを基にして、XML Document Object Model (DOM) ドキュメントを生成します。
ReconstructDictionaryFromXML | 指定された XML インスタンスを変換して、Dictionary オブジェクトにします。変換するインスタンスは、指定されたスキーマに準拠している必要があります。

解説

payment.asp ファイルと _recvpo.asp ファイルの中に、このメソッドを呼び出すサンプル コードが記述されています。XML スキーマの使用例は、ソリューション サイトの POSchema.xml ファイルにあります。

関連項目

汎用オブジェクト

Dictionary オブジェクト


DictionaryXMLTransforms.GenerateSampleXMLInstanceFromDictionary

このメソッドは、XML Data-Reduced (XDR) スキーマを生成するために使います。このメソッドは、指定された Dictionary オブジェクトを基にして、XML インスタンスを作成します。この XML インスタンスは、BizTalk エディタなどのツールにインポートされ、それらツールは、その与えられたインスタンスに基づいてスキーマを構築します。

定義

Function GenerateSampleXMLInstanceFromDictionary(
Dictionary As Object,
ElementName As String,
bIgnoreUnderScore As Boolean
) As Object

パラメータ

Dictionary

XML に変換するデータを含む Dictionary オブジェクトです。

ElementName

要素名を含む文字列です。

bIgnoreUnderScore

ディクショナリの先頭がアンダースコアで始まるディクショナリ キーを無視するかどうかを指定する Boolean です。この値は、通常は True に設定してください。

戻り値

このメソッドが正常に終了すると、XML インスタンスを返すために使われるオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oDictionaryXMLTransforms is a Commerce.DictionaryXMLTransforms object
' dDict is a Dictionary object; sElement is a string
' oXMLDOMNode is a XMLDOMNode object
oXMLDOMNode = _
oDictionaryXMLTransforms.GenerateSampleXMLInstanceFromDictionary(dDict, _
    sElement, TRUE)

関連項目

DictionaryXMLTransforms オブジェクト


DictionaryXMLTransforms.GenerateXMLForDictionaryUsingSchema

このメソッドは、指定されたスキーマに準拠した XML インスタンスを Dictionary オブジェクトから抽出するために使います。

定義

Function GenerateXMLForDictionaryUsingSchema(
Dictionary As Object,
xmlSchema As Object
) As Object

パラメータ

Dictionary

変換対象のデータを含む Dictionary オブジェクトです。

xmlSchema

XML スキーマを含む XMLDOMDocument オブジェクトです。

戻り値

このメソッドが正常に終了すると、XML スキーマを含む XMLDOMDocument オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oDictionaryXMLTransforms is a Commerce.DictionaryXMLTransforms object
' dDict is a Dictionary object
' oXMLDOMDocument is a XMLDOMDocument object
' oXMLDOMNode is a XMLDOMNode object
oXMLDOMNode = _
oDictionaryXMLTransforms.GenerateXMLForDictionaryUsingSchema(dDict, _
oXMLDOMDocument)

関連項目

DictionaryXMLTransforms オブジェクト


DictionaryXMLTransforms.GetXMLFromFile

このメソッドは、指定したファイルを基に XML の Document Object Model (DOM) ドキュメントを生成するために使います。

定義

Function GetXMLFromFile(
sFileName As String
) As Object

パラメータ

sFileName

変換するファイル名を含む文字列です。

戻り値

このメソッドが正常に終了すると、変換されたファイル データを含む XMLDOMDocument オブジェクトへのオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oDictionaryXMLTransforms is a Commerce.DictionaryXMLTransforms object
' dDict is a Dictionary object; sMyFileName.txt is a string
' oXMLDOMDocument is a XMLDOMDocument object
oXMLDOMDocument = _
    oDictionaryXMLTransforms.GetXMLFromFile("sMyFileName.txt")

関連項目

DictionaryXMLTransforms オブジェクト


DictionaryXMLTransforms.ReconstructDictionaryFromXML

このメソッドは、指定した XML インスタンスを Dictionary オブジェクトに変換するために使います。変換するインスタンスは、指定したスキーマに準拠している必要があります。このメソッドは、GenerateXMLForDictionaryUsingSchema メソッドと逆の処理を行います。

定義

Function ReconstructDictionaryFromXML(
szDictionaryXML As String,
xmlSchema As Object
) As Object

パラメータ

szDictionaryXML

XML インスタンスを含む文字列です。

xmlSchema

XML スキーマを含む XMLDOMDocument オブジェクトへのオブジェクト参照です。

戻り値

このメソッドが正常に終了すると、変換されたデータを含む Dictionary オブジェクトへのオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oDictionaryXMLTransforms is a Commerce.DictionaryXMLTransforms object
' dDict is a Dictionary object; sMyXMLInstance is a string
' oXMLDOMDocument is a XMLDOMDocument object
dDict = _
oDictionaryXMLTransforms.ReconstructDictionaryFromXML(sMyXMLInstance, _
    oXMLDOMDocument)

関連項目

DictionaryXMLTransforms オブジェクト


EuroDisplay オブジェクト

このオブジェクトは、複数の通貨を表示しなければならない場合に、通貨値を変換して書式設定するために使います。

ProgID: | Commerce.EuroDisplay (外部作成可能)
COM クラス名: | EuroDisplay
タイプ ライブラリ名: | Microsoft Commerce 2000 Euro Display Component Type Library
DLL 名: | EuroDisp.dll
スレッド モデル: | 両方

次の表は、EuroDisplay オブジェクトのメソッドを示しています。

メソッド | 説明
ConvertAltStringToCurr | 代替ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にします。
ConvertBaseStringToCurr | 基本ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にします。
ConvertMoney | 初期化済みの変換レートを使って、指定された Currency Variant (基本通貨を単位とする金額値を表記しているもの) を変換し、代替通貨を単位とする Currency Variant にします。
FormatAltMoney | 代替ロケール識別子と代替通貨記号文字列に基づいて、Currency Variant の文字列表記を作成します。
FormatBaseMoney | 基本ロケール識別子と基本通貨記号文字列に基づいて、Currency Variant の文字列表記を作成します。
Initialize | 指定された代替通貨記号、基本通貨記号、代替ロケール ID、基本ロケール ID、および変換レートを使ってオブジェクトを初期化します。

関連項目

表示オブジェクト


EuroDisplay.ConvertAltStringToCurr

このメソッドは、代替ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にするために使います。

定義

Function ConvertAltStringToCurr(
vtMoneyString As Variant
) As Variant

パラメータ

vtMoneyString

変換する通貨の文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、変換済みの通貨情報を含む Currency Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oEuroDisp is a Commerce.EuroDisplay object
' vResult is a Variant
vResult = oEuroDisp.ConvertAltStringToCurr("23,444.53886")
' In the preceding example, the variable vResult is
' internally rounded to 23444.5389

関連項目

EuroDisplay オブジェクト

EuroDisplay.ConvertBaseStringToCurr

EuroDisplay.FormatAltMoney


EuroDisplay.ConvertBaseStringToCurr

このメソッドは、基本ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にするために使います。

定義

Function ConvertBaseStringToCurr(
vtMoneyString As Variant
) As Variant

パラメータ

vtMoneyString

変換する通貨の文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、変換済みの通貨情報を含む Currency Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oEuroDisp is a Commerce.EuroDisplay object
' vResult is a Variant
vResult = oEuroDisp.ConvertBaseStringToCurr("99,333.53886")
' In the preceding example, the variable vResult is
' internally rounded to 99333.5389

関連項目

EuroDisplay オブジェクト

EuroDisplay.ConvertAltStringToCurr

EuroDisplay.FormatBaseMoney


EuroDisplay.ConvertMoney

このメソッドは、初期化済みの変換レートを使って、指定された Currency Variant (基本通貨を単位とする金額値を表記しているもの) を変換し、代替通貨を単位とする Currency Variant にするために使います。

定義

Function ConvertMoney(
vtCurrVal As Variant
) As Variant

パラメータ

vtCurrVal

基本通貨による金額値を含む Variant です。

戻り値

このメソッドが正常に終了すると、代替通貨による金額値を表す Currency Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

<%
Dim Result
Set MSCSEuroDisplay= Server.CreateObject("Commerce.EuroDisplay")
MSCSEuroDisplay.Initialize "$$",1033,"FF",1036, 2
Result = MSCSEuroDisplay.ConvertMoney(100)
Response.Write "Converted $100 from $ to F ($1 = 2F) : " & Result & "<P>"
%>

関連項目

EuroDisplay オブジェクト


EuroDisplay.FormatAltMoney

このメソッドは、代替ロケール識別子および代替通貨記号文字列に基づいて、Currency Variant の文字列表記を作成するために使います。

定義

Function FormatAltMoney(
vtConvMoney As Variant
) As String

パラメータ

vtConvMoney

変換対象の金額値を含む Currency Variant です。

戻り値

このメソッドが正常に終了すると、指定した Currency Variant の文字列表記を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oEuroDisp is a Commerce.EuroDisplay object
' vTest is a Currency Variant
' vResult is a String
vTest = "$ 20.00"
vResult = oEuroDisp.FormatAltMoney (vTest)
' In the preceding example, if the Alt Currency symbol string
' is "$" and the Alt locale identifier is 1033, vResult will
' contain the string, "$ 20.00"

関連項目

EuroDisplay オブジェクト

EuroDisplay.ConvertAltStringToCurr

EuroDisplay.FormatBaseMoney


EuroDisplay.FormatBaseMoney

このメソッドは、基本ロケール識別子および基本通貨記号文字列に基づいて、Currency Variant の文字列表記を作成するために使います。

定義

Function FormatBaseMoney(
vtConvMoney As Variant
) As String

パラメータ

vtConvMoney

変換対象の金額値を含む Currency Variant です。

戻り値

このメソッドが正常に終了すると、指定した Currency Variant の文字列表記を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oEuroDisp is a Commerce.EuroDisplay object
' vTest is a Currency Variant
' vResult is a String
vTest = "$ 40.08"
vResult = oEuroDisp.FormatBaseMoney (vTest)
' In the preceding example, if the Base Currency symbol string
' is "$" and the Base locale identifier is 1033, vResult will
' contain the string, "$ 40.08"

関連項目

EuroDisplay オブジェクト

EuroDisplay.ConvertBaseStringToCurr

EuroDisplay.FormatAltMoney


EuroDisplay.Initialize

このメソッドは、指定した代替通貨記号、基本通貨記号、代替ロケール ID、基本ロケール ID、および変換レートを使ってオブジェクトを初期化するために使います。

定義

Sub Initialize(
szBaseCurr As String,
lBaseLCID As Long,
szAltCurr As String,
lAltLCID As Long,
flEuroConvRate As Double
)

パラメータ

szBaseCurr

基本通貨記号文字列を含む文字列です。

lBaseLCID

基本ロケール識別子を含む long です。

szAltCurr

代替通貨記号文字列を含む文字列です。

lAltLCID

代替ロケール識別子を含む long です。

flEuroConvRate

基本通貨を代替通貨に換算するためのレートを含む、Double (8 バイト浮動小数点数) です。たとえば、基本通貨が 1 SF = 2.1 Euro のレートで換算されるスイス フランで、代替通貨がユーロの場合、このパラメータの値は 2.1 になります。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oEuroDisp is a Commerce.EuroDisplay object
' In this example, the Base Currency symbol string
' is "$" and the Base locale identifier is 1033; the Alt
' Currency symbol string is "DM"; the Base locale identifier
'  is 1037, and the conversion rate is $ 1 = 2.3 DM.

oEuroDisp.Initialize"$", 1033, "DM", 1037, 2.3

関連項目

EuroDisplay オブジェクト


ExpressionEval オブジェクト

このオブジェクトは、指定したコンテキストを 1 つ以上の式に対して評価するために使います。また、拡張マークアップ言語 (XML) フラグメントとして記述したユーザー定義の式を解析し、評価する場合にも使います。

ProgID: | Commerce.ExpressionEvaluator (外部作成可能)
COM クラス名: | ExpressionEval
タイプ ライブラリ名: | Microsoft Commerce 2000 Expression System Type Library
DLL 名: | exprarch.dll
スレッド モデル: | 両方

次の表は、ExpressionEval オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ExprCount | long | 式キャッシュに読み込まれた式の数を取得します。 このプロパティは読み取り専用です。

次の表は、ExpressionEval オブジェクトのメソッドを示しています。

メソッド | 説明
Connect | ExpressionEval オブジェクトと式ストアとの通信を確立します。
CreateEvalContext | コンテキスト キャッシュ内に新しい ExprEvalContext オブジェクトを作成します。
Eval | 式を評価します。
EvalInContext | 以前にコンテキスト キャッシュ内に読み込まれた、コンテキスト内の式を評価します。
EvalXML | 指定された XML テキストを、式として評価します。
FlushAll | 式キャッシュからすべての式を削除します。
FlushExpr | 指定された式を式キャッシュから削除します。
LoadAll | 式ストアにある式をすべて読み取って、式キャッシュに読み込みます。
LoadExpr | 指定された式を式ストアから読み取って、式キャッシュに読み込みます。
ParseXML | 指定された XML テキストを解析して、有効な式を表しているかどうかを判定します。

解説

式は "式ストア" というデータベースに格納され、ExpressionStore オブジェクトを介してアクセスされます。ExpressionStore オブジェクトが作成されると、ExpressionEval オブジェクトによって式キャッシュとコンテキスト キャッシュが初期化されます。式は、評価前にコンパイルして式キャッシュに読み込んでおく必要があります。評価の実行速度を高めるには、LoadExpr メソッドまたは LoadAll メソッドを使って、式をあらかじめ式キャッシュに読み込んでおきます。

式は、一連のプロファイルに含まれたデータに対して評価されます。プロファイルは、ProfileObject オブジェクト、Dictionary オブジェクト、または IDispatch インターフェイスを介したプロパティへのアクセスをサポートする、そのほかのオブジェクトのいずれかです。一連のプロファイルは、式コンテキストとして参照されます。1 つの評価コンテキストを複数の式で使う予定がある場合、効率を高めるには、CreateEvalContext メソッドを使って、コンテキスト キャッシュ内に格納済みコンテキストを作成します。

式の読み込みや評価を行う前に、Connect メソッドを呼び出す必要があります。

関連項目

式に関するオブジェクト

式レコードセット

式の XML 構造

ExpressionStore オブジェクト

ProfileObject オブジェクト


ExpressionEval.Connect

このメソッドは、式ストアとの通信を確立するために使います。

定義

Sub Connect(
vConnectInfo As Variant
)

パラメータ

vConnectInfo

[in] 式ストア接続情報を記述する Variant です。これは、接続情報または既存の ExpressionStore オブジェクトへの参照を含む文字列の場合があります。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRSTORE | &H8110001E | 指定されたデータベースには、有効な式ストアがありません。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_STOREPERMISSIONS | &H8110000F | 式ストア データベースに対するアクセス権が不十分です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

接続文字列が入力パラメータに渡されると、その接続文字列を使って式ストアにアクセスする ExpressionStore オブジェクトが ExpressionEval オブジェクトにより作成されます。破棄する際には、ExpressionEval オブジェクトが ExpressionStore オブジェクトを破棄します。

式ストアへの接続文字列は、SiteConfigReadOnly オブジェクトを介して、または Commerce Server マネージャ コンソールの Commerce Server マネージャ\グローバル リソース\プロファイル というキーの下にある s_BizDataStoreConnectionString プロパティを介して取得できます。

式の読み込みや評価を行う前に、Connect メソッドを使う必要があります。

ParseXML メソッドおよびフラッシュ メソッドは、式ストアに接続しなくても使うことができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Connect through an existing ExpressionStore object.

oExpressionEval.Connect oExpressionStore

' Connect using an explicit connection string.

oExpressionEval.Connect "Provider=SQLOLEDB;Data Source=server;" _
& "Initial Catalog=Retail_commerce;User ID=userID;Password=psswrd"

' Connect using a string retrieved from the SiteConfigReadOnly object.
' sConn is a String, oSCRO is an initialized SiteConfigReadOnly object.

sConn = oSCRO.Fields("Biz Data Service").Value _
.Fields("s_BizDataStoreConnectionString").Value
oExpressionEval.Connect sConn

関連項目

ExpressionEval オブジェクト

ExpressionStore オブジェクト

ExpressionStore.Connect

SiteConfigReadOnly オブジェクト


ExpressionEval.CreateEvalContext

このメソッドは、新しい ExprEvalContext オブジェクトを作成してコンテキスト キャッシュに入れるために使います。キャッシュに入れておくことによって、一連のプロファイル オブジェクトを複数の式に対して評価する場合に、評価効率を可能な限り高めることができます。

定義

Function CreateEvalContext(
pDictObjs As Object
) As Object

パラメータ

pDictObjs

[in] キャッシュするプロファイルのセットを含む Dictionary オブジェクトです。

戻り値

このメソッドが正常に終了すると、新しく作成された ExprEvalContext オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

CreateEvalContext メソッドは、新しい評価コンテキストを一意に識別するための ExprEvalContext オブジェクトを作成し、作成したオブジェクトをコンテキスト キャッシュに格納します。ExprEvalContext オブジェクトによって定義されたコンテキスト内に複数の式がある場合、それらの式を評価するには EvalInContext メソッドを使います。この方法は、Eval メソッドを使う方法よりも効率的です。Eval メソッドでは、評価する式ごとに新しいコンテキストが生成され、破棄されるためです。

コンテキストは、式に対して評価するデータが含まれた一連のプロファイルです。プロファイルは、ProfileObject オブジェクト、Dictionary オブジェクト、または IDispatch インターフェイスを介したプロパティへのアクセスをサポートする、そのほかのオブジェクトのいずれかです。初期状態では、コンテキスト キャッシュに保持されているのはプロファイル オブジェクトへの参照のみです。評価の過程で、プロファイルからプロパティ値が読み取られ、以後の評価でのアクセス速度を向上させるためにキャッシュ中に保持されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注意

  • プロファイル オブジェクトの状態は、ExprEvalContext オブジェクトが有効な間は外部から変更しないでください。変更すると、評価結果が決定されません。

例

' dictUser1, dictAddress1, & dictProfiles are Dictionary objects
' create 2 profiles

dictUser1.firstName = "Joe"
dictUser1.lastName = "User"
dictAddress1.city = "Somewhere"
dictAddress1.state = "WA"

' add the profiles to the context Dictionary

dictProfiles.User = dictUser1
dictProfiles.Address = dictAddress1

' create the evaluation context

oExprEvalContext = oExpressionEval.CreateEvalContext(dictProfiles)

関連項目

ExpressionEval オブジェクト

ExpressionEval.EvalInContext


ExpressionEval.Eval

このメソッドは、式を評価するために使います。

定義

Function Eval(
nExprID As Long,
pDictObjs As Object
) As Variant

パラメータ

nExprID

[in] 式ストア内の式を示す一意の識別子を含む long です。

pDictObjs

[in] 一連のプロファイルを含む Dictionary オブジェクトです。

戻り値

このメソッドは指定したコンテキストでの式の評価結果を示すために Variant を返します。結果には、True、False、または Nothing があります。Nothing は、式を評価できなかったことを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRID | &H8110000A | 無効な式 ID が指定されました。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_NOTFOUND | &H81100012 | 指定された式 ID (nExprID) を式ストアの中から見つけられませんでした。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

式は、評価前にプリコンパイルして式キャッシュに読み込んでおく必要があります。Eval メソッドは、式キャッシュに式があるかどうかをまず確認し、式が見つからない場合には、式ストアにある式を読み込みます。評価の実行速度を向上させるために、式キャッシュに式をあらかじめ読み込んでおくには、LoadExpr メソッドまたは LoadAll メソッドを使います。

式は、一連のプロファイルに含まれたデータに対して評価されます。この一連のプロファイルは評価コンテキストと呼ばれます。新しい評価コンテキスは Dictionary オブジェクトを使った Eval メソッドで生成されます。Eval メソッドでは評価が完了すると新しいコンテキストが破棄されます。同じコンテキストに対して多くの式を評価する必要がある場合、この処理は効率的ではありません。

評価コンテキストが複数の式で使われる場合は、CreateEvalContext メソッドを使ってコンテキスト キャッシュにコンテキストを作成します。EvalInContext メソッドは、この新しい一般的なコンテキストで式を評価するために使います。

Connect メソッドは Eval メソッドを使う前に呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dictUser1, dictAddress1, & dictProfiles are Dictionary objects
' create 2 profiles

dictUser1.firstName = "Joe"
dictUser1.lastName = "User"
dictAddress1.city = "Somewhere"
dictAddress1.state = "WA"

' add the profiles to the context Dictionary

dictProfiles.User = dictUser1
dictProfiles.Address = dictAddress1

' evaluate the expression, vResult is a Variant

vResult = oExpressionEval.Eval(2134, dictProfiles)

関連項目

ExpressionEval オブジェクト

ExpressionEval.Connect

ExpressionEval.CreateEvalContext

ExpressionEval.EvalInContext

ExpressionEval.LoadExpr


ExpressionEval.EvalInContext

このメソッドは、あらかじめ設定された状態でコンテキスト キャッシュに保存されているコンテキストに対して、式を評価するために使います。

定義

Function EvalInContext(
nExprID As Long,
pContext As Object
) As Variant

パラメータ

nExprID

[in] 式ストア内の式の一意の識別子を含む long です。

pContext

[in] 評価のために特定のコンテキストを識別する ExprEvalContext オブジェクトです。

戻り値

このメソッドは指定したコンテキストでの式の評価結果を示すために Variant を返します。結果には、True、False、または Nothing があります。Nothing は、式を評価できなかったことを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRID | &H8110000A | 無効な式 ID が指定されました。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_MISSINGPROP | &H8110001D | 無効な ExprEvalContext オブジェクト
E_EXPR_NOTFOUND | &H81100012 | 指定された式 ID (nExprID) を式ストアの中から見つけられませんでした。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Eval メソッドは、各評価の評価コンテキストを作成および破棄します。保存されているコンテキストに対して評価を行うと、同じコンテキストで複数の式を評価する必要がある場合にパフォーマンスが最適化されます。CreateEvalContext メソッドを使って、評価するコンテキストを作成します。

式の結果もコンテキスト キャッシュに保存されます。特定の式の結果が EvalInContext メソッドを使って同じ ExprEvalContext オブジェクトから何度も要求される場合、結果は式を再評価するのではなく、キャッシュから取得されます。キャッシュから取得した方が効率的です。

注意

  • コンテキストを構成するプロファイル オブジェクトの状態は、ExprEvalContext オブジェクトが有効な間は外部から変更しないでください。変更すると、評価結果が決定されません。

Connect メソッドは EvalInContext メソッドを使う前に呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oEvalContext is an ExprEvalContext object
' vResult is a Variant

vResult = oExpressionEval.Eval(2134, oEvalContext)

関連項目

ExpressionEval オブジェクト

ExpressionEval.Connect

ExpressionEval.CreateEvalContext

ExpressionEval.Eval

ExpressionEval.LoadExpr


ExpressionEval.EvalXML

このメソッドは、拡張マークアップ言語 (XML) フラグメントで表される式を評価するために使います。

定義

Function EvalXML(
bstrXMLExpr As String,
DictObjs As Object
) As Variant

パラメータ

btrXMLExpr

[in] 評価される XML フラグメントを含む文字列です。

DictObjs

[in] 一連のプロファイルを含む Dictionary オブジェクトです。

戻り値

このメソッドは指定したコンテキストでの式の評価結果を示すために Variant を返します。結果には、True、False、または Nothing があります。Nothing は、式を評価できなかったことを示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | &H81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | &H81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | &H81100016 | 無効な句が見つかりました。
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADOPER | &H81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | &H81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | &H81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_XMLPARSE | &H81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

XML は評価の前に解析されます。XML 形式の詳細については、「式の XML 構造」を参照してください。

EvalXML メソッドで評価される式は固定されていません。つまり、式ストアに格納されていない、または式キャッシュに読み込まれていません。Eval メソッドは固定式を評価するために使います。

新しい ExprEvalContext オブジェクトが作成された後、評価が終わった各 XML フラグメントが破棄されます。

Connect メソッドは EvalXML メソッドを使う前に呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sXMLExpr is a string.
' Note that this string is not formatted properly with respect to
' quotation marks or continuation in order to increase readability.

strXMLExpr = "<CLAUSE OPER="equal">
                  <PROPERTY ID="User.firstName" TYPE="string" />
                  <IMMED-VAL TYPE="string">Jill</IMMED-VAL>
              </CLAUSE>"

' vResult is a Variant
' dictProfiles is a Dictionary object containing a set of profiles

vResult = oExpressionEval.EvalXML(sXMLExpr, dictProfiles)

関連項目

式レコードセット

式の XML 構造

ExpressionEval オブジェクト

ExpressionEval.Connect

ExpressionEval.Eval

ExpressionEval.ParseXML


ExpressionEval.ExprCount

ExprCount プロパティは読み取り専用の整数で、正常にプリコンパイルされ、式キャッシュに読み込まれた式の数を示します。構文エラーが含まれている式は正常にプリコンパイルされません。

定義

Property ExprCount As Long

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

ExpressionEval オブジェクト

ExpressionEval.FlushAll

ExpressionEval.FlushExpr

ExpressionEval.LoadAll

ExpressionEval.LoadExpr


ExpressionEval.FlushAll

このメソッドは、式キャッシュからすべての式を削除するために使います。

定義

Sub FlushAll()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

FlushAll メソッドは、式キャッシュからすべての式を削除し、読み取り専用の ExprCount プロパティをゼロ (0) にリセットします。

FlushExpr メソッドは、式キャッシュから特定の式を削除するために使います。

関連項目

ExpressionEval オブジェクト

ExpressionEval.ExprCount

ExpressionEval.FlushExpr

ExpressionEval.LoadAll

ExpressionEval.LoadExpr


ExpressionEval.FlushExpr

このメソッドは、式キャッシュから特定の式を削除するために使います。

定義

Sub FlushExpr(
nExprID As Long
)

パラメータ

nExprID

[in] 式キャッシュから削除される式の識別子を含む long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADEXPRID | &H8110000A | 無効な式 ID が指定されました。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

FlushExpr メソッドは、式キャッシュから特定の式を削除し、読み取り専用の ExprCount プロパティを 1 つ減分します。

FlushAll メソッドは、式キャッシュからすべての式を削除するために使います。

関連項目

ExpressionEval オブジェクト

ExpressionEval.ExprCount

ExpressionEval.FlushAll

ExpressionEval.LoadAll

ExpressionEval.LoadExpr


ExpressionEval.LoadAll

このメソッドは、式ストアのすべての式をプリコンパイルするために使います。正常にプリコンパイルされた式は、式キャッシュに読み込まれます。

定義

Sub LoadAll()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | &H81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | &H81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | &H81100016 | 無効な句が見つかりました。
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADOPER | &H81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | &H81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | &H81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_XMLPARSE | &H81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

呼び出し時にある式キャッシュ内の式はすべて再読み込みされます。

式ストア内に多くの式がある場合は、LoadAll メソッドの速度が落ちる場合があります。LoadExpr メソッドは、特定の式だけを式キャッシュに読み込むために使います。

式キャッシュに読み込まれた式ごとに、LoadAll メソッドが読み取り専用の ExprCount プロパティを 1 つ増分します。

FlushAll メソッドは、式キャッシュからすべての式を削除するために使います。

Connect メソッドは LoadAll メソッドを使う前に呼び出す必要があります。

関連項目

ExpressionEval オブジェクト

ExpressionEval.Connect

ExpressionEval.ExprCount

ExpressionEval.FlushAll

ExpressionEval.FlushExpr

ExpressionEval.LoadExpr


ExpressionEval.LoadExpr

このメソッドは、式をプリコンパイルするために使い、プリコンパイルが成功した場合は式キャッシュに式を読み込みます。

定義

Sub LoadExpr(
nExprID As Long
)

パラメータ

nExprID

[in] 式キャッシュにロードする式の識別子を含む正の long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | &H81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | &H81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | &H81100016 | 無効な句が見つかりました。
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRID | &H8110000A | 無効な式 ID が指定されました。
E_EXPR_BADOPER | &H81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | &H81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | &H81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_NOTFOUND | &H81100012 | 指定された式 ID (nExprID) を式ストアの中から見つけられませんでした。
E_EXPR_XMLPARSE | &H81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

指定された式が呼び出し時に既に式キャッシュに読み込まれている場合でも、再度読み込まれます。

LoadExpr メソッドは、式キャッシュに式を読み込んだときに、読み取り専用の ExprCount プロパティを 1 つ増分します。

XML フラグメントを除き、式キャッシュ内にある式だけが評価されます。Eval メソッドは、式キャッシュにあらかじめ読み込まれていない式ストアから式を読み込みます。

LoadAll メソッドは、すべての式を式キャッシュに読み込むために使います。FlushExpr メソッドは、式キャッシュから式を削除するために使います。

Connect メソッドは LoadExpr メソッドを使う前に呼び出す必要があります。

関連項目

ExpressionEval オブジェクト

ExpressionEval.Connect

ExpressionEval.ExprCount

ExpressionEval.FlushAll

ExpressionEval.FlushExpr

ExpressionEval.LoadAll


ExpressionEval.ParseXML

このメソッドは、拡張マークアップ言語 (XML) フラグメントの構文が正しいかどうかをチェックするために使います。

定義

Function ParseXML(
bstrXMLExpr As String
) As Boolean

パラメータ

bstrXMLExpr

[in] 式を定義する XML テキストを含む文字列です。

戻り値

このメソッドは、式 (bstrXMLExpr) を解析した結果を示す Boolean 値を返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | &H81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | &H81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | &H81100016 | 無効な句が見つかりました。
E_EXPR_BADOPER | &H81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | &H81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | &H81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_XMLPARSE | &H81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは構文だけしかチェックしないので、メソッドが成功しても式は無効な場合があります。

式ストアは XML フラグメントには使えません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sXMLExpr is a string.
' Note that this string is not formatted properly with respect to
' quotation marks or continuation in order to increase readability.

strXMLExpr = "<CLAUSE OPER="equal">
                  <PROPERTY ID="User.firstName" TYPE="string" />
                  <IMMED-VAL TYPE="string">Jill</IMMED-VAL>
              </CLAUSE>"

' bResult is a Boolean

bResult = oExpressionEval.ParseXML(sXMLExpr)

関連項目

式レコードセット

式の XML 構造

ExpressionEval オブジェクト

ExpressionEval.Eval

ExpressionEval.EvalXML


ExpressionStore オブジェクト

このオブジェクトは、式ストアに含まれている式を操作するために使います。式ストアは、式に関する情報を集めた式のデータベースです。それぞれの Commerce サイトには式ストアが 1 つずつあります。

ProgID: | Commerce.ExpressionStore (外部作成可能)
COM クラス名: | ExpressionStore
タイプ ライブラリ名: | Microsoft Commerce 2000 Expression System Type Library
DLL 名: | exprarch.dll
スレッド モデル: | 両方

次の表は、ExpressionStore オブジェクトのメソッドを示しています。

メソッド | 説明
Connect | 接続文字列を評価し、指定の式ストアに格納します。
DeleteExpression | 式ストアから式を削除します。
Disconnect | 接続文字列を空文字列に設定します。
Export | 式ストアの式をファイルにエクスポートします。
GetAllExprs | 式ストアからすべての式を取得します。
GetExpression | 式ストアから 1 つの式を取得します。
GetExprID | 式名を対応する式 ID に変換します。
GetExprName | 式 ID を対応する式名に変換します。
Import | 式ストアの一連の式をファイルからインポートします。
NewExpression | 空の式を含む新しい ADO Recordset オブジェクトを作成します。
Query | 1 つまたは複数の条件に基づいて式の一覧のクエリを実行します。
RenameExpression | 既存の式の名前を変更します。
SaveExpression | 新しいまたは変更された式を式ストアに保存します。

解説

有効な式ストアへの接続文字列は、ExpressionStore オブジェクトのほかのメソッドを呼び出す前に、Connect メソッドを使って格納しておく必要があります。

ExpressionEval オブジェクトの Connect メソッドが呼び出されると、ExpressionStore オブジェクトが内部的に作成されます。

関連項目

式に関するオブジェクト

式レコードセット

式の XML 構造

ExpressionEval オブジェクト


ExpressionStore.Connect

このメソッドは、接続文字列を式ストアに格納するために使います。

定義

Sub Connect(
strConnStr As String
)

パラメータ

strConnStr

[in] 式ストアのデータベース接続情報を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRSTORE | &H8110001E | 指定されたデータベースには、有効な式ストアがありません。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_STOREPERMISSIONS | &H8110000F | 式ストア データベースに対するアクセス権が不十分です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ExpressionStore オブジェクトは固定 ADO 接続を維持しません。このメソッドは、接続文字列が実際の式ストアを指していることを確認した後、接続文字列を格納します。Disconnect メソッドは、接続文字列を空文字列に設定します。

ExpressionStore オブジェクトの各メソッドは、必要に応じて接続を作成し、作成が終わるとその接続を閉じます。これは ADO 接続プーリングを利用しており、可用性を高めます。

式ストアへの接続文字列は、SiteConfigReadOnly オブジェクトを介して、または Commerce Server マネージャ コンソールの Commerce Server マネージャ\グローバル リソース\プロファイル というキーの下にある s_BizDataStoreConnectionString プロパティを介して取得できます。

Connect メソッドは、外部的に作成された ExpressionStore オブジェクトのほかのメソッドを呼び出す前に、正常に実行される必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Connect using an explicit connection string .
' oExpressionStore is a valid ExpressionStore object

oExpressionStore.Connect "Provider=SQLOLEDB;Data Source=server;" _
& "Initial Catalog=Retail_commerce;User ID=userID;Password=psswrd"

' Connect using a string retrieved from the SiteConfigReadOnly object.
' sConn is a String, oSCRO is an initialized SiteConfigReadOnly object.

sConn = oSCRO.Fields("Biz Data Service") _
.Value.Fields("s_BizDataStoreConnectionString").Value
oExpressionStore.Connect sConn

関連項目

ExpressionStore オブジェクト

ExpressionStore.Disconnect

SiteConfigReadOnly オブジェクト


ExpressionStore.DeleteExpression

このメソッドは、式ストアから既存の式を削除するために使います。

定義

Sub DeleteExpression(
nExprID As Long,
flags As Long
)

パラメータ

nExprID

[in] 削除する式を指定する long です。

flags

[in] 省略可能な制御フラグを含む long です。このパラメータは現在使われていないため、ゼロ (0) に設定する必要があります。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRID | &H8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_EXPRDELFAILED | &H81100010 | 削除操作が失敗しました。この式に依存関係を持つ別の式がある可能性があります。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

指定された式がゼロ以外の参照カウントを持つ場合、指定された式に依存関係を持つ別の式があることを意味します。この式は削除されません。

DeleteExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

例

' oExpressionStore is an ExpressionStore object connected to
' a valid expression store.
' 59552 is a valid expression ID retrieved by the GetExprID method.

oExpressionStore.Delete(59552, 0)

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.NewExpression


ExpressionStore.Disconnect

このメソッドは、式ストアへの接続文字列を空文字列に設定するために使います。

定義

Sub Disconnect()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

式ストアへの接続と切断の詳細については、「ExpressionStore.Connect」を参照してください。

関連項目

ExpressionStore オブジェクト


ExpressionStore.Export

このメソッドは、式ストアに格納されている式をファイルにエクスポートするために使います。

定義

Sub Export(
bstrFileName As String
)

パラメータ

bstrFileName

[in] 式を格納するために使うファイルの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

エクスポート先のファイルは、呼び出す前に作成しないでください。もし作成してある場合は、メソッドは失敗します。絶対パスが指定されていない場合、\WINNT\system32 フォルダにファイルが作成されます。

メソッドが正常に完了すると、式ストア内の各式レコードセットを XML で表現したものに続いて、式レコードセットの XML スキーマがファイルに格納されます。

Import メソッドは、ファイル内の式を式ストアにコピーするために使います。

Export メソッドを呼び出す前に、Connect メソッドを呼び出します。

例

' oExpressionStore is an ExpressionStore object connected to
' a valid expression store.

oExpressionStore.Export "Expressions.xml"

関連項目

式レコードセット

式の XML 構造

ExpressionStore オブジェクト

ExpressionStore.Import


ExpressionStore.GetAllExprs

このメソッドは、式ストアに存在するすべての式を含む階層化された ADO Recordset オブジェクトを取得するために使います。

定義

Function GetAllExprs() As Object

パラメータ

なし。

戻り値

このメソッドは階層化された ADO Recordset オブジェクトを返します。正常に終了すると、Recordset オブジェクトは、その時に式ストアにある式を格納します。正常に終了しなかった場合、Recordset オブジェクトは Nothing に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Recordset オブジェクトには、式ストア内の各式ごとにレコードが 1 つずつ含まれます。この Recordset オブジェクトのフィールドの詳細については、「式レコードセット」を参照してください。

GetExpression メソッドは、式ストアから 1 つの式を取得するために使います。

GetAllExprs メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.GetExpression


ExpressionStore.GetExpression

このメソッドは、指定された式を含む階層化された ADO Recordset オブジェクトを取得するために使います。

定義

Function GetExpression(
nExprID As Long
) As Object

パラメータ

nExprID

[in] 式の一意な識別子を含む long です。

戻り値

このメソッドは階層化された ADO Recordset オブジェクトを返します。正常に終了すると、Recordset オブジェクトは指定の式を格納します。正常に終了しなかった場合、Recordset オブジェクトは Nothing に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRID | &H8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

接続された式ストア内のすべての式にアクセスするには、GetAllExprs メソッドを使います。

GetExpression メソッドを呼び出す前に、Connect を呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

式レコードセット

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.GetAllExprs

ExpressionStore.NewExpression


ExpressionStore.GetExprID

このメソッドは、式の名前を対応する式 ID に変換するために使います。

定義

Function GetExprID(
strExprName As String
) As Long

パラメータ

strExprName

[in] 式名を含む文字列です。

戻り値

このメソッドが正常に終了すると、式 ID を含む long を返します。失敗した場合、式 ID は EXPRID_INVALID (-1 と定義) に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRNAME | &H81100003 | 式名が無効であるか、またはストア内に式名が見つかりません。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetExprName メソッドは、式の ID を対応する式名に変換します。

GetExprID メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' lExpressionID is a long
' oExpressionStore is an ExpressionStore object connected to
' a valid expression store.

lExpressionID = oExpressionStore.GetExprID("MyExpression")

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.GetExpression

ExpressionStore.GetExprName

ExpressionStore.RenameExpression


ExpressionStore.GetExprName

このメソッドは、式の ID を対応する式名に変換するために使います。

定義

Function GetExprName(
nExprID As Long
) As String

パラメータ

nExprID

[in] 一意な式 ID を含む long です。

戻り値

このメソッドが正常に終了すると、式の名前を含む文字列が返されます。式 ID が long であるが、既存の式を表さない場合は、空の文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRID | &H8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetExprID メソッドは、式の名前を対応する式 ID に変換するために使います。

GerExprName メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.GetExprID


ExpressionStore.Import

このメソッドは、ファイル内の式を式ストアにインポートするために使います。

定義

Sub Import(
bstrFileName As String
)

パラメータ

bstrFileName

[in] 式のインポート元ファイルのパスと名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_NONEMPTYSTORE | &H8110000C | 空でないストアにはインポートできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

式をインポートするには、式ストアが空である必要があります。

インポート ファイルには、各式レコードセットを XML で表現したものに続いて、式レコードセットの XML スキーマが含まれる必要があります。無効な式を含む式レコードセットはインポートされますが、評価の際にエラーの原因となります。

Export メソッドは、式レコードセットの XML スキーマおよび式ストア内のすべての式をファイルにコピーするために使います。

Import メソッドを呼び出す前に、Connect メソッドを呼び出します。

例

' oExpressionStore is an ExpressionStore object connected to
' a valid expression store.

oExpressionStore.Import "\SomePath\Expressions.xml"

関連項目

式レコードセット

式の XML 構造

ExpressionStore オブジェクト

ExpressionStore.Export


ExpressionStore.NewExpression

このメソッドは、空の式を含む階層化された ADO Recordset オブジェクトを返すために使います。

定義

Function NewExpression() As Object

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、空の式を含む階層化された Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

解説

返された Recordset オブジェクトを、新しい式を記述するデータを使って生成します。Recordset オブジェクトの形式と必要なフィールドについては、「式レコードセット」を参照してください。

SaveExpression メソッド使って、新しく定義された式を式ストアに格納します。SaveExpression メソッドは、自動的に新しい一意な式 ID を生成し、新しい式と一緒に格納します。

NewExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.SaveExpression


ExpressionStore.Query

このメソッドは、指定したクエリ条件に一致する式を含む Recordset オブジェクトを取得するために使います。省略可能な引数のうち、少なくとも 1 つは指定する必要があります。

定義

Function Query(
Optional vName As Variant,
Optional vCategory As Variant,
Optional vProfiles As Variant
) As Object

パラメータ

vName

[in, optional] 指定されている場合は、式を照合するための文字列名です。これは、ワイルドカードを使用できる SQL の LIKE 句で使われます。

vCategory

[in, optional] 指定されている場合は、式を照合するためのカテゴリを含む文字列またはその文字列の SAFEARRAY です。これは、ワイルドカードを使用できる SQL の LIKE 句で使われます。

vProfiles

[in, optional] 指定されている場合は、式を照合するためのプロファイル名を含む文字列またはその文字列の SAFEARRAY です。プロファイル名はワイルドカードを使わずに指定する必要があります。

戻り値

このメソッドは階層化された ADO Recordset オブジェクトを返します。正常に終了すると、Recordset オブジェクトは指定の式を格納します。正常に終了しなかった場合、Recordset オブジェクトは Nothing に設定されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

解説

省略可能なパラメータを組み合わせて指定すると、すべての条件を満たす式が取得されます (黙示的に AND が適用されます)。たとえば、名前が "Robert%" でカテゴリが "General" の場合、"Robert" という名前で始まり "General" というカテゴリを持つ式だけが返されます。

複数のプロファイル名が指定されている場合、クエリの結果には、リストされたプロファイル名のいずれかのプロファイル要件 (依存関係) を満たす式が含まれます (黙示的に OR が適用されます)。たとえば、名前が "Robert%" でプロファイルに "User" および "Context" が指定されている場合、Query メソッドは、"Robert" という名前で始まり、"User" のみ、"Context" のみ、または "User" と "Context" の両方を必要とするプロファイルを持つ式を返します。

式を表す ADO Recordset オブジェクトの詳細については、「式レコードセット」を参照してください。

Query メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oExpressionStore is an ExpressionStore object connected to
' a valid expression store.
' rsExpr is a Recordset object that will contain all expressions
' with a name starting with 'Express', having a category of
' Octogenarians' and a profile dependency on 'joeuser'.

rsExpr = oExpressionStore.Query("Express%", "Octogenarians", "joeuser")

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect


ExpressionStore.RenameExpression

このメソッドは、式ストア内の既存の式の名前を変更するために使います。新しい式名は一意である必要があります。一意でない場合、操作は失敗します。

定義

Sub RenameExpression(
nExprID As Long,
strNewName As String
)

パラメータ

nExprID

[in] 式 ID を含む long です。

strNewName

[in] 新しい名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRID | &H8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_BADEXPRNAME | &H81100003 | 式名が無効です。
E_EXPR_DUPEXPRNAME | &H81100007 | 式名が重複しています。
E_EXPR_INVALIDFIELDSIZE | &H81100005 | 新しい名前が最大の 30 文字を超えています。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetExprID メソッドは、式名を対応する式 ID に変換するために使います。

RenameExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oExpressionStore is an ExpressionStore object connected to
' a valid expression store.
' 52997 is a valid expression ID retrieved from the GetExprId method.

oExpressionStore.RenameExpression(52997, "MyNewName")

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.GetExprID


ExpressionStore.SaveExpression

このメソッドは、新しいまたは変更された式を式ストアに保存するために使います。新しい式には、SaveExpression メソッドが自動的に一意な式 ID を生成し、式と一緒に格納します。

定義

Sub SaveExpression(
pRSExpr As Object
)

パラメータ

pRSExpr

[in] 式を含む Recordset オブジェクトです。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | &H8110001F | 無効な接続です。
E_EXPR_BADEXPRBODY | &H81100004 | 式が無効であるか、または存在しません。
E_EXPR_BADEXPRCATEGORY | &H8110000A | 無効な式カテゴリが指定されました。
E_EXPR_BADEXPRNAME | &H81100003 | 式名が無効です。
E_EXPR_CYCLEDETECTED | &H81100006 | この式とほかの式が互いに参照しています。
E_EXPR_DUPEXPRDEPS | &H81100009 | 式の依存関係が重複しています。
E_EXPR_DUPEXPRNAME | &H81100007 | 式名が重複しています。
E_EXPR_DUPPROFDEPS | &H81100008 | プロファイルの依存関係が重複しています。
E_EXPR_INVALIDEXPRDEPS | &H8110000B | 1 つ以上の式の依存関係が、存在しない式 ID を参照しています。
E_EXPR_INVALIDFIELDSIZE | &H81100005 | 新しい名前が最大の 30 文字を超えています。
E_EXPR_NOCONNECTIONSTRING | &H8110000D | 接続文字列が指定されていません。
E_EXPR_NOPROFDEPS | &H81100002 | 式を保存するには 1 つ以上のプロファイル依存関係を定義する必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

保存する式が式ストアにない場合、SaveExpression メソッドは一意な識別子を生成し、Recordset オブジェクトの ExprID フィールドを作成します。識別子は正の整数です。Recordset オブジェクトの形式とフィールドの詳細については、「式レコードセット」を参照してください。

ExpressionStore オブジェクトは、式が保存または削除されたときに、式の依存関係の基本的なチェックを実行します。これには、直接参照、相互参照のテスト、および存在しない式への参照が含まれます。

SaveExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

関連項目

ExpressionStore オブジェクト

ExpressionStore.Connect

ExpressionStore.GetExpression

ExpressionStore.NewExpression


式レコードセット

式は、指定のプロファイルのデータに対して評価される Boolean 値および関係演算子を使って構築されるステートメントです。評価される式の一部は、ActiveX Data Object (ADO) Recordset オブジェクトの ExprBody フィールドに拡張マークアップ言語 (XML) 文字列として格納されます。Recordset オブジェクトは式ストアというデータベースに格納されます。

ここでは、次のトピックについて説明します。

  • 式レコードセット オブジェクト : 式を表す階層化された ADO Recordset オブジェクトを説明します。

  • 式レコードセットの例 : 式の Recordset オブジェクトの例を示します。

関連項目

式に関するオブジェクト

式の XML 構造

ExpressionEval オブジェクト

ExpressionStore オブジェクト


式レコードセット オブジェクト

ExpressionStore オブジェクトは、階層化された ADO Recordset オブジェクトを使って、式とその依存関係を表します。この Recordset オブジェクトの構造は、親 Recordset オブジェクトと 2 つの子 Recordset オブジェクトへのポインタから成っています。

決められた構造の空の Recordset オブジェクトは、ExpressionStore オブジェクトの NewExpression メソッドを呼び出して作成します。Recordset オブジェクトのフィールドに入力すると、SaveExpression メソッドによって式ストアに格納される式がコミットされます。同様に、ExpressionStore オブジェクトの GetExpression および GetAllExprs などのメソッドは、式ストアから階層型 Recordset オブジェクトとして構造化された式データを返します。

親レコードセット

次の表は、親 Recordset オブジェクトのフィールドを示しています。

フィールド | 型 | 必要条件 | 説明
ExprID | Integer | 新しい式が保存されたときに、ExpressionStore オブジェクトの SaveExpression メソッドによって生成されます。 | 式の一意識別子です。これは正の整数です。
ExprName | 文字列 | ユーザーの入力が必要なフィールドです。 | 式の一意名です。'、"、&、\、/、<、および ＞ は使えません ', ", &, \, /, <, >
Category | 文字列 | ユーザーの入力が省略可能なフィールドです。 | 式のカテゴリです。フィルタとして使用できます。'、"、&、\、/、<、および ＞ は使えません。', ", &, \, /, <, >
ExprDesc | 文字列 | ユーザーの入力が省略可能なフィールドです。 | 式の説明です最大長は 200 文字です。&、<、および ＞ は使えません。 &, <, >
ExprBody | 文字列 | ユーザーの入力が必要なフィールドです。 | レコードセットの拡張マークアップ言語 (XML) 部分です。評価可能な式です。最大長は 3400 文字です。詳細については、「式の XML 構造」を参照してください。
DateCreated | Date | システムにより生成します。 | レコードセットが作成された日付です。
DateModified | Date | システムにより生成します。 | レコードセットが最後に変更された日付です。
rsExprDeps | Recordset ポインタ | システムにより生成します。 | この式について式の依存関係をリストする子 Recordset オブジェクトへのポインタです。
rsProfDeps | Recordset ポインタ | システムにより生成します。 | この式についてプロファイルの種類の依存関係をリストする子 Recordset オブジェクトへのポインタです。

式の子レコードセットへの依存

この Recordset のオブジェクトには、親式が直接的に依存する式のレコードが含まれています。この情報にはネストされた依存関係は含まれません。親式がどの式にも依存していない場合、このレコードセットは空である可能性があります。

次の表は、式の子 Recordset オブジェクトへの依存に関するフィールドを示しています。

フィールド | 型 | 説明
ExprID | Integer | 親式の識別子です。
ExprDep | Integer | 依存式の識別子です。

プロファイルの子レコードセットへの依存

この Recordset オブジェクトには、この式が依存するプロファイルのレコードが含まれています。ユーザーは、新しい式を作成するときに、少なくとも 1 つはレコードを生成する必要があります。

次の表は、プロファイルの子 Recordset オブジェクトへの依存に関するフィールドを示しています。

フィールド | 種類 | 説明
ExprID | Integer | 親式の識別子です。
ProfDep | 文字列 | 依存プロファイルの名前です。

解説

2 つの子 Recordset オブジェクトの ExprId フィールドには、新しい式の保存時に生成される親 Recordset オブジェクトの ExprID と同じ値が含まれています。


式レコードセットの例

次の例は、式を含む 2 つのRecordset オブジェクトです。最初の例では、式 (ID = 7) がプロファイル (User) に依存し、式はありません。次の例では、式 (ID = 24) がほかの 1 つの式 (ID=7) と 2 つの仮想プロファイル (Product および User) に依存しています。DateCreated、DateModified、rsExprDeps、および rsProfDeps の各フィールドは示されていません。

Expression7 の親レコードセット

ExprID | ExprName | Category | ExprDesc | ExprBody
7 | "Expression7" | "Hair" | "Bald_people" | String7

Expression7 に関する式の子レコードセットへの依存

ExprID | ExprDep

Expression7 に関するプロファイルの子レコードセットへの依存

ExprID | ProfDep
7 | "User"

String7 = "<CLAUSE OPER="is-true">
             <PROPERTY ID="User.GeneralInfo.hair" TYPE="string"/>
             <IMMED-VAL TYPE="string">bald</IMMED-VAL>
           </CLAUSE>"

Expression24 の親レコードセット

ExprID | ExprName | Category | ExprDesc | ExprBody
24 | "Expression24" | "FeralOctogenarians" | "Bald_ginseng_users_over_80" | String24

Expression24 に関する式の子レコードセットへの依存

ExprID | ExprDep
24 | 7

Expression24 に関するプロファイルの子レコードセットへの依存

ExprID | ProfDep
24 | "Product"
24 | "User"

String24 = "<TERM TYPE="and">
              <CLAUSE OPER="is-true">
                <EXPR-REF ID=7/>
              </CLAUSE>
              <CLAUSE OPER="equal">
                <PROPERTY ID="Product.name" TYPE="string"/>
                <IMMED-VAL TYPE="string">ginseng</IMMED-VAL>
              </CLAUSE>
              <CLAUSE OPER="at-least">
                <PROPERTY ID="User.GeneralInfo.age" TYPE="number"/>
                <IMMED-VAL TYPE="number">80</IMMED-VAL>
              </CLAUSE>
            </TERM>"


ExprEvalContext オブジェクト

このオブジェクトは ExpressionEval オブジェクトの CreateEvalContext メソッドで作成されます。複数の式を評価するための一般的なコンテキストの保存にも使われます。ExprEvalContext オブジェクトは ExpressionEval オブジェクトによってコンテキスト キャッシュに保存され、 ExpressionEval オブジェクトが破棄されたときに削除されます。

ExprEvalContext オブジェクトは ExpressionEval オブジェクトからのアクセスしか目的としていないため、ExprEvalContext オブジェクトのプロパティおよびメソッドに関するマニュアルは提供されていません。

注意

  • ExprEvalContext オブジェクト内部の値は変更しないでください。これらの値を変更すると、オブジェクトが壊れて無効になります。ExprEvalContext オブジェクトの作成と削除、および ExprEvalContext オブジェクトへのアクセスには、ExpressionEval オブジェクトのメソッドしか使いません。

関連項目

式に関するオブジェクト

ExpressionEval オブジェクト


ExprFltrQueryBldr オブジェクト

このオブジェクトは、拡張マークアップ言語 (XML) 形式の式を SQL フィルタのクエリ文字列に変換するために使います。フィルタのクエリは、属性値の組み合わせを基にしたデータベースから、項目のサブセットを返します。

ProgID: | Commerce.ExprFltrQueryBldr (外部作成可能)
COM クラス名: | ExprFltrQueryBldr
タイプ ライブラリ名: | Microsoft Commerce 2000 Expression Builder Type Library
DLL 名: | exprfltrbldr.dll
スレッド モデル: | アパートメント

次の表は、ExprFltrQueryBldr オブジェクトのメソッドを示しています。

メソッド | 説明
ConvertExprToSqlFltrStr | XML 形式の式を SQL フィルタ文字列に変換します。
ConvertExprUsingDict | Dictionary オブジェクトを参照する XML 形式の式を SQL フィルタ文字列に変換します。

解説

XML 形式の式に Dictionary オブジェクトへの参照が含まれている可能性があります。

関連項目

式の XML 構造


ExprFltrQueryBldr.ConvertExprToSqlFltrStr

このメソッドは、拡張マークアップ言語 (XML) 形式の式を SQL フィルタのクエリ文字列に変換するために使います。

定義

Function ConvertExprToSqlFltrStr(
pExpression As String
) As String

パラメータ

pExpression

XML 形式の式を含む文字列です。

戻り値

このメソッドが正常に終了すると、SQL フィルタ文字列を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sXMLExpr and sSqlFilter are Strings.
' Note that the sXMLExpr string is not properly formatted with respect
' to quotation marks or continuation to increase readability.

sXMLExpr = "<CLAUSE OPER="at-least">
              <PROPERTY ID="user.age" TYPE="number"/>
              <IMMED-VAL TYPE="number">80</IMMED-VAL>
            </CLAUSE>"

sSqlFilter = oExprFltrQueryBldr.ConvertExprToSqlFltrStr(sXMLExpr)
' The resulting sSQLFilter string is: user.age >= 80.

関連項目

ExprFltrQueryBldr オブジェクト


ExprFltrQueryBldr.ConvertExprUsingDict

このメソッドは、Dictionary オブジェクトへの参照を含む拡張マークアップ言語 (XML) 形式の式を、SQL フィルタ文字列に変換するために使います。

定義

Function ConvertExprUsingDict(
pExpr As String,
pDict As Object
) As String

パラメータ

pExpr

XML 形式の式を含む文字列です。

pDict

式によって参照される値を含む Dictionary オブジェクトです。

戻り値

このメソッドが正常に終了すると、SQL フィルタ文字列を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

XML 式では、Dictionary オブジェクトへの参照を、キーワード 'context' を持つ IMMED-VAL タグ内の値より前に配置することによって作成します。式の変換中にこのような参照が見つかった場合、その参照は Dictionary オブジェクトから読み取られた値に置き換わります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExprFltrQueryBldr オブジェクト


GenID オブジェクト

このオブジェクトは、グローバル一意識別子 (GUID) を生成するため、またはデータベースに保存されている複数のグローバルなシーケンシャル カウンタを作成および維持するために使います。グローバル カウンタは複数のコンピュータ間で機能します。

ProgID: | Commerce.GenID (外部作成可能)
COM クラス名: | GenID
タイプ ライブラリ名: | Microsoft Commerce 2000 GenID Type Library
DLL 名: | GenID.dll
スレッド モデル: | 両方

次の表は、GenID オブジェクトのメソッドを示しています。

メソッド | 説明
GenBase5GUIDString | base5 の GUID 文字列を生成します。
GenGUIDString | GUID 文字列を生成します。
GetCounterValue | 指定されたカウンタの値を取得し、カウンタを増分します。
Initialize | カウンタの表が保存されているデータベースの GenID オブジェクトに接続します。
InitializeCounter | 新しいカウンタを初期化するか、既存のカウンタをリセットします。


GenID.GenBase5GUIDString

このメソッドは、base5 のグローバル一意識別子 (GUID) 文字列を生成するために使います。

定義

Function GenBase5GUIDString() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、base5 GUID を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

base5 の GUID は、従来の GUID よりもコンパクトなものを保存するために使います。128 バイナリ文字は、4 グループではなく 5 グループに分割されます。各グループは　0-9 の数字と 22 文字のアルファベットで表されます。これにより、GUID を通例の32 文字ではなく、26 文字で表せます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GenID オブジェクト


GenID.GenGUIDString

このメソッドは、グローバル一意識別子 (GUID) 文字列を生成するために使います。

定義

Function GenGUIDString() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、GUID を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GenID オブジェクト


GenID.GetCounterValue

このメソッドは、指定のカウンタに保存されている値を取得および増分するために使います。

定義

Function GetCounterValue(
bstrCounterName As String,
cDigits As Long
) As String

パラメータ

bstrCounterName

カウンタ名を含む文字列です。

cDigits

返す桁数を含む long です。

戻り値

このメソッドが正常に終了すると、カウンタの値を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カウンタの現在の値が返されると、カウンタが 1 つ増分されます。InitializeCounter は、カウンタをリセットするために使います。

カウンタの値が要求された桁数よりも小さい場合、値はゼロを左詰めすることで補充されます。

GetCounterValue メソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sCounterValue is a String
' oGenID is a Commerce GenID object
' The value stored in the counter is 285.

sCounterValue = oGenID.GetCounterValue("OrderIDCounter", 4)

' sCounterValue = 0285
' The value now stored in the OrderIDCounter is 286.

関連項目

GenID オブジェクト


GenID.Initialize

このメソッドは、カウンタの表が保存されているデータベースの GenID オブジェクトに接続するために使います。

定義

Sub Initialize(
bstrDBConnectionString As String,
Optional cBlockSizeHint As Long
)

パラメータ

bstrDBConnectionString

データベースへの接続情報を含む文字列です。

cBlockSizeHint

実装されていません。空白のままにしてください。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetCounterValue メソッドと InitializeCounter メソッドを呼び出す前に、このメソッドを呼び出す必要があります。

接続文字列は、SiteConfigReadOnly オブジェクトまたは Commerce Server マネージャのコンソールで、Commerce Server マネージャ\Commerce サイト\<サイト名>\サイト リソース\トランザクションの下の connstr_db_Transactions プロパティから取得できます。

例

' oGenID is a Commerce GenID object

' Connect using an explicit connection string.

oGenID.Initialize "Provider=SQLOLEDB;Data Source=server;" _
 & "User ID=user;Password=psswrd;Initial Catalog=Retail_commerce"

' Connect using a string retrieved from the SiteConfigReadOnly object.
' sConn is a String, oSCRO is an initialized SiteConfigReadOnly object

sConn = oSCRO.Fields("Transactions").Value.Fields("connstr_db_Transactions").Value
oGenID.Initialize sConn

関連項目

GenID オブジェクト


GenID.InitializeCounter

このメソッドは、グローバルなシーケンシャル カウンタを作成またはリセットするために使います。

定義

Sub InitializeCounter(
bstrCounterName As String,
dwInitialValue As Long
)

パラメータ

bstrCounterName

カウンタ名を含む文字列です。

dwInitialValue

カウンタの初期値を含む long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カウンタは、いくつでも作成することができます。カウンタが既に存在する場合、その値は指定された初期値にリセットされます。

グローバル カウンタは複数のコンピュータ間で機能します。

InitializeCounter メソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

例

' oGenID is a Commerce GenID object

oGenID.InitializeCounter("OrderCounter", 213)

関連項目

GenID オブジェクト


GlobalConfig オブジェクト

このオブジェクトは、次のことを行うために使います。

  • リソース構成情報を作成または削除します。

  • 更新されたグローバル構成情報を管理データベースに保存します。

  • サイトを追加します。

ユーザー独自のカスタム リソースの追加方法によっては、このオブジェクトを使って管理データベースから構成設定にアクセスできるようにする必要があります。

ProgID: | Commerce.GlobalConfig (外部作成可能)
COM クラス名: | GlobalConfig
タイプ ライブラリ名: | Microsoft Commerce 2000 Configuration Type Library
DLL 名: | MSCSCfg.dll
スレッド モデル: | アパートメント

次の表は、GlobalConfig オブジェクトの 1 つのプロパティを示しています。

プロパティ | 種類 | 説明
Fields | Fields | グループレベルの構成データを返します。 このプロパティは読み取り専用です。

次の表は、GlobalConfig オブジェクトのメソッドを示しています。

メソッド | 説明
CreateServiceConfig | 指定されたリソースの構成情報を管理データベースに作成し、書き込みます。
CreateSiteConfig | サイトを作成します。
DeleteServiceConfig | 指定されたリソースの構成情報を削除します。
DeleteSiteConfig | サイトの指定された構成、および関連するリソースのすべての構成を削除します。
GetIfCollection | Fields プロパティから読み取られた値を、SimpleList オブジェクトまたは Variant Array といった適切なオブジェクトに変換します。
GetResourcePropAttrib | 指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせが格納されているディクショナリを取得します。
Initialize | グローバル構成データを管理データベースから読み込みます。
MakeArrayFromSimpleList | 指定された SimpleList オブジェクトを Array に変換します。
MakeArrayFromString | Fields プロパティから読み取られた値を Array に変換します。
MakeSimpleListFromArray | Array を SimpleList オブジェクトに変換します。
MakeStringFromArray | Array をエンコードされた文字列に変換します。これは Fields プロパティに書き込めます。
MakeStringFromSimpleList | SimpleList オブジェクトをエンコードされた文字列に変換します。これは Fields プロパティに書き込めます。
SaveConfig | グローバル構成設定を管理データベースに保存します。
Sites | 利用可能なすべてのサイトのリストを管理データ ストアに返します。

関連項目

カスタムリソースを統合する

構成オブジェクト

SiteConfig オブジェクト

SiteConfigReadOnly オブジェクト


GlobalConfig.CreateServiceConfig

このメソッドは、bstrConfigSchemaClass パラメータで指定されたクラスのインスタンスを作成するため、インスタンスの Name プロパティを bstrServiceName パラメータで指定された名前に設定するため、およびインスタンスをサイトのレコードセットに読み込むために使います。このメソッドは SaveConfig メソッドを呼び出します。

定義

Sub CreateServiceConfig(
bstrServiceName As String,
bstrConfigSchemaClass As String
)

パラメータ

bstrServiceName

リソース構成オブジェクト インスタンスの新しい名前を含む文字列です。

bstrConfigSchemaClass

リソース構成スキーマのクラス名を含む文字列です。

戻り値

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

次の表は、このメソッドのスキーマ クラスのリストです。

管理データベースのクラス名 | リソース名
MSCS_AuthManager | CS 認証のサイト
MSCS_DirectMailer | ダイレクト メーラー
MSCS_Predictor | Predictor
MSCS_Datawarehouse_Group | グローバル データ ウェアハウス
MSCS_BizDataStore | プロファイル: Profiles

例

' sMyPredictor is a String denoting the new resource name
' oGlobalConfig is a Commerce GlobalConfig object
oGlobalConfig.CreateServiceConfig(sMyPredictor, MSCS_Predictor)

関連項目

GlobalConfig オブジェクト

GlobalConfig.DeleteServiceConfig


GlobalConfig.CreateSiteConfig

このメソッドは、bstrSiteName パラメータで指定された名前を使ってサイトを作成するために使います。このメソッドは SaveConfig メソッドを呼び出します。このメソッドは、主に Commerce Server マネージャまたは Commerce Server サイト パッケージャから使います。Commerce Server サイト パッケージャで正しい ACL を IIS メタベースのエントリに設定し、管理オブジェクトをサイト管理者だけが操作できるようにします。

定義

Function CreateSiteConfig(
bstrSiteName As String
) As Object

パラメータ

bstrSiteName

新しいサイト名を含む文字列です。

戻り値

このメソッドが正常に終了すると、サイト構成設定を含む SiteConfig オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMyNewSite is a string; oGlobalConfig is a Commerce GlobalConfig object
' oMSCSSiteConfig is a Commerce.SiteConfig object
oMSCSSiteConfig = oGlobalConfig.CreateSiteConfig(sMyNewSite)

関連項目

GlobalConfig オブジェクト

_GlobalConfig::DeleteSiteConfig


GlobalConfig.DeleteServiceConfig

このメソッドは、指定されたリソースと、このリソースとサイトのインスタンスをリンクする管理データベースの関連付けを削除するために使います。

定義

Sub DeleteServiceConfig(
bstrServiceName As String
)

パラメータ

bstrServiceName

削除対象のリソース構成オブジェクトの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMyPredictor is the name of an existing resource
' oGlobalConfig is a Commerce GlobalConfig object
oGlobalConfig.DeleteServiceConfig (sMyPredictor)

関連項目

GlobalConfig オブジェクト

GlobalConfig.CreateServiceConfig


GlobalConfig.DeleteSiteConfig

このメソッドは、現在のサイトのサイト構成オブジェクト インスタンスを管理データベースから削除するために使います。このメソッドは、主に Commerce Server マネージャまたは Commerce Server サイト パッケージャによって使われます。

定義

Sub DeleteSiteConfig(
bstrSiteName As String
)

パラメータ

bstrSiteName

サイト名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMySiteName is an existing site name
' oGlobalConfig is a Commerce GlobalConfig object
oGlobalConfig.DeleteSiteConfig(sMySiteName)

関連項目

GlobalConfig オブジェクト

GlobalConfig.CreateServiceConfig


GlobalConfig.Fields

Fields プロパティは読み取り専用のFields オブジェクトです。Fields プロパティの内容には、リソースの構成設定を保持するレコードセットが含まれます。Fields オブジェクトは、ADO の切断されたレコードセットです。

定義

Property Fields As Object

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

pFields パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


GlobalConfig.GetIfCollection

このメソッドは、Fields プロパティから読み取られた値を SimpleList オブジェクトまたは Variant Array といった適切なオブジェクトに変換するために使います。Fields プロパティに含まれる文字列のエンコードが SimpleList オブジェクトを示す場合、SimpleList オブジェクトが返されます。エンコードが Variant Array を示す場合、Variant Array が返されます。コレクション オブジェクトが示されていない場合、メソッドは元のエンコードされた入力文字列を返します。

定義

Function GetIfCollection(
strList As Variant
) As Variant

パラメータ

strList

変換対象のエンコードされた文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、適切なデータ型に変換されたデータを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vVariant is a Variant; vEncodedString is a Variant
' oGlobalConfig is a Commerce GlobalConfig object
vVariant = oGlobalConfig.GetIfCollection(vEncodedString)

関連項目

GlobalConfig オブジェクト


GlobalConfig.GetResourcePropAttrib

このメソッドは、指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせが格納されているディクショナリを取得するために使います。

定義

Function GetResourcePropAttrib(
strResourceName As String,
strPropName As String
) As Object

パラメータ

strResourceName

リソース名を含む文字列です。

strPropName

リソースのプロパティ名を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせを含む Dictionary オブジェクトへのオブジェクト参照.が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dDict is a Dictionary object
' sMyCatalog is an existing resource
' connstr_desc_Catalog is a valid Catalog resource property
' oGlobalConfig is a Commerce GlobalConfig object
dDict = _
oGlobalConfig.GetResourcePropAttrib(sMyCatalog, connstr_desc_Catalog)

関連項目

GlobalConfig オブジェクト


GlobalConfig.Initialize

このメソッドは、管理データベースからグローバル構成を読み込むために使います。

定義

Sub Initialize(
Optional bstrGroupName As String
)

パラメータ

bstrGroupName

将来の使用のために予約されている文字列です。このメソッドは、このパラメータに指定された値を無視します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


GlobalConfig.MakeArrayFromSimpleList

このメソッドは、指定された SimpleList オブジェクトを Array に変換するために使います。

定義

Function MakeArrayFromSimpleList(
list As Object
) As Variant

パラメータ

list

Array に変換する SimpleList オブジェクトへのオブジェクト参照です。

戻り値

このメソッドが正常に終了すると、変換された Array を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vMyVariant is a Variant
' varMySimpleList is an object reference to a SimpleList object
' oGlobalConfig is a Commerce GlobalConfig object
vMyVariant = oGlobalConfig.MakeArrayFromSimpleList(varMySimpleList)

関連項目

GlobalConfig オブジェクト


GlobalConfig.MakeArrayFromString

このメソッドは、Fields プロパティから読み取ったエンコードされた文字列を、Array に変換するために使います。エンコードされた文字列が Array プロパティを示していない場合、メソッドに渡された元の文字列が返されます。

定義

Function MakeArrayFromString(
strList As Variant
) As Variant

パラメータ

strList

エンコードされた文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、変換された Array または変換されていない文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトが表示する値にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields としてのオブジェクトをサポートしません。したがって、GlobalConfig オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a Variant containing an encoded string read from the Fields
' property
' vArray is a Variant
' oGlobalConfig is a Commerce GlobalConfig object
vArray = oGlobalConfig.MakeArrayFromString(vEncoded)

関連項目

GlobalConfig オブジェクト


GlobalConfig.MakeSimpleListFromArray

このメソッドは、Array を SimpleList オブジェクトに変換するために使います。

定義

Function MakeSimpleListFromArray(
varArray As Variant
) As Object

パラメータ

varArray

変換する Array を含む Variant です。

戻り値

このメソッドが正常に終了すると、変換された SimpleList オブジェクトへのオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vMyArray is a Variant
' varMySimpleList is a SimpleList object
' oGlobalConfig is a Commerce GlobalConfig object
varMySimpleList = oGlobalConfig.MakeSimpleListFromArray(vMyArray)

関連項目

GlobalConfig オブジェクト


GlobalConfig.MakeStringFromArray

このメソッドは、Array オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列はFields プロパティに書き込めます。

定義

Function MakeStringFromArray(
varArray As Variant
) As Variant

パラメータ

varArray

エンコード対象の Array を含む Variant です。

戻り値

このメソッドが正常に終了すると、エンコードされた文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields としてのオブジェクトをサポートしません。したがって、GlobalConfig オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a Variant
' vArray is a Variant
' oGlobalConfig is a Commerce GlobalConfig object
vEncoded = oGlobalConfig.MakeStringFromArray(vArray)

関連項目

GlobalConfig オブジェクト


GlobalConfig.MakeStringFromSimpleList

このメソッドは、SimpleList オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列はFields プロパティに書き込めます。

定義

Function MakeStringFromSimpleList(
slist As Object
) As String

パラメータ

slist

エンコードされた文字列に変換する SimpleList オブジェクトへのオブジェクト参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、SimpleList、またはFields 列としてのオブジェクトをサポートしません。したがって、GlobalConfig オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a string
' vArray is a Variant
' varMySimpleList is an object reference to a SimpleList object
' oGlobalConfig is a Commerce GlobalConfig object
vEncoded = oGlobalConfig.MakeStringFromSimpleList(varMySimpleList)

関連項目

GlobalConfig オブジェクト


GlobalConfig.SaveConfig

このメソッドは、グローバル構成設定を管理データベースに保存するために使います。

定義

Sub SaveConfig(

)

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

関連項目

GlobalConfig オブジェクト


GlobalConfig.Sites

このメソッドは、管理データベース内のすべての利用可能なサイトのリストを取得するために使います。このメソッドはレコードを 1 つ含む Recordset オブジェクトを返します。Fields コレクション内のフィールド数は、Commerce Server 2000 のインストール環境のサイト数と同じです。それぞれの Fields コレクションには、いずれかのサイトの名前が含まれています。

定義

Function Sites (

) As Object

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、Administration データ ストア内にあるすべての利用可能サイトの一覧を含む、Recordset オブジェクトが返されます｡

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


ListManager オブジェクト

このオブジェクトは、User Profile Management システムのユーザーのリスト、ダイレクト メーラーの電子メールアドレスのリスト、予測リソースのセグメント メンバのリスト、分析レポートから生成されたリスト、ファイルおよび SQL クエリから作成されたリストを作成、管理するために使います。

ProgID: | Commerce.ListManager (外部作成可能)
COM クラス名: | ListManager
タイプ ライブラリ名: | Microsoft Commerce 2000 ListManager Type Library
EXE 名: | listmanager.exe
スレッド モデル: | 両方

次の表は、ListManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ConnectionString | 文字列 | リストを格納するために ListManager オブジェクトが使うデータベースへの接続文字列が含まれます。 この値は、Initialize メソッドに ConnectionString パラメータを渡すときに設定されます。 このプロパティは読み取り専用です。
Status | long | ListManager オブジェクトの現在の状態が含まれます。 このプロパティは読み取り専用です。

次の表は、ListManager オブジェクトのメソッドを示しています。

メソッド | 説明
AddUserToMailingList | メーリング リストにユーザーを追加します。
CancelOperation | 現在実行している非同期操作をキャンセルします。
Copy | リストのコピーを作成します。
CreateEmpty | 後続の操作のために空のリストを作成します。
CreateFromDWCalc | 分析レポートからリストを作成します。
CreateFromFile | ファイルからリストを作成します。
CreateFromSegment | 予測リソース セグメントからリストを作成します。
CreateFromSql | SQL クエリからリストを作成します。
Delete | リストを削除します。
ExportToFile | ファイルにリストをエクスポートします。
ExportToSql | リストをデータベース テーブルにエクスポートします。
ExtractMailingList | rcp_email 列が含まれる汎用リストから新しいメーリング リストを作成します。
GetListFlags | リストの Flags ビットマスクを取得します。
GetListId | リスト ID を取得します。
GetListName | リスト名を取得します。
GetListProperty | リスト プロパティを取得します。
GetLists | 呼び出しの時点で既知となっているすべてのリストを列挙します。
GetListUserFlags | リストの UserFlags ビットマスクを取得します。
GetOperationInfo | リスト操作に関する情報を取得します。
GetOperations | 呼び出しの時点で実行されているすべての操作を列挙します。
Initialize | ListManager オブジェクトを初期化します。
RemoveUserFromMailingList | メーリング リストからユーザーを削除します。
Rename | リストの名前を変更します。
SetDesc | リストに説明を割り当てます。
SetListProperty | リスト プロパティを設定します。
Subtract | あるリストを別のリストから削除し、結果を第 3 のリストに保存します。
Union | 2 つのリストの和集合 (リストを結合して重複をなくす) を作成し、結果を第 3 のリストに保存します。
WaitOnOperation | 操作の完了またはタイムアウトを待ってから戻ります。

解説

リスト マネージャには、2 種類のリスト (汎用リストとメーリング リスト) を操作する機能があります。それぞれのリストには、ユーザー属性とメールが利用可能な属性があります。リストは、データをいつインポートするかによって静的または動的と指定されます。

汎用リストには、列名と列型のセットを含めることができます。汎用リストは、必ず SQL テーブルにマップされます。

メーリング リストは、ダイレクト メーラーで使うリストです。これには、メールを受け取る受信者のリストまたはメーリングから脱退する必要のある受信者のリストが含まれます。各メーリング リストには、専用のテーブルがあります。

次の表は、メーリング リスト テーブルの列を示します。

フィールド | 種類 | 説明
rcp_email | NVARCHAR [256] | 受信者の電子メールアドレス。
rcp_guid | NVARCHAR [64] | (省略可能) ユーザー ID。通常はユーザー プロファイルのキーとなる GUID。
rcp_fmt | smallint | (省略可能) メッセージ形式のフラグ。有効な値は次のとおりです。 1 - TEXT 2 - MIME 3 - MHTML
rcp_locale | NVARCHAR[20] | (省略可能) 受信者の優先文字セット。詳細については、ダイレクト メーラーの仕様を参照してください。
rcp_url | NVARCHAR[2084] | (省略可能) ユーザー用にパーソナライズされたコンテンツの取得に使う URL。

メールが利用可能なリストは、rcp_email 列を含む任意のリストです。

ユーザー リストは、rcp_guid 列を含む任意のリストです。

静的リストでは、リストの作成時にレコードがインポートされます。

動的リストでは、別の操作によって参照されたときに、必要に応じてレコードがインポートされます。

リスト マネージャでは、次のソースからリストをインポートできます。

  • ODBC データ ソースに対して実行する SQL クエリ

  • ビジネス デスクから実行する分析レポート

  • 予測リソースのセグメント

  • テキスト ファイル (CSV 形式)

リスト マネージャでは、次の形式にリストをエクスポートできます。

  • 外部データベースにある SQL Server 2000 のテーブル

  • テキスト ファイル (CSV 形式)

リスト マネージャでは、時間のかかる操作を非同期で実行することが可能です。非同期方式では、操作は処理が開始された後に戻され、操作をするために使う操作 ID を割り当てます。

リスト マネージャでは、リストに関する情報は lm_master テーブルに、操作に関する情報は lm_master_operations テーブルに保存されます。

関連項目

リスト管理オブジェクト


ListManager.AddUserToMailingList

このメソッドは、ユーザー レコードをメーリング リストに追加するために使います。

定義

Sub AddUserToMailingList(
listID As Variant,
UserEmail As Variant,
Optional UserGUID As Variant,
Optional UserFmt As Variant,
Optional UserLocale As Variant,
Optional UserUrl As Variant
)

パラメータ

listID

リストの ID または名前を含む Variant です。

UserEmail

ユーザーの電子メール アドレスを含む Variant です。

UserGUID

ユーザーの ID (通常は GUID) を含む Variant です。

UserFmt

メッセージ形式のフラグを含むオプションの Variant です。詳細については、"解説" を参照してください。

UserLocale

ユーザーの優先文字セットを含む省略可能な Variant です。

UserUrl

ユーザー用にパーソナライズされたコンテンツの取得に使う URL を含む、省略可能な Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストはありません。
E_LM_MAILABLE_LIST_NO_EMAILS | &H8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_MUST_BE_STATIC | &H8C400019 | この操作には静的リストが必要ですが、指定されたリストは動的です。
E_LM_NOT_MAILING_LIST | &H8C400018 | この操作にはメーリング リストが必要ですが、指定されたリストはメーリング リストではありません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | &H8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

UserFmt パラメータには、ダイレクト メーラーで使うメッセージの形式を指定します。次の値を指定できます。text (1)、MIME (2)、および MHTML (3)。

1 つまたは複数のフィールドに Null が挿入されるように指定するには、VT_NULL、 VT_EMPTY、または VT_ERROR を省略可能なパラメータとして指定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.AddUserToMailingList "{2B544800-4169-4C49-8713-1B794078B4C9}", _
 "JaneUser@somewhere.com", "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", _
 2, 1033, VT_NULL

関連項目

ListManager オブジェクト


ListManager.CancelOperation

このメソッドは、指定された ListManager 操作をキャンセルするために使います。

定義

Sub CancelOperation(
varOpID As Variant
)

パラメータ

varOpID

キャンセルする操作の操作 ID を指定する Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_LM_OPERATION_NOT_FOUND | &H8C400004 | この操作 ID は、現在実行している操作の ID ではありません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

varOpID パラメータ内のこのメソッドに渡された操作 ID は、呼び出しが非同期的に実行されたときに、次のいずれからでも取得できます。

  • Copy

  • CreateFromDWCalc

  • CreateFromFile

  • CreateFromSql

  • ExportToFile

  • ExportToSql

  • Subtract

  • Union

また、既知の操作の操作 IDはすべて、GetOperations メソッドを使って取得されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


ListManager.ConnectionString

ConnectionString プロパティは、読み取り専用の文字列です。リスト マネージャがリストを保存するために使うデータベース接続文字列が含まれます。このプロパティは Initialize メソッドで設定します。

定義

Property ConnectionString() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

関連項目

ListManager オブジェクト


ListManager.Copy

このメソッドは、既存のリストに別の既存のリストをコピーするために使います。

定義

Sub Copy(
srcList As Variant,
resList As Variant,
bAsync As Boolean,
Optional pvarOpID As Variant
)

パラメータ

srcList

ソース リストの ID または名前を含む Variant です。

resList

結果リストの ID または名前を含む Variant です。

bAsync

コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_COPY_LIST_OVER_SELF | &H8C40001C | リストはリスト自身にはコピーできません。
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストはありません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

メソッドを呼び出す前に結果リストが作成されている必要がありますが、リスト内のデータは上書きされます。

宛先リストの flags 属性は、ソース リストの flags 属性に置き換えられます。UserFlags 属性が変更されていません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pvarOdID is a Variant
oListManager.Copy "{2B544800-4169-4C49-8713-1B794078B4C9}", _
 "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", True, pvarOpID

関連項目

ListManager オブジェクト


ListManager.CreateEmpty

このメソッドは、後続の操作用に空のリストを作成するために使います。

定義

Function CreateEmpty(
listName As String,
listDesc As String,
flags As Long,
userFlags As Long
) As Variant

パラメータ

listName

新しいリストの名前を指定する文字列です。

listDesc

新しいリストの説明を指定する文字列です。

flags

作成されるリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

戻り値

このメソッドが正常に終了すると、新しいリストの ID を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_INVALID_FLAGS | &H8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | &H8C400007 | 指定されたリストは既に作成されています。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドは、コピー、削除、または結合操作の結果リストとして使う空のリストを作成する場合に役立ちます。

flags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vListID is a Variant
vListID = oListManager.CreateEmpty("TequillaBuyers1", _
 "Tequilla buyers in January", 20, 0)

関連項目

ListManager オブジェクト


ListManager.CreateFromDWCalc

このメソッドは、分析レポートからリストを作成するために使います。

定義

Function CreateFromDWCalc(
listName As String,
listDesc As String,
lFlags As Long,
userFlags As Long,
DWConnStr As String,
OLAPConnStr As String,
ReportStatusId As String,
bAsync As Boolean,
Optional pvarOpID As Variant
) As Variant

パラメータ

listName

新しいリストの名前を指定する文字列です。

listDesc

新しいリストの説明を指定する文字列です。

lFlags

作成されるリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

DWConnStr

データ ウェアハウスの接続文字列を含む文字列です。

OLAPConnStr

OLAP 接続文字列を含む文字列です。

ReportStatusId

インポートするレポートの ReportStatusID を含む文字列です。

bAsync

作成操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。

戻り値

このメソッドが正常に終了すると、新しいリストの ID を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | &H8C400001 | データベースに接続できませんでした。
E_LM_CREATE_OBJECT | &H8C400017 | オブジェクトを作成できません。
E_LM_INVALID_FLAGS | &H8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | &H8C400007 | 指定されたリストは既に作成されています。
E_LM_MAILABLE_LIST_NO_EMAILS | &H8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_REPORTRENDERERFAILED | &H8C40001A | ListManager へのエクスポートを行う分析レポートの実行中に、オブジェクトを実行するレポートが失敗しました。問題を説明するオブジェクトによって記録されるアプリケーションのイベント ログ メッセージを参照してください。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | &H8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドは ReportRender オブジェクトを呼び出し、DWConnStr、OLAPConnStr、ReportStatusId パラメータと ListManager オブジェクトが使うデータベースへの接続文字列、および ReportRender オブジェクトが作成するテーブル名を渡します。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vListID is a Variant
vListID = oListManager.CreateFromDWCalc("TequillaBuyers1", _
 "Tequilla buyers in January", 20, 0, "URL=mscop:" & _
 "//InProcConnect/Server=myserver:Database=dbname:" & _
 "Catalog=DWSchema:User=userid:Password=********:FastLoad=True", _
 "2B54480041694C4987131B794078B4C9", False)

関連項目

ListManager オブジェクト


ListManager.CreateFromFile

このメソッドは、テキスト ファイルからリストを作成するために使います。

定義

Function CreateFromFile(
listName As String,
listDesc As String,
lFlags As Long,
userFlags As Long,
fileName As String,
errLimit As Long,
bAsync As Boolean,
Optional pvarOpID As Variant
) As Variant

パラメータ

listName

新しいリストの名前を指定する文字列です。

listDesc

新しいリストの説明を指定する文字列です。

lFlags

作成されるリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

fileName

新しいリストを作成するための基になるファイル名を含む文字列です。

errLimit

操作が終了するまでに許容される最大エラー回数を指定する long です。制限をなくすには、errLimit パラメータをゼロ (0) に設定します。

bAsync

作成操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。

戻り値

このメソッドが正常に終了すると、新しいリストの ID を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_LM_BAD_FILE_PATH | &H8C40000A | 指定されたファイル パスは有効ではありません。
E_LM_FILE_ACCESS_DENIED | &H8C400009 | ListManager サービスは指定されたファイルを開く権限がありません。ListManager サービスのアカウントがそのファイルへのアクセス権を持っていることを確認してください。
E_LM_FILE_NOT_FOUND | &H8C400015 | 指定されたファイルは存在しません。
E_LM_FILESHARE_NOT_FOUND | &H8C400016 | 共有ネットワークが存在せず、ファイルのフル パスが指定されていません。
E_LM_INVALID_FLAGS | &H8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | &H8C400007 | 指定されたリストは既に作成されています。
E_LM_LISTPARSE_NO_GOOD_ROWS | &H8C40001B | ファイルのすべての行に解析エラーがありました。リストのインポートに失敗しました。
E_LM_NO_GENERIC_FROM_FILE | &H8C400014 | 汎用リストはファイルからインポートされない可能性があります。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

listName パラメータと同じ名前のリストが既に存在する場合、メソッドは失敗します。テキスト ファイルからインポートするリストは、汎用リストであってはなりません。必ずメーリング リストになります。

List Manager を実行するように構成されているユーザー アカウントには、ファイルへのアクセス権が必要です。たとえば、ファイルが共有ネットワークにある場合、サービスはドメイン アカウントの下で実行するか、もしくはその共有へのアクセス権が必要です。

絶対ファイル パスとファイル名が指定されていない場合、List Manager は、List Manager サービスを実行しているローカル コンピュータ上の CommerceLists というルート フォルダに対して相対的なファイルを探します。フォルダが存在しない場合、エラーが返されます。

リスト マネージャでは、次の入力テキスト ファイル形式が認識されます。

   <Mail-to address>,<User ID>,<Message Format>,<Locale>,
   <Source URL><cr><lf>

必要なフィールドは送信先アドレスだけです。メッセージ形式フィールドには次のいずれかを指定します。1 = text、2 = mime、または 3 = mhtml。メッセージ形式、ロケール、およびソースの各フィールドはダイレクト メーラーで使うために提供されています。

フィールドは二重引用符で囲まれている場合があります。これは、フィールド内の値にカンマまたは二重引用符が含まれている場合に必要です。引用されているフィールド内に同時に 2 つの二重引用符を使うと、1 つの二重引用符を示します。末尾にカンマがあるとエラーの原因になります。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

ファイル内の重複する電子メールアドレスを持つ行は無視されます。

pvarOpID パラメータに有効なデータが含まれるのは、作成操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vListID is a Variant
vListID = oListManager.CreateFromFile("TequillaBuyers1", _
 "Tequilla buyers in January", 20, 0, "Tequilla.csv", 10, False)

関連項目

ListManager オブジェクト


ListManager.CreateFromSegment

このメソッドは、予測リソースのセグメントからリストを作成するために使います。

定義

Function CreateFromSegment(
listName As String,
listDesc As String,
lFlags As Long,
userFlags As Long,
modelName As String,
segmentName As String,
predHostName As String,
DWConnStr As String,
fpMinProbability As Double,
bAsync As Boolean,
Optional pvarOpID As Variant
) As Variant

パラメータ

listName

リストの名前を含む文字列です。

listDesc

リストの説明を含む文字列です。

lFlags

作成されるリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

modelName

使用する予測セグメント モデルの名前を含む文字列です。

segmentName

インポートするセグメントの名前を含む文字列です。

predHostName

予測ホスト サーバーの名前を含む文字列です。

DWConnStr

データ ウェアハウスの接続文字列を含む文字列です。

fpMinProbability

指定のセグメント メンバに関連付けられる最小確率を含む倍精度浮動小数点数です。このメンバはリストに含まれます。

bAsync

作成操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。

戻り値

このメソッドが正常終了すると、新しいリスト ID を返すために使う Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | &H8C400001 | データベースに接続できませんでした。
E_LM_CREATE_OBJECT | &H8C400017 | オブジェクトを作成できません。
E_LM_INVALID_FLAGS | &H8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | &H8C400007 | 指定されたリストは既に作成されています。
E_LM_MAILABLE_LIST_NO_EMAILS | &H8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | &H8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドは PredictorServiceSiteAdmin オブジェクトを呼び出し、modelName、segmentName、fpMinProbability パラメータと ListManager オブジェクトが使うデータベースへの接続文字列、および PredictorServiceSiteAdmin オブジェクトが作成するテーブル名を渡します。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vListID is a Variant
vListID = oListManager.CreateFromSegment("TequillaBuyers", _
 "Thirty year old tequilla buyers ", 20, 0, "Tequilla", "Thirty", _
 "TequillaServer", "Provider=SQLOLEDB;Data Source=servername;" & _
 "Initial Catalog=Retail_dw;User ID=user;Password=********;", False)

関連項目

ListManager オブジェクト

ListManager.GetListFlags


ListManager.CreateFromSql

このメソッドは、SQL クエリからリストを作成するために使います。

定義

Function CreateFromSql(
listName As String,
listDesc As String,
lFlags As Long,
userFlags As Long,
connStr As String,
queryStr As String,
errLimit As Long,
bAsync As Boolean,
pvarOpID As Variant
) As Variant

パラメータ

listName

リストの名前を指定する文字列です。

listDesc

リストの説明を指定する文字列です。

lFlags

作成されるリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

connStr

SQL Server データベースの接続文字列を含む文字列です。

queryStr

新しいリストの内容を取得する SQL クエリを含む文字列です。

errLimit

使われていない long です。

bAsync

作成操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。

戻り値

このメソッドが正常に終了すると、新しいリストの ID を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | &H8C400001 | データベースに接続できませんでした。
E_LM_INVALID_FLAGS | &H8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | &H8C400007 | 指定されたリストは既に作成されています。
E_LM_MAILABLE_LIST_NO_EMAILS | &H8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | &H8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドには MSDASQL (ODBC) OLEDB プロバイダを使うことをお勧めします。

CreateFromSQL メソッドは、T-SQL OpenRowset コマンドを使い、データベースに対してクエリを実行します。したがって、ODBC データ ソースの指定には次の制限が付く場合があります。

SQLOLEDB プロバイダを使う場合、クエリで使われるオブジェクト名は完全修飾されている必要があります。たとえば SQL Server 7.0 のデータベースでは、"SELECT * FROM tablename" ではなく "SELECT * FROM database.dbo.tablename" を使います。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vListID is a Variant
vListID = oListManager.CreateFromSql("LegalTequillaBuyers", _
 "Tequilla buyers at least 21", 20, 0, "Provider=sqloledb;" & _
 "Data Source=TequillaServer;Initial Catalog=Margaritas;" & _
 "User=userid;Password=******", "SELECT * FROM dbname.dbo.Tequilla " & _
 "WHERE Age >= 21", 10, False)

関連項目

ListManager オブジェクト


ListManager.Delete

このメソッドは、リストを削除するために使います。

定義

Sub Delete(
listID As Variant
)

パラメータ

listID

削除するリストの ID または名前を指定する Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストはありません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

削除するには、何らかの操作でリストを使っていてはなりません。

リスト データも削除されます。

関連項目

ListManager オブジェクト


ListManager.ExportToFile

このメソッドは、メーリング リストをテキスト ファイルにエクスポートするために使います。

定義

Sub ExportToFile(
listID As Variant,
fileName As String,
bUnicode As Boolean,
bOverwrite As Boolean,
bAsync As Boolean,
Optional pvarOpID As Variant
)

パラメータ

listID

エクスポートするリストの ID または名前を含む Variant です。

fileName

ファイルの名前を含む文字列です。

bUnicode

エクスポート ファイルの文字形式を指定する Boolean です。値が True の場合、Unicode 文字を使う必要があることを示します。値が False の場合、現在のシステムのコードページ文字セットを使う必要があることを示します。

bOverwrite

エクスポート ファイルがある場合にそのファイルのデータに上書きするかどうかを指定する Boolean です。値が True の場合、データが上書きされることを示します。値が False の場合、ファイルが存在するとメソッドが失敗する原因となります。

bAsync

作成操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_BAD_FILE_PATH | &H8C40000A | 指定されたファイル パスは有効ではありません。
E_LM_FILE_ACCESS_DENIED | &H8C400009 | ListManager サービスは指定されたファイルを開く権限がありません。ListManager サービスのアカウントがそのファイルへのアクセス権を持っていることを確認してください。
E_LM_FILE_ALREADY_EXISTS | &H8C400010 | 指定されたファイルは既に存在するため作成できません。
E_LM_FILESHARE_NOT_FOUND | &H8C400016 | 共有ネットワークが存在せず、ファイルのフル パスが指定されていません。
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_REQUIRED | &H8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

リストが、メールが利用可能なリストでありメーリング リストではない場合、一時的にメーリング リストが作成され、その後エクスポートされます。

絶対ファイル パスとファイル名が指定されていない場合、List Manager は、List Manager リソースを実行しているローカル コンピュータ上の CommerceLists というルート フォルダに対して相対的なファイルをエクスポートします。フォルダが存在しない場合、エラーが返されます。

ListManager では、次の形式でファイルがエクスポートされます。メッセージ形式フィールドは整数です。ほかのフィールドはすべて文字列で、二重引用符で囲まれています。

   <Mail-to address>,<User ID>,<Message Format>,<Locale>,
   <Source URL><cr><lf>

pvarOpID パラメータに有効なデータが含まれるのは、エクスポート操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.ExportToFile "{2B544800-4169-4C49-8713-1B794078B4C9}", _
 "Tequila.csv", False, True, False

関連項目

ListManager オブジェクト


ListManager.ExportToSql

このメソッドは、Microsoft SQL Server データベースの指定されたテーブルにリストをエクスポートするために使います。この操作は、同期的または非同期的に実行されます。

定義

Sub ExportToSql(
listID As Variant,
connStr As String,
resTable As String,
bOverwrite As Boolean,
lOptions As Long,
bAsync As Boolean,
Optional pvarOpID As Variant
)

パラメータ

listID

エクスポートするリストの ID または名前を含む Variant です。

connStr

SQL Server データベースの接続文字列を含む文字列です。

resTable

リストのエクスポート先のテーブルの名前を含む文字列です。

bOverwrite

テーブルが既に存在する場合にそのデータに上書きするかどうかを指定する Boolean です。値が True の場合、データが上書きされることを示します。テーブルが既に存在する場合に False を指定するとエラーになります。

lOptions

ダイレクト メール リソースが使用するエクスポート オプションを指定する long です。ほかのアプリケーションは一般的に値 0 を渡します。値 1 は、特別なアクションを実行します。下記の "解説" を参照してください。

bAsync

作成操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。値が False の場合、同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。この操作 ID は、この操作に関連する後続の処理で使われます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | &H8C400001 | データベースに接続できませんでした。
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_TABLE_ALREADY_EXISTS | &H8C40000F | 指定されたテーブルは既に存在するため作成できません。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

既存のテーブルは、エクスポートされたリストと同じ形式であることが必要とされます。テーブルが存在しない場合は作成されます。

ExportToSQL メソッドは、接続先の SQL Server データベースに接続し、T-SQL OpenRowset コマンドを実行して List Manager データベースからデータを選択すると機能します。このため、いくつかの特別な警告が適用されます。

  • 接続先のデータベースに Bulk Copy または Select Into オプションが選択されている必要があります。

  • リスト マネージャが DSN を含む接続文字列を使って初期化された場合、接続先のデータベースを運用している SQL Server コンピュータの DSN も構成する必要があります。

  • CreateFromSQL コマンドとは異なり、SQL Server 7.0 以上の ODBC データ ソース以外はサポートされていません。

pvarOpID パラメータに有効なデータが含まれるのは、エクスポート操作が非同期的に実行された場合だけです。

lOptions パラメータは、エクスポートされたリストがダイレクト メーラーでの使用を目的とするかどうかを指定し、エクスポート中のリストの処理方法を制御します。次の表は、IOptions パラメータの有効な値を示します。

lOptions の値 | 説明
0 | ダイレクト メーラーに対して特別な処理は何も行わないでください。
1 | ダイレクト メーラーで使うリストをエクスポートします。リストは、メールが利用可能なリストである必要があります。そうでない場合、エラーが返されます。リストがメーリング リストでない場合、メーリング リストに変換されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.ExportToSql "{2B544800-4169-4C49-8713-1B794078B4C9}", _
 "Provider=sqloledb;Data Source=TequillaServer;" & _
 "Initial Catalog=Margaritas;User=userid;Password=******", _
 "Tequila", False, 0, False

関連項目

ListManager オブジェクト

ListManager.ExtractMailingList


ListManager.ExtractMailingList

このメソッドは、汎用リストから新しいメーリング リストを作成するために使います。

定義

Function ExtractMailingList(
srcList As Variant,
reslistName As String,
reslistDesc As String,
userFlags As Long,
bAsync As Boolean,
Optional pvarOpID As Variant
) As Variant

パラメータ

srcList

汎用ソース リストの ID または名前を含む Variant です。

reslistName

新しいメーリング リストの名前を含む文字列です。

reslistDesc

新しいメーリング リストの説明を含む文字列です。

userFlags

アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

bAsync

エクスポート操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。

戻り値

このメソッドが正常に終了すると、新しいリストの ID を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_ALREADY_EXISTS | &H8C400007 | 指定されたリストは既に作成されています。
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_LIST_NO_EMAILS | &H8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_MAILABLE_REQUIRED | &H8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | &H8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

ソース リストはメールが利用可能なリストである必要があります (rcp_email 列が含まれている)。結果リストの重複する電子メール アドレスは削除されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vListID & pvarOpId are Variants
vListID = oListManager.ExtractMailingList("{454799A2-312B-4F5F-90A0-" & _
 "F514FBA0EC5A}", "TequilaBuyers1", "Tequilla buyers in January", 0, _
 True, pvarOpID)

関連項目

ListManager オブジェクト


ListManager.GetListFlags

このメソッドは、リストの flags 属性を取得するために使います。

定義

Function GetListFlags(
listID As Variant
) As Long

パラメータ

listID

ID の ID またはリストの名前を含む Variant です。

戻り値

このメソッドが正常終了すると、 flags 属性を含む long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

次の表は、作成されるリストの種類を決定するフラグ パラメータの値を示します。値は、1 つ以上のフラグを指定するために OR 演算されます。

種類 | 値 | 説明
既定 | 0x0 | メーリング リスト
非表示 | 0x1 | リストはユーザー インターフェイスにエクスポートしないでください。
動的 | 0x2 | 動的リスト
ユーザー | 0x4 | ユーザー リスト (rcp_guid 列が含まれている)
汎用 | 0x8 | 汎用リスト
メールが利用可能 | 0x10 | メールが利用可能なリスト (rcp_email 列が含まれている)

関連項目

ListManager オブジェクト


ListManager.GetListId

このメソッドは、リスト名が指定されているリストの ID を取得するために使います。

定義

Function GetListId(
listName As String
) As Variant

パラメータ

listName

リスト名を含む文字列です。

戻り値

このメソッドが正常終了すると、リストの ID (GUID) を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


ListManager.GetListName

このメソッドは、リスト ID が指定されているリストの名前を取得するために使います。

定義

Function GetListName(
listID As Variant
) As String

パラメータ

listID

リスト ID を含む Variant です。

戻り値

このメソッドが正常終了すると、リストの名前を含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


ListManager.GetListProperty

このメソッドは、リストのプロパティを取得するために使います。

定義

Function GetListProperty(
listID As Variant,
listPropertyName As String
) As Variant

パラメータ

listID

リストの ID または名前を含む Variant です。

listPropertyName

プロパティ名 (lm_master テーブルの列) を含む文字列です。

戻り値

このメソッドが正常終了すると、プロパティの値を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

使用できるリスト プロパティについては、「ListManager.GetLists」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vSource is a Variant
vSource = _
 oListManager.GetListProperty("{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", _
 "list_source")

関連項目

ListManager オブジェクト


ListManager.GetLists

このメソッドは、ListManager オブジェクトが認識するすべてのリストを列挙するために使います。

定義

Function GetLists() As Object

パラメータ

なし。

戻り値

このメソッドが正常終了すると、ListManager オブジェクトのこのインスタンスが認識するリストの詳細を含む ADO Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドは、読み取り専用の ADO Recordset オブジェクトのインスタンスを返します。これには、ListManager オブジェクトのデータベースにある各リストのレコードが含まれています。Recordset オブジェクトには、このメソッドが呼び出された時点で作成が完了していないリストは含まれません。

このメソッドが呼び出された時点で作成が完了しているリストがない場合、メソッドは正常に値を返しますが、Recordset オブジェクトは空です。

次の表は、Recordset オブジェクトに返されるフィールドを示します。

フィールド | 種類 | 説明
list_id | uniqueidentifier | リストの ID 番号。
list_name | NVARCHAR [64] | リストの名前。
list_created | Date/Time | リストのレコードが作成された日付と時刻。
list_creation_type | smallint | リストの作成に使うメソッド。有効な値は次のとおりです。 1 - CreateFromFile 2 - CreateFromSQL 3 - CreateFromDWCalc 4 - CreateFromSegment 5 - その他 (subtraction、union、extraction など)
list_description | NVARCHAR [256] | リストの説明。
list_err_limit | long | リストのエラーのしきい値。
list_flags | int | リストのビット フラグ。1 つ以上のフラグを指定するために、ビットごとに OR 演算できます。有効な値は次のとおりです。 0x0 - 既定 0x1 - 非表示 0x2 - 動的 0x4 - ユーザー 0x8 - 汎用 0x10 - メールが利用可能
list_location | NVARCHAR [256] | リストのデータを格納する場所 (テーブル名)。
list_query | NVARCHAR [1024] | リストの作成に使うクエリ。
list_recent_operid | NVARCHAR [128] | 最新のリスト操作の ID。リストが CreateEmpty メソッドによって新しく作成されている場合、Null になる場合があります。
list_size | int | リストの行数 (動的リストの場合は -1)。
list_source | NVARCHAR [512] | ファイルの名前、接続文字列、またはリストの作成に使うファイル名。
list_status | int | リストの状態。有効な値は次のとおりです。 1 - 処理可能 2 - 処理中、ほかの操作は禁止 3 - 失敗
list_unique_emails | int | リスト内で一意の rcp_email 値の数 (動的リストの場合は -1)。
list_unique_guids | int | リスト内で一意の rcp_guid 値の数 (動的リストの場合は -1)。
list_userflags | int | アプリケーション固有。ListManager オブジェクトでは使いません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


ListManager.GetListUserFlags

このメソッドは、リストの UserFlags 属性を取得するために使います。

定義

Function GetListUserFlags(
listID As Variant
) As long

パラメータ

listID

ID の ID またはリストの名前を含む Variant です。

戻り値

このメソッドが正常終了すると、UserFlags 属性を含む long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

UserFlags 属性は、リスト マネージャの外部のアプリケーションによって使われます。リスト マネージャは、リストが作成された時点で渡されたフラグを単に保存するだけで、UserFlags 属性の値を認識しません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


ListManager.GetOperationInfo

このメソッドは、指定されたリスト操作を説明する列が含まれる Recordset オブジェクトを取得するために使います。

定義

Function GetOperationInfo(
varOpID As Variant
) As Object

パラメータ

varOpID

操作 ID を含む Variant です。

戻り値

このメソッドが正常終了すると、操作情報を含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

返される Recordset オブジェクトの詳細については、「ListManager.GetOperations」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


ListManager.GetOperations

このオブジェクトは、ListManager オブジェクトが認識するすべてのリストを列挙するために使います。

定義

Function GetOperations() As Object

パラメータ

なし。

戻り値

このメソッドが正常終了すると、ListManager オブジェクトのこのインスタンスが認識する操作に関する情報を含む ADO Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドは、読み取り専用の ADO Recordset オブジェクトのインスタンスを返します。これには、ListManager オブジェクトのデータベースにある各リストのレコードが含まれています。現在データベースにあるリストで実行されたことのあるすべての操作には、レコードがあります。リストが削除されると、そのリストに関連付けられている操作もすべて削除されます。

次の表は、Recordset オブジェクトに返されるフィールドを示します。

フィールド | 種類 | 説明
op_id | NVARCHAR[128] | 操作を識別し、CancelOperation メソッドに渡されて操作を終了させる "トークン" です。
op_desc | NVCHAR[256] | ユーザーにわかりやすいように操作を説明しています。
op_error_code | int | リストに関連付けられている最後に起こった失敗の HRESULT です。
op_error_desc | NVARCHAR[1024] | リストに関連付けられている最後に起こった失敗の説明です。
op_list_destination | Nvarchar(256) | リストの説明です (Export タイプの操作のみ)。
op_list_id | uniqueidentifier | この操作が行われるリスト ID です。
op_list_id_a | uniqueidentifier | 操作に複数のリストが含まれている場合は列が追加されます。
op_list_id_b | uniqueidentifier | 操作に複数のリストが含まれている場合は列が追加されます。
op_list_param1 | int | 操作に含まれている余分なパラメータを格納するための列を追加します。
op_list_param2 | int | 操作に含まれている余分なパラメータを格納するための列を追加します。
op_list_table | nvarchar(256) | テーブル名 (ExportToSql タイプの操作のみ)。
op_progress | int | 使われていません。
op_status | smallint | 操作の状態。有効な値は次のとおりです。 0 - 完了 1 - 実行中 -1 - 失敗
op_time_end | Date/Time | 操作が完了または中断された日付/時刻です。
op_time_start | Date/Time | 操作が開始された日付/時刻です。
op_type | int | 操作のタイプ。有効な値は次のとおりです。 1 - CreateFromFile 2 - CreateFromSQL 3 - ExportToFile 4 - ExportToSQL 5 - Copy 6 - Subtract 7 - Union 8 - CreateFromDWCalc. 9 - CreateFromSegment 10 - ExtractMailingList 11 - その他 (分類なしまたは一時的)

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト

ListManager.CancelOperation


ListManager.Initialize

このメソッドは、ListManager オブジェクトを初期化するために使います。

定義

Sub Initialize(
bstrConnStr As String,
)

パラメータ

bstrConnStr

List Manager の接続先のデータベースの接続文字列を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_ALREADYINITIALIZED | &H8C400002 | ListManager オブジェクトは既に初期化されているため、再度初期化できない可能性があります。
E_LM_CONNECTIONFAILED | &H8C400001 | データベースに接続できませんでした。
E_LM_SQLERROR |  | SQL/ADO 操作の実行中にエラーが発生しました。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

ListManager オブジェクトを初期化してから、ほかの ListManager オブジェクト メソッドまたはプロパティを呼び出します。

初期化により、ListManager オブジェクトがデータベースに接続されます。データベースに ListManager で必要なテーブルおよびプロシージャが含まれていない場合は、それらが作成されます。

ListManager は 1 つのデータベースにしか接続できません。別のデータベースに接続するには、新たに ListManager オブジェクトのインスタンスを作成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.Initialize "Provider=sqloledb;" & _
 "Data Source=TequillaServer;Initial Catalog=Margaritas;" & _
 "User=userid;Password=******"

関連項目

ListManager オブジェクト

ListManager.ExportToSQL


ListManager.RemoveUserFromMailingList

このメソッドは、メーリング リストからユーザーを削除するために使います。

定義

Sub RemoveUserFromMailingList(
listID As Variant,
UserEmail As String
)

パラメータ

listID

リストの ID または名前を含む Variant です。

UserEmail

ユーザーの電子メール アドレスを含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_LIST_NO_EMAILS | &H8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_MUST_BE_STATIC | &H8C400019 | この操作には静的リストが必要ですが、指定されたリストは動的です。
E_LM_NOT_MAILING_LIST | &H8C400018 | この操作にはメーリング リストが必要ですが、指定されたリストはメーリング リストではありません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | &H8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.RemoveUserFromMailingList _
 "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", "JaneUser@somewhere.com"

関連項目

ListManager オブジェクト


ListManager.Rename

このメソッドは、リストの名前を変更するために使います。

定義

Sub Rename(
listID As Variant,
newListName As String
)

パラメータ

listID

名前を変更するリストの ID または名前を指定する Variant です。

newListName

リストの新しい名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_ALREADY_EXISTS | &H8C400007 | 指定されたリストは既に作成されています。
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

新しい名前は既存のリスト名と同じにしないでください。

例

oListManager.Rename "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", "Tequila"

関連項目

ListManager オブジェクト


ListManager.SetDesc

このメソッドは、リストに新しく説明を付けるために使います。

定義

Sub SetDesc(
listID As Variant,
newListDesc As String
)

パラメータ

listID

リストの ID または名前を指定する Variant です。

newListDesc

リストに関連付けられている説明を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

例

oListManager.SetDesc(listID, newListDesc)

関連項目

ListManager オブジェクト


ListManager.SetListProperty

このメソッドは、リストのプロパティを設定するために使います。

定義

Sub SetListProperty(
listID As Variant,
listPropertyName As String,
ListProp As Variant
)

パラメータ

listID

リストの ID または名前を含む Variant です。

listPropertyName

プロパティ名 (lm_master テーブルの列) を含む文字列です。

ListProp

プロパティを設定するための値を含む Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_MUST_BE_DYNAMIC | &H8C400012 | この操作には動的リストが必要ですが、指定されたリストは動的リストではありません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_LISTPROP_NOT_UPDATEABLE | &H8C400013 | 指定されたリスト プロパティは、リストの作成後は変更できません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドは通常、テーブル名、接続文字列、SQL クエリなどの動的リストのプロパティを変更するために使います。これを基に動的リストが作成されます。

次のプロパティはこのメソッドで設定します。

  • list_name

  • list_description

  • list_userflags

  • list_err_limit (動的リストのみ)

  • list_query (動的リストのみ)

  • list_source (動的リストのみ)

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.SetListProperty "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", _
 "list_userflags", 12)

関連項目

ListManager オブジェクト


ListManager.Status

Status プロパティは、ListManager オブジェクトの状態を含む読み取り専用の long です。

定義

Property Status() As Long

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

次の表は、有効な状態コードとその説明を示します。

状態 | 値 | 説明
LMSTATUS_NEW | 0 | ListManager オブジェクトは作成されていますが、まだ初期化されていません。
LMSTATUS_READY | 1 | ListManager オブジェクトが作成され、正常に初期化されています。
LMSTATUS_ERROR | -1 | ListManager オブジェクトの初期化に失敗しました。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


ListManager.Subtract

このメソッドは、あるメーリング リストを別のメーリング リストから削除するために使います。結果は第 3 のリストに配置します。

定義

Sub Subtract(
srcList As Variant,
lessList As Variant,
resList As Variant,
errLimit As Long,
bAsync As Boolean,
Optional pvarOpID As Variant
)

パラメータ

srcList

要素を削除するリストの ID または名前を含む Variant です。

lessList

簡略リストの ID または名前を含む Variant です。

resList

削除操作の結果を入れるリストの ID または名前を含む Variant です。

errLimit

使われていない long です。

bAsync

コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。値が False の場合、同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。この操作 ID は、この操作に関連する後続の処理で使われます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_REQUIRED | &H8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

メソッドを呼び出す前に結果リストが作成されている必要がありますが、リスト内のデータは上書きされます。

このメソッドは rcp_email 列にキーがあるため、ソース リスト (srcList パラメータ) と簡略リスト (lessList パラメータ) の両方がメールが利用可能なリスト (LISTFLAG_MAILABLE が True に設定されている) である必要があります。簡略リスト中に重複する電子メールアドレス (rcp_email) を持たないソース リストのレコードは、結果リスト (resList パラメータ) にコピーされます。結果リスト中の既存のデータはすべて削除されます。

pvarOpID パラメータに有効なデータが含まれるのは、削除操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.Subtract "{2B544800-4169-4C49-8713-1B794078B4C9}", _
 "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", _
 "{7131B794-5448-078B-B544-799A2311B79A}", 10, False

関連項目

ListManager オブジェクト


ListManager.Union

このメソッドは、2 つのメーリング リストの和集合を作成し、結果を第 3 のリストに配置するために使います。和集合とは、2 つのリストを結合して重複をなくしたものです。

定義

Sub Union(
srcList As Variant,
addList As Variant,
resList As Variant,
errLimit As long,
bAsync As Boolean,
Optional pvarOpID As Variant
)

パラメータ

srcList

ソース リストの ID または名前を含む Variant です。

addList

追加リストの ID または名前を含む Variant です。

resList

結合操作の結果を入れるリストの ID または名前を含む Variant ですです。

errLimit

使われていない long です。

bAsync

コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。値が False の場合、同期処理が行われることを示します。

pvarOpID

操作 ID を返すために使う省略可能な Variant です。この操作 ID は、この操作に関連する後続の処理で使われます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | &H8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | &H8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | &H8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_REQUIRED | &H8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | &H8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

メソッドを呼び出す前に結果リストが作成されている必要がありますが、リスト内のデータは上書きされます。

このメソッドは rcp_email 列にキーがあるため、ソース リスト (srcList パラメータ) と追加リスト (addList パラメータ) の両方がメールが利用可能なリスト (LISTFLAG_MAILABLE が True に設定されている) である必要があります。ソース リストのレコードはすべて結果リスト (resList パラメータ) にコピーされます。ソース リスト中に重複する電子メールアドレス (rcp_email) を持たない追加リストのレコードも、結果リストにコピーされます。結果リスト中の既存のデータはすべて削除されます。

pvarOpID パラメータに有効なデータが含まれるのは、結合操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.Union "{2B544800-4169-4C49-8713-1B794078B4C9}", _
 "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", _
 "{7131B794-5448-078B-B544-799A2311B79A}", 10, False

関連項目

ListManager オブジェクト


ListManager.WaitOnOperation

このメソッドは、操作が完了するまで、または指定の時間が経過するまで待機するために使います。

定義

Sub WaitOnOperation(
varOpID As Variant,
Optional timeout As Long
)

パラメータ

varOpID

待機する操作の ID を指定する Variant です。操作 ID をどこで取得するかの詳細については、"解説" を参照してください。

timeout

タイムアウトを指定する省略可能な long です。このメソッドが制御を戻すのは、指定された操作が終了するか、timeout で指定された秒数が経過するかの、いずれか先に起こった時点です。値がゼロの場合 (既定)、操作の完了を待機する時間は無制限です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_OPERATION_NOT_FOUND | &H8C400004 | この操作 ID は、現在実行している操作の ID ではありません。
E_LM_SQLERROR | &H8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | &H80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に便利なのは、Description プロパティのテキストによるエラーの説明です。

解説

このメソッドは、ASP ページの VBScript や JScript などのスクリプト言語からは呼び出せません。ASP ページで非同期操作を扱う場合にはほかの技術を用いる必要があり、またこれらの処理を明示的に待機してはいけません。

varOpID パラメータ内のこのメソッドに渡された操作 ID は、呼び出しが非同期的に実行されたときに、次のいずれからでも取得できます。

  • Copy

  • CreateFromDWCalc

  • CreateFromFile

  • CreateFromSql

  • ExportToFile

  • ExportToSql

  • Subtract

  • Union

また、既知の操作の操作 IDはすべて、GetOperations メソッドを使って取得されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oListManager.WaitOnOperation "{454799A2-312B-4F5F-90A0-F514FBA0EC5A}", 900

関連項目

ListManager オブジェクト


LRUCache オブジェクト

このオブジェクトは、要素として参照されるメモリ内の名前と値の組み合わせを、メモリ内のキャッシュから作成、格納、および取得するために使います。LRUCache オブジェクトには Dictionary オブジェクトと同様の機能があります。ただし、LRUCache オブジェクトは限られた数の要素しか保存せず、要素を使用頻度に応じて内部的にランク付けします。満杯のキャッシュに新しい要素を追加する必要がある場合、最近使う頻度の少ない要素がキャッシュから削除され、新しい要素のための場所が確保されます。

ProgID: | Commerce.LRUCache (外部作成可能)
COM クラス名: | LRUCache
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、LRUCache オブジェクトのメソッドを示しています。

メソッド | 説明
Flush | キャッシュから 1 つの要素を削除します。
FlushAll | キャッシュからすべての要素を削除します。
Insert | 要素をキャッシュに挿入します。
Lookup | 要素の名前が指定されたときに、その要素の値をキャッシュに返します。
LookupObject | オブジェクトの名前が指定されたときに、そのオブジェクトをキャッシュに返します。
SetSize | キャッシュの最大サイズを設定します。


LRUCache.Flush

このメソッドは、キャッシュから指定された要素を削除するために使います。

定義

Sub Flush(
Optional bstrKey As String
)

パラメータ

bstrKey

キャッシュから削除する要素の名前を含む、省略可能な文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

要素が指定されていない場合、すべての要素が削除されます。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


LRUCache.FlushAll

このメソッドは、キャッシュからすべての要素を削除するために使います。

定義

Sub FlushAll()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


LRUCache.Insert

このメソッドは、キャッシュに要素を追加するために使います。

定義

Sub Insert(
bstrKey As String,
pvarValue As Variant
)

パラメータ

bstrKey

キャッシュに追加する要素の名前を含む文字列です。

pvarValue

要素の値を含む Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'vManAd is a Variant that references an ad.
oLRUCache.Insert("ManufacturerAd", vManAd)

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


LRUCache.Lookup

このメソッドは、キャッシュから要素の値を取得するために使います。

定義

Function Lookup(
bstrKey As String
) As Variant

パラメータ

bstrKey

取得する要素の名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定した要素の値を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vFavAd is a Variant
vFavAd = myLRUCache.Lookup("Favorite Ad")

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


LRUCache.LookupObject

このメソッドは、キャッシュからオブジェクトを取得するために使います。

定義

Function LookupObject(
bstrKey As String
) As Object

パラメータ

bstrKey

取得するオブジェクトの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set oMyObject = oLRUCache.LookupObject("My Object")

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


LRUCache.SetSize

このメソッドは、キャッシュの最大サイズを設定するために使います。

定義

Sub SetSize(
lSize As Long
)

パラメータ

lSize

キャッシュのサイズを指定する long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


MessageManager オブジェクト

このオブジェクトは、注文処理パイプライン (OPP) コンポーネントが注文処理中に生成したエラー状況を説明するために使うエラー メッセージを、複数の言語で保存するために使います。

ProgID: | Commerce.MessageManager (外部作成可能)
COM クラス名: | MSCSMessageManager_3_0
タイプ ライブラリ名: | Commerce -- MSCSAspHelp Type Library
DLL 名: | MSCSAspHelp.dll
スレッド モデル: | 両方

次の表は、MessageManager オブジェクトの 1 つのプロパティを示しています。

プロパティ | 種類 | 説明
defaultLanguage | 文字列 | MessageManager オブジェクトの既定のメッセージ セットを指定します。 このプロパティは読み取りと書き込みが可能です。

次の表は、MessageManager オブジェクトのメソッドを示しています。

メソッド | 説明
AddLanguage | MessageManager オブジェクトに新しいメッセージ セットを追加し、そのメッセージ セットをロケールに関連付けます。
AddMessage | MessageManager オブジェクトに新しいメッセージを追加します。
GetLocale | 指定されたメッセージ セットのロケールを返します。
GetMessage | 指定されたメッセージ名定数に関連付けられたメッセージを返します。

関連項目

表示オブジェクト


MessageManager.AddLanguage

このメソッドは、MessageManager にメッセージ セットを追加し、そのメッセージ セットをロケールに関連付けるために使います。MessageManager オブジェクトのメソッドにおける後続の呼び出しでは、呼び出し元はロケールではなくメッセージ名を識別する必要があります

1 つのロケールにいくつでもメッセージ セットを関連付けられます。

定義

Sub AddLanguage(
bstrLanguage As String,
Locale As Long
)

パラメータ

bstrLanguage

MessageManager オブジェクトに追加するメッセージ セットの名前を含む文字列です。

Locale

追加するメッセージ セットに関連付けられているロケールを一意に識別するための long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oMessageManager is a Commerce.MessageManager object
oMessageManager.AddLanguage("usa", 1033)

関連項目

MessageManager オブジェクト

MessageManager.DefaultLanguage

DataFunctions.Locale

MessageManager.GetMessage


MessageManager.AddMessage

このメソッドは、MessageManager オブジェクトにメッセージを追加するために使います。

定義

Sub AddMessage(
bstrName As String,
bstrMessage As String,
vtLanguage As Variant
)

パラメータ

bstrName

メッセージ名定数を含む文字列です。追加するメッセージは、この文字列によって識別されます。よく使われるメッセージおよびそれらの定数名の一覧については、"解説" を参照してください。

bstrMessage

追加するメッセージのテキストを含む文字列です。

vtLanguage

メッセージに関連付ける言語の名前を含む Variant です。この値が指定されている場合、AddLanguage メソッドの以前の呼び出しで追加された言語名である必要があります。このパラメータが指定されなかった場合、MessageManager オブジェクトの DefaultLanguage プロパティで指定された言語が使われます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、これらのメッセージを使う注文処理パイプライン (OPP) コンポーネントで必要なメッセージ名定数を示すことにより、OPP の既定の実装で使われるメッセージを一覧表示します。

メッセージ名定数 | OPP コンポーネントで使用 | この状態でこのコレクションに追加
pur_badplacedprice | RequiredItemAdjustPrice | _Basket_Errors: 品物の価格が注文フォームに含まれている価格と一致しません
pur_badhandling | RequiredHandling | _Purchase_Errors: 注文の処理コストを計算できません
pur_badpayment | RequiredPayment | _Purchase_Errors: 認証コード (_payment_auth_code) が設定されていません
pur_badshipping | RequiredShipping | _Purchase_Errors: 注文の送料を計算できません
pur_badsku | RequiredProdInfo | _Basket_Errors: 注文フォームの在庫保管単位 (SKU) がサイトの在庫に含まれていない品物を参照しています
pur_badtax | RequiredTax | _Purchase_Errors: 購入に対する税を計算できません
pur_badverify | RequiredTotal | _Purchase_Errors: ProcessVerifyWith メソッドによって保存されたデータが注文フォームの元のデータと一致しません
pur_noitems | RequiredOrderCheck | _Purchase_Errors: 注文フォームに品物がありません
pur_out_of_stock | FlagInventory、LocalInventory | _Purchase_Errors: 注文フォームで参照されている品物は在庫切れです

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oMessageManager is a Commerce.MessageManager object
oMessageManager.AddMessage("pur_out_of_stock", _
    "At least one item is out of stock.")

関連項目

MessageManager オブジェクト

MessageManager.DefaultLanguage

MessageManager.GetMessage


MessageManager.DefaultLanguage

DefaultLanguage プロパティは、MessageManager の既定のメッセージ セットを指定するために使います。メッセージ セットを指定せずに、GetMessage メソッドや AddMessage メソッドを使って MessageManager にメッセージを追加する場合、メッセージはこのプロパティで指定されたメッセージ セットに関連付けられます。

定義

Property DefaultLanguage As String

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MessageManager オブジェクト

MessageManager.GetLocale


MessageManager.GetLocale

このメソッドは、指定されたメッセージ セットのロケールを識別する番号を返すために使います。

定義

Function GetLocale(
vtLanguage As Variant
) As Long

パラメータ

vtLanguage

ロケールを取得するメッセージ セットの名前を含む Variant です。このメッセージ セットは、AddLanguage メソッドの以前の呼び出しを経由してMessageManager オブジェクトに追加されている必要があります。

戻り値

このメソッドが正常に終了すると、指定したメッセージ セットのロケールを識別するために使う long が返されます。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetMessage メソッドと同様に、GetLocale メソッドは通常、サイト内からは呼び出されません。代わりに、パイプライン コンポーネントによって使われ、コンポーネントに発生したエラーを説明するメッセージのロケールを取得します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oMessageManager is a Commerce.MessageManager object
oMessageManager.GetLocale("us")

関連項目

MessageManager オブジェクト

MessageManager.GetMessage

MessageManager.AddLanguage


MessageManager.GetMessage

このメソッドは、指定されたメッセージのテキストを返すために使います。

定義

Function GetMessage(
bstrName As String,
vtLanguage As Variant
) As String

パラメータ

bstrName

返されるメッセージのメッセージ定数名を含む文字列です。これは、AddMessage メソッドの呼び出しを経由して MessageManager オブジェクトに追加されたときに、このメッセージに関連付けられた名前です。

vtLanguage

メッセージ テキストが属しているメッセージ セットの名前を含む Variant です。この文字列は、AddLanguage メソッドの以前の呼び出しを経由して MessageManager オブジェクトに追加されたメッセージ セットを指定します。このパラメータが指定されていないか、Null の場合、メッセージは MessageManager オブジェクトのDefaultLanguage プロパティで識別されるメッセージ セットに返されます。

戻り値

このメソッドが正常に終了すると、指定したエラー メッセージのテキストを格納した文字列 Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetMessage メソッドは、サイト内からはめったに呼び出されません。代わりに、パイプライン コンポーネントによって使われ、発生したエラーを説明するメッセージを取得します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oMessageManager is a Commerce.MessageManager object
oMessageManager.GetMessage("pur_out_of_stock", "us")

関連項目

MessageManager オブジェクト

MessageManager.AddLanguage

MessageManager.GetLocale


MicroPipe オブジェクト

このオブジェクトは、パイプライン構成ファイル (.pcf) を使って Active Server Page (ASP) ファイルから 1 つのパイプライン コンポーネントを実行するために使います。

ProgID: | Commerce.MicroPipe (外部作成可能)
COM クラス名: | CMicroPipeline
タイプ ライブラリ名: | Microsoft Commerce 2000 MicroPipe Type Library
DLL 名: | micropipe.dll
スレッド モデル: | 両方

次の表は、MicroPipe オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | SetComponent メソッドに示されるコンポーネントを実行します。
SetComponent | 読み込みおよび実行を行うパイプライン コンポーネントを示します。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

MicroPipe オブジェクトは Microsoft Transaction Server (MTS) を明示的には使いません。トランザクションを使うには、ページをトランザクションとしてマークするか、標準の MtsTxPipline オブジェクトを使います。MicroPipe オブジェクトにはコンポーネントが 1 つしか含まれていないため、このオブジェクトでの分散トランザクションは意味がありません。

多くのパイプライン コンポーネントが、Context および Order ディクショナリのほかにも構成情報を使います。この情報をコンポーネントに渡す方法は、次の 2 つが一般的です。

  • ディクショナリを作成し、コンポーネントにそのディクショナリを渡します。

  • 個々のプロパティまたは複数のプロパティを直接設定します。

最初の方法は、IPipelineComponentAdmin インターフェイスを実装しているパイプライン コンポーネントにのみ適用されます。2 番目の方法は、通常は IPipelineComponentAdmin インターフェイスが実装されていない Microsoft Visual Basic で記述されたコンポーネントに一般的です。

関連項目

パイプライン オブジェクト


MicroPipe.Execute

このメソッドは、SetComponent メソッドで指定されたパイプライン コンポーネントを実行するために使います。

定義

Function Execute(
pdispOrder As Object,
pdispContext As Object,
lFlags As Long
) As Long

パラメータ

pdispOrder

パイプライン コンポーネントが実行される Order ディクショナリの Dictionary オブジェクトへの参照で、通常は OrderForm オブジェクトの Dictionary オブジェクトを参照します。

pdispContext

パイプライン コンポーネントが実行される Context ディクショナリの Dictionary オブジェクトへの参照です。

lFlags

long Integer です。予約されて、ゼロ (0) に設定する必要があります。

戻り値

このメソッドが正常に終了すると、コンポーネントが警告またはエラーを検出したかどうかを示す long Integer が返されます。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

また、メソッドは次の 3 つの値のうちいずれかを返します。

値 | 説明
1 | パイプライン コンポーネントは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

スクリプトで MicroPipe オブジェクトを使用した後は、オブジェクト参照に Nothing を代入してそのオブジェクトを解放する必要があります。

パイプライン オブジェクトを使ったプログラミングの詳細については、「パイプライン オブジェクト」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMicroPipeline is a Commerce.MicroPipeline object
' dOrder and dContext are Commerce.Dictionary objects

errVal = pMicropipeline.Execute(dOrder, dContext, 0)

関連項目

MicroPipe オブジェクト

MicroPipe.SetComponent

MicroPipe.SetLogFile


MicroPipe.SetComponent

このメソッドは、実行するパイプライン コンポーネントを指定するために使います。

定義

Sub SetComponent(
pdispComponent As Object
)

パラメータ

pdispComponent

実行されるパイプライン コンポーネントへの参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

1 つの MicroPipe オブジェクトを使って、複数のコンポーネントを実行できます。先にコンポーネントを設定および実行してから、MicroPipe オブジェクトの SetComponent メソッドを呼び出すことが許可されています。この場合、MicroPipe オブジェクトは以前からあるコンポーネントを解放し、この場所に新しいコンポーネントを設定します。

パイプライン オブジェクトを使ったプログラミングの詳細については、「パイプライン オブジェクト」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMicroPipeline is a Commerce.MicroPipeline object
' oCompPipe is an object that references the pipeline component
' to be run.

pMicropipeline.SetComponent(oCompPipe)

関連項目

MicroPipe オブジェクト

MicroPipe.Execute

MicroPipe.SetLogFile


MicroPipe.SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

定義

Sub SetLogFile(
bstrFileName As String
)

パラメータ

bstrFileName

ログ記録用のファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ログを使って、MicroPipe オブジェクトは Dictionary および SimpleList オブジェクトへのすべての読み取りおよび書き込み操作を記録します。エラーもログに記録されます。オーバーヘッドが含まれているため、ログはデバッグのためだけに使い、運用サイトでは使わないでください。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。SetLogFile メソッドが OrderGroup オブジェクトの LogFile プロパティとして表示されます。このメソッドは、RunPipe メソッドを呼び出す前に再度呼び出す必要があります。

パイプライン オブジェクトを使ったプログラミングの詳細については、「パイプライン オブジェクト」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMicroPipeline is a Commerce.MicroPipeline object

pMicroPipeline.SetLogFile("MicroPipeLog.txt")

関連項目

MicroPipe オブジェクト

MicroPipe.Execute

MicroPipe.SetComponent


MtsPipeline オブジェクト

このオブジェクトは、非トランザクション Microsoft Commerce Server 2000 パイプラインを実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。

ProgID: | Commerce.MtsPipeline (外部作成可能)
COM クラス名: | CMtsPipeline
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | アパートメント

次の表は、MtsPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | パイプラインでコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

MtsPipeline オブジェクトは、Microsoft Transaction Server (MTS) に "サポートされていないトランザクション" として登録されます。このパイプラインは、トランザクションが必要ない場所で使います。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。

MtsPipeline は通常、それが使われるページ上に作成されます。

MtsPipeline はプールされたパイプラインではありません。プールされたパイプラインの詳細については、「プールされたパイプラインについて」を参照してください。


MtsPipeline.Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

Function Execute(
lMode As Long,
pdispOrder As Object,
pdispContext As Object,
lFlags As Long
) As Long

パラメータ

lMode

パイプラインを実行するモードを示す long です。このパラメータは、Site Server 2.0 Commerce Edition サイトとの下位互換性を維持する目的でのみ用意されています。Site Server 3.0 Commerce Edition 以降では、モードは LoadPipe メソッドを使って適切に構成されたパイプラインを読み込むことによって設定されます。値は 1 を使います。値を 0 にすると、ステージを実行しません。

pdispOrder

Dictionary オブジェクトへの参照です。通常は OrderForm オブジェクトです。パイプラインが使う Order ディクショナリです。

pdispContext

Dictionary オブジェクトへの参照です。パイプラインが使う Context ディクショナリです。

lFlags

使われていない long パラメータです。ゼロ (0) に設定する必要があります。

戻り値

このメソッドが正常に終了すると、パイプラインのコンポーネントによって警告またはエラーが検出されたかどうかを示すlong が返されます。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

また、メソッドは次の 3 つの値のうちいずれかを返します。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMtsPipeline is a Commerce.MtsPipeline object
' dOrder and dContext are Commerce.Dictionary objects

errVal = pMtsPipelineExecute(1, dOrder, dContext, 0)

関連項目

MtsPipeline オブジェクト

MtsPipeline.LoadPipe

MtsPipeline.SetLogFile

PooledPipeline オブジェクト


MtsPipeline.LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

Sub LoadPipe(
pszFileName As String
)

パラメータ

pszFileName

パイプライン構成ファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションに指定されているパイプライン構成ファイルを (MtsTxPipeline オブジェクトで使うために) 読み込もうとすると、 LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMtsPipeline is a Commerce.MtsPipeline object

errVal = pMtsPipeline.Load("CustomShip.pcf")

関連項目

MtsPipeline オブジェクト

MtsPipeline.Execute

MtsPipeline.SetLogFile

PooledPipeline オブジェクト


MtsPipeline.SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。ログ機能は、運用環境では絶対に使わないでください。ログ機能は、パフォーマンスの低下を招いたり、クレジット カードの番号に対するセキュリティの問題を発生させる可能性があります。

定義

Sub SetLogFile(
pszFileName As String
)

パラメータ

pszFileName

イベントのログを記録するファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でメソッドを呼び出すと、ログ機能は停止します。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。SetLogFile メソッドが OrderGroup オブジェクトに LogFile プロパティとして表示されます。このメソッドは、RunPipe メソッドを呼び出す前に設定する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMtsPipeline is a Commerce.MtsPipeline object

errVal = pMtsPipeline.SetLogFile("CustomShipping.log")

' pOrderGroup is an OrderGroup object

pOrderGroup.LogFile = "CustomShipping.log"

関連項目

MtsPipeline オブジェクト

MtsPipeline.Execute

MtsPipeline.LoadPipe

PooledPipeline オブジェクト


MtsTxPipeline オブジェクト

このオブジェクトは、トランザクション Microsoft Commerce Server 2000 パイプライン構成を実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。

ProgID: | Commerce.MtsTxPipeline (外部作成可能)
COM クラス名: | CTxPipeline
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | アパートメント

次の表は、MtsTxPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | パイプラインでコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

MtsTxPipeline は通常、それが使われるページ上に作成されます。

MtsTxPipeline オブジェクトは、Microsoft Transaction Server (MTS) に "必須のトランザクション" として登録されます。このオブジェクトは、パイプライン構成のすべてのコンポーネントにまたがるトランザクションを保持しています。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。

データベースで使うときは、MtsTxPipeline オブジェクトに MTS をサポートする ODBC 準拠のデータベースが必要です。

MtsTxPipeline オブジェクトを使うためには、Microsoft 分散トランザクション コーディネータ (MSDTC) サービスが実行されている必要があります。

分散トランザクション コーディネータ サービスが実行されていることを確認するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[サービス] をクリックします。

  2. [Distributed Transaction Coordinator] をスクロールし、[状態] が [開始] になっていることを確認します。


MtsTxPipeline.Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

Function Execute(
lMode As Long,
pdispOrder As Object,
pdispContext As Object,
lFlags As Long
) As Long

パラメータ

lMode

パイプラインを実行するモードを示すlong です。このパラメータは、Site Server 2.0 Commerce Edition サイトとの下位互換性を維持する目的でのみ用意されています。Site Server 3.0 Commerce Edition 以降では、モードは LoadPipe を使って適切に構成されたパイプラインを読み込むことによって設定されます。値は 1 を使います。値を 0 にすると、ステージを実行しません。

pdispOrder

Dictionary オブジェクトへの参照です。パイプラインが使う Order ディクショナリです。通常は、OrderForm オブジェクトです。

pdispContext

Dictionary オブジェクトへの参照です。パイプラインが使う Context ディクショナリです。

lFlags

使われていないlong パラメータです。ゼロ (0) に設定する必要があります。

戻り値

このメソッドが正常に終了すると、パイプラインのコンポーネントによって警告またはエラーが検出されたかどうかを示すlong が返されます。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

また、メソッドは次の 3 つの値のうちいずれかを返します。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMtsTxPipeline is a Commerce.MtsTxPipeline object
' dOrder and dContext are Commerce.Dictionary objects

errVal = pMtsTxPipeline.Execute(1, dOrder, dContext, 0)

関連項目

MtsTxPipeline オブジェクト

MtsTxPipeline.LoadPipe

MtsTxPipeline.SetLogFile


MtsTxPipeline.LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

Sub LoadPipe(
pszFileName As String
)

パラメータ

pszFileName

パイプライン構成ファイル (.pcf) の名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

非トランザクション パイプラインに指定されているパイプライン構成ファイルを読み込もうとすると、 LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMtsTxPipeline is a Commerce.MtsTxPipeline object

errVal = pMtsTxPipeline.LoadPipe("CustomShip.pcf")

関連項目

MtsTxPipeline オブジェクト

MtsTxPipeline.Execute

MtsTxPipeline.SetLogFile


MtsTxPipeline.SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。ログ機能は、運用環境では絶対に使わないでください。ログ機能は、パフォーマンスの低下を招いたり、クレジット カードの番号に対するセキュリティの問題を発生させる可能性があります。

定義

Sub SetLogFile(
pszFileName As String
)

パラメータ

pszFileName

イベントのログを記録するファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。SetLogFile メソッドも OrderGroup オブジェクトに LogFile プロパティとして表示されます。このメソッドは、RunPipe メソッドの前に呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pMtsPipeline is a Commerce.MtsTxPipeline object

errVal = pMtsTxPipeline.SetLogFile("CustomShipping.log")

関連項目

MtsTxPipeline オブジェクト

MtsTxPipeline.LoadPipe

MtsTxPipeline.Execute


OrderForm オブジェクト

OrderForm オブジェクトでは、ユーザー情報および購入情報用にメモリ内に記憶領域を用意します。Commerce Server 2000 サイトは、OrderForm オブジェクトを使って、ユーザーが購入を決めた項目、および指定されたユーザーの購入履歴を反映するレシート情報を保存します。

ProgID: | Commerce.OrderForm (外部作成可能)
COM クラス名: | COrderForm
タイプ ライブラリ名: | Microsoft Commerce 2000 Core Components Type Library
DLL 名: | MscsCore.dll
スレッド モデル: | 両方

次の表は、OrderForm オブジェクトのメソッドを示しています。

メソッド | 説明
AddItem | 指定された項目をオブジェクトの items コレクションに追加します。
ClearItems | オブジェクトの items コレクションを消去します。
ClearOrderForm | OrderForm オブジェクト全体を消去します。

解説

OrderForm オブジェクトは、内部的に SimpleList オブジェクトおよび Dictionary オブジェクトが構造化されたグループとして 定義されています。このオブジェクトには、項目の追加、項目の消去、OrderForm オブジェクト全体の消去に必要なメソッドが含まれています。.

OrderForm オブジェクトの基本は Dictionary オブジェクトです。これには注文全体を説明する情報が含まれています。これには、ユーザー情報 (買物客 ID、名前、住所など)、および注文コスト情報 (購入金額の小計、税、送料、合計など) が含まれます。

OrderForm オブジェクトは、ディスクへのデータ保存を直接的にはサポートしていません。DBStorage オブジェクトおよび OrderGroupManager オブジェクトを使うと、OrderForm オブジェクトのデータを永続的に保存できます。

OrderForm オブジェクトの基本 Dictionary オブジェクト中の多くの要素には、アンダースコア (_) が含まれています。要素名の中にアンダースコアがあると、これらの項目がサイトの OrderForm 記憶領域に保存されないことを示します。これらの要素は、購入が完了したときに、サイトのレシート記憶領域に保存されます。

関連項目

ビジネス プロセス オブジェクト

OrderGroup オブジェクト

OrderGroupManager オブジェクト

SimpleFindSearchInfo オブジェクト

SimpleFindResultInfo オブジェクト


OrderForm.AddItem

このメソッドは、指定された項目を OrderForm オブジェクトの items コレクションに追加するために使います。items コレクションは、Dictionary オブジェクトを含む SimpleList オブジェクトです。

定義

Function AddItem(
varSKU As Variant,
lCount As Long,
lPlacedPrice As Long
) As Object

パラメータ

varSKU

追加する項目の SKU を含む Variant です。

lCount

項目数を含む long です。

lPlacedPrice

将来の使用のために予約されている long です。このパラメータは 0 に設定する必要があります。

戻り値

このメソッドが正常に完了すると、追加された項目の入った Dictionary オブジェクトへのオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Order is a Commerce.OrderForm object; a quantity of 5 is
' being added of the product whose SKU is SKUnumber.
Order.AddItem("SKUnumber", 5,0)

関連項目

OrderForm オブジェクト

OrderForm.ClearItems

OrderForm.ClearOrderForm


OrderForm.ClearItems

このメソッドは、OrderForm オブジェクトの items コレクションを消去するために使います。

定義

Sub ClearItems()

パラメータ

なし。

戻り値

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

サイトから購入をキャンセルしたユーザーへの応答は、ClearItems メソッドを使って返されます。このメソッドは、items コレクション中の情報にしか影響を与えません。_oadjust_subtotal や _total_total といったほかの OrderForm オブジェクトの情報は、この OrderForm オブジェクトで注文処理パイプライン (OPP) を実行したときのみ変更されます。

OrderForm オブジェクトのコンテンツすべてを空にするには、ClearOrderForm メソッドを呼び出します。

関連項目

OrderForm オブジェクト

OrderForm.AddItem

OrderForm.ClearOrderForm


OrderForm.ClearOrderForm

このメソッドは、OrderForm オブジェクト全体を消去するために使います。

定義

Sub ClearOrderForm()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

OrderForm オブジェクト

OrderForm.AddItem

OrderForm.ClearItems


OrderGroup オブジェクト

OrderGroup オブジェクトは、Commerce Server 2000 でサイトのバスケットおよび注文情報の格納、参照、および計算を行うために使います。OrderGroupManager オブジェクトは、OrderGroup オブジェクトと連携して機能するもので、注文に対する検索操作およびそのほかの管理操作を提供します。

ProgID: | Commerce.OrderGroup (外部作成可能)
COM クラス名: | OrderGroup
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

次の表は、OrderGroup オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
LogFile | 文字列 | パイプラインのログ ファイルが実行されます。空でない文字列に設定されたときにパイプラインのログ機能を有効にします。 このプロパティは読み取りと書き込みが可能です。
SavePrefix | 文字列 | ディクショナリ エントリがデータベースに保存されないように、キーとなるプレフィックスを指定します。
Value | Variant | OrderGroup オブジェクトの属性を返します。 このプロパティは読み取り専用です。

次の表は、OrderGroup オブジェクトのメソッドを示しています。

メソッド | 説明
AddItem | 指定された OrderForm オブジェクトに項目を追加します。
AddItemsFromTemplate | ディスク上の OrderGroup に関連付けられた項目を現在の OrderGroup オブジェクトに追加します。
AddOrderform | OrderForm オブジェクトとそのコンテンツすべてを OrderGroup オブジェクトに追加します。
AddXMLAsOrderForm | XML 文字列を OrderForm オブジェクトに変換し、そこに OrderGroup オブジェクトを追加します。
AggregateOrderFormValues | すべての OrderForm オブジェクトを繰り返し処理し、指定されたキーの合計を計算してから、合計を OrderGroup レベルに保存します。
Clear | OrderGroup オブジェクトのすべての OrderForm オブジェクトを消去します。
GetAddress | 指定されたアドレス ディクショナリ オブジェクトを取得します。
GetItemInfo | 指定されたインデックスにある指定の OrderForm から項目ディクショナリへの参照を取得します。
GetOrderFormAsXML | OrderForm オブジェクトを XML 文字列に変換します。
GetOrderFormValue | 提供された OrderForm キーで指定されている OrderForm 値を取得します。
Initialize | OrderGroup オブジェクトを初期化します。
LoadOrder | データベースから指定の OrderGroup を読み込みます。
LoadTemplate | データベースから指定のテンプレートを読み込みます。
LoadBasket | データベースから現在のユーザーのバスケットを読み込みます。
PurgeUnreferencedAddresses | どの項目の送付先住所からも参照されていない OrderGroup オブジェクト内のすべての住所を削除します。
PutItemValue | 指定された値を項目の指定のキーに入れます。
PutOrderFormValue | 指定された値を OrderForm オブジェクトの指定のキーに入れます。
RemoveItem | 指定された OrderForm オブジェクトから項目を削除します。指定された項目インデックスは、削除対象の項目を示します。
RemoveOrderForm | OrderGroup オブジェクトから指定の OrderForm オブジェクトを削除します。
RunPipe | OrderGroup オブジェクトの各 OrderForm オブジェクトごとにパイプライン コンポーネント ファイルを実行します。
SaveAsBasket | OrderGroup オブジェクトをバスケットの状態でデータベースに保存します。
SaveAsOrder | OrderGroup オブジェクトを注文の状態でデータベースに保存します。
SaveAsTemplate | OrderGroup オブジェクトをテンプレートの状態でデータベースに保存します。
SetAddress | OrderGroup オブジェクトのアドレス ディクショナリの値を、提供されているアドレス ディクショナリ オブジェクトで指定されているように設定します。
SetAddressFromFields | OrderGroup オブジェクトのアドレス ディクショナリの値を、提供されているフィールド オブジェクトで指定されているように設定します。
SetShippingAddress | 送付先住所を、提供されているデータベース アドレスの ID で参照されているものに設定します。

関連項目

ビジネス プロセス オブジェクト

OrderGroupManager オブジェクト

OrderForm オブジェクト

SimpleFindSearchInfo オブジェクト

SimpleFindResultInfo オブジェクト


OrderGroup.AddItem

このメソッドは、指定された OrderForm オブジェクトに項目を追加するために使います。

このメソッドは、項目ディクショナリを指定された OrderForm (strOrderFormName パラメータ) に追加します。strOrderFormName が指定されていない場合、strOrderFormName パラメータは "既定" になります。"既定" がない場合は作成されます。また、このメソッドは、集計数量の合計を OrderGroup レベルおよび OrderForm レベルで増分します。

定義

Function AddItem(
dictItem As Object,
Optional strOrderFormName As Variant
) As Long

パラメータ

dictItem

項目情報を含む Dictionary オブジェクトです。

strOrderFormName

項目を追加する OrderForm の名前を指定する Variant です。サイトの構成方法によっては、strOrderFormName として項目の製造元名を指定することもできます。こうすると、ベンダーが異なる項目は別の OrderForm に追加されます。

戻り値

このメソッドが正常に終了すると、項目が追加された場所のインデックスを指定する long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

注

  • 追加された各項目には、数量が含まれている必要があります。

  • QueryCatalogInfo コンポーネントをパイプランで使う場合、次のものも必要です。
    • product_catalog

    • product_id

    • product_variant_id (商品バリエーションである場合)

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dDict is a Dictionary object
' lLineItemIndex is a Long
' sMyOrder is a String
' oOrderGroup is a Commerce.OrderGroup object
lLineItemIndex = oOrderGroup.AddItem(dDict, sMyOrder)

関連項目

OrderGroup オブジェクト

OrderGroup.RemoveItem


OrderGroup.AddItemsFromTemplate

このメソッドは、ディスク上の OrderGroup に関連付けられている項目を現在の OrderGroup オブジェクトに追加するために使います。

このメソッドは、指定されたテンプレート中のすべての OrderForm を繰り返し処理し、それらを現在の OrderGroup に追加します。OrderForm が既に存在する場合、OrderGroup テンプレート上の項目が単純に追加されます。存在しない OrderForm が見つかった場合、OrderForm レベルのディクショナリ値を含めたその OrderForm 自体が OrderGroup に追加されます。

OrderGroup は、OrderForm レベルおよび OrderGroup レベルで全項目のカウンタを保持します。OrderGroup レベルでは、すべての OrderForm 中の項目数が追跡されています。この値は、"total_lineitems" キーの下で保持されています。

定義

Sub AddItemsFromTemplate(
OrderGroupID As String
)

パラメータ

OrderGroupID

テンプレートの OrderGroup ID を指定する文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

注

  • セキュリティの実装はアプリケーションが行います。このメソッドでは、テンプレートのユーザー ID が、初期化の呼び出しで指定されたユーザー ID と同じであるかがチェックされません。

このメソッドは、以前に送信された注文やバスケット、テンプレート (保存されている注文) の状態の OrderGroups でも機能します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' myOGID is a GUID String
myOGID ="754C40C6-EAA9-454C-A8AB-02789FBE0FB9"
oOrderGroup.AddItemsFromTemplate(myOGID)

関連項目

OrderGroup オブジェクト


OrderGroup.AddOrderform

このメソッドは、OrderForm とそのすべてのコンテンツを OrderGroup オブジェクトに追加するために使います。

strOrderFormName が指定されていない場合は、"既定" になります。

定義

Sub AddOrderform(
orderform As Object,
Optional strOrderFormName As Variant
)

パラメータ

orderform

追加される OrderForm オブジェクトを含む Dictionary オブジェクトです。

strOrderFormName

OrderForm の名前を指定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dOrderForm is a Dictionary object
' sMyOrderName is a string
' oOrderGroup is a Commerce.OrderGroup object
oOrderGroup.AddOrderform(dOrderForm,sMyOrderName)

関連項目

OrderGroup オブジェクト


OrderGroup.AddXMLAsOrderForm

このメソッドは、以前に XML として保存された項目 (GetOrderformAsXML メソッドを使って) を OrderGroup に追加するために使います。

定義

Sub AddXMLAsOrderForm(
strXML As String,
nXMLLocale As Long,
Optional strOrderFormName As Variant
)

パラメータ

strXML

追加する項目を含んだ XML 文字列を指定する文字列です。

nXMLLocale

XML 文字列変換に使うロケールを指定する long です。

strOrderFormName

追加する OrderForm 名を指定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

注

  • BizTalk Server を介して XML を交換するときは、DictionaryXMLTransforms オブジェクトを使うことをお勧めします。DictionaryXMLTransforms を使うと、XML を適切に定義されたスキーマに書き出せます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' sXMLString is an string containing order-form data
' lLocale is a long specifying the locale to use in conversion
oOrderGroup.AddXMLAsOrderForm(sXMLString, lLocale)

関連項目

OrderGroup オブジェクト

OrderGroup.GetOrderFormAsXML


OrderGroup.AggregateOrderFormValues

このメソッドは、すべての OrderForm の繰り返し処理、指定されたキーの合計の計算、OrderGroup レベルでの合計の保存を行うために使います。

定義

Sub AggregateOrderFormValues(
strOrderFormKey As String,
strOrderGroupKey As String
)

パラメータ

strOrderFormKey

集計される値の OrderForm キーを指定する文字列です。

strOrderGroupKey

集計値を書き込む値の OrderGroup キーを指定する文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
oOrderGroup.AggregateOrderFormValues("saved_cy_handling_total", _
"_cy_handling_total")

関連項目

OrderGroup オブジェクト


OrderGroup.Clear

このメソッドは、OrderGroup オブジェクトのすべての OrderForm オブジェクトとアドレス ディクショナリを消去するために使います。

定義

Sub Clear()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

OrderGroup オブジェクト


OrderGroup.GetAddress

このメソッドは、指定されたアドレスの Dictionary オブジェクトを取得するために使います。

定義

Function GetAddress(
strAddressId As String
) As Object

パラメータ

strAddressId

アドレス ID を指定する文字列です。

戻り値

指定されたアドレスが見つかった場合、このメソッドはそのディクショナリへの参照を返します。見つからなかった場合は、Nothing オブジェクトを返します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' dDict is a Dictionary object

dDict = oOrderGroup.GetAddress("{C4F9C9CC-C33E-11D0-B8A0-00C04FB616C7}")

関連項目

OrderGroup オブジェクト


OrderGroup.GetItemInfo

このメソッドは、指定されたインデックスにある指定の OrderForm から項目ディクショナリへの参照を取得するために使います。strOrderFormName パラメータが指定されていない場合は、"既定" になります。

定義

Function GetItemInfo(
nItemIndex As Long,
Optional strOrderFormName As Variant
) As Object

パラメータ

nItemIndex

項目インデックスを指定する long です。

strOrderFormName

OrderForm の名前を指定する Variant です。

戻り値

このメソッドが正常に終了すると、項目情報を含む Dictionary オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' dDict is a Dictionary object
dDict = oOrderGroup.GetItemInfo(3, "testOrderFormName")

関連項目

OrderGroup オブジェクト


OrderGroup.GetOrderFormAsXML

このメソッドは、OrderForm オブジェクトを XML 文字列に変換するために使います。

定義

Function GetOrderFormAsXML(
nXMLLocale As String,
Optional strOrderFormName As Variant
) As String

パラメータ

nXMLLocale

XML 文字列変換に使われるロケールを指定する文字列です。

strOrderFormName

OrderForm を指定する Variant です。

戻り値

このメソッドが正常に終了すると、XML 文字列を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Note:BizTalk Server を介して XML を交換するときは、DictionaryXMLTransforms オブジェクトを使うことをお勧めします。DictionaryXMLTransforms オブジェクトを使うと、XML を適切に定義されたスキーマに書き出せます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' lLocale is a valid Locale identifier
sXMLResultString is a string
sXMLResultString = oOrderGroup.GetOrderFormAsXML(lLocale, myOrderFormName)

関連項目

OrderGroup オブジェクト

OrderGroup.AddXMLAsOrderForm


OrderGroup.GetOrderFormValue

このメソッドは、指定されたキーに基づいて OrderForm から属性を取得するために使います。

定義

Function GetOrderFormValue(
strKey As String,
Optional strOrderFormName As Variant
) As Variant

パラメータ

strKey

取得する属性を指定するキーを含む文字列です。

strOrderFormName

OrderForm の名前を指定する Variant です。

戻り値

このメソッドが正常に終了すると、属性を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

strOrderformName パラメータが指定されていない場合は、strOrderFormName パラメータは "既定" になります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
vResult is a Variant

vResult = oOrderGroup.GetOrderFormValue(handling_total, _
"testOrderFormName")

関連項目

OrderGroup オブジェクト


OrderGroup.Initialize

このメソッドは、OrderGroup オブジェクトを初期化するために使います。

定義

Sub Initialize(
strConnectionString As String,
strUser ID As String
)

パラメータ

strConnectionString

データベース接続文字列を含む文字列です。

strUser ID

ユーザー ID を指定する文字列です。Commerce Server 2000 のユーザー ID の値はすべて GUID です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、OrderGroup がデータベース操作に使う接続文字列を指定するために使います。また、バスケット操作を実行するときに、オブジェクトが OrderGroup_id として使う user_id を指定します。この user_id の値が g_User IDChangedBy フィールドに格納されます。

注

  • ほかのユーザーに代わって OrderGroup を読み込む場合 (たとえば管理者として)、 管理者ユーザー ID (または管理権限を意味するプレースホルダ ユーザー ID である GUID) を指定し、OrderGroup がデータベースに保存されたときに、適切な値で g_UserIDChangedBy が更新されるようにする必要があります。管理者ロールでバスケットの状態に関する OrderGroup を読み込む場合、読み込み対象のバスケットを持つユーザーのユーザー ID を strUser ID に指定する必要があります。この場合、g_User IDChangedBy は管理者ユーザー ID では更新されません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGrp is a Commerce.OrderGroup object
' sConnString is a valid connection string to the Commerce database
oOrderGrp.Initialize(sConnString, _
    "{D4F9C9CC-C33E-11D0-B8A0-00C04FB616C7}")

関連項目

OrderGroup オブジェクト


OrderGroup.LoadBasket

このメソッドは、データベースから現在のユーザーのバスケットを読み込むために使います。Initialize メソッドで指定されたユーザー ID のバスケットが見つからない場合、このメソッドはメモリ内の空のバスケットを初期化します。

定義

Sub LoadBasket()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

OrderGroup オブジェクト

OrderGroup.LoadOrder

OrderGroup.LoadTemplate

OrderGroup.SaveAsBasket


OrderGroup.LoadOrder

このメソッドは、ディスクから OrderGroup を読み込むために使います。このメソッドは、OrderGroup が見つからなかった場合にエラーを返します。

定義

Sub LoadOrder(
strOrderGroupID As String
)

パラメータ

strOrderGroupID

読み込む OrderGroup の OrderGroupID を指定する文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

LoadOrder メソッドは、状態がバスケットまたはテンプレートではない OrderGroup を読み込むために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
oOrderGroup.LoadOrder("{EEF9C9CC-C33E-11D0-B8A0-00C04FB616C7}")

関連項目

OrderGroup オブジェクト

OrderGroup.LoadBasket

OrderGroup.LoadTemplate

OrderGroup.Initialize

OrderGroup.SaveAsOrder


OrderGroup.LoadTemplate

このメソッドは、データベースから指定されたテンプレートを読み込むために使います。

定義

Sub LoadTemplate(
strOrderGroupID As String
)

パラメータ

strOrderGroupID

読み込むテンプレートの OrderGroupID を指定する文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

例

' oOrderGroup is a Commerce.OrderGroup object
oOrderGroup.LoadTemplate("{EEF9C9CC-C33E-11D0-B8A0-00C04FB616C7}")

関連項目

OrderGroup オブジェクト

OrderGroup.LoadOrder

OrderGroup.LoadBasket

OrderGroup.SaveAsTemplate


OrderGroup.LogFile

LogFile プロパティは、RunPipe メソッドの実行中に、パイプラインのログ機能に使われるファイル名を指定する読み取りまたは書き込み文字列です。

定義

Property LogFile As String

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

LogFile パラメータを空の文字列 ("") に設定してログ機能を無効にします。

関連項目

OrderGroup オブジェクト


OrderGroup.PurgeUnreferencedAddresses

このメソッドは、項目の shipping_address_id または OrderForm の billing_address_id. に参照されていない OrderGroup オブジェクト内のすべてのアドレスを削除するために使います。

定義

Sub PurgeUnreferencedAddresses()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

OrderGroup オブジェクト


OrderGroup.PutItemValue

このメソッドは、指定された値を項目の指定のキーに入れるために使います。

定義

Sub PutItemValue(
strKey As String,
vtValue As Variant,
Optional bOverWrite As Boolean,
Optional nItemIndex As Variant,
Optional strOrderFormName As Variant
)

パラメータ

strKey

キーを指定する文字列です。キーの属性には vtValue パラメータで指定された値が格納されます。

vtValue

strKey パラメータで指定されたキーの属性に格納するための値を指定する Variant です。

bOverWrite

strKey パラメータで指定されたキーの既存の属性を上書きするかどうかを示す Boolean です。値が True の場合、属性が上書きされることを示します。値が False の場合は、属性が上書きされないことを示します。

nItemIndex

項目インデックスを指定する Variant です。

strOrderFormName

OrderForm の名前を指定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

項目インデックスが指定されている場合、このメソッドは、strOrderFormName パラメータに指定されている OrderForm 上で、指定された項目の名前と値の組み合わせを設定します。(指定されていない場合、strOrderFormName パラメータは "既定" になります)。

項目インデックスが指定されていない場合、このメソッドは、指定された OrderForm のすべての項目に対して名前と値の組み合わせを設定します。OrderForm の名前が指定されていない場合、このメソッドは、OrderGroup のすべての項目に対して名前と値の組み合わせを設定します。

strOrderFormName の OrderForm が strOrderFormName パラメータに指定されていない場合は、これが作成されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
oOrderGroup.PutItemValue(payment_method, credit_card, False)

関連項目

OrderGroup オブジェクト


OrderGroup.PutOrderFormValue

このメソッドは、OrderForm 上に属性を設定するために使います。strOrderFormName パラメータが指定されていて、OrderForm が OrderGroup にない場合、指定された名前で新しく OrderForm が作成されます。

strOrderFormName が指定されていない場合、パラメータは "既定" になります。

定義

Sub PutOrderFormValue(
strKey As String,
vtValue As Variant,
Optional strOrderFormName As Variant
)

パラメータ

strKey

キーを指定する文字列です。キーの属性には vtValue パラメータで指定された値が格納されます。

vtValue

strKey パラメータで指定されたキーの属性に格納するための値を指定する Variant です。

strOrderFormName

OrderForm の名前を指定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
oOrderGroup.PutOrderFormValue(handling_total, "$ 421.23")

関連項目

OrderGroup オブジェクト


OrderGroup.RemoveItem

このメソッドは、指定された OrderForm オブジェクトから項目を削除するために使います。指定された項目インデックスは、削除対象の項目を示します。

strOrderFormName パラメータが指定されていない場合、strOrderFormName パラメータは "既定" になります。

定義

Sub RemoveItem(
Optional nItemIndex As Variant,
Optional strOrderFormName As Variant
)

パラメータ

nItemIndex

項目インデックスを指定する Variant です。

strOrderFormName

OrderForm の名前を指定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

OrderGroup.AddItem


OrderGroup.RemoveOrderForm

このメソッドは、OrderGroup オブジェクトから指定された OrderForm を削除するために使います。

定義

Sub RemoveOrderForm(
strOrderFormName As String
)

パラメータ

strOrderFormName

削除する OrderForm を指定する文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
oOrderGroup.RemoveOrderForm("myOrderFormName")

関連項目

OrderGroup オブジェクト

OrderGroup.AddOrderform


OrderGroup.RunPipe

このメソッドは、OrderGroup オブジェクトの各 OrderForm にパイプライン コンポーネント ファイルを実行するために使います。

定義

Function RunPipe(
strPCF As String,
strPipelineProgID As String,
oContext As Object
) As Long

パラメータ

strPCF

パイプライン コンポーネント ファイルのファイル パス (たとえば c:\SampleDir\SampleFile.pcf) を指定する文字列です。

strPipelineProgID

パイプラインの ProgID を指定する文字列です。

oContext

パイプライン コンテキストを指定するオブジェクト参照です。

戻り値

このメソッドが正常に終了すると、パイプラインの実行で発生した最大のエラー レベルを指定する long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

OrderGroup.RunPipe が呼び出されると、OrderGroup オブジェクトのインスタンスが作成され、そこに含まれている各 OrderForm に対してパイプラインを実行します。パイプライン コンポーネント自体には、スタンドアロン パイプラインで実行されているかのように、OrderForm が引き続き渡されます。実際には、パイプライン コンポーネントが OrderGroup 内の OrderForm に対して実行されているのか、スタンドアロンの OrderForm に対して実行されているのかを、パイプライン コンポーネントが知る方法はありません。

OrderGroup 内の項目が異なる製造元のもの (たとえば、割引コンポーネント) であるかどうかにかかわらず、パイプライン コンポーネントにすべての項目について認識させたい場合があります。この場合、OrderGroup オブジェクトが複数の OrderForm を保持する機能を使わないでください (この場合は、すべての項目を同じ OrderForm に追加します)。こうした場合、Splitter パイプライン コンポーネントを使って OrderForm 上に異なる製造元の項目を表示できます。

OrderGroup.RunPipe を呼び出す際に、OrderGroup の集計機能を利用して、すべての OrderForm の合計を算出できます。OrderGroup.RunPipe は、自動的に複数の共通のフィールドを集計します。集計するフィールドを追加して集計する場合は、OrderGroup.AggregateOrderformValues を使います。

また、このメソッドは、次に挙げるプロパティそれぞれの各 OrderForm の合計を計算します。

Orderform の値 | OrderGroup の合計
_cy_oadjust_subtotal | saved_cy_oadjust_subtotal
_cy_total_total | saved_cy_total_total
_cy_shipping_total | saved_cy_shipping_total
_cy_handling_total | saved_cy_handling_total
_cy_tax_total | saved_cy_tax_total
_cy_tax_included | saved_cy_tax_included

多くのパイプラインのキーには、プレフィックス "_" が付きます。これは、既定ではパイプラインのキーがデータベースに保存されないことを意味します。時には、これらのキーのスナップショットをとる必要があります。この場合には、プレフィックス "saved_" が使われる規則になっています。"saved_" プレフィックスを使うと、これらを後で参照でき、 SQL ステートメントまたは OrderGroupManager オブジェクトを使って検索できます。コピーされたキーは、必ずしも最新であるとは限りません。また、パイプライン コンポーネントで直接、使わないでください。

OrderGroup オブジェクトには、RunPipe メソッドのログ ファイルの設定に使う LogFile プロパティがあります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' lResult is a long
' oContext specifies the pipeline context
lResult = oOrderGroup.RunPipe("c:\myPCFFile.pcf", _
    "Commerce.PooledPipeline, oContext)

関連項目

パイプラインの基礎

OrderGroup オブジェクト

OrderGroup.LogFile


OrderGroup.SaveAsBasket

このメソッドは、OrderGroup オブジェクトをバスケットの状態でデータベースに保存するために使います。

定義

Function SaveAsBasket() As Variant

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、OrderGroupID を指定する Variantが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

pvtRetVal パラメータが有効なデータを参照するのは、メソッドが正常に終了した場合だけです。

このメソッドは、OrderGroup の状態を "バスケット" に設定し、OrderGroupID を ユーザー ID と同じにします。

OrderGroup オブジェクトがバスケットから読み込まれなかった場合、このメソッドは、データ記憶域への挿入を行う前にディスク上の既存のバスケットを削除します。

OrderGroup オブジェクトがバスケットから読み込まれた場合、このメソッドは、読み込みの呼び出しの際に OrderGroup がディスク上に見つかったかによって更新または挿入を実行します。テンプレートまたは注文を読み込んで SaveAsBasket メソッドを呼び出した場合、最初に読み込まれたテンプレートまたは注文は、変更されないままディスクに残ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' vResult is a Variant
vResult = oOrderGroup.SaveAsBasket()

関連項目

OrderGroup オブジェクト

OrderGroup.LoadBasket

OrderGroup.SaveAsOrder

OrderGroup.SaveAsTemplate


OrderGroup.SaveAsOrder

このメソッドは、OrderGroup を注文の状態でデータベースに保存するために使います。

定義

Function SaveAsOrder(
Optional vtOutTrackingNumber As Variant
) As Variant

パラメータ

vtOutTrackingNumber

お問い合わせ番号を指定する Variant です。指定する場合、Variant は非リテラル値である必要があります。メソッドが戻るときにトラッキング番号が入ります。

戻り値

このメソッドが正常に終了すると、OrderGroupID を指定する Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、現在の状態がテンプレート、バスケット、または未定義の場合に、OrderGroup の状態を "注文" に設定します。(ほかの状態はすべてそのまま残ります。その結果、注文は承認の保留、拒否などのさまざまな状態になります)SaveAsOrder メソッドを呼び出す前は、状態をバスケットまたはテンプレート以外の値に設定できます。このメソッドでは状態は上書きされません。

注文を初めて保存する場合、注文の作成日付を記録するための特別なフィールドが書き込まれます。保存する前に OrderForm (order_number キーの下) に OrderTrackingNumber が既に存在する場合、新しい OrderTrackingNumber フィールドは生成されません。この機能では、ERP ベースのお問い合わせ番号を使えます。

OrderGroup がテンプレートまたはバスケットから読み込まれた場合、このメソッドは新しい OrderGroupID とお問い合わせ番号を生成し、データベースに挿入します。OrderGroup がディスク上に存在しない場合、このメソッドは OrderGroupID とお問い合わせ番号を生成し、データベースに挿入します。OrderGroup がそのほかの状態から読み込まれた場合、このメソッドはデータベースを更新します。

バスケットまたテンプレートを読み込んで SaveAsOrder メソッドを呼び出すと、そのバスケットまたはテンプレートは、変更されないままディスク上に残ります。このため、通常の場合には、SaveAsOrder メソッドは OrderGroupManager.DeleteOrderGroupFromDisk 呼び出しの後で呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' vResult is a Variant
' vTrackingNumber is a Variant
vResult = oOrderGroup.SaveAsOrder(vTrackingNumber)

関連項目

OrderGroup オブジェクト

OrderGroup.SaveAsBasket

OrderGroup.SaveAsTemplate


OrderGroup.SaveAsTemplate

このメソッドは、テンプレートの状態で OrderGroup をデータベースに保存するために使います。

定義

Function SaveAsTemplate(
Optional strTemplateName As Variant
) As Variant

パラメータ

strTemplateName

テンプレート名を指定する Variant です。

戻り値

このメソッドが正常に終了すると、テンプレートの OrderGroupID を指定する Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、strTemplateName パラメータが指定されている場合に、OrderGroup テンプレート名のフィールドを更新します。

バスケットなど、元々は別の状態にある OrderGroup を読み込んでいた場合に SaveAsTemplate メソッドを呼び出したときは、元の OrderGroup は変更されないままディスク上に残ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' vResult is a Variant
vResult = oOrderGroup.SaveAsTemplate()

関連項目

OrderGroup オブジェクト

OrderGroup.SaveAsBasket

OrderGroup.SaveAsOrder


OrderGroup.SavePrefix

ディクショナリ エントリがデータベースに保存されないように、キーとなるプレフィックスを指定します。

定義

Property SavePrefix() As String

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Value パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

SavePrefix プロパティの値で始まるキー名を持ったディクショナリ エントリは、データベースにはまったく保存されません。SavePrefix プロパティが、アンダスコア (_) に設定されているとします。_adjusted_price の値が 200 ドルで、total_price の値が 400 ドルである場合、200 ドルは保存されませんが、400 ドルは保存されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


OrderGroup.SetAddress

このメソッドは、OrderGroup の OrderGroup Addresses コレクションに、指定したアドレス ディクショナリを追加するために使います。

定義

Sub SetAddress(
strAddressId As String,
oAddressDict As Object
)

パラメータ

strAddressId

追加するアドレスのアドレス ID を指定する文字列です。

oAddressDict

追加するアドレス情報を含む Dictionary オブジェクトです。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroup is a Commerce.OrderGroup object
' oAddDict is an address Dictionary object
oOrderGroup.SetAddress("{AABBC9CC-C33E-11D0-B8A0-00C04FB616C7}", oAddDict)

関連項目

OrderGroup オブジェクト

OrderGroup.SetAddressFromFields


OrderGroup.SetAddressFromFields

このメソッドは、OrderGroup のアドレス ディクショナリ値を設定するために使います。設定値は Fields オブジェクトによって指定されたものです。フィールド オブジェクト内の列名は、アドレス ディクショナリ内のディクショナリ キー名にマップされます。

定義

Sub SetAddressFromFields(
strAddressId As String,
flds As Object
)

パラメータ

strAddressId

追加するアドレス ディクショナリのアドレス ID を指定する文字列です。

flds

追加するアドレス情報を含む Fields オブジェクトです。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOG is a Commerce.OrderGroup object
' oFlds is a Fields object
oOG.SetAddressFromFields("{34ECC9CC-C33E-11D0-B8A0-00C04FB616C7}", _
    oFlds)

関連項目

OrderGroup オブジェクト

OrderGroup.SetAddress


OrderGroup.SetShippingAddress

このメソッドは、指定した項目について送付先アドレス ID を設定するために使います。

定義

Sub SetShippingAddress(
address_id As String,
Optional bOverWrite As Boolean,
Optional nItemIndex As Variant,
Optional strOrderFormName As Variant
)

パラメータ

address_id

送付先のアドレス ID を指定する文字列です。

bOverWrite

shipping_address_id が既に存在する場合、それを上書きするかどうかを示す Boolean です。値が True の場合、上書きされることを示します。値が False の場合、上書きされないことを示します。

nItemIndex

shipping_address_id が設定される項目インデックスを指定する Variant です。指定されていない場合は、すべての項目ついて設定されます。

strOrderFormName

操作を行う OrderForm を指定する Variant です。これが指定されておらず、nItemIndex も指定されていない場合、すべての OrderForm が使われます。そのほかの場合は、"既定" の OrderForm が使われます。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

bOverWrite、nItemIndex、および strOrderFormName の各パラメータの作用は、PutItemValue メソッドがとる同じパラメータの作用と似ています。このメソッドは、設定操作を実行する前に、まずアドレス ID が存在するかどうかを確認します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrdGrp is a Commerce.OrderGroup object
oOrdGrp.SetShippingAddress(("{34ECC9CC-C33E-11D0-B8A0-00C04FB616C7}", _
    True, 4, "testOrderFormName")

関連項目

OrderGroup オブジェクト


OrderGroup.Value

Value プロパティは読み取り専用の Variant で、OrderGroup レベルの属性をディクショナリとして含んでいます。

定義

Property Value As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Value パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


OrderGroupManager オブジェクト

このオブジェクトは、OrderGroup オブジェクトおよびそのコンテンツを管理するために使います。このオブジェクトを使うと、SQL クエリを使用しなくても注文やバスケットを検索できるようになります。また、OrderGroup を削除することもできます。

ProgID: | Commerce.OrderGroupManager (外部作成可能)
COM クラス名: | OrderGroupManager
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

次の表は、OrderGroupManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
OrderFormHeaderColumns | Variant | OrderFormHeader テーブルの列名を、カンマ区切り形式の文字列で返します。 このプロパティは読み取り専用です。
OrderFormLineItemsColumns | Variant | OrderFormLineItems テーブルの列名を、カンマ区切り形式の文字列で返します。 このプロパティは読み取り専用です。
OrderGroupColumns | Variant | OrderGroup テーブルの列名を、カンマ区切り形式の文字列で返します。 このプロパティは読み取り専用です。

次の表は、OrderGroupManager オブジェクトのメソッドを示しています。

メソッド | 説明
DeleteOrderGroupFromDisk | 指定された OrderGroup オブジェクトについて、データベースとの接続が確立されているかどうかを確認した後、その OrderGroup オブジェクトおよびそれに含まれるすべてのオブジェクトをデータベースから削除します。
Find | 指定された SQL 句フラグメントに基づいて、SQL 検索を実行します。
FindTemplatesForUser | 指定されたユーザーについて、OrderGroup テンプレートの ADO レコードセットを検索します。検索結果の ADO レコードセットを返します。
Initialize | 指定されたデータベースへの接続を作成します。
SimpleDelete | SimpleFindSearchInfo オブジェクトと SimpleFindResultInfo オブジェクトによって指定された検索条件を満たすエントリを、すべて削除します。
SimpleFind | 指定された SimpleFindSearchInfo と SimpleFindResultInfo の値に基づいて、OrderGroup 項目の ADO レコードセットを返します。これらのオブジェクトの値には、検索条件が含まれています。

関連項目

ビジネス プロセス オブジェクト

OrderGroup オブジェクト

OrderForm オブジェクト

SimpleFindSearchInfo オブジェクト

SimpleFindResultInfo オブジェクト


OrderGroupManager.DeleteOrderGroupFromDisk

このメソッドは、指定した OrderGroup オブジェクトについて、データベースとの接続が確立されているかどうかを確認した後、その OrderGroup オブジェクトおよびそれに含まれるすべてのオブジェクトをデータベースから削除するために使います。

定義

Sub DeleteOrderGroupFromDisk(
OrderGroupID As String
)

パラメータ

OrderGroupID

OrderGroup ID を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sOrderGroupID is a string containing a valid OrderGroupID
' oOrderGroupManager is a Commerce OrderGroupManager object
oOrderGroupManager.DeleteOrderGroupFromDisk(sOrderGroupID)

関連項目

OrderGroupManager オブジェクト


OrderGroupManager.Find

このメソッドは、指定した SQL 句フラグメントに基づいて、SQL 検索を実行するために使います。

定義

Function Find(
OrderGroupCriteriaArray As Variant,
OrderFormCriteriaArray As Variant,
LineItemCriteriaArray As Variant,
Optional SearchDateTimeColumn As Variant,
Optional SearchDateTimeStart As Variant,
Optional SearchDateTimeEnd As Variant,
Optional StatusFilter As Long,
Optional JoinOrderFormInfo As Boolean,
Optional JoinLineItemInfo As Boolean,
Optional Columns As Variant,
Optional OrderGroupSortColumn As Variant,
Optional SortDirection As Variant,
Optional PageSize As Long,
Optional PageNumber As Long,
Optional outTotalRecordsFound As Variant
) As Variant

パラメータ

OrderGroupCriteriaArray

特定の OrderGroup のセットを検索するために使う SQL 句を含む Variant です。

OrderFormCriteriaArray

特定の OrderForm のセットを検索するために使う SQL 句を含む Variant です。

LineItemCriteriaArray

特定の項目のセットを検索するために使う SQL 句を含む Variant です。

SearchDateTimeColumn

検索する DateTime 列の名前を指定する Variant です。Null のままにしておくと、DateTime 列の名前は検索条件の一部に含まれません。このパラメータは省略可能です。

SearchDateTimeStart

検索する DateTime の開始値を指定する Variant です。Null のままにしておくと、DateTime の開始値は検索条件の一部に含まれません。このパラメータは省略可能です。

SearchDateTimeEnd

検索する DateTime の終了値を指定する Variant です。Null のままにしておくと、DateTime の終了値は検索条件の一部に含まれません。このパラメータは省略可能です。

StatusFilter

OrderGroup の状態を格納する long です。このパラメータは省略可能です。

JoinOrderFormInfo

結果に OrderFormHeader テーブルを含めるかどうかを示す Boolean です。このパラメータは省略可能です。

JoinLineItemInfo

結果に OrderFormLineItems テーブルを含めるかどうかを示す Boolean です。このパラメータは省略可能です。

Columns

既定の列のほかに返す列の名前を含む Variant です。このパラメータは省略可能です。

OrderGroupSortColumn

並べ替えに使用する OrderGroup 列の名前を含む Variant です。このパラメータは省略可能です。

SortDirection

並べ替え順序を含む Variant です。このパラメータは省略可能です。指定できる値は、SQL 文字列の "ASC" または "DESC" です。

PageSize

このメソッドを使うと、注文を複数のページに分けて表示できるようにする、ページング機能を実装できます。これらは、たとえば一覧シートで見ることができます。PageSize パラメータは、1 ページあたりの項目の数を含む long です。このパラメータの設定は、PageNumber パラメータと調整する必要があります。このパラメータは省略可能で、既定値は 20 です。

PageNumber

このメソッドを使うと、注文を複数のページに分けて表示できるようにする、ページング機能を実装できます。これらは、たとえば一覧シートで見ることができます。PageNumber パラメータはジャンプ先のページ番号を含む long です。このパラメータの設定は、PageSize パラメータと調整する必要があります。このパラメータは省略可能です。

outTotalRecordsFound

表示する結果レコードの総数を指定する Variant です。

戻り値

このメソッドが正常に終了すると、検索条件を満たす結果セットが入ったレコードセットを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vRecordset is a Variant
' vOrderGroupCriteriaArray is a Variant
' vOrderFormCriteriaArray is a Variant
' vLineItemCriteriaArray is a Variant
' oOrderGroupManager is a Commerce OrderGroupManager object
vRecordset = oOrderGroupManager.Find(vOrderGroupCriteriaArray, _
    vOrderFormCriteriaArray, vLineItemCriteriaArray)

関連項目

OrderGroupManager オブジェクト

OrderGroupManager.SimpleFind


OrderGroupManager.FindTemplatesForUser

このメソッドは、指定したユーザーのために使われる OrderGroup テンプレートの ADO レコードセットを作成し、返すために使います。

定義

Function FindTemplatesForUser(
UserId As String,
SearchDateTimeColumn As Variant,
SearchDateTimeStart As Variant,
SearchDateTimeEnd As Variant,
JoinOrderFormInfo As Variant,
JoinLineItemInfo As Variant,
Columns As Variant,
OrderGroupSortColumn As Variant,
SortDirection As Variant,
PageSize As Long,
PageNumber As Long,
outTotalRecordsFound As Variant
) As Variant

パラメータ

UserId

User ID (GUID) を含む文字列です。

SearchDateTimeColumn

検索で使用する DateTime 列の名前を含む Variant です。

SearchDateTimeStart

検索で使う DateTime の開始値を含む Variant です。

SearchDateTimeEnd

検索で使う DateTime の終了値を含む Variant です。

JoinOrderFormInfo

検索対象に OrderFormHeader テーブルを含めるかどうかを示す Boolean です。値が True の場合、テーブルが含まれることを示します。値が False の場合、テーブルは含まれないことを示します。

JoinLineItemInfo

検索対象に OrderFormLineItem テーブルを含めるかどうかを示す Boolean です。値が True の場合、テーブルが含まれることを示します。値が False の場合、テーブルは含まれないことを示します。

Columns

既定の列のほかに返す列の名前を含む Variant です。

OrderGroupSortColumn

OrderGroup の並べ替え列を含む Variant です。

SortDirection

並べ替え順序を含む Variant です。

PageSize

ページ サイズを含む long です。

PageNumber

ページ番号を含む long です。

outTotalRecordsFound

見つかったレコードの総数を含む Variant です。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、検索条件を満たす結果セットが入った ADO レコードセットを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oOrderGroupManager is a Commerce OrderGroupManager object
oOrderGroupManager.FindTemplatesForUser("{11223344-1122-1122-1122- _
    AABBCCDDEEFF}")

関連項目

OrderGroupManager オブジェクト

ビジネス プロセス オブジェクト


OrderGroupManager.Initialize

このメソッドは、指定したデータベースへの接続を作成するために使います。

定義

Sub Initialize(
ConnectionString As Variant
)

パラメータ

ConnectionString

データベース接続文字列を含む Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vConnectionString is a Variant containing a database connection string
' oOrderGroupManager is a Commerce OrderGroupManager object
oOrderGroupManager.Initialize(vConnectionString)

関連項目

OrderGroupManager オブジェクト


OrderGroupManager.OrderFormHeaderColumns

OrderFormHeaderColumns プロパティは読み取り専用の Variant で、OrderFormHeader テーブルの列名のコレクションを含んでいます。

定義

Property OrderFormHeaderColumns As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

OrderGroupManager オブジェクト


OrderGroupManager.OrderFormLineItemsColumns

OrderFormLineItemsColumns プロパティは読み取り専用の Variant で、OrderFormLineItems テーブルの列名のコレクションを含んでいます。

定義

Property OrderFormLineItemsColumns As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

OrderGroupManager オブジェクト


OrderGroupManager.OrderGroupColumns

OrderGroupColumns プロパティは読み取り専用の Variant で、OrderGroup テーブルの列名のコレクションを含んでいます。

定義

Property OrderGroupColumns As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

OrderGroupManager オブジェクト


OrderGroupManager.SimpleDelete

このメソッドは、SimpleFindSearchInfo オブジェクトと SimpleFindResultInfo オブジェクトによって指定された検索条件を満たすエントリを、すべて削除するために使います。

定義

Sub SimpleDelete(
sfSearchInfo As Object,
sfResultInfo As Object
)

パラメータ

sfSearchInfo

検索条件を含む SimpleFindSearchInfo オブジェクトです。

sfResultInfo

検索条件を含む SimpleFindResultInfo オブジェクトです。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vResult is a Variant
' oSimpleFindSearchInfo is a Commerce SimpleFindSearchInfo object
' oSimpleFindResultInfo is a Commerce SimpleFindResultInfo object
' oOrderGroupManager is a Commerce OrderGroupManager object
oOrderGroupManager.SimpleDelete(oSimpleFindSearchInfo, _
    oSimpleFindResultInfo)

関連項目

OrderGroupManager オブジェクト


OrderGroupManager.SimpleFind

このメソッドは、指定された SimpleFindSearchInfo オブジェクトと SimpleFindResultInfo オブジェクトの値に基づいて、OrderGroup 項目のADO レコードセットを取得するために使います。これらのオブジェクトの値には、検索条件が含まれています。

定義

Function SimpleFind(
sfSearchInfo As Object,
sfResultInfo As Object,
Optional outTotalRecordsFound As Variant
) As Variant

パラメータ

sfSearchInfo

検索条件を含む SimpleFindSearchInfo オブジェクトです。

sfResultInfo

検索条件を含む SimpleFindResultInfo オブジェクトです。

outTotalRecordsFound

見つかったレコードの総数を含む Variant です。

戻り値

このメソッドが正常に終了すると、検索結果である OrderGroup 項目を含む ADO レコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Dim oSFSearch, sReqID, oOGMgr
' oOGMgr is a Commerce.OrderGroupManager object
Set oSFSearch = Server.CreateObject("Commerce.SimpleFindSearchInfo")
' Search for this OrderGroup ID
sReqID ="754C40C6-EAA9-454C-A8AB-02789FBE0FB9"
oSFSearch.ordergroup_id = sReqID

Dim oSFResult
Set osfResult =Server.CreateObject("Commerce.SimpleFindResultInfo")
oSFResult.JoinLineItemInfo = True
oSFResult.JoinOrderFormInfo = True

Dim oRSResults
Set oRSResults=Server.CreateObject("ADODB.Recordset")

Set oRSResults= oOGMgr.SimpleFind(oSFSearch, oSFResult)

関連項目

ビジネス プロセス オブジェクト

OrderGroupManager オブジェクト


OrderPipeline オブジェクト

このオブジェクトは、Microsoft Commerce Server 2000 コンテンツ選択パイプラインを実行するために使います。注文処理パイプライン (OPP) では通常、PooledPipeline、PooledTxPipeline、MtsPipeline、MtsTxPipeline のいずれかのオブジェクトを使います。

ProgID: | Commerce.OrderPipeline (外部作成可能)
COM クラス名: | COrderPipeline
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | 両方

注

  • OrderPipeline オブジェクトは、コンテンツ選択パイプラインで使います。これは、コンテンツ選択パイプラインがトランザクションを必要としないこと、OrderPipeline が複数のスレッドで完全に再利用されることが理由です。そのほかの MtsPipeline や MtsTxPipeline などのオブジェクトは、COM+ トランザクションのルールに従って、一回の使用ごとに破棄され、新しいスレッドによって再作成されなければなりません。

次の表は、OrderPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
OrderExecute | パイプラインでコンポーネントを実行します。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

OrderPipeline オブジェクトは、注文処理パイプライン (OPP) を作成し、実行します。OrderPipeline オブジェクトは、Microsoft Transaction Server (MTS) には登録されません。

OrderPipeline は通常、Global.asa 内で作成され、アプリケーションの集合に格納されます。


OrderPipeline.LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

Sub LoadPipe(
pszFileName As String
)

パラメータ

pszFileName

パイプライン構成ファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションで使うために (MtsTxPipeline オブジェクトまたは PooledTxPipeline オブジェクトで使うために) 作成されたパイプライン構成ファイルを読み込もうとすると、LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pOrdPipeline is a Commerce.OrderPipeline object

errVal = pOrdPipeline.Load("CustomShip.pcf")

関連項目

OrderPipeline オブジェクト

OrderPipeline.OrderExecute

OrderPipeline.SetLogFile


OrderPipeline.OrderExecute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

Function OrderExecute(
lMode As Long,
pdispOrder As IDispatch,
pdispContext As IDispatch,
lFlags As Long
) As Long

パラメータ

lMode

パイプラインを実行するモードを示す long です。このパラメータは、Site Server 2.0 サイトとの下位互換性を維持する目的でのみ用意されています。

pdispOrder

Dictionary オブジェクトへの参照です。通常は OrderForm オブジェクトです。パイプラインが使う Order ディクショナリです。

pdispContext

Dictionary オブジェクトへの参照です。パイプラインが使う Context ディクショナリです。

lFlags

使われていない long パラメータです。ゼロ (0) に設定する必要があります。

戻り値

このメソッドが正常に終了すると、パイプラインのコンポーネントによって警告またはエラーが検出されたかどうかを示す long が返されます。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

また、メソッドは次の 3 つの値のうちいずれかを返します。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

lMode パラメータは、Site Server 2.0 で作成されるサイトとの下位互換性を維持する目的でのみ用意されています。Site Server 3.0 Commerce Edition およびそれ以降では、LoadPipe メソッドを使って適切なパイプライン構成ファイルを読み込むことによって、パイプライン ステージを選択します。Commerce Server 2000 のアプリケーションでは、このパラメータには値 1 を指定する必要があります。ゼロ (0) を指定すると、ステージが実行されません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pOrdPipeline is a Commerce.OrderPipeline object
' lMode is a Long
' dOrder and dContext are Commerce.Dictionary objects

errVal = pOrdPipeline.Execute(l, dOrder, dContext, 0)

関連項目

OrderPipeline オブジェクト

OrderPipeline.LoadPipe

OrderPipeline.SetLogFile


OrderPipeline.SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。ログ機能は、運用環境では絶対に使わないでください。ログ機能は、パフォーマンスの低下を招いたり、クレジット カードの番号に対するセキュリティの問題を発生させる可能性があります。

定義

Sub SetLogFile(
pszFileName As String
)

パラメータ

pszFileName

イベントのログを記録するファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pOrdPipeline is a Commerce.OrderPipeline object

errVal = pOrdPipeline.SetLogFile("CustomShipping.log")

関連項目

OrderPipeline オブジェクト

OrderPipeline.LoadPipe

OrderPipeline.OrderExecute


Page オブジェクト

このオブジェクトは、Active Server Pages (ASP) のフォームでの処理を簡素化するために使います。

ProgID: | Commerce.Page (外部作成可能)
COM クラス名: | MSCSPage_3_0
タイプ ライブラリ名: | Commerce -- MSCSAspHelp Type Library
DLL 名: | MSCSAspHelp.dll
スレッド モデル: | 両方

重要

  • このオブジェクトは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。詳細については、このオブジェクトのメソッドの大部分に類似した機能を持つ AuthManager オブジェクトと AppFrameWork オブジェクトに関する説明を参照してください。

Page オブジェクトのメソッドは、次のカテゴリに分けられます。

  • 書式設定に関するメソッド : Encode、Option、Check などです。これらのメソッドを使うと、HTML ページの項目の書式を簡単に設定できるほか、可能な場合にはページ内のほかの変数を実行時に評価して、HTML 項目の値を決定することができます。

  • 検証に関するメソッド : Request の処理以降に開始されます。これらのメソッドは、URL クエリ文字列から値を取得し、その値のデータ型をロケール値に基づいて変換し、それらの値が指定された範囲内にあるかどうかを検証するために使います。

次の表は、Page オブジェクトの 1 つのプロパティを示しています。

プロパティ | 種類 | 説明
Context | IDispatch | Microsoft インターネット インフォメーション サービス (IIS) のスクリプト コンテキストを含む値です。 このプロパティは読み取り専用です。

次の表は、Page オブジェクトのメソッドを示しています。

メソッド | 説明
Check | 入力値に基づいて HTML ページで使うために CHECKED という語を生成します。
Encode | HTML のテキストをエンコードします。
GetShopperId | 現在の買物客に対して、一意の買物客 ID を返します。
HTMLEncode | HTML のテキストをエンコードします。
Option | ページにオプション ボタンを生成します。
ProcessVerifyWith | VerifyWith メソッドを使って作成された非表示のフィールドのコンテンツを、OrderForm オブジェクトの _verify_with Dictionary オブジェクトにコピーします。
PutShopperId | URL またはセキュリティ保護された URL で (または cookie として) 使うために、特定の買物客 ID を書き込みます。
RequestDate | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付値 (Date Variant) に変換します。
RequestDateTime | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付/時刻値 (Date Variant) に変換します。
RequestDefault | URL クエリ文字列またはフォーム送信変数から値を取得し、その値を文字列として返します。
RequestFloat | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを浮動小数点値に変換します。次に、指定したロケールに基づいて、その値が指定範囲に収まっているかどうかを確認して値を検証します。
RequestMoneyAsNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、それを、指定したロケールまたは既定のロケールの基本通貨単位で表現された数値に変換します。
RequestNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを数値に変換します。
RequestString | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールに基づいて、その値に対して文字列処理を実行します。
RequestTime | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、文字列を Date Variant に変換します。
SiteRoot | Commerce Server サイトの物理ディレクトリを返します。
SURL | ファイルへのローカル パスに基づいて、セキュリティ保護された URL を生成します。この URL には、可能な場合、買物客 ID が含まれます。
SURLPrefix | 完全な URL のプレフィックスとして使用される、セキュリティ保護されたルート ドメインを返します。
URL | ファイルへのローカル パスに基づいて、完全な URL を生成します。この URL には、可能な場合、引数と買物客 ID が含まれます。
URLArgs | URL に渡すために使う一連のクエリ文字列引数を生成します。
URLEncode | 指定した文字列に URL エンコード ルールを適用します。
URLPrefix | 完全な URL のプレフィックスとして使用される、セキュリティ保護されていないルート ドメインを返します。
URLShopperArgs | URL に渡すために使う一連のクエリ文字列引数を生成します。StandardSManager が URL モードに初期化された場合は、引数には買物客 ID も含まれます。
VerifyWith | 検証値を含むページの非表示フィールドに、出力を送信します。
VirtualDirectory | サイトの名前を返します。

関連項目

下位互換性オブジェクト

AppFrameWork オブジェクト

AuthManager オブジェクト


Page.Check

このメソッドは、vtCheck パラメータがゼロ以外の値に指定されている場合に、ページに CHECKED という語を生成するために使います。CHECKED は HTML の <INPUT> タグに対するパラメータで、フォームで最初に読み込まれたときに、チェック ボックスがオンの状態に、オプション ボタンがクリックされた状態になっているように設定するものです。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

Function Check(
vtCheck As Variant
) As String

パラメータ

vtCheck

ページ上の Check の呼び出しが表示される場所に、単語 CHECKED を挿入する必要があるかどうかを確認する場合に、評価する式を含む Variant です。

戻り値

このメソッドが正常に終了すると、文字列 "CHECKED" または "" を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' The following example could be used in an ASP file
' to generate three radio buttons in an HTML form:
' oPage is a Commerce.Page object
<% my_color="Green" %>
<INPUT TYPE="RADIO" NAME="CONTROL1" VALUE="0"<% = _
    oPage.Check(my_color="Red")%>>Red
<INPUT TYPE="RADIO" NAME="CONTROL1" VALUE="1"<% = _
    oPage.Check(my_color="Green")%>>Green
<INPUT TYPE="RADIO" NAME="CONTROL1" VALUE="2"<% = _
    oPage.Check(my_color="Blue")%>>Blue
' Assuming that my_color contains "Green" this produces
' the following HTML output:
<INPUT TYPE="RADIO" NAME="CONTROL1" VALUE="0">Red
<INPUT TYPE="RADIO" NAME="CONTROL1" VALUE="1"CHECKED>Green
<INPUT TYPE="RADIO" NAME="CONTROL1" VALUE="2">Blue
' This HTML output produces three radio buttons labeled Red,
' Green, and Blue, with the Green option selected.

関連項目

Page オブジェクト

Page.Option


Page.Context

Context プロパティは読み取り専用のプロパティで、ASP スクリプト コンテキストを含んでいます。

通常は、Context プロパティのコンテンツを取得する必要はありません。Context プロパティは、ASP スクリプト コンテキストへのアクセスが必要な Commerce Server のほかのメソッドへのパラメータとしてのみ使われます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

Property Context As Object

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

Page オブジェクト


Page.Encode

このメソッドは、指定されたテキスト文字列に HTML エンコードを適用するために使います。

このメソッドは HTMLEncode メソッドと同等です。この機能に関しては、HTMLEncode の名前の方が一般的です。Encode メソッドは、指定されたテキスト文字列に HTML エンコードを適用します。文字列中の "<" や "&" など、HTML で特別な意味を持つ文字は、HTML において等価である &lt; や &amp; に変換されます。この結果、これらの文字はクライアントのブラウザで正しく表示されるようになります。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

Function Encode(
vtValue As Variant
) As String

パラメータ

vtValue

エンコード対象のテキスト文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、エンコードされた HTML テキストを含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' sEncoded is a String
' vOriginal is a String Variant
sEncoded = oPage.Encode(vOriginal)

関連項目

Page オブジェクト

Page.HTMLEncode


Page.GetShopperId

このメソッドは、現在のユーザーに対して一意の買物客 ID を返します。買物客 ID が URL クエリ文字列または cookie のどちらから返されるかは、サイトの StandardSManager の初期化モードによって異なります。

現在の顧客が買物客 ID を持っていない場合、GetShopperID は Null を返します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は GetShopperID メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function GetShopperId() As Variant

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、買物客 ID を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

Page.PutShopperId


Page.HTMLEncode

このメソッドは、指定されたテキスト文字列に HTML エンコードを適用するために使います。これは通常、データベースに含まれるテキスト フィールドのコンテンツを HTML で表示するために使います。文字列中の "<" や "&" など、HTML で特別な意味を持つ文字は、HTML において等価である &lt; や &amp; に変換されます。この結果、これらの文字はクライアントのブラウザで正しく表示されるようになります。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

Function HTMLEncode(
vtValue As Variant
) As String

パラメータ

vtValue

エンコード対象のテキスト文字列を含む文字列 Variant です。

戻り値

このメソッドが正常に終了すると、エンコードされた HTML テキストを含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

表示するテキスト フィールドに既に HTML エンコードが含まれている場合は、HTMLEncode メソッドを使わないでください。たとえば、product_description フィールドに "The <I>Classic Diner Clock</I> brings the age of the &quot;Golden Oldies&quot; to your kitchen." という HTML でエンコードされたテキストがあるとします。この文字列では、クライアントのブラウザでテキストを斜体に表示させるために <I> タグを、引用符を表示させるために &quot; シーケンスを使っています。文字列が既に HTML でエンコードされているので、エンコードし直す必要はありません。文字列を重複してエンコードすると、正しい表示結果が得られません。

Page.HTMLEncode メソッドは Page.Encode メソッドと同等ですが、HTMLEncode メソッドの名前の方が一般的です。このメソッドは、Server.HTMLEncode と類似しています。異なるのは、Page.HTMLEncode メソッドは空の文字列を返して Null 値を処理するのに対し、Server.HTMLEncode メソッドは vtValue パラメータが Null の場合に失敗するという点です。データベース クエリは Null を返すことができるため、この違いは重要です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
Assume that the company_name field contains the name Freeman & Sons
' The following HTML example displays the contents of the company_name
' field as an <H1> tag:
<H1><% = oPage.HTMLEncode(companyinfo.company_name) %></H1>
' This example returns the following HTML string:

<H1>Freeman &amp; Sons</H1>

関連項目

Page オブジェクト

Page.URLEncode


Page.Option

このメソッドは、HTML フォームの選択肢リストに表示される OPTION (選択肢) 項目を生成し、それに対して指定された値と選択状態を割り当てるために使います。この機能は Option メソッドを使わなくても作成することができますが、このメソッドを使うと、サイトの開発を早く行うことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function Option(
vtVal1 As Variant,
vtVal2 As Variant
) As String

パラメータ

vtVal1

選択肢リストに表示される選択肢の値を含む Variant です。

vtVal2

選択肢が選択された状態であるかどうかを示す値を含む Variant です。vtVal2 が vtVal1 と同値の場合、選択肢リストの定義に HTML キーワードの SELECTED が挿入されます。

戻り値

このメソッドが正常に終了すると、OPTION 項目を含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' The following example generates a selection field in an
' HTML form to enable the customer to select the expiration
' year of the credit card. The Option method generates
 <OPTION VALUE="> tags and marks the current year
as selected:
iyear = Year(date) %>

<SELECT NAME="_cc_expyear">
    <% = oPage.Option(2000, iyear) %> 2000
    <% = oPage.Option(2001, iyear) %> 2001
    <% = oPage.Option(2002, iyear) %> 2002
    <% = oPage.Option(2003, iyear) %> 2003
</SELECT>
' Following is the HTML output that is produced by the ASP script
'  shown previously, assuming that the current year is 2001:
<SELECT NAME="_cc_expyear">
    <OPTION VALUE="2000"> 2000
    <OPTION VALUE="2001" SELECTED> 2001
    <OPTION VALUE="2002"> 2002
    <OPTION VALUE="2003"> 2003
</SELECT>

関連項目

Page オブジェクト

Page.Check


Page.ProcessVerifyWith

このメソッドは、買物客が注文を HTML フォームで送信するとアクティブになる ASP ファイルで使います。ProcessVerifyWith メソッドは、VerifyWith メソッドで作成された HTML 形式の非表示フィールドの送信コンテンツを読み取り、これらの値を Dictionary オブジェクトに書き込みます。この Dictionary オブジェクトは _verify_with と呼ばれ、OrderForm オブジェクトに格納されています。

パイプラインが OrderForm を処理すると、_verify_with Dictionary オブジェクトのコンテンツが OrderForm オブジェクトのフィールドの元の値と比較され、ページが表示されてから最終的な購入までの間に変更されていないことが確認されます。

フィールドが一致しない場合、RequiredTotal パイプライン コンポーネントは、MessageManager メッセージ名定数の pur_badverify を使ってエラーを返します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Sub ProcessVerifyWith(
pdispOrder As Object
)

パラメータ

pdispOrder

現在の買物客のバスケットを含む、OrderForm オブジェクトを提供するオブジェクト参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' oOrderForm is a Commerce.Page object

call oPage.ProcessVerifyWith(oOrderForm)

関連項目

Page オブジェクト

Page.VerifyWith

MessageManager オブジェクト

OrderForm オブジェクト


Page.PutShopperId

このメソッドは、指定された買物客 ID を cookie に書き込み、それを URL またはセキュリティ保護された URL に格納します。また、そのどちらかの処理だけを行うこともあります。どちらの URL に格納されるかは、サイトの StandardSManager の初期化モードによって異なります。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は PutShopperID メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Sub PutShopperId(
bstrShopperID As String
)

パラメータ

bstrShopperID

買物客 ID を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

PutShopperID メソッドが指定された買物客 ID を格納する場所は、StandardSManager の初期化モードによって異なります。URL モードの場合、このメソッドは買物客 ID を要求に書き込みます。すると URL メソッドと SURL メソッドは、このページの URL のクエリ文字列に買物客 ID を追加します。

買物客 ID が URL クエリ文字列に格納されている場合は、アプリケーション レベルの MSCSSIDURLKey に設定した値を IIS の Request オブジェクトに渡すことにより、この ID を取得できます。

StandardSManager を URL モードで初期化した場合は、買物客 ID をクライアント システムに格納するために StandardSManager のPutShopperID 実装を使うことができません。その代わりに、Page オブジェクトの実装を使う必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' sShopperID is a String containing the shopper ID GUID
oPage.PutShopperID(sShopperID)

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

Page.GetShopperId

Page.SURL

Page.URL


Page.RequestDate

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付値 (Date Variant) に変換するために使います。

必要に応じて、RequestDate もまた、日付の値が指定範囲に収まっているかどうかを確認します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function RequestDate(
bstrName As String,
vtDefault As Variant,
vtMin As Variant,
vtMax As Variant,
vtLocal As Variant
) As Variant

パラメータ

bstrName

取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列またはフォーム送信変数が存在しない場合、またはこれらに値が含まれていない場合に返される日付が含まれている Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Date/Time 値や Time 値を格納することはできません。このパラメータは省略可能です。

vtMin

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための日付値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換された日付値が vtMin に満たない場合、メソッドは Null を返します。このパラメータは省略可能です。

vtMax

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための日付値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換された値が vtMax 以上の場合、メソッドは Null を返します。このパラメータは省略可能です。

vtLocale

日付を変換するときに使われる、ロケールを指定するための数値を含む Variant です。この値が指定されていない場合、RequestDate メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、処理済みの日付値を含んだ Date Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' This example assumes that the date value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="Date">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
If the user enters the date into the form and clicks the Send Info button, the value of this form field can be retrieved by the RequestDate method as follows:
vDate = Page.RequestDate("Date", "2/27/01", "1/1/01", "12/31/01", 1033)

関連項目

Page オブジェクト

DataFunctions.Locale

Page.RequestDateTime

DataFunctions.ConvertDateString

DataFunctions.Date


Page.RequestDateTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付/時刻値 (Date Variant) に変換するために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function RequestDateTime(
bstrName As String,
vtDefault As Variant,
vtMin As Variant,
vtMax As Variant,
vtLocal As Variant
) As Variant

パラメータ

bstrName

取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列またはフォーム送信変数が存在しない場合、またはこれらに値が含まれていない場合に返される値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Time 値を格納することはできません。このパラメータは省略可能です。

vtMin

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための Date/Time 値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換された日付値が vtMin に満たない場合、メソッドは Null を返します。このパラメータは省略可能です。

vtMax

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための Date/Time 値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換された値が vtMax 以上の場合、メソッドは Null を返します。このパラメータは省略可能です。

vtLocale

日付/時刻文字列の変換に使われるロケールを示す数値を含む Variant です。このパラメータが指定されていない場合、RequestDateTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、Date/Time 値を含んだ Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' This example assumes that the date-time value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="DateTime">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the date into the form and clicks the
' Send Info button, the value of this form field can be
' retrieved by the RequestDateTime method as follows:
vDate = oPage.RequestDateTime("DateTime", "1/1/01 12:00:01 AM", "1/1/01 _
    12:00:01 AM", "12/31/01 11:59:59 PM", 1033)

関連項目

Page オブジェクト

DataFunctions.Locale

Page.RequestDate

DataFunctions.ConvertDateTimeString

Page.RequestTime


Page.RequestDefault

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、その値を文字列として返すために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

Function RequestDefault(
bstrName As String,
vtDefault As Variant
) As Variant

パラメータ

bstrName

取得する URL クエリ文字列変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列またはフォーム送信変数が空あるいは Null 値である場合、または要求した文字列に存在しない場合に返される値が含まれている Variant です。このパラメータが指定されていない場合は、Null が返されます。

戻り値

このメソッドが正常に終了すると、処理済みの値を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、フォームにあるフィールドが空白であるか、フォームにフィールドが含まれていない場合を想定して作成されているもので、既定値として Null を返します。値が存在しない場合、一般的に、データベースには Null を格納します。値が欠落していて、結果として空の文字列が必要な場合は、Default パラメータに空の文字列を指定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' The following example attempts to retrieve the value for
' the URL query string variable shopper_phone. Because no
' Default argument is supplied, if this URL query string
' variable has no value, the call returns Null.
' vShopper_phone is a Variant
' oPage is a Commerce.Page object
vShopper_phone = oPage.RequestDefault("shopper_phone")

関連項目

Page オブジェクト


Page.RequestFloat

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを浮動小数点数値に変換するために使います。

RequestFloat メソッドでも、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function RequestFloat(
bstrName As String,
vtDefault As Variant,
vtMin As Variant,
vtMax As Variant,
vtLocal As Variant
) As Variant

パラメータ

bstrName

取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列やフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。このパラメータは省略可能です。

vtMin

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換された値が vtMin に満たない場合、メソッドは Null を返します。このパラメータは省略可能です。

vtMax

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換された値が vtMax 以上の場合、メソッドは Null を返します。このパラメータは省略可能です。

vtLocale

値を変換するときに使われる、ロケールを示す数値を含む Variant です。この値が指定されていない場合、RequestFloat メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、浮動小数点値を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' vFloat is a Variant
' This example assumes that the float value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="Float">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the number into the form and clicks the
' Send Info button, the value of this form field can be
' retrieved by the RequestFloat method as follows:
vFloat = oPage.RequestFloat("Float", 0, 0, 100, 1033)

関連項目

Page オブジェクト

DataFunctions.Locale

Page.RequestNumber

DataFunctions.ConvertFloatString

DataFunctions.Float

DataFunctions.ValidateFloat

Page.RequestNumber


Page.RequestMoneyAsNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、それを、指定したロケールまたは既定のロケールの基本通貨単位で表現された数値に変換するために使います。

このメソッドは、Site Server 3.0 Commerce Edition のサイトとの下位互換性を維持するために使うもので、Site Server 3.0 Commerce Edition の通貨書式に依存します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function RequestMoneyAsNumber(
bstrName As String,
vtDefault As Variant,
vtMin As Variant,
vtMax As Variant,
vtLocal As Variant
) As Variant

パラメータ

bstrName

取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列やフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。この値も指定されていない場合は、Null が返されます。既定値が文字列値である場合、値は基本通貨単位の値に変換されます。そのほかのデータ型である場合、値は基本通貨単位で表現されていると仮定されます。このパラメータは省略可能です。

vtMin

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための金額値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。vtMin パラメータでは、値が基本通貨単位で表現されている必要があります。変換された値が vtMin に満たない場合、メソッドは Null を返します。このパラメータは省略可能です。

vtMax

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための値を含む Variant です。vtMax パラメータでは、値が基本通貨単位で表現されている必要があります。変換された値が vtMax 以上の場合、メソッドは Null を返します。このパラメータは省略可能です。

vtLocale

bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestMoneyAsNumber は DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、指定したロケールまたは既定のロケールの基本通貨単位で表現された数値を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、Site Server 3.0 Commerce Edition のサイトとの下位互換性を維持するために使うもので、Site Server 3.0 Commerce Edition の通貨書式に依存します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' In the following example, the value of a field on the purchase
' form (filled out by the customer) is read into the
' variable list_price. The vtMax argument is the upper limit
' of a Variant variable. Using this value as the upper limit and
' zero (0) as the lower limit of the range check ensures that
' the value is not negative:
list_price = oPage .RequestMoneyAsNumber("list_price", 0, 0, _
    100, 1033)

関連項目

Page オブジェクト

DataFunctions.Locale

DataFunctions.ConvertMoneyStringToNumber

DataFunctions.Money

Page.RequestFloat

Page.RequestNumber


Page.RequestNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを数値に変換するために使います。

RequestNumber メソッドでも、指定したロケールに基づいて、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function RequestNumber(
bstrName As String,
vtDefault As Variant,
vtMin As Variant,
vtMax As Variant,
vtLocal As Variant
) As Variant

パラメータ

bstrName

取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

要求した URL クエリ文字列やフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。このパラメータは省略可能です。

vtMin

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための数値を含む Variant です。変換後の値が vtMin より小さい場合は、Null が返されます。このパラメータは省略可能です。

vtMax

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。変換後の値が vtMax より大きい場合は、Null が返されます。変換された値が vtMax 以上の場合、メソッドは Null を返します。このパラメータは省略可能です。

vtLocale

bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestNumber メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、変換後の数値を含んだ Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' In the following example, the value of a field on the purchase
' form (filled out by the customer) is read into the
' variable cc_expmonth. Because the Default parameter is specified
' as 7, RequestNumber will return 7 if the field is empty
' or missing.
cc_expmonth = oPage.RequestNumber("_cc_expmonth", 7, 1, 12)

関連項目

Page オブジェクト

DataFunctions.Locale

Page.RequestFloat

DataFunctions.ConvertNumberString

DataFunctions.Number

DataFunctions.ValidateNumber


Page.RequestString

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールに基づいて、その値に対して文字列処理を実行するために使います。

この処理によって、先頭と末尾の空白、および改行文字が除去され、文字列が指定範囲に収まっているかどうかが確認され、指定したロケールまたは既定のロケールに基づいて文字列が検証されます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function RequestString(
bstrName As String,
vtDefault As Variant,
vtMin As Variant,
vtMax As Variant,
vtStripWhite As Variant,
vtStripReturn As Variant,
vtCase As Variant,
vtLocal As Variant
) As Variant

パラメータ

bstrName

取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

指定した URL クエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。このパラメータは省略可能です。

vtMin

bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最短の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMin パラメータの値が考慮されません。このパラメータは省略可能です。この値が無効である場合、または bstrName/vtDefault パラメータの長さが指定範囲に収まっていない場合に、メソッドは Null を返します。

vtMax

bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最長の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMax パラメータの値が考慮されません。この値が無効である場合、または bstrName/vtDefault パラメータの長さが指定範囲に収まっていない場合に、メソッドは Null を返します。このパラメータは省略可能です。

vtStripWhite

文字列から先頭と末尾の空白を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。このパラメータは省略可能です。

vtStripReturn

文字列から改行文字を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。このパラメータは省略可能です。

vtCase

文字列を大文字/小文字のどちらに変換するかを示す数値を含む Variant です。既定値は 0 です。この場合、文字列の大文字/小文字変換は実行されません。vtCase パラメータが 1 の場合、文字列は大文字に変換されます。vtCase パラメータが 2 の場合、文字列は小文字に変換されます。このパラメータは省略可能です。

vtLocal

ロケールを指定する数値を含む Variant です。変換はこのロケールに基づいて行われます。この値が指定されていない場合、RequestString メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、処理済みの文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' vString is a Variant
' This example assumes that the string value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="String">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
' If the user enters the string into the form and clicks the
' Send Info button, the value of this form field can be
' retrieved by the RequestString method as follows:
vString = oPage.RequestString("String", "Default String", _
    1, 100, True, True, 0, 1033)
' In this example, the string is checked if it contains
' between 1 and 100 characters; all leading and trailing white
' spaces are removed, all carriage returns are removed, , no
' modification is made to character case, and the string is
' converted according to the locale 1033 (USA). If no string is
' input, the string "Default String" will be loaded into the
' variable vString.

関連項目

Page オブジェクト

DataFunctions.Locale


Page.RequestTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date Variant に変換するために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function RequestTime(
bstrName As String,
vtDefault As Variant,
vtMin As Variant,
vtMax As Variant,
vtLocal As Variant
) As Variant

パラメータ

bstrName

取得対象となる URL クエリ文字列またはフォーム送信変数の名前を含む文字列です。

vtDefault

指定した URL クエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Date/Time 値や Date 値を格納することはできません。このパラメータは省略可能です。

vtMin

bstrName パラメータが特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための時刻値を含む Variant です。変換された値が vtMin に満たない場合、メソッドは Null を返します。既定では下限が設定されておらず、検証は実行されません。このパラメータは省略可能です。

vtMax

bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための時刻値を含む Variant です。既定では上限値が設定されておらず、検証は実行されません。変換された値が vtMax 以上の場合、メソッドは Null を返します。このパラメータは省略可能です。

vtLocale

Date/Time 値を変換するときに使われる、ロケールを指定する数値を含む Variant です。この値が指定されていない場合、RequestTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、日付を含んだ Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' This example assumes that the -time value is entered using
' the following form:
<FORM METHOD ="POST" ACTION="PROCESS.ASP">
<INPUT TYPE="Text" NAME="Time">
<INPUT TYPE="SUBMIT" NAME="ACTION" VALUE="Send Info">
</FORM>
If the user enters the date into the form and clicks the Send Info button, the value of this form field can be retrieved by the RequestTime method as follows:
vTime = oPage.RequestTime("Time", "12:00:01 AM", "12:00:01 AM", _
 "11:59:59 PM", 1033)

関連項目

Page オブジェクト

DataFunctions.Locale

DataFunctions.ConvertTimeString

Page.RequestDate


Page.SiteRoot

このメソッドは、Commerce Server のサイトの物理ディレクトリを返すために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

Function SiteRoot() As String

パラメータ

なし。

戻り値

このメソッドが正常に完了すると、物理ディレクトリ パスを含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

Page オブジェクト

Page.VirtualDirectory


Page.SURL

このメソッドは、提供されたファイル名、および名前/値の引数のオプションのリストに基づいて、正しく書式設定されセキュリティ保護された HTTP URL (SURL) を生成するために使います。書式設定された URL には、サーバー名、(Web サイトが実行しているコンテキストから取得した) ファイルの格納先である仮想ディレクトリ、およびファイルの名前が含まれます。

さらに、アプリケーションの StandardSManager が URL モードで初期化されている場合、SURL メソッドは MSCSSIDUrlKey Application オブジェクト変数に格納されている値を、名前/値の組み合わせにおける名前として使います。この値が、現在の顧客の買物客 ID です。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は SURL メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function SURL(
bstrPath As String
) As String

パラメータ

bstrPath

SURL が参照するファイルの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、正しい形式で保護された HTTP URL が含まれた文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

アプリケーションの開発中は、Site.DisableHTTPS プロパティを 1 に指定できます。これにより、SURL メソッドでホスト名として InsecureHostName 値を使うようになります。SURL メソッドがセキュリティ保護された URL を生成するのは、Site.DisableHTTPS がゼロ (0) に指定されている場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

The following example is from the MySite Purchase.asp file.

<FORM METHOD="POST"
    ACTION =<% = Page.SURL("xt_orderform_purchase.asp" %)
If the hostname is www.microsoft.com, the preceding example
' produces the following URL:
https://www.microsoft.com/MySite/xt_orderform_purchase.asp

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

Page.URL


Page.SURLPrefix

このメソッドは、MSCSSecureHostName 値で決定されているとおりにセキュリティ保護されたルート ドメインを返すために使います。返された文字列は、完全な URL のプレフィックスとして使うことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は SURLPrefix メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function SURLPrefix() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、ルート ドメインの保護された文字列を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

アプリケーションの開発中は、サイト ディクショナリの DisableHTTPS プロパティを 1 に指定できます。これにより、SURLPrefix メソッドでホスト名として InsecureHostName 値を使うようになります。SURLPrefix メソッドがセキュリティ保護された URL を生成するのは、Site.DisableHTTPS がゼロ (0) に指定されている場合だけです。

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

Page.URLPrefix

Page.SURL

Page.URLShopperArgs

Page.URLArgs

Page.VirtualDirectory


Page.URL

このメソッドは、指定したファイル名および名前/値の引数のオプション リストに基づいて、URL を生成するために使います。この URL には、サーバー名、ファイルの格納先である仮想ディレクトリ、およびそのファイルの名前が含まれます。

さらに、アプリケーションの StandardSManager が URL モードで初期化されている場合、URL メソッドは、Application オブジェクトの MSCSSIDUrlKey 変数を、名前/値の組み合わせにおける名前として使います。この値が、現在の顧客の買物客 ID です。

メソッドは、渡される値に URL エンコードを適用します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URL メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function URL(
bstrPath As String
) As String

パラメータ

bstrPath

URL で参照するファイルの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、エンコードされた値を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' The URL method spares the site builder the need to map a file
' to the HTTP path to that file. For example, assume the
following call to URL:
<%= oPage.URL("filename.asp") %>
' This call resolves to the correct HTTP path to
' filename.asp as follows:
http://host_name/virtual_directory/filename.asp
' The value for host_name is determined by the contents of the
' site dictionary's InsecureHostName value. The virtual_directory
' is determined automatically from the scripting context.

関連項目

Page オブジェクト

AuthManager オブジェクト

Page.SURL


Page.URLArgs

このメソッドは、一連のクエリ文字列引数を、URL に渡すために適切なフォームで生成する場合に使います。メソッドは、渡される値に URL エンコードを適用します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLArgs メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function URLArgs() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、一連のクエリ文字列引数を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

Page オブジェクト

AuthManager オブジェクト

Page.VirtualDirectory

Page.SURL

Page.SURLPrefix

Page.URL

Page.URLShopperArgs


Page.URLEncode

このメソッドは、エスケープ文字などの URL エンコード ルールを、指定した文字列に適用するために使います。エンコードされた URL 文字列は、クエリ文字列引数として URL に渡すことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLEncode メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function URLEncode(
vtValue As Variant
) As String

パラメータ

vtValue

エンコードする文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、URL にエンコードされた文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

スペース、スラッシュ (/)、パーセント記号 (%) などの特定の文字を含む文字列は、URL クエリ引数として渡すことができません。URL エンコードでは、これらの文字をエスケープ テキストとしてエンコードするので、URL に渡すことができるようになります。

Page.URLEncode メソッドは Server.URLEncode メソッドとほぼ同等です。異なるのは、Page.URLEncode メソッドは空の文字列を返して Null 値を処理するという点です (Server.URLEncode メソッドは、String パラメータが Null の場合に失敗します)。データベース クエリは Null を返すことができるため、この違いは重要です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Suppose that a variable called referringURL contains the URL _
' http://www.microsoft.com, which is to be passed as a query
' string argument in another URL.
' The following script:
<A HREF="Sample.asp?referringURL=<% =
    oPage.URLEncode(referringURL) %>">My link</A>
' generates the following HTML:
<A HREF="Sample.asp?referringURL= _
http%3A%2F%2Fwww%2Emicrosoft%2Ecom">My link</A>
' The receiving page (Sample.asp) can use the Request method to
' get the value of the variable. The method converts the string
' back to its original form and returns it to the script on the page.

関連項目

Page オブジェクト

AuthManager オブジェクト

Page.HTMLEncode


Page.URLPrefix

このメソッドは、InsecureHostName 値で決定されるルート ドメインを返すために使います。返された文字列は、完全な URL のプレフィックスとして使うことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLPrefix メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function URLPrefix() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、ルート ドメイン文字列を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

セキュリティ保護されたホストのドメインを生成するには、Page.SURLPrefix メソッドを使います。

関連項目

Page オブジェクト

AuthManager オブジェクト

Page.SURLPrefix

Page.VirtualDirectory

Page.SURL

Page.SURLPrefix

Page.URL

Page.URLShopperArgs

Page.URLArgs


Page.URLShopperArgs

このメソッドは、URL に渡すために一連のクエリ文字列引数を適切なフォームで生成し、StandardSManager が URL モードに初期化されている場合には、その引数に買物客 ID を含めるために使います。URLShopperArgs メソッドは、渡される値を URL エンコード処理します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLShopperArgs メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function URLShopperArgs() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、一連のクエリ文字列引数を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

URLShopperArgs メソッドは、現在の顧客の買物客 ID を、URL 引数リストに追加します。URL に渡される引数名は、Application オブジェクトの MSCSSIDUrlKey 変数に格納されます。

関連項目

Page オブジェクト

AuthManager オブジェクト


Page.VerifyWith

このメソッドは、HTML フォーム内に <INPUT TYPE="HIDDEN"> という形式の HTML タグを出力するために使います。これらの非表示フィールドには、OrderForm オブジェクトの指定された値が含まれ、OrderForm オブジェクトが表示されてから最終的な購入までの間に注文が変更されていないことを確認するために使われます。注文フォームが送信されると、対象ページの ProcessVerifyWith メソッドが、Dictionary オブジェクトのこれらのフィールドを OrderForm に格納し、OrderForm オブジェクトは次に注文処理パイプライン (OPP) に渡されます。パイプラインのオブジェクトのうちの 1 つが、元の値と、非表示フィールドの値とを比較します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function VerifyWith(
pdispOrder As Object

  pbstrArguments As String
) As String

パラメータ

pdispOrder

検証対象フィールドを含んでいる OrderForm オブジェクトへのオブジェクト参照です。

pbstrArguments

提供された OrderForm オブジェクトの確認の対象となるフィールド名のカンマ区切りリストが含まれた文字列です。このパラメータは省略可能です。

戻り値

このメソッドが正常に終了すると、HTML タグを含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oPage is a Commerce.Page object
' The following example generates hidden fields containing
' the values stored in the _total_total,and _tax_total fields
'  of the supplied OrderForm object:
<FORM METHOD="POST"
    ACTION="<% = oPage.SURL("xt_orderform_purchase.asp") %>">
    <% = mscsPage.VerifyWith(mscsOrderForm, "_total_total",
 "_tax_total") %>
' When the page containing this call is loaded in the client
' browser, the  document source for the page would contain the
'  following HTML script '(assuming a total of 138.95 and a tax
'  of 8.75):
<FORM METHOD="POST"
ACTION="http://example.microsoft.com/xt_orderform_purchase.asp">
<INPUT TYPE=HIDDEN NAME="_VERIFY_WITH" VALUE="_total_total=13895">
<INPUT TYPE=HIDDEN NAME="_VERIFY_WITH" VALUE="_tax_total=875">

関連項目

Page オブジェクト

Page.ProcessVerifyWith

OrderForm オブジェクト


Page.VirtualDirectory

このメソッドは、サイトの仮想ディレクトリ名を返すために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

Function VirtualDirectory() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、サイトの仮想ディレクトリ名を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

Page オブジェクト

Page.SiteRoot

Page.SURL

Page.URL

Page.SURLPrefix

Page.URLArgs

Page.URLPrefix

Page.URLShopperArgs

StandardSManager オブジェクト


PooledPipeline オブジェクト

このオブジェクトは、Microsoft Commerce Server 2000 のパイプライン構成ファイルを実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。

PooledPipeline オブジェクトが COM+ オブジェクト プーリングを利用することにより、オブジェクト プーリングをサポートするパイプライン コンポーネントを含むパイプラインの読み込み速度は大幅に強化されています。プールされたパイプラインの詳細については、「プールされたパイプラインについて」を参照してください。

ProgID: | Commerce.PooledPipeline (外部作成可能)
COM クラス名: | CPooledPipeline
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | 両方

次の表は、PooledPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | パイプラインでコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

PooledPipeline は、アプリケーションやセッションのスコープ内で保持するのではなく、それを使用する各 Active Server Pages (ASP) ページに作成する必要があります。

通常、PooledPipeline オブジェクトは運用 Web サイトだけで使います。サイトの開発時には MtsPipeline オブジェクトを使います。開発段階で PooledPipeline オブジェクトを使う場合は、インターネット インフォメーション サービス (IIS) をいったん停止して再開する必要があります。

カスタムのプール可能なパイプライン コンポーネントを作成するには、Component Object Model (COM) カテゴリである CATID_POOLABLE をコンポーネントに追加することで、プールされるように設定します。

PooledPipeline オブジェクトは、COM+ に "サポートされていないトランザクション" として登録されます。このパイプラインは、トランザクションが必要ない場所で使います。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。


PooledPipeline.Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

Function Execute(
lMode As Long,
pdispOrder As Object,
pdispContext As Object,
lFlags As Long
) As Long

パラメータ

lMode

パイプラインを実行するモードを示す long です。このパラメータは、Commerce Server の以前のバージョン (Site Server 2.0 Commerce Edition) との下位互換性を維持する目的でのみ用意されています。Commerce Server 2000 のサイトでは、このパラメータを 1 に指定します。

pdispOrder

ビジネス オブジェクト (一般的にはディクショナリ オブジェクトまたは注文フォーム オブジェクト) への参照です。

pdispContext

セカンダリ ビジネス オブジェクト (通常はコンテキスト ディクショナリ) への参照です。

lFlags

使われていない long パラメータです。ゼロ (0) に設定する必要があります。

戻り値

このメソッドが正常に終了すると、パイプラインのコンポーネントによって警告またはエラーが検出されたかどうかを示す long が返されます。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

また、メソッドは次の 3 つの値のうちいずれかを返します。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dOrder, dContext are Commerce.Dictionary objects
' pPooledPipeline is a Commerce.PooledPipeline object

errVal = pPooledPipeline.Execute(1, dOrder, dContext, 0)

関連項目

PooledPipeline オブジェクト

PooledPipeline.LoadPipe

PooledPipeline.SetLogFile


PooledPipeline.LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

Sub LoadPipe(
pszFileName As String
)

パラメータ

pszFileName

パイプライン構成ファイル (.pcf) の名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションで使うために (MtsTxPipeline または PooledTxPipeline で使うために) 作成されたパイプライン構成ファイルを読み込もうとすると、LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pPooledPipeline is a Commerce.PooledPipeline object

errVal = pPooledPipeline.LoadPipe("CustomShip.pcf")

関連項目

PooledPipeline オブジェクト

PooledPipeline.Execute

PooledPipeline.SetLogFile


PooledPipeline.SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。運用環境では、ログ機能を有効にしないでください。ログ機能を有効にすると、パフォーマンスが低下し、クレジット カードの番号に対するセキュリティの問題が発生します。パイプラインを実行するプロセスに指定のパスへの書き込みアクセスを許可するように、ファイル システムを構成する必要があります。

定義

Sub SetLogFile(
pszFileName As String
)

パラメータ

pszFileName

イベントのログを記録するファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pPooledPipeline is a Commerce.PooledPipeline object

errVal = pPooledPipeline.SetLogFile("CustomShipping.log")

関連項目

PooledPipeline オブジェクト

PooledPipeline.Execute

PooledPipeline.LoadPipe


PooledTxPipeline オブジェクト

このオブジェクトは、Microsoft Commerce Server 2000 のパイプラインを実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。トランザクションが必要な場合に、PooledPipeline オブジェクトの代わりに使います。

PooledTxPipeline オブジェクトが COM+ オブジェクト プーリングを利用することにより、パイプラインの読み込み速度は大幅に強化されています。プールされたパイプラインの詳細については、「プールされたパイプライン」を参照してください。

ProgID: | Commerce.PooledTxPipeline (外部作成可能)
COM クラス名: | CPooledTxPipeline
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | 両方

次の表は、PooledTxPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | LoadPipe メソッドによって構成されたとおり、パイプラインのコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

PooledTxPipeline オブジェクトは、COM+ に "必須のトランザクション" として登録されます。このパイプラインは、トランザクションが必要な場合に使います。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。

PooledTxPipeline オブジェクトを使うためには、Microsoft 分散トランザクション コーディネータ (MSDTC) サービスが実行されている必要があります。

分散トランザクション コーディネータ サービスが実行されていることを確認するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[サービス] をクリックします。

  2. [Distributed Transaction Coordinator] をスクロールし、[状態] が [開始] になっていることを確認します。

通常、PooledTxPipeline オブジェクトは運用 Web サイトだけで使います。サイトの開発時には MtsPipeline オブジェクトを使います。開発段階で PooledTxPipeline オブジェクトを使う場合は、インターネット インフォメーション サービス (IIS) をいったん停止して再開し、.pcf ファイルが変更後に再度読み込まれるようにする必要があります。

PooledPipeline オブジェクトは、アプリケーションやセッションのスコープ内で保持するのではなく、それを使用する各 ASP ページに作成する必要があります。

カスタムのプール可能なパイプライン コンポーネントを作成するには、Component Object Model (COM) カテゴリである CATID_POOLABLE をコンポーネントに追加することで、プールされるように設定します。


PooledTxPipeline.Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

Function Execute(
lMode As Long,
pdispOrder As Object,
pdispContext As Object,
lFlags As Long
) As Long

パラメータ

lMode

パイプラインを実行するモードを示す long です。このパラメータは、Commerce Server の以前のバージョン (Site Server 2.0 Commerce Edition) との下位互換性を維持する目的でのみ用意されています。Commerce Server 2000 のサイトでは、このパラメータを 1 に指定します。

pdispOrder

ビジネス オブジェクト (一般的にはディクショナリ オブジェクトまたは注文フォーム オブジェクト) への参照です。パイプラインが使う Order ディクショナリです。通常は、OrderForm オブジェクトです。

pdispContext

セカンダリ ビジネス オブジェクト (通常はコンテキスト ディクショナリ オブジェクト) への参照です。

lFlags

使われていない long パラメータです。ゼロ (0) に設定する必要があります。

戻り値

このメソッドが正常に終了すると、パイプライン内のコンポーネントが警告またはエラーを検出したかどうかを示す long が返されます。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

また、メソッドは次の 3 つの値のうちいずれかを返します。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dOrder, dContext are Commerce.Dictionary objects
' pPooledTxPipeline is a Commerce.PooledTxPipeline object

errVal = pPooledTxPipeline.Execute(1, dOrder, dContext, 0)

関連項目

PooledTxPipeline オブジェクト

PooledTxPipeline.LoadPipe

PooledTxPipeline.SetLogFile


PooledTxPipeline.LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

Sub LoadPipe(
pszFileName As String
)

パラメータ

pszFileName

パイプライン構成ファイル (.pcf) の名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションで使うために作成されていないパイプライン構成ファイル (MtsPipeline または PooledPipeline で使うために作成されたパイプライン構成ファイル) を読み込もうとすると、LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pPooledTxPipeline is a Commerce.PooledTxPipeline object

errVal = pPooledTxPipeline.LoadPipe("CustomShip.pcf")

関連項目

PooledTxPipeline オブジェクト

PooledTxPipeline.Execute

PooledTxPipeline.SetLogFile


PooledTxPipeline.SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。運用環境では、ログ機能を有効にしないでください。ログ機能を有効にすると、パフォーマンスが低下し、クレジット カードの番号に対するセキュリティの問題が発生する可能性があります。パイプラインを実行するプロセスに指定のパスへの書き込みアクセスを許可するように、ファイル システムを構成する必要があります。

定義

Sub SetLogFile(
pszFileName As String
)

パラメータ

pszFileName

イベントのログを記録するファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

SetLogFile メソッドは、パイプラインの実行の直前に呼び出す必要があります。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' pPooledTxPipeline is a Commerce.PooledTxPipeline object

errVal = pPooledTxPipeline.SetLogFile("CustomShipping.log")

関連項目

PooledTxPipeline オブジェクト

PooledTxPipeline.Execute

PooledTxPipeline.LoadPipe


PredictorClient オブジェクト

このオブジェクトは、分析モデルの読み込み、予測コンテキストを制御するプロパティの設定、予測アルゴリズムの実行のために使います。サポートされているモデルは、予測モデルとセグメント モデルの 2 種類です。予測モデルの結果は、商品を推奨し、欠落したプロファイル データを提供するために使われます。セグメント モデルの結果は、ユーザーを分類するために使われます。予測モデルは、セグメント モデルよりも的確な推奨を提示します。予測にセグメント モデルを使うことはあまりお勧めできません。

ProgID: | Commerce.PredictorClient (外部作成可能)
COM クラス名: | PredictorClient
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Client Type Library
DLL 名: | PredictorClient.dll
スレッド モデル: | 両方

次の表は、PredictorClient オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
fpDataFitScore | Single | データ フィット スコアを格納します。 このプロパティは読み取り専用です。
fpDefaultConfidence | Single | 予測の信頼性のしきい値を格納します。 このプロパティは読み取りと書き込みが可能です。
bFailOnUnknownInputAttributes | Boolean | 入力属性が不明の場合に Predict メソッドの動作を制御します。 このプロパティは読み取りと書き込みが可能です。
fpPopularityPenalty | Single | 人気のある項目を推奨するように選択した場合に適用されるペナルティを格納します。 このプロパティは読み取りと書き込みが可能です。
fpRecommendScore | Single | 推奨スコアを格納します。 このプロパティは読み取り専用です。
sSiteName | 文字列 | PredictorClient オブジェクトが実行されるサイトの名前を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、PredictorClient オブジェクトのメソッドを示しています。

メソッド | 説明
Explain | 予測モデルへの入力として使われる、関連プロパティ/値の組み合わせに関して、プロパティの予測を説明します。
LoadModelFromDB | データベースからモデルを読み込みます。
LoadModelFromFile | 指定したファイルからモデルを読み込みます。
Predict | 推奨された商品または欠落したプロファイル データを予測します。
PredictAllSegments | ユーザーが、過去のユーザーのそれぞれのセグメントに属している確率を算出します。
PredictMostLikelySegment | ユーザーが属している可能性が最も高そうなセグメントを算出します。
SaveModelToFile | 指定したファイルにモデルを保存します。

解説

ユーザーの行動を予想する必要があるアプリケーションでは、PredictorClient オブジェクトを使って、分析モデルを読み込み、予測を生成します。これらのモデルは、一部のケースの特定の集合を、予測の基盤として使います。ケースは、過去のユーザーに関する既知の情報がすべて集められたもので、そこには統計情報やトランザクションの履歴が含まれている可能性があります。

PredModelBuilder オブジェクトは、新しいモデルを生成するために使います。PredictorServiceAdmin オブジェクトは、モデルとモデル構成のリストを取得するために使います。PredictorServiceSiteAdmin オブジェクトは、モデルとモデル構成の削除、名前の変更のために使います。

fpDataFitScore プロパティと fpRecommendScore プロパティを使って、予測モデルの効果を測定してください。これにより、モデルを構築するときに、SampleSize、InputAttributeFraction、OutputAttributeFraction などの入力パラメータの調整を行うことができます。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってモデルを読み込んでから、ほかの PredictorClient メソッドを使うようにしてください。

予測モデルを使うときのパフォーマンスを最適化するには、fpDefaultConfidence プロパティと fpPopularityPenalty プロパティの既定値を global.asa ファイルの Application_OnStart メソッドで設定し、各 Predict メソッド呼び出しでは値を明示的に設定する必要はありません。

関連項目

予測オブジェクト

予測スキーマ

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


PredictorClient.fpDataFitScore

読み取り専用の fpDataFitScore プロパティはデータ フィット スコアを返します。これにより予測モデルの効果が測定され、プロファイル データに欠けている値が入力されます。

定義

Property fpDataFitScore As Single

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

データ フィット スコアは、モデルが構築されると、データの一部をテスト データとして自動計算されます。テストのためにサンプリングするデータの量は、[測定精度サンプル比率] として指定されます。詳細については、「新しい分析モデルを構築する」および「PredictorModels テーブル」を参照してください。

データ フィット スコアを使って、予測モデルの入力パラメータのテストと調整を行います。モデルの構築に使った入力ケースから取得された既知のケースは、予測モデルと "当て馬" モデルの両方に対してテストされます。"当て馬" モデルとは、すべてのプロパティが独立しているという前提で処理を行う周辺分析モデルです。中間値は、予測モデルがテスト データ内のケースに割り当てる確率を、"当て馬" モデルが同じケースに割り当てる確率で除算して算出されます。スコアは、各出力プロパティに関するこれらの値の幾何平均の対数です。たとえば、0 より大きいスコアは、構築されたモデルが "当て馬" モデルより正確な予測を立てていることを意味します。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

PredictorClient.Predict


PredictorClient.fpDefaultConfidence

読み取りと書き込みが可能な fpDefaultConfidence プロパティは、下回ると PredictorClient オブジェクトから予測が返されなくなるしきい値を決定します。

定義

Property fpDefaultConfidence As Single

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

次の標準 COM エラー値は、このプロパティのコンテキストでは特定の意味を持っています。

E_INVALIDARG

このプロパティの値は、有効な 0 ～ 100 の範囲外にあります。

解説

fpDefaultConfidence プロパティは、どの属性が推奨リストに表示されるかを決定するしきい値です。予測が作成されると、各属性に "欠落していない" 確率が割り当てられ、これが多くの場合、商品が購入される確率に対応することになります。この "欠落していない" 確率 (パーセント単位の値) が、fpDefaultConfidence の値を下回る場合、その確率がほかの属性の "欠落していない" 確率より大きくても、その属性は推奨リストに表示されません。プロパティは 0 ～ 100 の範囲内にある必要がありますが、値 0 が推奨されるのは、fpPopularityPenalty プロパティが 0 に設定されている場合だけです。

global.asa ファイルで、このプロパティに既定値を設定し、各 Predict メソッド呼び出しでは値を設定しません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

PredictorClient.Predict


PredictorClient.Explain

このメソッドは、指定された不明のプロパティの予測に関連する現在のケースから、プロパティと値を返すために使います。返されたプロパティ/値のそれぞれの組み合わせに対応するスコアは、予測に対するプロパティ/値の組み合わせそれぞれの重要性を説明するものです。

定義

Sub Explain(
dCurrentCase As Object,
sPropToExplain As String,
pvsavRelevantProps As Variant,
pvsavRelevantValues As Variant,
pvsavRelevantScores As Variant,
Optional lMaxExplanations As Long
)

パラメータ

dCurrentCase

現在のケースを含む Dictionary オブジェクトです。

sPropToExplain

説明するプロパティの名前を含む文字列です。

pvsavRelevantProps

予測に関連する現在のケースから、プロパティの一覧を含む SafeArray を取得して返す場合に使われる Variant です。

pvsavRelevantValues

関連するプロパティに対応する値のリストを含んだ SafeArray を返すために使う Variant です。

pvsavRelevantScores

SafeArray を返すために使う Variant です。予測に対する各プロパティの重要度に対応した、スコアのリストが含まれています。

lMaxExplanations

返されるプロパティの最大数を含む long です。既定値は -1 で、すべてのプロパティが返されることを示します。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、プロパティ/値/スコアの組み合わせを返します。この組み合わせはスコアによって降順に並べられています。スコアが高くなるほど、不明なプロパティが、対応するプロパティ/値の組み合わせによって正確に予測される確率も高くなります。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このメソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dCase is a Dictionary object
' vsavRelevantProps, vsavRelevantValues, vsavRelevantScores
'  are Variant SafeArrays
oPredictorClient.Explain dCase, """Age""", vsavRelevantProps, _
 vsavRelevantValues, vsavRelevantScores, 10

関連項目

PredictorClient オブジェクト


PredictorClient.bFailOnUnknownInputAttributes

読み取りと書き込みが可能な bFailOnUnknownInputAttributes プロパティは、Predict メソッドが不明な入力属性を見つけたときに続行されるか失敗するかを制御します。

定義

Property bFailOnUnknownInputAttributes As Boolean

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、デバッグ フラグとして使われます。既定では、Predict メソッドは不明な入力属性を無視します。このプロパティを True に設定すると、Predict メソッドは不明な入力属性を見つけたときに失敗します。

デバッグ時には、global.asa ファイルでこのプロパティに既定値を設定し、各 Predict メソッド呼び出しでは値を設定しません。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

PredictorClient.Predict


PredictorClient.LoadModelFromDB

このメソッドは、データベースに格納されたモデルを読み込むために使います。

定義

Sub LoadModelFromDB(
sModelName As String,
sDWConnStr As String
)

パラメータ

sModelName

モデルの名前を含む文字列です。

sDWConnStr

データ ウェアハウスへの接続情報を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

有効なモデルを読み込んでから、PredictorClient オブジェクトのほかのメソッドを呼び出すようにしてください。このモデルは、サイズが通常 100 KB ～ 10 MB の範囲にあり、ローカル Web サーバーに読み込んで予測要求に対して適時に応答する必要があります。

モデルに関する情報は、PredictorModels テーブルから読み込まれます。このテーブルの詳細については、「予測スキーマ」を参照してください。

sDWConnStr パラメータは SQL OLE DB 接続文字列である必要があります。

モデルをファイルから読み込むには、LoadModelFromFile メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oPredictorClient.LoadModelFromDB "Purchase1", _
 "Provider=SQLOLEDB;Data Source=servername;Initial Catalog=Retail_dw;" _
 & "User ID=user;Password=******;"

関連項目

PredictorClient オブジェクト

PredictorClient.Predict

PredictorClient.LoadModeFromFile


PredictorClient.LoadModelFromFile

このメソッドは、ファイルに格納されたモデルを読み込むために使います。

定義

Sub LoadModelFromFile(
sFilePath As String
)

パラメータ

sFilePath

パス、ファイル名、および拡張子を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

有効なモデルを読み込んでから、PredictorClient オブジェクトのほかのメソッドを呼び出すようにしてください。モデルは最初はデータベースに格納されているので、読み込みには LoadModelFromDB メソッドを使います。いったん読み込んだモデルは、SaveModelToFile メソッドを使ってファイルに保存できます。

ファイル パスは、呼び出しプロセスの現在の作業ディレクトリへの相対パスです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' PredictionModel2.mdl is stored in the working directory of the
'  calling process
oPredictorClient.LoadModelFromFile "PredictionModel2.mdl"

関連項目

PredictorClient オブジェクト

PredictorClient.Predict

PredictorClient.LoadModelFromDB


PredictorClient.fpPopularityPenalty

読み取りと書き込みが可能な fpPopularityPenalty プロパティは、Predict メソッドが人気のある項目を推奨する可能性に影響を与えます。

定義

Property fpPopularityPenalty As Single

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

次の標準 COM エラー値は、このプロパティのコンテキストでは特定の意味を持っています。

E_INVALIDARG

パラメータ pbVal は1 です。有効な範囲は 0 から 1 未満です。

解説

人気のある項目とは、よく知られていてユーザーに推奨する必要のない、頻繁に購入される項目です。ペナルティの値を高く設定すると、人気のある項目が推奨商品として予測結果に含まれる確率が低くなります。値の範囲は 0.0 から 1.0 未満です。最も人気のある項目の売り上げを最大にするには、人気ペナルティの既定値を 0 にしてください。ほとんどのユーザーが人気のある商品について知っているアプリケーションでは、適切な値は 0.9 です。

global.asa ファイルの Application_OnStart メソッドで、このプロパティに既定値を設定し、各 Predict メソッド呼び出しでは値を設定しません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

PredictorClient.Predict


PredictorClient.Predict

このメソッドは、関連する商品をユーザー (現在のケース) に推奨するための予測の生成、またはユーザーに関連するプロファイル データの欠落している値の入力に使います。

定義

Sub Predict(
dCurrentCase As Object,
slPropsToPredict As Object,
pvsavPredictedProps As Variant
pvsavPredictedVals As Variant
Optional lMaxPredictions As Long
Optional pvsavDetails As Variant
)

パラメータ

dCurrentCase

現在のケースを含む Dictionary オブジェクトです。

slPropsToPredict

予測するプロパティの名前を含む SimpleList オブジェクトです。

pvsavPredictedProps

予測されたプロパティ名を含む SafeArray を返すために使う Variant です。

pvsavPredictedVals

予測されたプロパティ値を含む SafeArray を返すために使う Variant です。

lMaxPredictions

返される予測の最大数を指定する long です。既定値は -1 で、すべての予測が返されることを示します。

pvsavDetails

予約されています。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

予測は、現在読み込まれている予測モデルを使って作成されます。その予測モデルは、現在のケースに含まれるユーザー プロファイルと選択情報に基づいています。予測されたプロパティ/値の組み合わせは、可能性の高い順に並べられて返されます。

fpDefaultConfidence プロパティと fpPopularityPenalty プロパティを設定し、LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、Predict メソッドを使うようにしてください。

fpDefaultConfidence プロパティと fpPopularityPenalty プロパティの既定値は global.asa ファイルの Application_OnStart メソッドで設定します。そのため、各 Predict メソッド呼び出しの値を明示的に設定する必要はありません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dCase is a Dictionary object, slPropsToPredict is a SimpleList
' vsavPredictedProps, vsavPredictedValues are Variant SafeArrays
oPredictorClient.Predict dCase, slPropsToPredict, vsavPredictedProps, _
 vsavPredictedVals, 10

関連項目

PredictorClient オブジェクト

PredictorClient.LoadModelFromFile

PredictorClient.LoadModelFromDB

PredictorClient.fpDefaultConfidence


PredictorClient.PredictAllSegments

このメソッドは、特定のユーザー (現在のケース) が、各ユーザー セグメントに属している確率を予測するために使います。

定義

Sub PredictAllSegments(
dCurrentCase As Object,
pvsavSegmentNames As Variant,
pvsavProbabilities As Variant
)

パラメータ

dCurrentCase

現在のケースを含む Dictionary オブジェクトです。

pvsavSegmentNames

セグメント名を含む SafeArray を返すために使う Variant です。

pvsavProbabilities

セグメント名にユーザーが関連付けられている確率を含む SafeArray を返すために使う、Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Microsoft Research Cluster Engine Data Modeler は、類似したユーザーをセグメントにグループ化します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化されます。こうして階層が作成され、傾向の分析、隠れた相関関係の発見が行われます。各セグメント名に関連付けられて返された確率は、現在のユーザーがそのセグメントに属している確率を示すものです。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってセグメント モデルを読み込んでから、このメソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dCase is a Dictionary object
' vsavSegmentNames and vsavProbabilities are Variant SafeArrays
oPredictorClient.PredictAllSegments dCase, vsavSegmentNames, _
 vsavProbabilities

関連項目

PredictorClient オブジェクト


PredictorClient.PredictMostLikelySegment

このメソッドは、ユーザー (現在のケース) が属している可能性が最も高いセグメントを予測するために使います。

定義

Function PredictMostLikelySegment(
dCurrentCase As Object,
Optional pvarProbability As Variant
) As String

パラメータ

dCurrentCase

現在のケースを含む Dictionary オブジェクトです。

pvarProbability

セグメント名にユーザーが関連付けられている確率を返すために使う Variant です。

戻り値

このメソッドが正常に終了すると、セグメント名を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Microsoft Research Cluster Engine Data Modeler は、類似したユーザーをセグメントにグループ化します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化されます。こうして階層が作成され、傾向の分析、隠れた相関関係の発見が行われます。

このメソッドは、指定したケースを含んでいる可能性が最も高いセグメントの名前を返します。ユーザーがこのセグメントに属している確率を返すように設定することもできます。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってセグメント モデルを読み込んでから、このメソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sSegment is a String, vProbabilty is a Variant
' dCase is a Commerce.Dictionary object
sSegment = oPredictorClient.PredictMostLikelySegment(dCase, vProbability)

関連項目

PredictorClient オブジェクト


PredictorClient.fpRecommendScore

読み取り専用の fpRecommendScore プロパティは推奨スコアを返します。この推奨スコアは、予測モデルから返されたランク付き推奨リストの品質を測定するものです。

定義

Property fpRecommendScore As Single

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

推奨スコアを使って、予測モデルへの入力属性のテストと調整を行います。モデルの構築に使った入力ケースから取得された既知のケースは、トランザクションを無作為に 1 つ選んで削除した予測モデルに対してテストされます。削除されたトランザクションがリストにあると、推奨リストが返され、予測が成功したと見なされます。スコアは、モデルが正しいケースである確率をパーセンテージで表しています。

推奨スコアは、モデルが構築されると、データの一部をテスト データとして自動計算されます。テストのためにサンプリングするデータの量は、[測定精度サンプル比率] として指定されます。詳細については、「新しい分析モデルを構築する」および「PredictorModels テーブル」を参照してください。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

PredictorClient.Predict


PredictorClient.SaveModelToFile

このメソッドは、現在読み込まれているモデルをファイルに保存するために使います。

定義

Sub SaveModelToFile(
sFilePath As String
)

パラメータ

sFilePath

[in] 呼び出しプロセスの作業ディレクトリへの相対パス、ファイルの名前、およびファイルの拡張子を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ファイルの保存先であるディレクトリは、呼び出しを行う前に既に存在している必要があります。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってモデルを読み込んでから、SaveModelToFile メソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oPredictorClient.SaveModelToFile "PredictionModel2.mdl"

関連項目

PredictorClient オブジェクト

PredictorClient.LoadModelFromFile

PredictorClient.LoadModelFromDB


PredictorClient.sSiteName

読み取りと書き込みが可能な sSiteName プロパティには、PredictorClient オブジェクトが実行されるサイトの名前が含まれています。

定義

Property sSiteName As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティを global.asa ファイルの On_Start メソッドで設定し、サイトで集計されるパフォーマンス監視カウンタをログに記録するようにします。パフォーマンス カウンタは、指定したコンピュータに固有です。複数のサイトが同じ Web サーバー上で実行されている場合、カウンタはすべてのサイトにおける合計値を示します。サイト名を指定すると、ほかのサイトと区別され、そのサイトだけのカウンタが示されます。

次のカウンタが利用できます。

  • サイトが初期化されてから作成された予測の総数

  • 予測 1 つあたりの平均時間

  • ファイルからのモデル読み込みの総数

  • データベースからのモデル読み込みの総数

Microsoft Windows 2000 でカウンタにアクセスするには、[コントロール パネル] の [管理ツール] をダブルクリックし、[パフォーマンス] をダブルクリックします。カウンタには、「Windows 2000 Platform SDK」で説明しているパフォーマンス API を使ってプログラムによるアクセスを行うこともできます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

PredictorClient.Predict


PredictorServiceAdmin オブジェクト

このオブジェクトは、利用できる分析モデルとモデル構成のリスト、および前回予測リソースが開始された日付を取得するために使います。

ProgID: | Commerce.PredictorServiceAdmin (外部作成可能)
COM クラス名: | PredictorServiceAdmin
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Service Type Library
EXE 名: | PredServ.exe
スレッド モデル: | 両方

次の表は、PredictorServiceAdmin オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
dateLastStarted | Date | 前回予測リソースが開始された日付を取得します。 このプロパティは読み取り専用です。
slModelConfigs | オブジェクト | 現在利用できるモデル構成のリストを取得します。 このプロパティは読み取り専用です。
slModels | オブジェクト | 現在利用できるモデルのリストを取得します。 このプロパティは読み取り専用です。

解説

PredictorServiceSiteAdmin オブジェクトには、モデルとモデル構成を維持するためのメソッドが用意されています。PredictorClient オブジェクトは、適切なモデルを読み込み、実際の予測を作成します。新しいモデルを生成するには、PredModelBuilder オブジェクトを使います。

関連項目

予測オブジェクト

予測スキーマ

PredictorClient オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


PredictorServiceAdmin.dateLastStarted

dateLastStarted プロパティは読み取り専用の Date で、前回予測リソースが開始された日付を示します。

定義

Property dateLastStarted As Date

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceAdmin.slModelConfigs

slModelConfigs プロパティは読み取り専用の SimpleList オブジェクトで、利用できるモデル構成に関する情報を含んでいます。

定義

Property slModelConfigs As Object

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

SimpleList オブジェクトである slModelConfigs には、各モデル構成の Dictionary オブジェクトが含まれています。モデル構成には、モデルの構築に使われる情報が含まれています。次の表は、モデル構成プロパティの名前である Dictionary オブジェクトのキーを示しています。

キー名 | 種類 | 説明
DWResourceName | 文字列 | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | 文字列 | モデル構成の名前です。
SiteName | 文字列 | 予約されています。ディクショナリに表示されない可能性があります。

モデル構成を削除するには、PredictorServiceSiteAdmin オブジェクトの DeleteModelConfig メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceAdmin.slModels

slModels プロパティは読み取り専用の SimpleList オブジェクトで、利用できるモデルに関する情報を含んでいます。

定義

Property slModels As Object

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

SimpleList オブジェクトである slModels には、利用できる各モデルの Dictionary オブジェクトが含まれています。モデルは、そのコピーが存在し、現在構築中でない場合に利用できます。Dictionary オブジェクトのキーはモデル プロパティの名前で、これらは PredictorModels テーブルに一覧表示されています。次の表は、これらのキーのうちの一部を示しています。残りのキーについては、「PredictorModels テーブル」を参照してください。

キー名 | 種類 | 説明
DWResourceName | 文字列 | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | 文字列 | モデルを構築するために使われるモデル構成の名前です。
ModelName | 文字列 | モデルの名前です。

新しいモデルを作成するには、PredModelBuilder オブジェクトの Start メソッドを使います。

モデルを削除するには、PredictorServiceSiteAdmin オブジェクトの DeleteModel メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin オブジェクト

このオブジェクトは、分析モデルとモデル構成を管理するために使います。

ProgID: | Commerce.PredictorSiteAdmin (外部作成可能)
COM クラス名: | PredictorServiceSiteAdmin
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Service Type Library
EXE 名: | PredServ.exe
スレッド モデル: | 両方

次の表は、PredictorServiceSiteAdmin オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
lCaseCount | long | モデル構成によって使われるケースの数を取得します。 このプロパティは読み取り専用です。
dModelInfo | オブジェクト | 指定したモデルに関する情報を取得します。 このプロパティは読み取り専用です。
SegmentLabels | Variant | セグメント モデルのセグメント ラベルを格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、PredictorServiceSiteAdmin オブジェクトのメソッドを示しています。

メソッド | 説明
DeleteModel | 指定した予測モデルを削除します。
DeleteModelConfig | 指定したモデル構成を削除します。
GenerateSegmentList | セグメントのメンバのリストを生成します。
Init | サーバーを初期化します。
RenameModel | 予測モデルの名前を変更します。
RenameModelConfig | モデル構成の名前を変更します。

解説

分析モデルは、データ内の属性における依存関係を要約します。モデル構成には、分析モデルを構築するために使われる情報が含まれています。

利用できる分析モデルには 2 種類あります。予測モデルは、ランク付き推奨リストの作成、および欠落しているユーザー プロファイル属性の入力のために使います。セグメント モデルは、類似したユーザーをユーザー セグメントにグループ化するために使います。

PredictorServiceAdmin オブジェクトには、利用できるモデルとモデル構成のリストが含まれています。PredictorClient オブジェクトは、適切なモデルを読み込み、実際の予測を作成します。新しいモデルの生成は、PredModelBuilder オブジェクトによって制御されます。

関連項目

予測オブジェクト

予測スキーマ

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


PredictorServiceSiteAdmin.lCaseCount

lCaseCount プロパティは読み取り専用の long で、モデル構成によって使われるケースの数を含んでいます。

定義

Property lCaseCount(
sConfigName As String
) As Long

パラメータ

sConfigName

モデル構成名を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ケースは、特定のユーザーに関する既知の情報です。この情報には、ユーザー プロファイル データ、購入履歴、URL クリック履歴、ユーザーに関連するそのほかのデータがあります。モデルの構築に使われたケースの数は、そのモデルの精度に影響します。通常、モデルで使用できるケースが多いほど、予測の精度は上がります。ただし、構成で使うケースが多いほど、モデルの構築にはより多くの時間が必要になり、また、ケースの数が多くなりすぎる (一般的には 50,000 ケース以上) と、精度がそれほど上がらなくなります。

利用できるモデル構成のリストを取得するには、PredictorServiceAdmin オブジェクトの slModelConfigs プロパティを使います。

Init メソッドを使ってデータ ウェアハウスに接続してから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin.DeleteModel

このメソッドは、指定したモデルを削除するために使います。

定義

Sub DeleteModel(
sModelName As String
)

パラメータ

sModelName

削除するモデルの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

利用できるモデルのリストを取得するには、PredictorServiceAdmin オブジェクトの slModels プロパティを使います。

モデルを削除すると、データ ウェアハウスの PredictorModels テーブルにあるそのエントリも削除されます。

モデル名として空の文字列を渡すと、引数無効のエラーが返されます。

Init メソッドを使ってデータ ウェアハウスに接続してから、DeleteModel メソッドを呼び出すようにしてください。

新しいモデルを作成するには、PredModelBuilder オブジェクトの Start メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin.DeleteModelConfig

このメソッドは、指定したモデル構成を削除するために使います。

定義

Sub DeleteModelConfig(
sModelConfigName As String
)

パラメータ

sModelConfigName

削除するモデル構成の名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

利用できるモデル構成のリストを取得するには、PredictorServiceAdmin オブジェクトの slModelConfigs プロパティを使います。

モデル構成名として空の文字列を渡すと、引数無効のエラーが返されます。

モデル構成を削除すると、データ ウェアハウスの PredictorModelCfgs テーブルおよび PredictorDataTables テーブルにあるそのエントリも削除されます。そのモデル構成が参照する Attributes テーブルも同様に削除されますが、ケース データは削除されません。

注意

  • Microsoft Commerce Server 2000 のこのリリースでは、新しいモデル構成を作成するには、データ ウェアハウスのテーブルを直接変更します。API 関数は提供されていません。

Init メソッドを使ってデータ ウェアハウスに接続してから、DeleteModelConfig メソッドを呼び出すようにしてください。COM プロパティとメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin.dModelInfo

dModelInfo プロパティは読み取り専用の Dictionary オブジェクトで、指定したモデルに関する情報を含んでいます。

定義

Property dModelInfo(
sModelName As String
) As Object

パラメータ

sModelName

モデルの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返された Dictionary オブジェクトのキーはモデル プロパティの名前で、これらはPredictorModels テーブルに一覧表示されています。次の表は、これらのキーのうちの一部を示しています。残りのキーについては、「PredictorModels テーブル」を参照してください。

キー名 | 種類 | 説明
DWResourceName | 文字列 | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | 文字列 | モデルを構築するために使われるモデル構成の名前です。
ModelName | 文字列 | モデルの名前です。

Init メソッドを使ってデータ ウェアハウスに接続してから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin.GenerateSegmentList

このメソッドは、セグメントのメンバのリストを生成するために使います。

定義

Sub GenerateSegmentList(
sLMConn As String,
sTableName As String,
sModelName As String,
sSegmentName As String
fpMinProbability As Double

)

パラメータ

sLMConn

ListManager オブジェクトに対する接続情報を指定する文字列です。

sTableName

セグメント メンバのリストを格納するテーブルの名前を指定する文字列です。

sModelName

使用するセグメント モデルの名前を指定する文字列です。

sSegmentName

エクスポートするセグメントの名前を指定する文字列です。

fpMinProbability

セグメント メンバに関連付けられた、そのセグメント メンバがエクスポートされる最小の確率を指定する Double です。有効な範囲は 0 ～ 1 です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは ListManager オブジェクトで使うために用意されているものなので、独立して呼び出すことはできません。ListManager オブジェクトの CreateFromSegment メソッドがこのメソッドを呼び出し、リストを作成します。詳細については、「ListManager.CreateFromSegment」を参照してください。

モデル名として空の文字列を渡すと、空のリストが返されます。

セグメント名である sSegmentName が存在しない場合、またはそのセグメント名がセグメント グループの名前である場合は、空のリストが生成されます。この場合、エラーは返されません。

Init メソッドを使ってデータ ウェアハウスに接続してから、GenerateSegmentList メソッドを呼び出すようにしてください。

セグメント モデルは、ユーザーのグループを、類似したユーザー プロパティを持つユーザー セグメントに分類します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化されます。

各ユーザーには、各セグメントへのメンバシップの確率が割り当てられます。ユーザーに割り当てられた、すべてのセグメントへの確率の合計は 1 です。ユーザーの特定のセグメントへのメンバシップの確率が fpMinProbability を超える場合、そのユーザーはエクスポート リストに含められます。

fpMinProbability 属性で指定される値より大きい確率が割り当てられているセグメント レベルにいるすべてのメンバ (個々のケース) は、指定したテーブルに格納され、その後リスト マネージャにエクスポートされます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oPredictorServiceSiteAdmin.GenerateSegmentList _
 "Provider=SQLOLEDB;Data Source=servername;" & _
 "Initial Catalog=Retail_commerce;User ID=user;Password=*****;", _
 "TeenAgers", "Demog1", "TeenAgers", .5

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin.Init

このメソッドは、データ ウェアハウスへの接続を初期化するために使います。

定義

Sub Init(
sSiteName As String,
sDWConnStr As String
)

パラメータ

sSiteName

未使用の文字列です。空の文字列を渡します。

sDWConnStr

データ ウェアハウスの接続文字列を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

モデルとモデル構成は、データ ウェアハウスのテーブルに格納されています。

データ ウェアハウスへの接続を初期化してから、PredictorServiceSiteAdmin オブジェクトのほかのプロパティやメソッドを呼び出すようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oPredictorServiceSiteAdmin.Init "", _
 "Provider=SQLOLEDB;Data Source=servername;" & _
 "Initial Catalog=Retail_commerce;User ID=user;Password=*****;"

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

PredictorClient オブジェクト


PredictorServiceSiteAdmin.RenameModel

このメソッドは、モデルの名前を変更するために使います。

定義

Sub RenameModel(
sOldModelName As String,
sNewModelName As String
)

パラメータ

sOldModelName

古いモデルの名前を含む文字列です。

sNewModelName

新しいモデルの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

古い名前を持つモデルが見つからないか、新しい名前を持つモデルが既に存在します。

解説

モデルの名前を変更するときは、PredictorClient オブジェクトの LoadModelFromDB メソッドを使ってそのモデルを読み込んでいるサイトを、すべて更新してください。

名前の変更は、データ ウェアハウスの PredictorModels テーブル内のモデル エントリに対して行われます。

利用できるモデルのリストを取得するには、PredictorServiceAdmin オブジェクトの slModels プロパティを使います。モデル構成の名前を変更するには、RenameModelConfig メソッドを使います。

モデル名として空の文字列を渡すと、引数無効のエラーが返されます。

Init メソッドを使ってデータ ウェアハウスに接続してから、RenameModel メソッドを呼び出すようにしてください。COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oPredictorServiceSiteAdmin.RenameModel "PredictorModel2", "PredictorModel3"

関連項目

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin.RenameModelConfig

このメソッドは、モデル構成の名前を変更するために使います。

定義

Sub RenameModelConfig(
sOldModelConfigName As String,
sNewModelConfigName As String
)

パラメータ

sOldModelConfigName

古いモデル構成名を含む文字列です。

sNewModelConfigName

新しいモデル構成名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

古い名前を持つモデル構成が見つからないか、新しい名前を持つモデル構成が既に存在します。

解説

名前の変更は、データ ウェアハウスの PredictorModelCfgs テーブル内のモデル構成エントリに対して行われます。

モデル構成のリストを取得するには、PredictorServiceAdmin オブジェクトの slModelsConfigs プロパティを使います。モデルの名前を変更するには、RenameModel メソッドを使います。

モデル構成名として空の文字列を渡すと、引数無効のエラーが返されます。

Init メソッドを使ってデータ ウェアハウスに接続してから、RenameModelConfig メソッドを呼び出すようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

oPredictorServiceSiteAdmin.RenameModelConfig "ModelConf1", "ModelConf2"

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin.SegmentLabels

SegmentLabels プロパティは読み取りと書き込みが可能な Variant で、指定したセグメント モデルのラベルを含んでいます。

定義

Property SegmentLabels(
sModelName As String,
lDepth As Long
) As Variant

パラメータ

sModelName

セグメント モデルの名前を含む文字列です。

lDepth

ラベルを割り当てるまたは取得するセグメント階層の深さを指定する long です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

セグメント モデルは、ユーザーのグループを、類似したユーザー プロパティを持つユーザー セグメントに分類します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化され、それによって階層が作成されます。最初に作成されたとき、セグメントには Segment4 や Group2 などの汎用的なラベルが付けられています。異なるグループを区別しやすいように、このラベルの名前を変更します。

lDepth パラメータの有効な値は -1 (すべてのセグメントを返す) と 2 以上です。

Init メソッドを使ってデータ ウェアハウスに接続してから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' saLabels is a SafeArray of Strings
' segment level 2 contains 3 members

saLabels(0) = "TeenAgers"
saLabels(1) = "TwentySomethings"
saLabels(2) = "Oldies"

oPredictorServiceSiteAdmin.SegmentLabels("Demog1", 2) = saLabels

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredModelBuilder オブジェクト

このオブジェクトは、複数の優先された構築スレッドによって、分析モデルの作成を制御するために使います。

ProgID: | Commerce.PredictorModelBuilder (外部作成可能)
COM クラス名: | PredModelBuilder
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Service Type Library
EXE 名: | PredServ.exe
スレッド モデル: | 両方

次の表は、PredModelBuilder オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
dModelInfo | オブジェクト | 指定した実行中のモデルに関する情報を取得します。 このプロパティは読み取り専用です。
Priority | Enum | 構築スレッドの優先度を格納します。 このプロパティは読み取りと書き込みが可能です。
slRunningModels | オブジェクト | 実行中のモデルのリストを取得します。 このプロパティは読み取り専用です。
Status | Enum | 構築スレッドの状態を示します。 このプロパティは読み取り専用です。

次の表は、PredModelBuilder オブジェクトのメソッドを示しています。

メソッド | 説明
Pause | 実行中の構築スレッドを一時停止します。
Resume | 一時停止した構築スレッドを再開します。
Start | 構築のためのスレッド識別子を設定し、新しい構築スレッドを開始します。
Stop | 実行中の構築スレッドを停止します。
StopAllBuilds | 現在実行中の構築スレッドをすべて停止します。

解説

Microsoft Commerce Server 2000 で利用できる分析モデルには、2 種類あります。1 つは分析モデルで、これは判断ツリー (従属関係ネットワークといいます) の集合であり、宣伝対象商品などのランク付き推奨リストを作成したり、年齢などの欠落したユーザー プロファイル情報を入力するために使います。もう 1 つはセグメント モデルで、これはクラスタリング (セグメント化) の処理に基づくものであり、類似したユーザーをユーザー セグメントにグループ化するために使います。

分析モデルは、モデル構成に関連付けられています。1 つのモデル構成に複数の分析モデルを関連付けることができます。モデル構成には、分析モデルを構築するために使われる属性とケースの情報が含まれています。ケースは、ユーザーに関する既知の情報の集合です。たとえばプロファイル データやトランザクション データなどがあります。一般的なモデルでは 10,000 から 20,000 のケースを使い、その結果、サイズは 100 KB から 10 MB になります。

PredictorServiceAdmin オブジェクトには、利用できる分析モデルとモデル構成のリストが含まれています。PredictorServiceSiteAdmin オブジェクトには、分析モデルとモデル構成を維持するためのメソッドが用意されています。PredictorClient オブジェクトは、適切な分析モデルを読み込み、実際の予測を作成します。

分析モデルの生成は、個々の構築スレッドで行われます。PredModelBuilder オブジェクトの単一のインスタンスで、複数の同時構築スレッドを制御します。構築スレッドで問題が発生すると、そのスレッドは一時停止するか、停止します。

関連項目

予測オブジェクト

予測スキーマ

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

予測リソースの実行


PredModelBuilder.dModelInfo

dModelInfo プロパティは読み取り専用の Dictionary オブジェクトで、指定した実行中のモデルに関する情報を含んでいます。

定義

Property dModelInfo(
lBuildID As Long
) As Object

パラメータ

lBuildID

[in] 特定の構築スレッドを選択するために使う構築識別子を含む long です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このディクショナリのキーは、実行中のモデルの構築パラメータです。構築パラメータの詳細については、「PredictorModels テーブル」を参照してください。

Start メソッドを使って構築スレッドを初期化してから、dModelInfo プロパティを使ってスレッドにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Stop


PredModelBuilder.Pause

このメソッドは、モデル構築スレッドを中断するために使います。

定義

Sub Pause(
lBuildID As Long
)

パラメータ

lBuildID

[in] 構築スレッド識別子を含む long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

構築されたモデルが初期化されると、構築スレッド識別子が Start メソッドによって返されます。

一時停止した構築スレッドを再開するには、Resume メソッドを使います。

構築スレッドの実行を停止するには、Stop メソッドを使います。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

構築されたモデルの現在の状態を確認するには、Status プロパティを使います。

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Resume

PredModelBuilder.Stop

PredModelBuilder.Status

PredModelBuilder.Priority


PredModelBuilder.Priority

Priority プロパティは読み取りと書き込みが可能な ePredBuildPriority 列挙型です。このプロパティには、構築スレッドの優先度が格納されます。

定義

Property Priority(
lBuildID As Long
) As Enum

パラメータ

lBuildID

[in] 構築識別子を含む long です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

構築が要求されるタイミングに応じて、このプロパティを変更して構築スレッドの優先度を高くしたり低くしたりします。

次の表は、ePredBuildPriority で列挙された優先度レベルの値を定義しています。スレッドの絶対優先度はサポートされていません。これらのプロパティ値は、起動されているスレッドにおける相対的な値です。

名前 | 値 | 説明
PriLowest | -2 | 最も低い優先度です。
PriBelowNormal | -1 | 低めの優先度です。
PriNormal | 0 | 標準の優先度です。
PriAboveNormal | 1 | 高めの優先度です。
PriHighest | 2 | 最も高い優先度です。

Start メソッドを使って構築スレッドを初期化してから、Priority プロパティにアクセスするようにしてください。

特定の構築スレッドを早く実行する必要がある場合は、Pause メソッドを使って、同等以上の優先度を持つスレッドの実行を一時的に中断します。スレッドは、それぞれの優先度レベルにおいて、ラウンド ロビン方式で実行されます。優先度が低いスレッドの実行は、より高い優先度を持つスレッドの実行が完了してから開始されます。

スレッドのスケジュール設定の詳細については、Microsoft Developer Network (MSDN) を "SetThreadPriority" で検索し、SetThreadPriority メソッドに関する説明を参照してください。

Priority メソッドでは、THREAD_PRIORITY_REALTIME 優先度をサポートしていません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Pause


PredModelBuilder.Resume

このメソッドは、Pause メソッドで一時停止した構築スレッドの実行を再開するために使います。

定義

Sub Resume(
lBuildID As Long
)

パラメータ

lBuildID

[in] 一時停止した構築スレッドの識別子を含む long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

構築されたモデルが初期化されると、構築スレッド識別子が Start メソッドによって返されます。

構築スレッドが実行中か一時停止しているかを確認するには、Status プロパティを使います。

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Pause

PredModelBuilder.Stop

PredModelBuilder.Status


PredModelBuilder.slRunningModels

slRunningModels プロパティは読み取り専用の SimpleList オブジェクトで、アクティブな (実行中または一時停止の) モデル構築スレッドに関する情報を含んでいます。

定義

Property slRunningModels() As Object

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

SimpleList オブジェクトである slRunningModels には、実行中の各モデルの Dictionary オブジェクトが含まれています。Dictionary オブジェクトのキーはモデル プロパティの名前で、これらは PredictorModels テーブルに一覧表示されています。ただし、構築の正常終了に依存するプロパティはこのテーブルに含まれていません。使用できないプロパティは、DateCreated、DataFitScore、RecommendScore、および BuildTime です。構築が正常に終了すると、これらのプロパティは、PredictorServiceAdmin オブジェクトの slModels プロパティまたは PredictorServiceSiteAdmin オブジェクトの dModelInfo プロパティで使えるようになります。次の表は、Dictionary オブジェクトに含まれるキーの一部を示しています。残りのキーについては、「PredictorModels テーブル」を参照してください。

キー名 | 種類 | 説明
DWResourceName | 文字列 | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | 文字列 | モデルを構築するために使われるモデル構成の名前です。
BuildID | long | 構築スレッドの ID です。
ModelName | 文字列 | モデルの名前です。

特定のモデル構築スレッドの状態を確認するには、Status プロパティを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin.slModels

PredictorServiceSiteAdmin.dModelInfo

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Stop

PredModelBuilder.StopAllBuilds

PredModelBuilder.Status


PredModelBuilder.Start

このメソッドは、新しいモデル構築スレッドを作成するために使います。

定義

Function Start(
sDWConnStr As String,
sSiteName As String,
sConfigName As String,
sModelName As String,
sXMLBuildParams As String
bOverWrite As Boolean
) As Long

パラメータ

sDWConnStr

[in] データ ウェアハウスへの接続情報を含む文字列です。

sSiteName

[in] 使われていない文字列です。空の文字列を渡します。

sConfigName

[in] モデル構成の名前を含む文字列です。

sModelName

[in] モデルの名前を含む文字列です。

sXMLBuildParams

[in] XML 形式でモデルのランタイム構築パラメータを含む文字列です。

bOverWrite

[in] モデルが既に存在する場合、それを上書きするかどうかを示す Boolean です。

戻り値

このメソッドが正常に完了すると、新しい構築スレッドの識別子を含む long が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

上書きフラグが False に設定され、かつ指定したモデルが既に存在しているか、スレッドの構築に失敗しました。

解説

sXMLBuildParams パラメータに含まれているランタイム構築パラメータの詳細については、「PredictorModels テーブル」を参照してください。sXMLBuildParams パラメータは、構築パラメータを含む Dictionary オブジェクトの IPersistXML インターフェイスの SaveXML メソッドの戻り値として渡さなければなりません。この方法の例については、「新しいモデルを構築するためのコード」を参照してください。

データ ウェアハウスに接続し、モデル構成にアクセスします。

サイト名を PredModelBuilder オブジェクトに関連付けると、パフォーマンス監視カウンタのログをそのサイトで集計できるようになります。詳細については、PredictorClient オブジェクトに関する説明を参照してください。

構築スレッドへのその後のアクセスにはすべて、返された識別子を使います。

同じ名前を持つモデルが既に存在していて、上書きパラメータが False の場合、Start メソッドは失敗します。

構築スレッドの優先度は、Priority プロパティを使って設定します。

構築スレッドの状態を確認するには、Status プロパティを使います。

現在実行中の構築スレッドを停止するには、Stop メソッドを使います。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

構築スレッドの実行を一時的に中断するには、Pause メソッドを使います。中断したスレッドの実行を再開するには、Resume メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' lBuildID is a Long

lBuildID = oPredModelBuilder.Start _
("Provider=SQLOLEDB;Data Source=servername;" & _
 "Initial Catalog=Retail_dw;User ID=user;Password=*****;", _
 "", "PurchaseCfg1", "Demog1", sXMLBuildParams, False)

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Pause

PredModelBuilder.Resume

PredModelBuilder.Stop

PredModelBuilder.Status

PredModelBuilder.Priority

PredictorClient オブジェクト


PredModelBuilder.Status

Status プロパティは読み取り専用の ePredBuildStatus 列挙型です。このプロパティは、モデル構築スレッドの現在の状態を示します。

定義

Property Status(
lBuildID As Long
) As Enum

パラメータ

lBuildID

[in] 特定の構築スレッドを選択するために使う構築識別子を含む long です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、ePredBuildStatus で列挙された構築状態の値を定義しています。

名前 | 値 | 説明
PredBldRunning | 0 | 現在実行中です。
PredBldPaused | 1 | 一時停止しています。
PredBldShuttingDown | 2 | Stop メソッドに応答して、終了中です。

構築が正常に終了してもしなくても、BuildID は無効になります。終了した構築の状態の情報については、イベント ログで確認してください。

Start メソッドを使って構築スレッドを初期化してから、Status プロパティを使ってスレッドにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Stop


PredModelBuilder.Stop

このメソッドは、特定のモデル構築スレッドの実行を停止するために使います。

定義

Sub Stop(
lBuildID As Long
)

パラメータ

lBuildID

[in] モデル構築スレッドを識別する long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

構築 ID が無効、または構築スレッドの状態がアクティブ (実行中と一時停止中のどちらか) ではありません。

解説

構築されたモデルが初期化されると、構築スレッド識別子が Start メソッドによって返されます。

Stop メソッドは、データ モデラに対して、指定した構築スレッドが終了可能になった時に、そのスレッドを停止する旨を通知するフラグを設定します。データ モデラは、進捗の情報が更新されるたびにフラグを確認します。フラグが設定されていると、データ モデラはスレッドの実行を終了し、必要なクリーンアップ操作を行います。

構築スレッドの現在の状態にアクセスするには、Status プロパティを使います。データ モデラによるスレッドの終了がまだ完了していない場合、その構築スレッドの状態は PredBldShuttingDown です。

スレッドが終了すると、構築識別子は有効な構築スレッドを示さなくなります。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

PredModelBuilder オブジェクトに関連付けられているすべての構築スレッドの実行を停止するには、StopAllBuilds メソッドを使います。

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Status

PredModelBuilder.StopAllBuilds


PredModelBuilder.StopAllBuilds

このメソッドは、PredModelBuilder オブジェクトに関連付けられているすべてのモデル構築スレッドの実行を停止するために使います。

定義

Sub StopAllBuilds()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

StopAllBuilds メソッドは、各構築スレッドの実行が終了可能になった時に、それを停止する旨を通知するフラグを設定します。構築スレッドに対してフラグが設定されていると、そのスレッドのデータ モデラはスレッドの実行を終了し、必要なクリーンアップ操作を行います。

構築スレッドの現在の状態にアクセスするには、Status プロパティを使います。データ モデラによるスレッドの終了がまだ完了していない場合、モデラに対するそのスレッドの状態は PredBldShuttingDown です。スレッドが終了すると、構築識別子は有効な構築スレッドを示さなくなります。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

特定の構築スレッドを停止するには、Stop メソッドを使います。

関連項目

PredModelBuilder オブジェクト

PredModelBuilder.Start

PredModelBuilder.Status

PredModelBuilder.Stop


Product オブジェクト

このオブジェクトは、カタログ内の商品やバリエーションを処理するために使います。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | Product
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

次の表は、Product オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AncestorCategories | レコードセット | この商品の上に存在し、また直接間接を問わず、階層内にこの商品を持つカテゴリ名のレコードセットを含みます。 このプロパティは読み取り専用です。
CatalogName | 文字列 | この Product オブジェクトがメンバになっているカタログの名前を含みます。 このプロパティは読み取り専用です。
GetProductProperties | レコードセット | この商品のプロパティ値を格納するレコードセットを含みます。 このプロパティは読み取り専用です。
ParentCategories | レコードセット | この商品が直接属するカテゴリのレコードセットを含みます。 このプロパティは読み取り専用です。
PricingCategory | 文字列 | この商品の価格カテゴリの名前を含みます。 このプロパティは読み取りと書き込みが可能です。
ProductID | BSTR | この商品の一意識別子を含みます。 このプロパティは読み取り専用です。
RelatedCategories | レコードセット | この商品に関連するカテゴリすべてを記述するレコードセットを含みます。 このプロパティは読み取り専用です。
RelatedProducts | レコードセット | この商品に関連する商品すべてを記述するレコードセットを含みます。 このプロパティは読み取り専用です。
Variants | レコードセット | この商品のバリエーションすべてを記述するレコードセットを含みます (存在する場合)。 このプロパティは読み取り専用です。

次の表は、Product オブジェクトのメソッドを示しています。

メソッド | 説明
AddRelationshipToCategory | この商品から指定したカテゴリへの関連付けを追加します。
AddRelationshipToProduct | この商品から指定した別の商品への関連付けを追加します。
CreateVariant | 新しい商品バリエーションを作成します。
DeleteVariant | 商品バリエーションを削除します。
GetVariantProperties | 指定した商品バリエーションのプロパティを返します。
RemoveRelationshipToCategory | この商品と指定したカテゴリとの指定した関連付けを削除します。
RemoveRelationshipToProduct | この商品と指定した商品との指定した関連付けを削除します。
SetProductProperties | この商品とそのすべてのバリエーションにプロパティを設定します。
SetVariantProperties | この商品のバリエーションにプロパティを設定します。

解説

Product オブジェクトは従属オブジェクトです。このオブジェクトへの参照を取得するには、次のいずれかのプロパティにアクセスします。

  • ProductCatalog.CreateProduct

  • ProductCatalog.GetProduct


Product.AddRelationshipToCategory

このメソッドは、この商品から指定したカテゴリへの関連付けを追加するために使います。

定義

Sub AddRelationshipToCategory(
strRelatedCategoryName As String,
strRelationshipName As String,
Optional strRelationshipDescription As Variant
)

パラメータ

strRelatedCategoryName

関連付けの追加先のカテゴリの名前を含む文字列です。

strRelationshipName

関連付けの名前を含む文字列です。

strRelationshipDescription

指定すると、関連付けの記述を含む Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。
E_CAT_INVALID_RELATION | &H88980039 | 指定した関連付けは無効です。たとえば、カテゴリまたは商品をそれ自体に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | &H88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | &H88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_RELATIONSHIP_EXISTS | &H88980033 | 指定した関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

新しい関連付けには名前が必要です。これは strRelationshipName パラメータで指定します。また、記述を含むように指定することもできます。これは strRelationshipDescription パラメータで指定します。

同じ商品とカテゴリの間に複数の関連付けを作成することができます。ただし、この場合、作成したそれぞれの関連付けには一意の名前を指定する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'vDesc is a Variant of subtype String containing the description.
myProduct.AddRelationshipToCategory "Apparel", "Accessory", vDesc

関連項目

Product オブジェクト

Product.AddRelationshipToProduct

Product.RemoveRelationshipToCategory


Product.AddRelationshipToProduct

このメソッドは、この商品から指定した商品への関連付けを追加するために使います。

定義

Sub AddRelationshipToProduct(
varRelatedProductID As Variant,
strRelationshipName As String,
Optional strRelationshipDescription As Variant
)

パラメータ

varRelatedProductID

関連付けられた商品の ID を含む Variant です。

strRelationshipName

関連付けの名前を含む文字列です。

strRelationshipDescription

指定すると、関連付けの記述を含む Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_INVALID_RELATION | &H88980039 | 指定した関連付けは無効です。たとえば、商品をそれ自体に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | &H88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | &H88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | 指定した商品 ID が存在しません。
E_CAT_RELATIONSHIP_EXISTS | &H88980033 | 指定した関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

新しい関連付けには名前が必要です。これは strRelationshipName パラメータで指定します。また、記述を含むように指定することもできます。これは strRelationshipDescription パラメータで指定します。

同じ 2 つの商品の間に複数の関連付けを作成することができます。ただし、この場合、それぞれの関連付けには一意の名前を指定する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'vProdID is a Variant containing the product ID
'vDesc is a Variant of subtype String containing a description
'of the relationship
myProduct.AddRelationshipToProduct vProdID, "Accessory", vDesc

関連項目

Product オブジェクト

Product.AddRelationshipToCategory

Product.RemoveRelationshipToProduct


Product.AncestorCategories

AncestorCategories プロパティは読み取り専用の Recordset オブジェクトで、階層内でこの商品の上に存在するカテゴリの名前を含んでいます。

定義

Property AncestorCategories As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CIRCULAR_REFERENCE | &H88980037 | 循環参照はサポートされていません。循環参照は、カテゴリを階層内の複数の場所に配置します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

AncestorCategories プロパティに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

AncestorCategories プロパティは、Name という 128 文字のフィールドを 1 つだけ持つ Recordset オブジェクトです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

Product.ParentCategories


Product.CatalogName

CatalogName プロパティは読み取り専用の文字列で、この商品が属するカテゴリの名前を含んでいます。

定義

Property CatalogName As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


Product.CreateVariant

このメソッドは、現在の商品の新しい商品バリエーションを作成するために使います。商品に固有の属性だけが、新しいバリエーションに設定されます。

定義

Function CreateVariant(
varProductVariantID As Variant
) As Recordset

パラメータ

varProductVariantID

商品バリエーションの一意の ID を含む Variant です。

戻り値

このメソッドが正常に終了すると、そのバリエーションのプロパティを含むレコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_BLANK_VARIANT | &H8898004F | VariantID に空の値が指定されています。
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | &H88980032 | このカタログは、商品バリエーションをサポートしていません。これはカタログが作成されたときに決定します。変更はできません。
E_CAT_INVALID_VARIANTID | &H8898005C | VariantID の長さが 256 文字を超えています。
E_CAT_INVALIDVALUE_FOR_PROPERTY &H88980038 商品プロパティのいずれかに、無効な値が指定されています。

このエラーの原因として次が考えられます。

  • レコードセットのいずれかの値が、プロパティの最低値/最高値属性の要件を満たしていません。

  • 列挙型プロパティの値が、有効な値のリストで定義されていない値です。

  • 文字列が、プロパティに定義された最大長を超えているか、または最小長を満たしていません。
E_CAT_INVALIDVALUE_FOR_VARIANTID &H8898004D VariantID に無効な値が指定されています。

このエラーの原因として、VariantId の値が範囲外にあることが考えられます。
E_CAT_NO_VARIANTS_UNDER_PRODUCT | &H88980051 | この商品はバリエーションをサポートしていません。レギュラー商品の下にバリエーションを作成できません。
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | この商品はカタログから削除されています。
E_CAT_VARIANT_EXISTS | &H88980026 | 指定したバリエーションは既に存在しています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

varProductVariantID パラメータの値と種類は、商品バリエーションの一意の ID として指定されたプロパティで有効になっている必要があります。このプロパティ strProductVariantID は、カタログを作成するときに指定します。

作成済みのカタログがバリエーションをサポートしない場合、つまり strProductVariantID がカタログの作成時に指定されていない場合は、エラーが返されます。

正常に終了すると、メソッドは、ActiveX Data Object (ADO) レコードセットを返します。これには、新しい商品バリエーションに定義されたすべてのプロパティのフィールドと、oid という名前の Integer のフィールドが含まれています。oid フィールドは内部で使うもので、更新対象ではありません。返されたレコードセットは更新可能ですが、接続されていません。バリエーションのプロパティを変更するには、このレコードセットを SetVariantProperties メソッドに渡します。

商品バリエーションは、商品定義に格納されているプロパティを継承します。バリエーション固有でない商品プロパティの値は、Product オブジェクトからバリエーションに伝達されますが、バリエーション固有のプロパティは、それぞれのバリエーションに対して明示的に設定する必要があります。

バリエーション ID の値は、商品グループ内で一意である必要があります。同じカタログ内に、同じバリエーション ID を持つ商品バリエーションは 2 つ存在することができます。ただし、異なる商品グループに属していて、一意の商品識別子と一意のバリエーション識別子が異なっていることが条件です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

Set rsVariantProps = myProduct.CreateVariant("SKU4005XLA")

関連項目

Product オブジェクト

Product.DeleteVariant

Product.SetVariantProperties


Product.DeleteVariant

このメソッドは、指定した商品バリエーションを削除するために使います。

定義

Sub DeleteVariant(
varVariantID As Variant
)

パラメータ

varVariantID

バリエーションの一意の ID を含む Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | &H88980032 | このカタログは、商品バリエーションをサポートしていません。これはカタログが作成されたときに決定します。変更はできません。
E_CAT_VARIANT_DOESNT_EXIST | &H8898001F | バリエーションが存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'vVarID is a Variant containing the unique ID
'for the product variant.
myProduct.DeleteVariant vVarID

関連項目

Product オブジェクト

Product.CreateVariant


Product.GetProductProperties

GetProductProperties プロパティは読み取り専用のレコードセットで、この Product オブジェクトのプロパティを含んでいます。

定義

Property GetProductProperties As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | この商品は削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

GetProductProperties プロパティに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

返される単一行レコードセットには、商品定義用に定義されたすべてのフィールドと CatalogProduct レコードセットのすべての共通フィールドが含まれます。

返されたレコードセットは更新可能ですが、接続されていません。商品プロパティを変更するには、このレコードセットを SetProductProperties メソッドに渡します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

Product.SetProductProperties


Product.GetVariantProperties

このメソッドは、指定した商品バリエーションのプロパティを取得するために使います。

定義

Function GetVariantProperties(
varProductVariantID As Variant
) As Recordset

パラメータ

varProductVariantID

商品バリエーションの一意の ID を含む Variant です。

戻り値

このメソッドが正常に終了すると、バリエーション プロパティを含む Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | &H88980032 | このカタログは、商品バリエーションをサポートしていません。
E_CAT_VARIANT_DOESNT_EXIST | &H8898001F | この商品バリエーションはカタログから削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

ppRSProductVariant プロパティに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

このメソッドは、指定した商品バリエーションのプロパティを返します。varProductVariantID パラメータで指定されている商品バリエーションが商品に存在しない場合、メソッドは失敗します。

返された単一行のレコードセットには、この商品のバリエーションに定義されているすべてのプロパティのフィールドが含まれます。これらの後には次のフィールドが含まれています。

フィールド | 種類 | 説明
TimeStamp | Timestamp | なし
cy_list_price | Currency | 標準価格
oid | Integer | なし

oid フィールドは内部で使うもので、更新対象ではありません。

返されたレコードセットは更新可能ですが、接続されていません。商品プロパティを変更するには、このレコードセットを SetVariantProperties メソッドに渡します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'vVarID is a Variant containing the unique ID of the variant.
SET rsVariantProps = myProduct.GetVariantProperties(vVarID)

関連項目

Product オブジェクト

Product.SetVariantProperties


Product.ParentCategories

ParentCategories プロパティは読み取り専用のレコードセットで、この商品が直接属するカテゴリの名前を含んでいます。

定義

Property ParentCategories As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

商品がいずれのカテゴリにも含まれていないと、返されるレコードセットは空になり、その EOF プロパティは VARIANT_TRUE に設定されます。

返されるレコードセットには、Name という名前の 128 文字長の文字列フィールドが 1 つ含まれます。レコードセット内の各行には、この商品が属するカテゴリの名前が含まれます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

Product.AncestorCategories


Product.PricingCategory

PricingCategory プロパティは読み取りと書き込みが可能な文字列で、この商品の価格カテゴリの名前を含んでいます。

定義

Property PricingCategory As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。
E_CAT_PRICING_CAT_PRICELESS | &H8898002F | 指定したカテゴリには標準価格がありません。 標準価格を持たないカテゴリを価格カテゴリとして使うことはできません。
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | この商品は削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カテゴリを Pricing カテゴリとして使うと、一度の変更操作によって複数の商品の価格を設定することができます。それぞれの商品の価格を変更する必要はありません。商品グループに Pricing カテゴリを設定すると、その商品グループのすべてのバリエーションに対しても、その Pricing カテゴリが設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


Product.ProductID

ProductID プロパティは読み取り専用の文字列で、この商品の一意の ID を含んでいます。

定義

Property ProductID As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティの値は、この商品が属するカタログの ProductCatalog.IdentifyingProductProperty プロパティの値のコピーです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


Product.RelatedCategories

RelatedCategories プロパティは読み取り専用の Recordset オブジェクトで、この商品に関連付けられているカテゴリの名前を含んでいます。

定義

Property RelatedCategories As _Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

RelatedCategories プロパティに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
CategoryName | 文字列 (最大 128 文字) | カテゴリの名前です。
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前です。
RelationshipDescription | 文字列 (最大 256 文字) | 関連付けの記述です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

Product.RelatedProducts

Product.AddRelationshipToCategory


Product.RelatedProducts

RelatedProducts プロパティは読み取り専用の Recordset オブジェクトで、この商品に関連付けられている商品の名前を含んでいます。

定義

Property RelatedProducts As Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

RelatedProducts プロパティに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
<定義される ProductID フィールド> | 任意のデータ型 | このカタログ内の商品を一意に定義するフィールドです。
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前です。
RelationshipDescription | 文字列 (最大 128 文字) | 関連付けの記述です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


Product.RemoveRelationshipToCategory

このメソッドは、指定したカテゴリとこの商品との指定した関連付けを削除するために使います。

定義

Sub RemoveRelationshipToCategory(
strRelatedCategoryName As String,
strRelationshipName As String
)

パラメータ

strRelatedCategoryName

この商品との関連付けを削除するカテゴリの名前を含む文字列です。

strRelationshipName

削除する関連付けの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Remove the "Accessory" relationship this product has to
' the "Apparel" category

myProduct.RemoveRelationshipToCategory "Apparel", "Accessory"

関連項目

Product オブジェクト

Product.RelatedCategories

Product.AddRelationshipToCategory

Product.RemoveRelationshipToProduct


Product.RemoveRelationshipToProduct

このメソッドは、指定した商品とこの商品との指定した関連付けを削除するために使います。

定義

Sub RemoveRelationshipToProduct(
varRelatedProductID As Variant,
strRelationshipName As String
)

パラメータ

varRelatedProductID

この商品との関連付けを削除する商品の一意の ID を含む Variant です。

strRelationshipName

削除する関連付けの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

''vProdID is a Variant containing the unique ID of the related product.
myProduct.RemoveRelationshipToProduct(vProdID, "Accessory")

関連項目

Product オブジェクト

Product.RelatedProducts

Product.AddRelationshipToProduct

Product.RemoveRelationshipToCategory


Product.SetProductProperties

このメソッドは、この商品のプロパティを設定するために使います。

定義

Sub SetProductProperties(
pRSProduct As Recordset,
Optional fForceUpdate As Variant
)

パラメータ

pRSProduct

新しい商品プロパティを含む Recordset オブジェクトです。GetProductProperties メソッドによって返される更新済みレコードセットであることが必要です。

fForceUpdate

商品プロパティを強制的に更新するかどうかを決定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_INVALID_LISTPRICE | &H8898003C | 標準価格に指定した値が無効です。
E_CAT_INVALIDVALUE_FOR_PROPERTY &H88980038 商品プロパティのいずれかに、無効な値が指定されています。このエラーが返されるのは次の場合です。
  • いずれかのプロパティが最小/最大条件を満たしていません。

  • 文字列データまたは列挙データのプロパティが最大長を超えています。

  • 列挙型プロパティの値が定義済みの有効な値のいずれにも当てはまりません。
E_CAT_PRODUCT_CHANGED | &H88980027 | この商品プロパティは、前回読み取られてから変更されています。このエラーが返されるのは、fForceUpdate パラメータが False に設定されている場合だけです。
E_CAT_PRODUCT_DOESNT_EXIST | &H8898001E | 指定した商品 ID が存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

商品プロパティを変更するには、SetProductProperties メソッドを使います。pRSProduct パラメータは、この商品の新しいプロパティ値を記述する Recordset オブジェクトを指定します。このメソッドは、ProductId や VariantID など、カタログから派生したフィールドを更新しません。このメソッドは、商品グループで呼び出されると、その商品グループに属するすべてのバリエーションのプロパティを更新します。

GetProductProperties プロパティによって返される Recordset オブジェクトを使うと、エラー検出のために、そのタイムスタンプをこのメソッドで更新されるレコードと比較することができます。

fForceUpdate パラメータが False に設定されていて、かつ pRSProduct レコードセットが読み取られた後でこの商品のプロパティ値が変更されている場合、メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'This example changes the list price for a product
set rsProductProps = myProduct.GetProductProperties
rsProductProps.fields("cy_list_price").value = CCur(1.398)
myProduct.SetProductProperties rsProductProps, TRUE

関連項目

Product オブジェクト

Product.GetProductProperties


Product.SetVariantProperties

このメソッドは、この商品のバリエーションのプロパティを設定するために使います。

定義

Sub SetVariantProperties(
pRSNewState As _Recordset,
Optional fForceUpdate As Variant
)

パラメータ

pRSNewState

新しい商品バリエーション プロパティを含む Recordset オブジェクトです。GetVariantProperties プロパティまたは CreateVariant メソッドによって返されるレコードセットであることが必要です。

fForceUpdate

商品バリエーション プロパティを強制的に更新するかどうかを決定する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | &H88980032 | カタログがバリエーションをサポートしていません。
E_CAT_INVALIDVALUE_FOR_PROPERTY &H88980038 商品プロパティのいずれかに、無効な値が指定されています。このエラーが返されるのは次の場合です。
  • いずれかのプロパティが最小/最大条件を満たしていません。

  • 文字列データまたは列挙データのプロパティが最大長を超えています。

  • 列挙型プロパティの値が定義済みの有効な値のいずれにも当てはまりません。
E_CAT_PRODUCT_CHANGED | &H88980027 | この商品プロパティは、前回読み取られてから変更されています。このエラーが返されるのは、fForceUpdate パラメータが False に設定されている場合だけです。
E_CAT_VARIANT_DOESNT_EXIST | &H8898001F | この商品バリエーションはカタログから削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

商品バリエーションのプロパティを変更するには、SetVariantProperties メソッドを使います。pRSNewState パラメータは、この商品バリエーションの新しいプロパティ値を記述する Recordset オブジェクトを指定します。GetVariantProperties プロパティ、または CreateVariant メソッドによって返されるレコードセットを使うと、エラー検出のためにタイムスタンプを比較することができます。

fForceUpdate パラメータが False に設定されていて、かつ pRSNewState パラメータが変更されている場合、メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myProduct.SetVariantProperties pRSNewState, fForceUpdate

関連項目

Product オブジェクト

Product.GetVariantProperties


Product.Variants

Variants プロパティは読み取り専用のレコードセットで、この商品のすべてのバリエーションを記述します。

定義

Property Variants(
Optional strPropertyToSortOn As Variant
) As Recordset

パラメータ

strPropertyToSortOn

返された Recordset オブジェクトを並べ替えるプロパティを含む Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

この商品にバリエーションが存在しない場合、返されるレコードセットは空になり、その EOF プロパティは VARIANT_TRUE に設定されます。

返されるレコードセットには、この商品のバリエーションに定義されているすべてのプロパティのフィールドと、次のフィールドが含まれます。

フィールド | 種類 | 説明
TimeStamp | Timestamp | なし
cy_list_price | Currency | 標準価格
<定義されたバリエーション ID> | 任意のデータ型 | なし

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET rsVariants = myProduct.Variants("Size")

関連項目

Product オブジェクト


ProductCatalog オブジェクト

このオブジェクトは、カタログの変更、およびカタログの内容の修正のために使います。ProductCatalog オブジェクトは、商品カタログ システム内のカタログを処理するためのプライマリ オブジェクトです。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | ProductCatalog
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

次の表は、ProductCatalog オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
BaseCatalogName | BSTR | カスタム カタログの基本カタログの名前を含みます。 このプロパティは読み取り専用です。
CatalogName | BSTR | このカタログの名前を含みます。 このプロパティは読み取り専用です。
IdentifyingProductProperty | 文字列 | 商品と商品グループを一意に識別するために使う列の名前を含みます。 このプロパティは読み取り専用です。
IdentifyingVariantProperty | 文字列 | 商品バリエーションを一意に識別するために使う列の名前を含みます。 このプロパティは読み取り専用です。
RootCategories | _Recordset | このカタログのルート カテゴリであるカテゴリの名前を含むレコードセットを返します。 このプロパティは読み取り専用です。
RootProducts | _Recordset | このカタログの一部であるが、いずれのカテゴリにも含まれていない商品を含むレコードセットを返します。 このプロパティは読み取り専用です。
SearchableCategories | _Recordset | レコードセットを返します。このレコードセットには、検索対象として定義されたカテゴリの名前を含むフィールドが 1 つあります。 このプロパティは読み取り専用です。

次の表は、ProductCatalog オブジェクトのメソッドを示しています。

メソッド | 説明
AddSpecificationSearchClause | このカタログに対して条件指定検索を実行するときに、検索コンテキストに検索条件を追加します。
BeginSpecificationSearch | このカタログに対する条件指定検索を開始します。
CreateCategory | 指定したカテゴリ定義に基づいて新しいカテゴリを作成します。
CreateCustomCatalog | 新しいカスタム カタログ テンプレートを作成します。返されるレコードセットは接続が解除されていて、更新可能です。
CreateProduct | 指定した商品定義に基づいて新しい商品を作成します。
DeleteCategory | このカタログからカテゴリを削除します。
DeleteCustomCatalog | このカタログからカスタム カタログを削除します。
DeleteProduct | このカタログから商品を削除します。
GenerateCustomCatalog | 指定したカスタム カタログに、このカタログから派生したデータを生成します。
GetCatalogAttributes | このカタログの属性を返します。返されるレコードセットは接続が解除されていて、更新可能です。
GetCategory | 指定したカテゴリを返します。
GetCategoryCustomPrice | 指定したカテゴリの特別価格を返します。
GetCustomCatalogAttributes | 指定したカスタム カタログの属性を返します。返されるレコードセットは接続が解除されていて、更新可能です。
GetProduct | 指定した商品を返します。
GetProductVariant | 指定した商品バリエーションのすべてのプロパティを含む行を 1 つ持つレコードセットを返します。
GetSpecificationSearchClauses | レコードセットを返します。このレコードセットには、ある条件指定検索のすべての検索文字列を含むフィールドが 1 つあります。
GuaranteedSpecificationSearch | 一致が見つかるまで検索条件を削除しながら、条件指定検索を実行します。
PerformSpecificationSearch | 指定した検索コンテキストを使って、このカタログに対して条件指定検索を実行します。
RegenerateFreeTextSearchIndex | このカタログのフリー テキスト検索用インデックスを更新します。
RemoveSpecificationSearchClause | 指定した検索コンテキストから最後の検索条件を削除します。
SetCatalogAttributes | このカタログの属性を設定します。
SetCategoryCustomPrice | 指定したカテゴリに対する特別価格を定義します。
SetCustomCatalogAttributes | 指定したカスタム カタログの属性を設定します。

解説

ProductCatalog オブジェクトは従属オブジェクトです。このオブジェクトへの参照を取得するには、次のいずれかのメソッドを呼び出します。

  • CatalogManager.GetCatalog

  • CatalogManager.CreateCatalog

注

  • 検索対象としての ProductCatalogs オブジェクトの数は制限されています。256 より多くの ProductCatalog オブジェクトを対象にフルテキスト検索を実行すると、失敗します。これは SQL Server 2000 での制限事項です。


ProductCatalog.AddSpecificationSearchClause

このメソッドは、このカタログの条件指定検索に条件を追加するために使います。

定義

Sub AddSpecificationSearchClause(
strClause As String,
pstrSearchHandle As Variant
)

パラメータ

strClause

指定された条件指定検索に追加する検索文字列を含む文字列です。

pstrSearchHandle

検索文字列を追加する条件指定検索の状態を含む Variant です。この Variant は、更新した条件指定検索の状態を返すためにも使います。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

条件指定検索を実行すると、strClause パラメータに含まれている条件指定句が既存の条件指定句に追加され、そのまま変更されずに SQL Server に送られます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myProductCatalog.AddSpecificationSearchClause strClause, pstrSearchHandle

関連項目

ProductCatalog オブジェクト

ProductCatalog.BeginSpecificationSearch

ProductCatalog.GetSpecificationSearchClauses

ProductCatalog.PerformSpecificationSearch


ProductCatalog.BaseCatalogName

BaseCatalogName プロパティは読み取り専用の文字列で、このカタログに対する基本カタログの名前を含んでいます。これがカスタム カタログでない場合は、基本カタログがないため、BaseCatalogName プロパティには手持ちのカタログの名前が含まれます。

定義

Property BaseCatalogName() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト


ProductCatalog.BeginSpecificationSearch

このメソッドは、カタログに対する条件指定検索を開始するために使われます。

定義

Function BeginSpecificationSearch(
strCategoryName As String,
Optional pRSInitialPropValuesList As Variant,
Optional plTotalRecordsAvailable As Variant
) As String

パラメータ

strCategoryName

検索するカテゴリの名前を含む文字列です。

pRSInitialPropValuesList

初期プロパティ値のレコードセットを返すために使う Variant です。

plTotalRecordsAvailable

利用できるレコードの総数を返すために使う Variant です。

戻り値

このメソッドが正常に終了すると、この条件指定検索の状態を含む文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H88980041 | 指定したカテゴリはカタログ内に存在していません。
E_CAT_CATEGORY_NOT_SEARCHABLE | &H88980034 | 指定したカテゴリは条件指定検索の対象ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

省略可能な pRSInitialPropValuesList パラメータは、単一行のレコードセットです。返されるレコードセットには、指定したカテゴリの下にある商品の検索対象であるプロパティごとに、1 つのフィールドが含まれています。各フィールドには SAFEARRAY が含まれています。それぞれの SAFEARRAY には、そのカテゴリの下にあるすべての商品に存在するすべての値のセットが含まれています。検索対象として指定されているプロパティだけが、レコードセットに返されます。

検索対象であるカテゴリすべてに Null が含まれる場合、pRSInitialPropValuesList パラメータは Null に設定され、plTotalRecordsAvailable パラメータは 0 になります。

カテゴリを検索対象として指定するには、IsSearchable プロパティを True に設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'
strSearchHandle = myProductCatalog.BeginSpecificationSearch(strCategoryName, pRSInitialPropValuesList)

関連項目

ProductCatalog オブジェクト

ProductCatalog.AddSpecificationSearchClause

ProductCatalog.GetSpecificationSearchClauses

ProductCatalog.PerformSpecificationSearch


ProductCatalog.CatalogName

CatalogName プロパティは読み取り専用の文字列で、このカタログの名前を含んでいます。

定義

Property CatalogName() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト


ProductCatalog.CreateCategory

このメソッドは、新しいカテゴリを作成するために使います。

定義

Function CreateCategory(
strDefinitioName As String,
strCategoryName As String,
Optional strParentCategoryName As Variant,
Optional fIsSpecificationSearchable As Variant
) As Category

パラメータ

strDefinitioName

作成するカテゴリの基本カテゴリ定義の名前を含む文字列です。

strCategoryName

作成されるカテゴリの名前を含む文字列です。

strParentCategoryName

新しいカテゴリの親カテゴリ名を含む Variant です (親カテゴリが存在する場合)。

fIsSpecificationSearchable

このカテゴリが条件指定検索であるかどうかを決定するための Variant です。

戻り値

このメソッドが正常に終了すると、新しく作成された Category オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定した親カテゴリは存在していません。
E_CAT_CATEGORY_EXISTS | &H8898001D | 新しいカテゴリに対して指定した名前は既に使われています。 カテゴリの名前は、システム全体においてグローバルに一意である必要があります。
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した定義は存在しません。
E_CAT_INVALID_CATEG_LENGTH | &H88980047 | カテゴリ名が 128 文字を超えています。
E_CAT_PRODUCT_DEFN_FOR_CATEGORY | &H8898004B | 指定した定義はカテゴリ定義ではなく、商品定義です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET oMyCategory = myProductCatalog.CreateCategory("BasicCategoryDefinition", "T-Shirts", "Apparel", TRUE)

関連項目

ProductCatalog オブジェクト

ProductCatalog.GetCategory

ProductCatalog.DeleteCategory


ProductCatalog.CreateCustomCatalog

このメソッドは、カスタム カタログに対して新しいテンプレートを作成するために使います。

定義

Function CreateCustomCatalog(
strCCName As String
) As _Recordset

パラメータ

strCCName

作成するカスタム カタログの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、新しく作成されたカスタム カタログのプロパティを含むレコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_EXISTS | &H88980001 | 指定した名前を持つ基本カタログが既に存在しています。 カタログ名とカスタム カタログ名は、商品カタログ システム全体で一意である必要があります。
E_CAT_CUSTOMCAT_EXISTS | &H88980022 | 指定した名前を持つカスタム カタログが既に存在しています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、返される単一行のレコードセットに含まれるフィールドを示しています。

フィールド | データ型 | 説明
CustomCatalogName | 文字列 (256 文字) | カスタム カタログの名前です。
CatalogName | 文字列 (256 文字) | 基本カタログの名前です。
CustomCatalogID | Integer | カスタム カタログを一意に識別するフィールド名です。
TimeStamp | Timestamp | なし。

返されるレコードセットは接続が解除されていて、更新可能です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET rsMyCustomCat = myProductCatalog.CreateCustomCatalog("SeniorDiscountCatalog")

関連項目

ProductCatalog オブジェクト

ProductCatalog.DeleteCustomCatalog

ProductCatalog.GenerateCustomCatalog

ProductCatalog.SetCategoryCustomPrice


ProductCatalog.CreateProduct

このメソッドは、指定したパラメータに基づいて、カタログ内に新しい商品を作成するために使います。

定義

Function CreateProduct(
strDefinitionName As String,
varProductID As Variant,
cyListPrice As Currency,
Optional strParentCategoryName As Variant
) As Product

パラメータ

strDefinitionName

商品の商品定義の名前を含む文字列です。

varProductID

作成する商品の一意の商品 ID を含む Variant です。データ型は、このカタログ内の商品を一意に識別するために使われるプロパティと一致している必要があります。

cyListPrice

作成する商品の標準価格を含む Currency オブジェクトです。

strParentCategoryName

作成する商品の親カテゴリとして指定するカテゴリの名前を含む Variant です。

戻り値

このメソッドが正常に終了すると、作成された Product オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DEFN_FOR_PRODUCT | &H8898004A | 指定した定義はカテゴリ定義です。商品定義ではありません。
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。
E_CAT_DEFINITION_DOESNT_EXIST | &H8898000B | 指定した定義は存在しません。
E_CAT_PRODUCT_EXISTS | &H8898001B | 指定した商品 ID は既に使われています。 商品 ID はカタログ内で一意である必要があります。
E_CAT_INVALID_PRODUCTID | &H8898005B | ProductID の長さが 256 文字を超えています。
E_CAT_INVALIDVALUE_FOR_PRODUCTID | &H8898004E | ProductID に無効な値が指定されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

商品グループは、バリエーションを含む商品です。

新しい商品が単一の商品として作成されるか、商品グループとして作成されるかは、その商品が基づく定義のプロパティによって決定します。商品の作成のために使われる定義にバリエーション プロパティが含まれている場合、新しく作成される商品は、商品グループになります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET oMyNewProduct = myProductCatalog.CreateProduct("BasicProduct", "SKU3004", cyListPrice, "Apparel")

関連項目

ProductCatalog オブジェクト

ProductCatalog.DeleteProduct

ProductCatalog.GetProduct


ProductCatalog.DeleteCategory

このメソッドは、商品カタログ システムからカテゴリを削除するために使います。

定義

Sub DeleteCategory(
strCategoryName As String
)

パラメータ

strCategoryName

削除されるカテゴリの名前を含む文字列です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

削除したカテゴリだけに属していた商品やカテゴリは孤立します。カテゴリはルート カテゴリになり、商品はルート商品になります。次のような場合を考えてみます。CategoryA と CategoryB は、CategoryX の子カテゴリです。CategoryA は、CategoryY の子カテゴリでもあります。CategoryX を削除すると、CategoryB はルート カテゴリになりますが、CategoryA はそうなりません。

このカテゴリがカスタム カタログの価格カテゴリとして指定されている場合は、価格カテゴリとして削除されます。このカテゴリを価格カテゴリとして使っている商品は、すべて元の価格に戻り、カテゴリは価格カテゴリとして削除されます。

例

myProductCatalog.DeleteCategory "Apparel"

関連項目

ProductCatalog オブジェクト

ProductCatalog.RootCategories

ProductCatalog.CreateCategory

ProductCatalog.GetCategory


ProductCatalog.DeleteCustomCatalog

このメソッドは、商品カタログ システムからカスタム カタログを削除するために使います。

定義

Sub DeleteCustomCatalog(
strCCName As String
)

パラメータ

strCCName

削除されるカスタム カタログの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カスタム カタログに関連付けられているデータはすべて削除されます。カスタム カタログが生成されていた場合は、生成されたカタログも削除されます。

例

myProductCatalog.DeleteCustomCatalog "SeniorDiscountCatalog"

関連項目

ProductCatalog オブジェクト

ProductCatalog.CreateCustomCatalog

ProductCatalog.GenerateCustomCatalog


ProductCatalog.DeleteProduct

このメソッドは、商品カタログ システムから商品を削除するために使います。

定義

Sub DeleteProduct(
varProductID As Variant
)

パラメータ

varProductID

削除する商品の一意の ID を含む Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_EXIST | &H88980002 | カタログが存在していません。
E_CAT_PRODUCT_DOESNT_EXIST | &H88980010 | 指定した商品は存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、SQL Server データベースから商品を削除します。Product オブジェクトは、パフォーマンスの向上のために情報をキャッシュします。このキャッシュがあるので、Product オブジェクトの CatalogName メソッドと ProductID メソッドは、DeleteProduct メソッドが呼び出された後も引き続き古い値を返します。Variants、ParentCategories、AncestorCategories、RelatedCategories、および RelatedProducts の各プロパティは、空のレコードセットを返しますが、エラー メッセージは返しません。

注意

  • バリエーションを含む商品を削除すると、そのバリエーションもすべて削除されます。

例

myProductCatalog.DeleteProduct 654321

関連項目

ProductCatalog オブジェクト

ProductCatalog.CreateProduct

ProductCatalog.GetProduct


ProductCatalog.GenerateCustomCatalog

このメソッドは、カスタム カタログにデータを生成したり、カスタム カタログを更新して基本カタログの最新バージョンを反映するために使います。基本カタログのコピーが作成され、特別価格やルールが適用されてカスタム カタログが生成されます。

定義

Sub GenerateCustomCatalog(
strCustomCatalogName As String
)

パラメータ

strCustomCatalogName

カスタム カタログ名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CUSTOMCAT_DOESNT_EXIST | &H88980024 | 指定したカスタム カタログは存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは、カスタム カタログ テンプレートにデータを生成するために使います。カスタム カタログが既に存在している場合、既存のデータは削除されます。生成されたカスタム カタログは、このメソッドによって生成された時点に存在した基本カタログのコピーです。カスタム カタログ内の商品の価格は、SetCategoryCustomPrice メソッドによって設定された特別価格ルールに基づいて決定します。このメソッドによって生成されたカスタム カタログは、その後はほかのカタログと同様に扱うことができます。

カスタム カタログは既存の基本カタログのコピーにすぎず、基本カタログに動的にリンクされていないので、基本カタログに加えた変更は、そこから派生しているカスタム カタログに自動的に反映されません。同様に、カスタム カタログに変更を加えても、その変更が自動的に基本カタログに返されることはありません。このメソッドは、カスタム カタログを更新して基本カタログの最新バージョンを反映するために使います。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

例

myProductCatalog.GenerateCustomCatalog "SeniorDiscountCatalog"

関連項目

ProductCatalog オブジェクト

ProductCatalog.CreateCustomCatalog

ProductCatalog.DeleteCustomCatalog

ProductCatalog.SetCategoryCustomPrice


ProductCatalog.GetCatalogAttributes

このメソッドは、このカタログの属性を取得するために使います。返されるレコードセットは接続が解除されていて、更新可能です。

定義

Function GetCatalogAttributes() As _Recordset

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、このカタログの属性を含むレコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返されるレコードセットは接続が解除されていて、更新可能です。次の表は、返されたレコードセットに含まれるフィールドを示しています。

フィールド | データ型 | 説明
CatalogName | 文字列 (128 文字) | カタログの名前です。
Locale | Integer | なし。
StartDate | Date/Time | なし。
End Date | Date/Time | なし。
VariantID | 文字列 (128 文字) | バリエーションを一意に識別するフィールド名です。
ProductID | 文字列 (128 文字) | 商品を一意に識別するフィールド名です。
Currency | 文字列 (128 文字) | なし。
WeightMeasure | 文字列 (128 文字) | なし。
TimeStamp | Timestamp | なし。
CatalogID | Integer | なし。
CustomCatalog | Boolean | このレコードセットがカスタム カタログかどうかを示すフラグです。値が True の場合、カスタム カタログを示します。
FreeTextIndexCreated | Date/Time | なし。
ProductTableUpdated | Date/Time | なし。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET rsMyCatAttribs = myProductCatalog.GetCatalogAttributes

関連項目

ProductCatalog オブジェクト

ProductCatalog.GetCustomCatalogAttributes

ProductCatalog.SetCatalogAttributes


ProductCatalog.GetCategory

このメソッドは、カタログから指定したカテゴリを取得するために使います。

定義

Function GetCategory(
strCategoryName As String
) As Category

パラメータ

strCategoryName

返されるカテゴリの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定した Category オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET oMyCategory = myProductCatalog.GetCategory "Apparel"

関連項目

ProductCatalog オブジェクト

ProductCatalog.CreateCategory

ProductCatalog.DeleteCategory


ProductCatalog.GetCategoryCustomPrice

このメソッドは、指定したカスタム カタログとカテゴリから、特別価格と特別価格の型を取得するために使います。

定義

Sub GetCategoryCustomPrice(
strCCName As String,
strCategoryName As String,
peCustomPrice As Variant,
pfpCustomPriceAmount As Variant
)

パラメータ

strCCName

カスタム カタログの名前を含む文字列です。

strCategoryName

特別価格が返されるカテゴリ名を含む文字列です。

peCustomPrice

特別価格の型を返すために使う Variant です。有効な値は CatalogCustomPriceEnum 列挙型から取得します。有効な値については、下の "解説" を参照してください。

pfpCustomPriceAmount

特別価格調整を返すために使う Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | 指定したカテゴリは存在しません。
E_CAT_CUSTOMCAT_DOESNT_EXIST | &H88980024 | 指定したカスタム カタログは存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、CatalogCustomPriceEnum 列挙型の値と関連付けられた名前を示し、その使用方法を説明しています。

名前 | 値 | 説明
cscNoCustomPrice | 0 | 特別価格は基本価格と等価です。
cscPercentageMultiplier | 1 | 特別価格は、pfpCustomPriceAmount パラメータのパーセント値を基本価格に乗じた値です。
cscAddFixedAmount | 2 | 特別価格は、pfpCustomPriceAmount を基本価格に加算した値です。
cscReplacePrice | 3 | 特別価格は pfpCustomPriceAmount です。
cscInvalidCustomPrice | -1 | 予約されています。

カテゴリがカスタム カテゴリとして指定されていないと、peCustomPrice パラメータと pfpCustomPriceAmount パラメータは 0 に設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myProductCatalog.GetCategoryCustomPrice "SeniorDiscout", "Shoes", cscPercentageMultiplier, 90

関連項目

ProductCatalog オブジェクト

ProductCatalog.SetCategoryCustomPrice


ProductCatalog.GetCustomCatalogAttributes

このメソッドは、指定したカスタム カタログの属性を取得するために使います。

定義

Function GetCustomCatalogAttributes(
strCCName As String
) As _Recordset

パラメータ

strCCName

カスタム カタログの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、カスタム カタログ属性を含むレコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

次の表は、返される単一行のレコードセットに含まれるフィールドを示しています。

フィールド | データ型 | 説明
CustomCatalogName | 文字列 (最大 128 文字の Unicode 文字) | カスタム カタログの名前です。
CatalogName | 文字列 (最大 128 文字の Unicode 文字) | 基本カタログの名前です。
CustomCatalogID | Integer | カスタム カタログを一意に識別するフィールド名です。
TimeStamp | Timestamp | なし。

返されるレコードセットは接続が解除されていて、更新可能です。変更できるフィールドは、CustomCatalogName パラメータだけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET rsMyCustomCatAttribs = myProductCatalog.GetCustomCatalogAttributes("SeniorDiscountCatalog")

関連項目

ProductCatalog オブジェクト

ProductCatalog.CreateCustomCatalog

ProductCatalog.SetCustomCatalogAttributes


ProductCatalog.GetProduct

このメソッドは、カタログから指定した商品を取得するために使います。

定義

Function GetProduct(
varProductID As Variant
) As Product

パラメータ

varProductID

この商品の一意の ID を含む Variant です。

戻り値

このメソッドが正常に終了すると、指定された商品が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET oMyProduct = myProductCatalog.GetProduct("SKU4005")

関連項目

ProductCatalog オブジェクト

ProductCatalog.CreateProduct

ProductCatalog.DeleteProduct


ProductCatalog.GetProductVariant

このメソッドは、指定した商品バリエーションのプロパティを取得するために使います。

定義

Function GetProductVariant(
varProductID As Variant,
varVariantID As Variant
) As _Recordset

パラメータ

varProductID

商品ファミリの一意の ID を含む Variant です。

varVariantID

商品バリエーションの一意の ID を含む Variant です。

戻り値

このメソッドが正常に終了すると、指定されたバリエーションのプロパティを含むレコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | &H88980032 | このカタログはバリエーションをサポートしていません。これはカタログが作成されたときに決定します。変更はできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

バリエーションのすべてのプロパティを持つ単一行のレコードセットが返されます。返されるレコードセットのフィールドは、そのレコードセットが基づく定義に関連付けられているプロパティによって決定します。商品プロパティとバリエーション プロパティの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET rsVariantProps = myProductCatalog.GetProductVariant("SKU4007", "Blue")

関連項目

ProductCatalog オブジェクト

ProductCatalog.IdentifyingVariantProperty


ProductCatalog.GetSpecificationSearchClauses

このメソッドは、指定した条件指定検索の条件を取得するために使います。

定義

Function GetSpecificationSearchClauses(
strSearchHandle As String
) As _Recordset

パラメータ

strSearchHandle

条件指定検索ハンドルを含む文字列です。

戻り値

このメソッドが正常に終了すると、条件指定検索文字列を含むコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

返されるレコードセットには、Clause という名前の可変長の文字列フィールドが 1 つ、そして存在する条件ごとに行が 1 つ含まれています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'strSearchHandle contains a search handle returned
'from AddSpecificationSearchClause or BeginSpecificationSearch
SET rsMySearchClauses = myProductCatalog.GetSpecificationSearchClauses(strSearchHandle)

関連項目

ProductCatalog オブジェクト

ProductCatalog.AddSpecificationSearchClause

ProductCatalog.RemoveSpecificationSearchClause


ProductCatalog.GuaranteedSpecificationSearch

このメソッドは、カタログに対して条件指定検索を実行するときに、結果を保証するために使います。

定義

Function GuaranteedSpecificationSearch(
pstrSearchHandle As Variant,
Optional eClassTypeRequired As Variant,
Optional lDesiredRecords As Variant,
Optional plTotalRecordsAvailable As Variant,
Optional pRSNewPropValuesList As Variant,
Optional vrPropertiesRequired As Variant
) As _Recordset

パラメータ

pstrSearchHandle

条件指定検索ハンドルを含む Variant です。

eClassTypeRequired

目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

lDesiredRecords

目的のレコードの数を含む Variant です。

plTotalRecordsAvailable

利用できるレコードの総数を返すために使う Variant です。

pRSNewPropValuesList

新しいプロパティ値のリストを返すために使う Recordset です。

vrPropertiesRequired

カンマ区切り文字列に必要なプロパティを含む Variant です。

戻り値

このメソッドが正常に終了すると、検索結果を含むレコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
S_FALSE &H00000001 この値が返されるのは、pRSNewPropValuesList パラメータが指定されている場合と、次の場合です。
  • 条件指定検索の対象として指定したカタログにプロパティがありません。

  • 条件指定検索の対象として指定したカテゴリの下に商品がありません。
E_CAT_CATEGORY_NOT_EXISTS_NOT_SEARCHABLE | &H88980049 | 指定したカテゴリが存在していないか、条件指定検索の対象ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは PerformSpecificationSearch メソッドに類似したものです。省略可能な出力パラメータ pRSNewPropValuesList は、単一行のレコードセットです。このレコードセットには、BeginSpecificationSearch メソッドで指定されたカテゴリの下にある商品の検索対象プロパティごとにフィールドが 1 つ含まれています。各フィールドには SAFEARRAY が含まれています。SAFEARRAY は、そのプロパティにある異なる値のセットを含んでいます。このセットは、検索ハンドル内の検索文字列に一致するすべての商品が持つ値すべてです。検索対象として指定されているプロパティだけが、レコードセットに返されます。プロパティを検索対象として指定するには、そのプロパティの IncludeInSpecSearch 属性を True に設定します。

このメソッドは、一致が見つかるまで、追加されたのと逆の順序で検索条件を削除していくことによって、カタログに対する条件指定検索で必ず結果が返されるようにします。したがって、条件指定検索には、重要度の高い順に条件を追加するようにしてください。

このメソッドによって返される Recordset オブジェクトには、vrPropertiesRequired パラメータのプロパティ名ごとにフィールドが 1 つ含まれています。パラメータを省略すると、Recordset オブジェクトには対応するフィールドがすべて含まれます。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

注

  • 先頭が数字であるフィールド名、およびスペースを含むフィールド名は、角かっこで囲む必要があります。フィールド名の書式が正しく設定されていないと、データ エラーが発生します。たとえば、"[123_Prop1],[123_ Prop2]" が正しい書式になります。vrPropertiesRequired プロパティを省略すると、すべてのフィールドのデータが正しく返されます。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'strSearchHandle contains a search handle returned
'from AddSpecificationSearchClause or BeginSpecificationSearch
'The following parameters should be examined after the call returns.
'plTotalRecordsAvailable is a Long
'pRSNewPropValuesList is an empty recordset
SET rsMySearchResults = myProductCatalog.GuaranteedSpecificationSearch('strSearchHandle , 20, plTotalRecordsAvailable, pRSNewPropValuesList)

関連項目

ProductCatalog オブジェクト

ProductCatalog.AddSpecificationSearchClause

ProductCatalog.PerformSpecificationSearch

ProductCatalog.RemoveSpecificationSearchClause


ProductCatalog.IdentifyingProductProperty

IdentifyingProductProperty プロパティは読み取り専用の文字列で、このカタログ内の商品の一意識別子フィールドの名前を含んでいます。

定義

Property IdentifyingProductProperty() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

商品 ID は ProductCatalog オブジェクトにキャッシュされます。このキャッシュがあるので、このメソッドは、カタログが削除された後も引き続き古い値を返すことができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

ProductCatalog.IdentifyingVariantProperty


ProductCatalog.IdentifyingVariantProperty

IdentifyingProductVariantProperty プロパティは読み取り専用の文字列で、このカタログ内の商品バリエーションの一意識別子フィールドの名前を含んでいます。

定義

Property IdentifyingVariantProperty() As String

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

バリエーション ID は ProductCatalog オブジェクトにキャッシュされます。このキャッシュがあるので、このメソッドは、カタログが削除された後も引き続き古い値を返すことができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

ProductCatalog.IdentifyingProductProperty


ProductCatalog.PerformSpecificationSearch

このメソッドは、カタログに対して条件指定検索を実行するために使います。

定義

Function PerformSpecificationSearch(
strSearchHandle As String,
Optional eClassTypeRequired As Variant,
Optional lDesiredRecords As Variant,
Optional plTotalRecordsAvailable As Variant,
Optional pRSNewPropValuesList As Variant,
Optional vrPropertiesRequired As Variant
) As _Recordset

パラメータ

strSearchHandle

実行する検索の名前を含む文字列です。

eClassTypeRequired

目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

lDesiredRecords

目的のレコードを含む Variant です。

plTotalRecordsAvailable

利用できるレコードの総数を返すために使う Variant です。

pRSNewPropValuesList

新しいプロパティ値のリストの Recordset を返すために使う Variant です。

vrPropertiesRequired

カンマ区切り文字列に必要なプロパティを含む Variant です。

戻り値

このメソッドが正常に終了すると、検索結果を含むレコードセットが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
S_FALSE &H00000001 この値が返されるのは、pRSNewPropValuesList パラメータが指定されている場合と、次の場合です。
  • 条件指定検索の対象として指定したカタログにプロパティがありません。

  • 条件指定検索の対象として指定したカテゴリの下に商品がありません。
E_CAT_CATEGORY_NOT_EXISTS_NOT_SEARCHABLE | &H88980049 | 指定したカテゴリが存在していないか、条件指定検索の対象ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

PerformSpecificationSearch メソッドは、指定した条件指定検索ハンドルに追加されたすべての条件を使って、クエリを実行します。

省略可能な出力パラメータ pRSNewPropValuesList は、単一行のレコードセットです。このレコードセットには、BeginSpecificationSearch メソッドで指定されたカテゴリの下にある商品の検索対象プロパティごとにフィールドが 1 つ含まれています。各フィールドには SAFEARRAY が含まれています。SAFEARRAY は、そのプロパティにある異なる値のセットを含んでいます。このセットは、検索ハンドル内の検索文字列に一致するすべての商品が持つ値すべてです。検索対象として指定されているプロパティだけが、レコードセットに返されます。プロパティを検索対象として指定するには、そのプロパティの IncludeInSpecSearch 属性を True に設定します。

このメソッドによって返される Recordset オブジェクトには、vrPropertiesRequired パラメータのプロパティ名ごとにフィールドが 1 つ含まれています。これには常に CatalogName フィールドが含まれます。パラメータを省略すると、Recordset オブジェクトには対応するフィールドがすべて含まれます。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

注

  • 先頭が数字であるフィールド名、およびスペースを含むフィールド名は、角かっこで囲む必要があります。フィールド名の書式が正しく設定されていないと、データ エラーが発生します。たとえば、"[123_Prop1],[123_ Prop2]" が正しい書式になります。vrPropertiesRequired プロパティを省略すると、すべてのフィールドのデータが正しく返されます。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'strSearchHandle contains a search handle returned
'from AddSpecificationSearchClause or BeginSpecificationSearch
'The following parameters should be examined after the call returns.
'plTotalRecordsAvailable is a Long
'pRSNewPropValuesList is an empty recordset
SET rsSearchResults = myProductCatalog.PerformSpecificationSearch(strSearchHandle, 20, plTotalRecordsAvailable, pRSNewPropValuesList)

関連項目

ProductCatalog オブジェクト

ProductCatalog.AddSpecificationSearchClause

ProductCatalog.BeginSpecificationSearch

ProductCatalog.GuaranteedSpecificationSearch

ProductCatalog.RemoveSpecificationSearchClause


ProductCatalog.RegenerateFreeTextSearchIndex

このメソッドは、カタログのフリー テキスト検索インデックスを再生成するために使います。

定義

Sub RegenerateFreeTextSearchIndex(
fGenerateIncremental As Boolean
)

パラメータ

fGenerateIncremental

フリー テキスト検索インデックスの増分再構築を行うか、完全再構築を行うかを決定する Boolean です。値が True の場合、増分再構築を示します。値が False の場合、完全再構築を示します。詳細については、"解説" を参照してください。既定値は False です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CANNOT_REFRESH | &H8898004C | カタログのインポート処理は現在進行中です。今は更新操作を行わないでください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドの呼び出しは、新しい商品やカテゴリをカタログに追加した後で行います。そうしないと、それらの新しい商品やカテゴリは、フリー テキスト検索結果に返されません。

fGenerateIncremental パラメータは、フリー テキスト インデックスについて実行する再構築の種類を決定します。既定値は、フリー テキスト インデックスの完全再構築です。このように指定すると完全な再構築が可能ですが、最近加えた商品やカテゴリだけをインデックスに追加する増分再構築と比較すると、動作が遅くなります。

Commerce Server がカタログ データを格納するデータベースに SQL Server 2000 のフルテキスト エンジンがインストールされていないと、このメソッドを呼び出しても何の操作も行われません。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドは、フリー テキスト インデックスの作成、削除、更新のためのものです。SQL Server は、トランザクション内でこれらの操作を実行できません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myProductCatalog.RegenerateFreeTextSearchIndex TRUE

関連項目

ProductCatalog オブジェクト


ProductCatalog.RemoveSpecificationSearchClause

このメソッドは、指定した条件指定検索から最後の条件を削除するために使います。

定義

Function RemoveSpecificationSearchClause(
pstrSearchHandle As Variant
) As String

パラメータ

pstrSearchHandle

検索条件の削除対象となる条件指定検索ハンドルを含む Variant です。

戻り値

このメソッドが正常に終了すると、指定した検索条件が削除された後の文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このメソッドは常に、AddSpecificationSearchClause メソッドによって検索に追加された最後の条件を削除します。返される文字列の書式は、元の条件と同じものになります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

'strSearchHandle contains a search handle returned
'from AddSpecificationSearchClause or BeginSpecificationSearch
'strRemovedClause will contain the removed clause after the call returns.
Set strRemovedClause = myProductCatalog.RemoveSpecificationSearchClause(strSearchHandle)

関連項目

ProductCatalog オブジェクト


ProductCatalog.RootCategories

RootCategories プロパティは読み取り専用のレコードセットで、このカタログのルート レベルに存在するカテゴリの名前を含んでいます。

定義

Property RootCategories(
Optional vrPropertiesRequired As Variant
) As _Recordset

パラメータ

vrPropertiesRequired

必須プロパティ名のカンマ区切りリストを含む Variant (内部処理形式は文字列) です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

親を持たないカテゴリは、ルート カテゴリと見なされます。

このメソッドによって返される Recordset オブジェクトには、ルート カテゴリごとに行が 1 つ、vrPropertiesRequired パラメータのプロパティ名ごとにフィールドが 1 つ含まれています。パラメータを省略すると、Recordset オブジェクトには対応するフィールドがすべて含まれます。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

注

  • vrPropertiesRequired パラメータのプロパティ名の先頭にある数字は、返されるレコードセット内の対応するフィールド名から切り捨てられます。データは正常です。正しくないのはフィールド名だけです。プロパティを省略すると、フィールド名は正しいものになります。この問題を避けるため、先頭が数字であるフィールド名は角かっこで囲んでください。たとえば、oProductCatalog.RootCategories("[123_Prop1],[123_ Prop2]") が正しい書式になります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

ProductCatalog.RootProducts


ProductCatalog.RootProducts

RootProducts プロパティは読み取り専用のレコードセットで、カタログのルート レベルに存在する商品を含んでいます。

定義

Property RootProducts() As _Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

カテゴリに属していない商品は、ルート商品と見なされます。

このメソッドによって返される Recordset オブジェクトには、対応するフィールドすべてが含まれています。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

カンマ区切り値 (CSV) ファイルをインポートすることによって追加した商品は、ルート商品になります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

SET rsRootProducts = myProductCatalog.RootProducts

関連項目

ProductCatalog オブジェクト

ProductCatalog.RootCategories


ProductCatalog.SearchableCategories

SearchableCategories プロパティは読み取り専用のレコードセットで、検索対象であるすべてのカテゴリの名前を含んでいます。

定義

Property SearchableCategories() As _Recordset

パラメータ

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

SearchableCategories プロパティは、条件指定検索を使ったクエリの対象になるこのカタログ内のすべてのカテゴリの名前を返します。特定のカテゴリが条件指定検索の対象であるかどうかは、IsSearchable 属性の値によって決定します。このプロパティは、カテゴリの作成時に設定できます。また、カテゴリ オブジェクトの SetCategoryProperties メソッドを使っていつでも変更できます。

このプロパティによって返される Recordset オブジェクトには、Name という名前の 128 文字長のフィールドが 1 つ含まれています。それぞれの行には、検索対象であるカテゴリの名前が含まれています。

検索対象であるカテゴリがない場合、EOF プロパティが VARIANT_TRUE に設定されたレコードセットが返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

ProductCatalog.CreateCategory

ProductCatalog.GetCategory


ProductCatalog.SetCatalogAttributes

このメソッドは、カタログの属性を設定するために使います。

定義

Sub SetCatalogAttributes(
pRSCatalogAttributes As _Recordset,
Optional fForceUpdate As Variant
)

パラメータ

pRSCatalogAttributes

新しい属性を含む Recordset です。

fForceUpdate

カテゴリの属性を強制的に更新するための Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_EXIST | &H88980002 | カタログが存在していません。
E_CAT_CATALOG_CHANGED | &H88980012 | カタログは、前回読み取られてから更新されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

現在の属性に関するレコードセットを取得するには、GetCatalogAttributes メソッドを使います。レコードセットが変更されたら、それを SetCatalogAttributes メソッドの pRSCatalogAttributes パラメータとして使って、変更をカタログに書き戻します。レコードセットのタイムスタンプは、エラー検出のために更新される属性のタイムスタンプと比較されます。

カタログの属性である Name、ProductID、CatalogID、および VariantID は、このメソッドで変更できません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myProductCatalog.SetCatalogAttributes(rsCatalogAttribs, TRUE)

関連項目

ProductCatalog オブジェクト

ProductCatalog.GetCatalogAttributes


ProductCatalog.SetCategoryCustomPrice

このメソッドは、カテゴリの特別価格ルールを設定するために使います。

定義

Sub SetCategoryCustomPrice(
strCCName As String,
strCategoryName As String,
eCustomPrice As CatalogCustomPriceEnum,
fpCustomPriceAmount As Double
)

パラメータ

strCCName

このルールを適用するカスタム カタログ テンプレートの名前を含む文字列です。

strCategoryName

特別価格を設定するカテゴリの名前を含む文字列です。

eCustomPrice

価格調整の種類です。有効な値は CatalogCustomPriceEnum 列挙型から取得します。有効な値については、下の "解説" を参照してください。

fpCustomPriceAmount

特別価格の調整量を含む Double です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | &H8898001C | カテゴリが存在していません。
E_CAT_CUSTOMCAT_DOESNT_EXIST | &H88980024 | 指定したカスタム カタログは存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

SetCategoryCustomPrice メソッドは、カテゴリ、およびそのカテゴリに直接属する子商品に対する特別価格ルールを、指定したカスタム カタログで定義します。SetCategoryCustomPrice メソッドは、子カテゴリには影響を与えません。

異なる特別価格を持つ複数のカテゴリに属している商品がある場合、いずれのカテゴリにおいても、その商品には特別価格が適用されません。

次の表は、CatalogCustomPriceEnum 列挙型の値と関連付けられた名前を示し、その使用方法を説明しています。

名前 | 値 | 説明
cscNoCustomPrice | 0 | 特別価格は基本価格と等価です。
cscPercentageMultiplier | 1 | 特別価格は、pfpCustomPriceAmount パラメータのパーセント値を基本価格に乗じた値です。
cscAddFixedAmount | 2 | 特別価格は、pfpCustomPriceAmount を基本価格に加算した値です。
cscReplacePrice | 3 | 特別価格は pfpCustomPriceAmount です。
cscInvalidCustomPrice | -1 | 予約されています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myProductCatalog.SetCategoryCustomPrice "SeniorDiscountCatalog", "Apparel", cscPercentageMultiplier, 90

関連項目

ProductCatalog オブジェクト

ProductCatalog.GetCategoryCustomPrice


ProductCatalog.SetCustomCatalogAttributes

このメソッドは、カスタム カタログの属性を設定するために使います。

定義

Sub SetCustomCatalogAttributes(
pRSNewState As _Recordset,
Optional fForceUpdate As Variant
)

パラメータ

pRSNewState

新しい属性を含む Recordset オブジェクトです。

fForceUpdate

カスタム カタログの属性を強制的に更新するための Variant です。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CANNOT_ALTER_CC | &H88980060 | 指定した変更を行うことができません。
E_CAT_CUSTOMCATALOG_CHANGED | &H88980035 | カスタム カタログは、前回読み取られてから変更されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

SetCustomCatalogAttributes メソッドは、カスタム カタログの CustomCatalogName 属性を変更するために使います。ほかの属性は変更できません。pRSNewState パラメータは、このカスタム カタログの新しい属性値を記述する Recordset オブジェクトを指定します。カスタム カタログが既に公開されている場合、メソッドは失敗します。

GetCustomCatalogAttributes メソッドによって返される Recordset オブジェクトを使って、そのタイムスタンプが品質管理のために比較されるようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

myProductCatalog.SetCustomCatalogAttributes rsNewAttribs, TRUE

関連項目

ProductCatalog オブジェクト

ProductCatalog.GetCustomCatalogAttributes


CatalogProduct レコードセット

この Recordset オブジェクトのフィールドは、カタログ内の商品定義によって異なります。次の表は、常にこの Recordset オブジェクトに含まれる共通のフィールドを一覧表示しています。

フィールド名 | データ型
CategoryName | 文字列 (最大 128 文字)
Oid | Integer
DefinitionName | 文字列 (最大 128 文字)
IsSearchable | Small integer
cy_list_price | Money
PricingCategoryOID | Integer
TimeStamp | TimeStamp
OriginalPrice | Money
i_ClassType | Integer
ParentOID | Integer
ProductID | 文字列 (最大 256 文字)
VariantID | 文字列 (最大 256 文字)

注

  • Oid フィールドは内部で使うもので、更新対象ではありません。

関連項目

ProductCatalog.GuaranteedSpecificationSearch

ProductCatalog.PerformSpecificationSearch

ProductCatalog.RootCategories

ProductCatalog.RootProducts


ProfileObject オブジェクト

このオブジェクトは、指定したプロファイル オブジェクト インスタンスのデータの取得、およびそのプロファイル オブジェクトのプロパティ値の変更のために使います。また、プロファイル オブジェクトのプロパティ属性を確認したり、それにアクセスする場合にも ProfileObject オブジェクトを使います。

ProgID: | Commerce.ProfileObject (外部作成可能)
COM クラス名: | ProfileObject
タイプ ライブラリ名: | Microsoft Commerce 2000 Profile Service Type Library
DLL 名: | mscsups.dll
スレッド モデル: | 両方

次の表は、ProfileObject オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Fields | オブジェクト | プロファイルのプロパティ コレクションを格納します。 このプロパティは読み取り専用です。

次の表は、ProfileObject オブジェクトのメソッドを示しています。

メソッド | 説明
GetProfileXML | プロファイル オブジェクトのデータ構造を表わす XML フラグメントを取得します。
Update | 基になるデータ ストアにプロファイル データを保存します。

解説

ProfileObject オブジェクトは、IADs インターフェイスからの継承によって、AUO 1.0 オブジェクト (Microsoft Site Server 3.0 Commerce Edition でリリース) との下位互換性を維持します。IADs インターフェイスのメソッドの説明については、MSDN の ADSI に関するドキュメントを参照してください。

ProfileObject オブジェクトは、拡張ピリオド表記をサポートしています。次は、拡張ピリオド表記を使った例です。

oProfileObject.Fields("Address.Zipcode")

これは次と同じ処理を行います。

oProfileObject.Fields("Address").Value("Zipcode")

最初の方法では、Zipcode の値を Fields.Value に対する 1 回の呼び出しで取得しています。それに対して 2 番目の方法では、同じ値を取得するために 2 回の呼び出しが必要です。

ProfileObject オブジェクトは、プロファイルに対するスマート ナビゲーションを提供しています。次は、スマート ナビゲーションを使った例です。

oProfileObject.Address.ZipCode

これは次と同じ処理を行います。

oProfileObject.Fields("Address.Zipcode")

このオブジェクトをインスタンス化するには、通常 ProfileService オブジェクトの CreateProfile メソッドを使います。

関連項目

プロファイル オブジェクト

プロファイル スキーマ

プロファイルの XML 構造

ProfileService オブジェクト


ProfileObject.Fields

Fields プロパティは読み取り専用の Fields コレクションで、ProfileObject オブジェクトのプロファイル プロパティ データを含んでいます。読み取り専用とは、Fields コレクションに対してメンバ (プロファイル プロパティ) の追加や削除ができないということです。これは ProfileObject オブジェクトの既定のプロパティです。このプロパティは、プロファイル プロパティの値の設定と取得、プロパティの属性リストへのアクセスのために使います。

定義

Property Fields As Object

パラメータ

なし。

エラー値

ProfileService オブジェクトの Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

Fields コレクションは、ADO Fields コレクション オブジェクトに類似したものです。次の ADO Fields コレクションのメソッドおよびプロパティがサポートされています。

  • Count

  • Item

  • _NewEnum

Fields コレクションのメンバは、Field オブジェクトです。これらのオブジェクトは、ProfileObject オブジェクトの単一のプロパティまたはプロパティ グループを表しています。この Field オブジェクトは、ADO の Field オブジェクトに似ています。次の ADO Field オブジェクトのメソッドおよびプロパティがサポートされています。

  • Properties : 読み取り専用の Attributes コレクションを返します。

  • DefinedSize : データ型の定義済みサイズを取得します。

  • Name

  • Type

  • Value

Attributes コレクションは、ADO の Properties オブジェクトとして表されます。次の ADO Properties オブジェクトのメソッドおよびプロパティがサポートされています。

  • Count

  • Item

  • _NewEnum

基になるデータ ストア内で変更のあったプロファイル データを保存するには、ProfileObject オブジェクトの Update メソッドを使います。

ProfileObject オブジェクトの Fields プロパティは、パフォーマンス向上のために拡張ピリオド表記をサポートしています。次は、拡張ピリオド表記を使った例です。

oProfileObject.Fields("Address.Zipcode")

これは次と同じ処理を行います。

oProfileObject.Fields("Address").Value("Zipcode")

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProfileObject オブジェクト

ProfileService オブジェクト


ProfileObject.GetProfileXML

このメソッドは、プロファイル オブジェクトの XML スキーマおよびデータを取得するために使います。

定義

Function GetProfileXML (
eRetrieveEnum As XMLRetrieveEnum,
bAttributeCentric As Boolean
) As String

パラメータ

eRetrieveEnum

[in] XML スキーマまたは XML データのどちらを取得するか、あるいはその両方を取得するかを示す Enum です。

bAttributeCentric

[in] XML の出力形式を示す Boolean です。属性を中心とした形式で XML を取得するには、このパラメータを True (1) に設定します。要素を中心とした形式で XML を取得するには、False (0) に設定します。

戻り値

このメソッドは、プロファイル オブジェクトの XML 表現を含む文字列を返します。

エラー値

ProfileService オブジェクトの Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

次の表は、XMLRetrieveEnum で有効とされる値の定義です。

名前 | 値 | 説明
psRetrieveInvalidValue | 0 | 無効なオプションです。
psRetrieveSchemaAndData | 1 | スキーマとデータの両方が取得されます。
psRetrieveDataOnly | 2 | データのみが取得されます。
psRetrieveSchemaOnly | 3 | スキーマのみが取得されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題については、「COM パラメータのメモリを管理する」を参照してください。

例

' sXMLProfile is a String, oProfileObject is a UserObject profile

sXMLProfile = oProfileObject.GetProfileXML(psRetrieveDataOnly, True)

' The attribute-centric sXMLProfile string now contains:
   <?xml version="1.0"?>
   <ProfileDocument>
   <UserObject>
      <AccountInfo  org_id="{590858E1-08A7-11D3-B8C4-00104B95AE0E}"
         account_status="1" date_registered="2000- 6- 5T 0: 0: 0">
      </AccountInfo>
      <GeneralInfo  user_id="{590858DB-08A7-11D3-B8C4-00104B95FFFF}"
         logon_name="jilluser@microsoft.com"
         user_security_password="password" user_title="" last_name="User"
         first_name="Jill" user_id_changed_by="admin">
      </GeneralInfo>
   </UserObject>
   </ProfileDocument>

sXMLProfile = oProfileObject.GetProfileXML(psRetrieveDataOnly, False)

' The element-centric sXMLProfile string now contains:
   <?xml version="1.0"?>
   <ProfileDocument>
   <UserObject>
      <AccountInfo>
         <org_id>{590858E1-08A7-11D3-B8C4-00104B95AE0E}</org_id>
         <account_status>1</account_status>
         <date_registered>2000- 6- 5T 0: 0: 0</date_registered>
      </AccountInfo>
      <GeneralInfo
         <user_id>{590858DB-08A7-11D3-B8C4-00104B95FFFF}</user_id>
         <logon_name>jilluser@microsoft.com</logon_name>
         <user_security_password>password</user_security_password>
         <user_title></user_title>
         <last_name>User</last_name>
         <first_name>Jill</first_name>
         <user_id_changed_by>admin</user_id_changed_by>
      </GeneralInfo>
   </UserObject>
   </ProfileDocument>

関連項目

ProfileObject オブジェクト

ProfileObject.Fields

プロファイルの XML 構造


ProfileObject.Update

このメソッドは、基になるデータ ストアに ProfileObject オブジェクトのデータを保存するために使います。

定義

Sub Update()

パラメータ

なし。

戻り値

なし。

エラー値

ProfileService オブジェクトの Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

Update メソッドは、オブジェクトをデータ ストアにコミットします。

IADs インターフェイス ルーチンを使って変更された内容は、すべてデータベースにコミットされます。

ProfileObject オブジェクトのデータにアクセするには、Fields プロパティを使います。

関連項目

ProfileObject オブジェクト

ProfileObject.Fields


ProfileService オブジェクト

このオブジェクトは、ProfileObject オブジェクトを作成、削除、および取得するために使います。

ProgID: | Commerce.ProfileService (外部作成可能)
COM クラス名: | ProfileService
タイプ ライブラリ名: | Microsoft Commerce 2000 Profile Service Type Library
DLL Name: | mscsups.dll
Threading Model: | 両方

次の表は、ProfileService オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Errors | オブジェクト | 前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。 このプロパティは読み取り専用です。

次の表は、ProfileService オブジェクトのメソッドを示しています。

メソッド | 説明
BindAs | 基になるプロファイル ストアにアクセスするためのユーザー資格情報を設定します。
CreateProfile | 指定された ProfileObject オブジェクトを作成します。
DeleteProfile | プロファイル システムから、プライマリ キーの値で指定された ProfileObject オブジェクトを削除します。
DeleteProfileByKey | プロファイル システムから、キーのメンバと値の対によって指定された ProfileObject オブジェクトを削除します。
GetProfile | プロファイル システムから、プライマリ キーの値で指定された ProfileObject オブジェクトを取得します。
GetProfileByKey | プロファイル システムから、キーのメンバと値の対によって指定された ProfileObject オブジェクトを取得します。
GetProfileDefXML | 指定されたプロファイル定義の XML 説明を取得します。
Initialize | 指定されたプロファイル ストアへの接続を確立し、スキーマ キャッシュにデータを取り込みます。
UnBind | 基になるプロファイル ストアにアクセスするためのユーザー資格情報を消去します。

解説

ProfileService オブジェクトは、ProfileObject オブジェクトへの読み取り/書き込み実行時アクセス機能、およびプロファイル定義への読み取り専用アクセス機能を実装しています。

ProfileService オブジェクトは、プロファイル オブジェクトへの実行時アクセスを提供します。アクセス先のプロファイル オブジェクトは、プロファイル スキーマの特定のインスタンスです。Commerce Server ビジネス デスクのプロファイル デザイナ モジュールおよび Commerce Server マネージャのプロファイル リソースは、プロファイル スキーマに変更を加えるための設計時アクセスを提供します。

Web ベース アプリケーションのコンテキストでは、ProfileService オブジェクトはアプリケーション用の Global.asa ファイル内で作成および初期化されることを想定しています。ProfileObject オブジェクトは、ページ スコープ内で作成されることを想定しています。

ProfileService オブジェクトのそのほかのメソッドまたはプロパティを呼び出す場合は、事前に Initialize メソッドを呼び出してください。

関連項目

プロファイル オブジェクト

プロファイル スキーマ

プロファイルの XML 構造

ProfileObject オブジェクト


ProfileService.BindAs

このメソッドは、基になるプロファイル ストアの ProfileObject オブジェクトにアクセスするために使われる資格情報を設定するために使います。

定義

Sub BindAs (
sUserName As String,
sPassword As String
)

パラメータ

sUserName

[in] ProfileObject オブジェクトにアクセスするためのユーザー名を含む文字列です。

sPassword

[in] ProfileObject オブジェクトにアクセスするためのパスワードを含む文字列です。

戻り値

なし。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

このメソッドは、基になるディレクトリ ストア内の ProfileObject オブジェクトにアクセスし、それに変更を加えるために使われる資格情報を設定します。新しい ProfileObject オブジェクトまたは変更された ProfileObject オブジェクトは、これらの資格情報にバインドされます。指定された資格情報は、UnBind メソッドが呼び出されるまで、以後の ProfileObject オブジェクト処理で使われるセキュリティ コンテキストを定義しています。ここで指定された資格情報は、そのまま使われ、基になるディレクトリ ストアにバインドされます。これらの資格情報を適切な形式にして渡す処理は、クライアントが行います。たとえば、Active Directory にバインドするためには、次のいずれかの形式にして渡します。

  • 完全なユーザー プリンシパル名 (UPN) (例 : joeuser@domain.com)

  • SAM アカウント名 (例 : Domain\SAMAccountName)

  • セキュリティ プリンシパルの完全修飾識別名 (例 : CN=joeuser, CN=Users, DC=Domain, DC=com)

Membership Directory の場合は、セキュリティ プリンシパルの完全修飾識別名を指定しなければなりません。

資格情報を消去するには、UnBind メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oProfileService is a Commerce ProfileService object

oProfileService.BindAs "JoeUser@microsoft.com", "MyPassword123"
oProfileService.BindAs "DomainName\JoeUser", "MyPassword123"

関連項目

ProfileService オブジェクト

ProfileService.UnBind


ProfileService.CreateProfile

このメソッドは、ProfileObject オブジェクトを作成するために使います。

定義

Function CreateProfile(
sValue As Variant,
bstrType As String
) As Object

パラメータ

sValue

[in] 新しい ProfileObject オブジェクトのプライマリ キーの値を含む Variant です。このバリアントに使用できる変数の型は文字列または long です。

bstrType

[in] 新しい ProfileObject オブジェクトのスキーマの種類を含む文字列です。

戻り値

このメソッドが正常に終了すると、新しく作成された ProfileObject オブジェクトが返されます。指定されたプライマリ キーとスキーマの種類の ProfileObject オブジェクトがプロファイル ストアに既に存在する場合は、オブジェクトが Nothing に設定されます。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

CreateProfile メソッドが、複数のデータ ソースから収集されたプロファイルの作成に失敗した場合、DeleteProfile メソッドを呼び出して、データ ストア内のエントリをすべてクリーンアップする必要があります。このとき、DeleteProfile メソッドでエラーが発生することがありますが、これは無視します。

CreateProfile メソッドは、指定された属性を持つ ProfileObject オブジェクトが、データベース内にまだ存在していないことを確認します。

返された ProfileObject オブジェクトの Fields プロパティを使うと、プロファイルのプロパティにアクセスすることができます。

既存の ProfileObject インスタンスをプロファイル ストアから取得するには、GetProfile メソッドまたは GetProfileByKey メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oProfileService is a Commerce ProfileService object
' oProfileObject1 and oProfileObject2 are Commerce ProfileObject objects

oProfileObject1 = oProfileService.CreateProfile _
 ("{73A4C9C1-D68D-11D0-98BF-00A0C90DC8DF}", "Address")

oProfileObject2 = oProfileService.CreateProfile _
 ("Joeuser@microsoft.com", "UserObject")

関連項目

ProfileService オブジェクト

ProfileService.DeleteProfile

ProfileService.GetProfile

ProfileService.GetProfileByKey

ProfileService.Initialize

ProfileObject オブジェクト

ProfileObject.Fields


ProfileService.DeleteProfile

このメソッドは、プライマリ キーの値とスキーマの種類によって指定された ProfileObject オブジェクトを削除するために使います。プロファイルに関連付けられているプロパティは、システムからすべてパージされます。

定義

Sub DeleteProfile(
sValue As Variant,
strType As String
)

パラメータ

sValue

[in] プライマリ キーの値を含む Variant です。

strType

[in] プロファイルのスキーマの種類を含む文字列です。

戻り値

なし。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

新しい ProfileObject オブジェクトの作成でエラーが発生したために DeleteProfile メソッドが呼び出された場合、作成されたエラー メッセージはすべて無視してください。

キーのメンバ/値の対およびスキーマの種類によって指定されたプロファイルを削除するには、DeleteProfileByKey メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

注意

  • ProfileObject オブジェクトを削除する際は、依存関係のある式が存在することもあるため、十分に注意してください。式の詳細については、ExpressionStore オブジェクトと ExpressionEval オブジェクトを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oProfileService is a Commerce ProfileService object

oProfileService.DeleteProfile("Joeuser@microsoft.com", "UserObject")

関連項目

ProfileService オブジェクト

ProfileService.CreateProfile

ProfileService.DeleteProfileByKey

ExpressionEval オブジェクト

ExpressionStore オブジェクト


ProfileService.DeleteProfileByKey

このメソッドは、キーのメンバの名前/値の対およびスキーマの種類によって指定された、ProfileObject オブジェクトを削除するために使います。プロファイルに関連付けられているプロパティは、システムからすべてパージされます。

定義

Sub DeleteProfileByKey(
strKeyMemberName As String,
sValue As Variant,
strType As String
)

パラメータ

strKeyMemberName

[in] キーのメンバの名前を含む文字列です。

sValue

[in] キーの値を含む Variant です。

strType

[in] プロファイルのスキーマの種類を含む文字列です。

戻り値

なし。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

プライマリ キーの値とスキーマの種類を指定してプロファイルを削除するには、DeleteProfile メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

注意

  • ProfileObject オブジェクトを削除する際は、依存関係のある式が存在することもあるため、十分に注意してください。式の詳細については、ExpressionStore オブジェクトと ExpressionEval オブジェクトを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oProfileService is a Commerce ProfileService object

oProfileService.DeleteProfileByKey("user_id",_
 "{74A38551-D6D8-FFD0-12BF-0A20C90DC8D1}" "UserObject")

関連項目

ProfileService オブジェクト

ProfileService.CreateProfile

ProfileService.DeleteProfile

ExpressionEval オブジェクト

ExpressionStore オブジェクト


ProfileService.Errors

Errors プロパティは読み取り専用の ADO Errors オブジェクトで、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。

定義

Property Errors As Object

パラメータ

なし。

解説

Errors プロパティは、基盤技術が原因となって発生したものを始めとして、ProfileService オブジェクトの処理によって生成されたエラーをすべて収集します。

OLE DB Provider for SQL Server や OLE DB Provider for Microsoft Directory Services などの、基になるデータ ストア プロバイダが原因となって発生したエラーの場合は、Error オブジェクトの Number プロパティや Source プロパティだけが設定され、渡されることがあります。

標準 COM エラーについては、「標準 COM エラー」を参照してください。

次の ADO Errors オブジェクトのメソッドおよびプロパティがサポートされています。

  • Clear

  • Count

  • Item

  • _NewEnum

次の ADO Error オブジェクトのメソッドおよびプロパティがサポートされています。

  • Description

  • HelpFile

  • Number

  • Source

Errors プロパティにアクセスする前に、Initialize メソッドを呼び出してください。

関連項目

ProfileObject オブジェクト

ProfileService オブジェクト


ProfileService.GetProfile

このメソッドは、プライマリ キーの値とスキーマの種類によって指定された、ProfileObject オブジェクトを取得するために使います。

定義

Function GetProfile(
sValue as Variant,
bstrType As String
Optional bReturnError As Boolean
) As Object

パラメータ

sValue

[in] プライマリ キーの値を含む Variant です。

bstrType

[in] プロファイルのスキーマの種類を含む文字列です。

bReturnError

[in] 省略可能な Boolean です。既定値は True (-1) です。

戻り値

このメソッドが正常に完了すると、指定されたプライマリ キーの値とスキーマ名に対応する ProfileObject オブジェクトが返されます。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

省略可能な bReturnError パラメータが True (-1) に設定されている場合、指定された ProfileObject オブジェクトが見つからないときは、ProfileObject オブジェクトは返されず、エラー メッセージ E_PS_PROFILE_NOTEXISTS が返されます。

bReturnError パラメータが False (0) に設定されている場合には、指定された ProfileObject オブジェクトが見つからないときはエラー メッセージは返されず、空の ProfileObject オブジェクトが返されます。

このメソッドは、IsCached 属性が False に設定されているプロパティは読み込みません。

返された ProfileObject オブジェクトの Fields プロパティを使うと、プロファイルのプロパティにアクセスすることができます。

キーのメンバの名前/値の対、およびスキーマの種類を指定してプロファイルを取得するには、GetProfileByKey メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oProfileService is a Commerce ProfileService object
' oProfileObject is a Commerce ProfileObject object

oProfileObject = oProfileService.GetProfile("Joeuser@microsoft.com", _
 "UserObject")

関連項目

ProfileService オブジェクト

ProfileService.GetProfileByKey

ProfileService.Initialize

ProfileObject オブジェクト

ProfileObject.Fields


ProfileService.GetProfileByKey

このメソッドは、指定したキーのメンバの名前/値の対およびスキーマの種類に対応する、ProfileObject オブジェクトを取得するために使います。

定義

Function GetProfileByKey(
bstrKeyMemberName As String,
sValue As Variant,
bstrType As String
Optional bReturnError As Boolean
) As Object

パラメータ

bstrKeyMemberName

[in] キーのメンバの名前を含む文字列です。

sValue

[in] キーの値を含む Variant です。

bstrType

[in] スキーマの種類を含む文字列です。

bReturnError

[in] 省略可能な Boolean です。既定値は True (-1) です。

戻り値

このメソッドが正常に完了すると、指定されたキーのメンバと値の対、およびスキーマ名に対応する ProfileObject オブジェクトが返されます。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

省略可能な bReturnError パラメータが True (-1) に設定されている場合、指定された ProfileObject オブジェクトが見つからないときは、ProfileObject オブジェクトは返されず、エラー メッセージ E_PS_PROFILE_NOTEXISTS が返されます。

bReturnError パラメータが False (0) に設定されている場合には、指定された ProfileObject オブジェクトが見つからないときはエラー メッセージは返されず、空の ProfileObject オブジェクトが返されます。

このメソッドは、IsCached 属性が False に設定されているプロパティは読み込みません。

返された ProfileObject オブジェクトの Fields プロパティを使うと、プロファイルのプロパティにアクセスすることができます。

プライマリ キーの値とスキーマの種類を指定してプロファイルを取得するには、GetProfile メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oProfileService is a Commerce ProfileService object
' oProfileObject is a Commerce ProfileObject object

oProfileObject = oProfileService.GetProfileByKey("user_id", _
 "{74A38551-D6D8-FFD0-12BF-0A20C90DC8D1}", "UserObject")

関連項目

ProfileService オブジェクト

ProfileService.GetProfile

ProfileService.Initialize

ProfileObject オブジェクト

ProfileObject.Fields


ProfileService.GetProfileDefXML

このメソッドは、指定されたプロファイル スキーマの XML 定義を取得するために使います。

定義

Function GetProfileDefXML(
bstrProfileName As String
bNamesOnly As Boolean,
) As String

パラメータ

bstrProfileName

[in] プロファイル スキーマの種類の名前を含む文字列です。

bNamesOnly

[in] メソッドがプロファイル スキーマの名前、プロファイル スキーマの定義のどちらを返すかを決定する Boolean です。値が False の場合、プロファイル定義を返すことを示します。値が True の場合、プロファイル スキーマの名前のみを返すことを示します。

戻り値

このメソッドが正常に終了すると、XML 説明を含む文字列が返されます。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

bstrProfileName パラメータが空で bNamesOnly パラメータが False (0) の場合は、カタログ内にあるすべてのスキーマについて XML 説明が返されます。

bstrProfileName パラメータが空で bNamesOnly パラメータが True (-1) の場合、カタログ内にあるすべてのスキーマの名前が返されます。

XML 定義については、「プロファイルの XML 構造」を参照してください。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sXML is a String
' oProfileService is a Commerce ProfileService object

sXML = oProfileService.GetProfileDefXML("UserObject", False)

関連項目

ProfileService オブジェクト

プロファイルの XML 構造


ProfileService.Initialize

このメソッドは、Commerce Server プロファイル ストアへの接続を確立し、指定したカタログにあるすべてのスキーマをスキーマ キャッシュに取り込むために使います。

定義

Sub Initialize(
sConfigStore As String,
Optional sCatalog As String
)

パラメータ

sConfigStore

[in] プロファイル ストアへの接続文字列を含む文字列です。

sCatalog

[in, optional] カタログを識別する文字列です。この値を指定する場合、"プロファイル定義" と指定する必要があります。

戻り値

なし。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

Initialize メソッドによって、プロファイルの管理に必要な内部パラメータとスキーマ キャッシュが作成されます。1 つの ProfileService オブジェクトが接続するプロファイル ストアは、1 つだけにする必要があります。複数のストアにアクセスするには、複数の ProfileService オブジェクトのインスタンスを作成しなければなりません。

プロファイル ストアのための接続文字列は、SiteConfigReadOnly オブジェクトを介して、または Commerce Server マネージャ コンソールの Commerce Server マネージャ\グローバル リソース\プロファイル(<コンピュータ名> <サイト名>) というキーにある s_ProfileServiceConnectionString プロパティを介して取得できます。

接続文字列は、次の必須トークンで構成されています。

  • Data Source または Database、あるいはその両方 [必須] : この属性を使うと、プロファイル データベースを含んだ SQL Server の名前をアプリケーション側で指定することができます。これらの属性のうち、少なくとも 1 つを指定する必要があります。これらの属性を両方とも指定した場合は、Data Source 属性の値が優先されます。

  • Initial Catalog または Server、あるいはその両方 [必須] : この属性を使うと、プロファイル定義を含むプロファイル データベースの名前をアプリケーション側で指定することができます。これらの属性のうち、少なくとも 1 つを指定する必要があります。これらの属性を両方とも指定した場合は、Initial Catalog 属性の値が優先されます。

  • User ID または UID、あるいはその両方 [必須] : この属性を使うと、プロファイル データベースに接続するためのログイン名をアプリケーション側で指定することができます。これらの属性のうち、少なくとも 1 つを指定する必要があります。これらの属性を両方とも指定した場合は、User ID 属性の値が優先されます。

次に示すのは、これらの属性を含んだ接続文字列の例です。

   Data Source=servername;Initial Catalog=dbname;User ID=user

区切り文字であるセミコロン (;) の前後に空白文字を入れたり、トークンの名前の中でセミコロンを使うことはできません。

プロファイル リソースでは、次の省略可能なトークンもサポートしています。

  • Provider [オプション] : プロファイル リソースの接続先となる OLE DB プロバイダを、アプリケーション側で指定することができます。このパラメータは、標準 ADO 接続文字列との一貫性を保つために用意されています。この属性の既定値であり、唯一使用できる値は "CSOLEDB" です。

  • Password [オプション] : User ID 属性または UID 属性に指定されたユーザーのパスワードを、アプリケーション側で指定することができます。この属性の既定値は Null です。

  • PsObjectCacheSize [オプション] : プロファイル リソース オブジェクトのキャッシュ サイズを、アプリケーション側で指定することができます。このキャッシュには、CreateProfile メソッドおよび GetProfile メソッドによってインスタンス化された ProfileObject オブジェクトが格納されます。この属性の既定値は、32768 です。

  • PsSchemaCacheSize [オプション] : プロファイル リソース定義 (スキーマ) のキャッシュ サイズを、アプリケーション側で指定することができます。一度読み込まれたエントリは、キャッシュからパージされることはありません。この属性の既定値は、64 です。

  • PsBackgroundThread [オプション] : バックグラウンド スレッドの作成をアプリケーション側で制御して、プロファイル リソース キャッシュにあるエントリを定期的にクリーンアップさせることができます。このパラメータに指定できる値は、0 または 1 です。0 を指定すると、バックグラウンド スレッドが使われなくなります。1 を指定した場合、バックグラウンド スレッドが使われます。既定では、バックグラウンド スレッドを使用するようになっています。

  • PsObjectAgeoutPeriod [オプション] : プロファイル リソースのキャッシュ エントリの保有期間を、アプリケーション側で指定することができます。保有期間は、参照されていないオブジェクトが、破棄されることなくキャッシュに保持される期間を指します。この属性の既定値は、5 分です。

注

  • 接続文字列にある Initial Catalog は、プロファイル ストアを含んでいるデータベースです。

  • Initialize メソッドの sCatalog パラメータは、プロファイル スキーマ定義 ("プロファイル定義") を含んでいるカタログです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Connect using an explicit connection string.
' oProfileService is a Commerce ProfileService object

oProfileService.Initialize "Provider=CSOLEDB;Data Source=MyServer;" _
 & "Initial Catalog=Retail_commerce;User ID=user;Password=*****;" _
 & "PsSchemaCacheSize=128;PsObjectAgeoutPeriod=8", "Profile Definitions"

' Connect through the SiteConfigReadOnly object.
' sConn is a String
' oSCRO is an initialized SiteConfigReadOnly object

sConn = oSCRO.Fields("Profiles(ComputerName SiteName").Value _
 .Fields("s_ProfileServiceConnectionString").Value & "SCHCACHE=128"
oProfileService.Initialize sConn, "Profile Definitions"

関連項目

ProfileService オブジェクト


ProfileService.Unbind

このメソッドは、基になるプロファイル ストア内の ProfileObject オブジェクトにアクセスするために使われる、資格情報を消去するために使います。

定義

Sub Unbind (
)

パラメータ

なし。

戻り値

なし。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「ProfileService.Errors」を参照してください。

解説

このメソッドは、基になるストア内の ProfileObject オブジェクトにアクセスするために使われる資格情報を消去します。新しいプロファイルまたは変更されたプロファイルは、特定のユーザーにバインドされることはありません。このメソッドは、特定のユーザーにバインドされていない既存の ProfileObject オブジェクトへのアクセスを取得するために使います。

特定のユーザーにバインドされた ProfileObject オブジェクトにアクセスするための資格情報を設定する場合は、Bind メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

関連項目

ProfileService オブジェクト

ProfileService.BindAs


ReportRenderer オブジェクト

このオブジェクトは、静的レポートを同期的に作成 (表示) またはエクスポートするために使います。

ProgID: | Commerce.ReportRenderer (外部作成可能)
COM クラス名: | ReportRenderer
タイプ ライブラリ名: | Microsoft Commerce 2000 Report Renderer Type Library
DLL 名: | ReportRenderer.dll
スレッド モデル: | 両方

次の表は、ReportRenderer オブジェクトのメソッドを示しています。

メソッド | 説明
Init | オブジェクトを初期化します。

解説

ReportRender オブジェクトには、初期化文字列として、作成するレポートの ReportStatusID パラメータを渡す必要があります。このパラメータは、レポートが実行された時点、または Reports モジュールからエクスポートされた時点で設定されています。

静的レポートをエクスポートすると、対象のデータベースに結果テーブルが書き込まれます。ListManager オブジェクトは、このオブジェクトが実装している CreateFromDWCalc メソッドを使って、このテーブルからのインポートを実行します。

ReportRender オブジェクトは、同期的に実行されます。静的レポートを非同期的に実行するには、AsyncRpt オブジェクトを使います。

関連項目

分析とレポート作成のためのスキーマ

分析とレポートのための XML 構造

カスタム レポートを作成する

AsyncRpt オブジェクト

ListManager オブジェクト

レポートを実行する


ReportRenderer.Init

このメソッドは、ReportRenderer オブジェクトを初期化して、静的レポートを同期的に作成またはエクスポートするために使います。

定義

Function Init(
sParamString As String
) As Boolean

パラメータ

sParamString

ReportRenderer オブジェクトにパラメータを指定するために使う文字列です。

戻り値

このメソッドが正常に終了すると、初期化が成功したかどうかを示す Boolean が返されます。True (1) は成功を示します。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

sParamString パラメータは、6 つのパラメータが含まれる文字列で構成されており、各パラメータは "|" で区切られています。この文字列は、次のような形式になっています。

   "ReportStatusID|Data warehouse connection string|
    OLAP connection string|Destination connection string|
    Destination table name|Report execution time"

使用可能なパラメータは、次のパラメータで構成されたものです。

  • ReportStatusID : 表示またはエクスポートされるレポートを識別するために使われます。このパラメータは、レポートの実行時またはエクスポート時に作成される ReportStatus テーブルに格納されています。

  • Data warehouse connection string (データ ウェアハウス接続文字列) : 基になるデータが格納される場所です。有効となる接続文字列は、"DRIVER={SQL Server};SERVER=Server Name;DATABASE=Database Name;UID=username;PWD=password;" という形式のものです。

  • OLAP connection string (OLAP 接続文字列) : 基になる OLAP データが格納される場所です。有効となる接続文字列は、"DATA SOURCE=Server Name;INITIAL CATALOG=Database Name;" という形式のものです。

  • Destination connection string (出力先接続文字列) : エクスポートされたレポート データの格納先となるテーブルがある場所です。有効となる接続文字列は、"SERVER=Server Name;DATABASE=Database Name;UID=username;PWD=password;" という形式のものです。

  • Destination table name (出力先テーブル名) : エクスポートされたレポート データの格納先となるテーブルです。

  • Report execution time (レポート実行時刻) : レポートが実行された時刻です。指定されていない場合は、クライアント コンピュータ上の時刻形式および現在時刻が使用されます。

実際に使用されるパラメータは、レポートの種類 (SQL または MDX) に応じて決まります。さらに、レポートが表示されるのか、またはエクスポートされるのかによっても変わります。ReportStatusID パラメータおよび Data warehouse connection string (データ ウェアハウス接続文字列) パラメータは、どの場合でも必須です。そのほかの必須パラメータについては、次の表に示しています。パラメータが使用されない場合は、空欄になっています。

アクション - レポートの種類 | Report StatusID | データ ウェアハウス 接続文字列 | OLAP 接続文字列 | 出力先 接続文字列 | 出力先 テーブル名 | レポート 実行時刻
表示 - SQL | X | X |  |  |  | X
表示 - MDX | X | X | X |  |  | X
エクスポート - SQL | X | X |  | X | X |
エクスポート - MDX | X | X | X | X | X |

ReportRenderer オブジェクトで表示されるレポートには、次の制限があります。

  • 行の数は、最大で 1,000 行までです。

  • 列の数は、最大で 50 列までです。

  • 各行または列のディメンションは、最大で 5 ディメンション レベルまでです。

行および列の数は、レポート クエリ、レポート パラメータ、およびレポート定義によって決定されます。ディメンションの数は、レポートが作成されたときに、(SQL クエリの) ReportDimension テーブルに設定されます。これらの制限を超えるレポートを表示しようとすると、レポートは上の制限で切り捨てられます。レポートをエクスポートするときには制限はありません。レポート テーブルの詳細については、「分析とレポート作成のためのスキーマ.」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oReportRenderer is a Commerce ReportRenderer object

' Display a static SQL report

   oReportRenderer.Init("7|DRIVER={SQL Server};" _
    & "SERVER=MyServer;DATABASE=Retail_dw;UID=admin;" _
    & "PWD=*****;||||10/01/2000 3:45:56 pm" )

' Export a static SQL report

   oReportRenderer.Init("7|DRIVER={SQL Server};SERVER=MyServer;" _
    & "DATABASE=Retail_dw;UID=sysadmin;PWD=123;||Provider=SQLOLEDB;" _
    & "Persist Security Info=False;User ID=sa;Password=*****;" _
    & "Initial Catalog=Retail_commerce;Data Source=MyServer;|" _
    & "OutPutTableName|10/01/2000 3:45:56 pm")

' Display a static MDX report

   oReportRenderer.Init("19|DRIVER={SQL Server};SERVER=MyServer;" _
    & "DATABASE=Retail_dw;UID=admin;PWD=*****;|data source=MyServer;" _
    & "Initial Catalog=Retail_dw;|||10/01/2000 3:45:56 pm")

' Export a static MDX report

   oReportRenderer.Init("19|DRIVER={SQL Server};SERVER=MyServer;" _
    & "DATABASE=Retail_dw;UID=sysadmin;PWD=123;|data source=MyServer;" _
    & Initial Catalog=Retail_dw;|Provider=SQLOLEDB;" _
    & "Persist Security Info=False;User ID=sa;Password=*****;" _
    & "Initial Catalog=Retail_commerce;Data Source=MyServer;|" _
    & "OutPutTableName|10/01/2000 3:45:56 pm")

関連項目

ReportRenderer オブジェクト

分析とレポート作成のためのスキーマ

カスタム レポートを作成する


RowCollection オブジェクト

このオブジェクトは、ContentList オブジェクトとそれに対応する ContentListFactory オブジェクトに含まれているデータにアクセスするために使います。ある RowCollection オブジェクトは、これらのオブジェクト内のすべての行にアクセスします。また、ほかの RowCollection オブジェクトは、これらのオブジェクト内の行のうち、計算済みのサブセットにアクセスします。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | RowCollection
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、RowCollection オブジェクトのプロパティを示しています。

プロパティ | 型 | 説明
_NewEnum | IUnknown | Microsoft Visual Basic の "for each Row in Collection" 構文を使って、RowCollection オブジェクト内の行を繰り返し処理できるようにします。 このプロパティは読み取り専用です。
Count | long | RowCollection オブジェクトの行数を格納します。 このプロパティは読み取り専用です。
EOF | VARIANT_BOOL | 現在の行が RowCollection オブジェクト内の実際の行数を超えているかどうかを追跡します。 このプロパティは読み取り専用です。
Fields | Fields | 現在の行の Fields コレクション オブジェクトが含まれています。 このプロパティは読み取り専用です。
RowNum | long | ゼロ (0) から始まる現在の行の位置を格納します。 このプロパティは読み取り専用です。

次の表は、RowCollection オブジェクトのメソッドを示しています。

メソッド | 説明
MoveFirst | RowCollection オブジェクト内の最初の行を現在の行に設定します。
MoveNext | RowCollection オブジェクト内の現在の行の次の行を、新しい現在の行に設定します。

解説

RowCollection オブジェクトは従属オブジェクトです。このオブジェクトへの参照を取得するには、次のプロパティとメソッドを使います。

  • ContentList.ActiveRows

  • ContentList.AllRows

  • ContentList.Search

  • ContentListFactory.AllRows

  • ContentListFactory.Search


RowCollection._NewEnum

読み取り専用の _NewEnum プロパティでは、Microsoft Visual Basic の "for each Row in Collection" 構文を使って RowCollection オブジェクト内の行を列挙するしくみを提供しています。コレクション内の各行は Fields コレクション オブジェクトで、行内の個々のフィールドにアクセスするために使います。

定義

Property _NewEnum() As IUnknown

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティは、Microsoft Visual Basic の "for each Row in Collection" 構文を使って RowCollection オブジェクト内の行を繰り返し処理するためのものです。このプロパティには、直接アクセスできません。

関連項目

RowCollection オブジェクト


RowCollection.Count

Count プロパティは読み取り専用の long で、コレクションの行数を含んでいます。

定義

Property Count As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

RowCollection オブジェクト


RowCollection.EOF

EOF プロパティは読み取り専用の Boolean で、コレクションの終わりに達したときに True を返します。

定義

Property EOF() As Boolean

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

RowCollection オブジェクト


RowCollection.Fields

Fields プロパティは読み取り専用の Fields コレクションで、現在の行の Field オブジェクトを含んでいます。

定義

Property Fields() As Fields

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティに関連付けられている Fields オブジェクトは、RowCollection オブジェクトの現在の行に対応しています。EOF プロパティが True の場合、現在の行がコレクション内の実際の行を超えて設定されていることを示します。このプロパティにアクセスすると、エラーが発生します。

関連項目

RowCollection オブジェクト


RowCollection.MoveFirst

このメソッドは、現在の行が RowCollection オブジェクトの最初の行になるように設定するために使います。

定義

Sub MoveFirst()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

例

'myRowCollection is a RowCollection object.
myRowCollection.MoveFirst

関連項目

RowCollection オブジェクト


RowCollection.MoveNext

このメソッドは、現在の行が現在の行を 1 行超えた行になるように設定するために使います。つまり、コレクション内の次の行に設定します。

定義

Sub MoveNext()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

例

'myRowCollection is a RowCollection object.
myRowCollection.MoveNext

関連項目

RowCollection オブジェクト


RowCollection.RowNum

RowNum プロパティは読み取り専用の数値で、RowCollection オブジェクト内での現在の行の位置を含んでいます。行位置は、1 からではなく、0 から始まります。

定義

Property RowNum() As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

このプロパティの値は、RowCollection オブジェクトの現在の行に対応しています。EOF プロパティが True の場合、現在の行がコレクション内の実際の行を超えて設定されていることを示します。このプロパティにアクセスすると、エラーが発生します。

関連項目

RowCollection オブジェクト


Shipping オブジェクト

このオブジェクトは、送料のプレビュー情報を作成するために使います。

ProgID: | Commerce.Shipping (外部作成可能)
COM クラス名: | Shipping
タイプ ライブラリ名: | Microsoft Commerce 2000 Shipping Components Type Library
DLL 名: | shipmgr.dll
スレッド モデル: | アパートメント

次の表は、Shipping オブジェクトのメソッドを示しています。

メソッド | 説明
PreviewShipments | 注文を送付ごとに分け、送付先ごとにメソッドを使って送料のプレビューを作成します。


Shipping.PreviewShipments

このメソッドは、送付先のプレビュー情報を作成するために使います。

定義

Function PreviewShipments(
orderform As Variant,
context As Variant,
ShipmentDistinguishers As Variant
) As Variant

パラメータ

orderform

送料プレビューを計算する OrderForm オブジェクトです。

context

送付コンポーネントを実行するために使う Context ディクショナリです。

ShipmentDistinguishers

注文を送付先別に分割するために使う項目属性 (キー) を含む文字列の配列です。

戻り値

このメソッドが正常に終了した場合は、送付先ごとにディクショナリの Simplelist を返します。この戻り値は、送付方法ごとに送料プレビューを含むディクショナリの Simplelist を含みます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

PreviewShipments メソッドは、注文を個々の送付先に分割することによって、送料のプレビューを作成します。使われているしくみは、Splitter パイプライン コンポーネントと同じです。送付識別機能によって送付が分割される仕組みの詳細については、「Splitter」を参照してください。

PreviewShipments メソッドは、送付先ごとにディクショナリの SimpleList を返します。返されるそれぞれの送付先ディクショナリは、ディクショナリの SimpleList を含み、それぞれのディクショナリは、特定の送付方法を使うための送料を含んでいます。

送付先のプレビュー情報全体をループする方法を示すコード例については、「送料をプレビューする」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oShip is a Commerce.Shipping object
' dOrder and dContext are Commerce.Dictionary objects
' ADistinguishers is an Array of strings naming line items
' slShipments is a SimpleList of dictionary or orderform objects

slShipments = oShip.PreviewShipments(dOrder, dContext, _
Distinguishers)

関連項目

送料をプレビューする

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager オブジェクト

このオブジェクトは、サイトで利用できる送付方法を管理するために使います。ShippingMethodManager オブジェクトは、メソッドの追加と削除を行い、それらの説明、可用性、および構成を設定できます。

ProgID: | Commerce.ShippingMethodManager (外部作成可能)
COM クラス名: | ShippingMethodManager
タイプ ライブラリ名: | Microsoft Commerce 2000 Shipping Components Type Library
DLL 名: | shipmgr.dll
スレッド モデル: | アパートメント

次の表は、ShippingMethodManager オブジェクトのメソッドを示しています。

メソッド | 説明
CreateMethodInstance | 送付方法の空のインスタンスを作成します。
DeleteMethodInstance | 現在の送付方法インスタンスを削除します。
GetComponentConfig | 送付コンポーネントの Configuration ディクショナリを取得し、現在の送付方法を実装します。
GetInstalledMethodList | 現在の送付方法を含むレコードセットを返します。
GetMethodInfo | 読み込まれた送付方法に関する情報を含むコードセットを返します。
Initialize | ShippingMethodManager オブジェクトを初期化し、データベースに接続します。
LoadMethodInstance | ほかのメソッドによって操作される送付方法を読み込みます。
SaveMethodConfig | 現在の送付方法に関する情報を保存します。
SetCachableComponentConfig | コンポーネントの構成と、ほかのコンポーネントの情報を保存します。
SetMethodConfig | 現在の送付方法の名前と値の組み合わせを設定します。

解説

Commerce Server 2000 の送付アーキテクチャは、パイプラインのプログラミングまたは編集をしないで、Commerce Server ビジネス デスクの送付方法モジュールで変更できます。このために Commerce Server は、送付方法のデータベース テーブルである ShippingConfig と、送付コンポーネントを構成してこれらのメソッドを実装するために必要な情報を保守します。

ShippingMethodManager オブジェクトは、ShippingConfig データベース テーブルを管理するために、ビジネス デスクによって使われます。

送付オブジェクトの詳細については、複数の発送アーキテクチャの「概要」を参照してください。


ShippingMethodManager.CreateMethodInstance

このメソッドは、新しい送付方法を作成するために使います。

定義

Function CreateMethodInstance(
bOnDisk As Variant
) As Variant

パラメータ

bOnDisk

ディスクに送付方法を作成するかどうかを示す Boolean を含む Variant です。このパラメータは通常 True に設定されます。

戻り値

このメソッドが正常に終了すると、新しい送付方法のメソッド ID である文字列を含む Variant が返されます。bOnDisk パラメータが False の場合は、空文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

送付方法を作成してディスク上に保存した場合 (bOnSaved パラメータは True)、この関数は新しいレコードを現在のレコードセットに追加し、[enabled] 列の値にゼロ (0) を設定し、[shipping_method_id] 列に新しい送付方法 ID を設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' Initialize the ShippingMethodManager object
' oSMM is a Commerce.ShippingMethodManager object
' MSCSTransactionConfigConnStr is sConnectionString, a string containing
' the connection string

Call oSMM.Initialize(MSCSTransactionConfigConnStr)

' Create a new shipping method
' bOnDisk is set to True
' sShippingMethodID is sMethodID
sShippingMethodID = oSMM.CreateMethodInstance(True)

' Set the configuration data for the pipeline component
' sProgID, sAction, and sActionFriendlyName are strings
' dConfigDict is a Commerce.Dictionary object

Call oSMM.SetCachableComponentConfig(sProgID, dConfigDict, _
                 sAction, sActionFriendlyName)

' Set properties for the shipping method

Call oSMM.SetMethodConfig(Array("shipping_method_name", "My Shipping Method", "description", "Cheapest but slowest shipping method", "enabled", 1))

' Save the configured shipping method
oSMM.SaveMethodConfig

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.DeleteMethodInstance

このメソッドは、現在の送付方法インスタンスを削除するために使います。

定義

Sub DeleteMethodInstance()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。In particular, the Description property may contain a text description of the error.

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

例

' oSMM is an initialized Commerce.ShippingMethodManager object
' sMethodId is set to sShippingMethodId,
' the method ID of the new method

Call oSMM.LoadMethodInstance(sShippingMethodId)
oSMM.DeleteMethodInstance

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.GetComponentConfig

このメソッドは、送付コンポーネントの Configuration ディクショナリを取得し、現在の送付方法を実装するために使います。送付方法は、GetComponentConfig を呼び出す前に LoadMethodInstance を使って読み込む必要があります。

定義

Function GetComponentConfig() As Variant

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、現在の送付方法の Configuration ディクショナリを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

例

' oSMM is an initialized, loaded Commerce.ShippingMethodManager object

Set dConfig = oSMM.GetComponentConfig

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.GetInstalledMethodList

このメソッドは、現在の送付方法のリストを取得するために使います。GetInstalledMethodList メソッドにより、リストをフィルタ処理し、返す列を選択し、リストを特定の順序に並べ替えることができます。

定義

Function GetInstalledMethodList(
Filter As Variant,
OrderBy As Variant,
columns As Variant
) As Variant

パラメータ

Filter

クエリの WHERE 句になる文字列です。フィルタ処理が不要な場合は、Null を指定します。たとえば、フィルタとして "enabled = 1" とすると、GetInstalledMethodList は有効な送付方法のみを返します。

OrderBy

クエリの ORDER BY 句になる文字列です。順序付けが不要な場合は、NullL を指定します。たとえば、OrderBy 引数として "shipping_method_name" とすると、結果は送付方法の名前で並べ替えられます。

columns

取得する値の列名の Array です。空の配列が渡された場合、ShippingConfig テーブルのすべての列が返されます。

戻り値

このメソッドが正常に終了すると、クエリの結果を含む ADO Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

GetInstalledMethodList メソッドは、3 つのパラメータから SQL クエリを構築し、そのクエリを現在の ShippingConfig テーブルに対して実行し、結果を ADO Recordset オブジェクトで返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oSMM is an initialized Commerce.ShippingMethodManager object
' sFilter is set to filter
' sOrderBy is set to null, so there will be no ordering
' AColumns is an array of column names of the values to retrieve
' rsMethodList is a recordset

"'""'"Set rsMethodList = oSMM.GetInstalledMethodList( _
                             "enabled = 1", _
                             Null, _
                             Array("shipping_method_name") _
                             )

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.GetMethodInfo

このメソッドは、ShippingConfig テーブルの 1 つ以上の列のデータベース属性に関する情報を取得するために使います。

定義

Function GetMethodInfo(
columns As Variant
) As Variant

パラメータ

columns

列の名前を含む文字列の Array です。空の配列を指定すると、すべての列を返します。

戻り値

このメソッドが正常に終了すると、目的の列に関する情報を含む ADO Recordset オブジェクトが返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

このメソッドは、ShippingConfig テーブルのデータ型、定義サイズ、および要求された列の属性を含む ADO Recordset オブジェクトを返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oSMM is an initialized, loaded Commerce.ShippingMethodManager object
' rsResult is an ADO recordset

Set rsResult = oSMM.GetMethodInfo(Array("shipping_method_name", "description", "enabled"))

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.Initialize

このメソッドは、ShippingMethodManager オブジェクトを初期化し、データベースに接続するために使います。

定義

Sub Initialize(
connection_string As Variant
)

パラメータ

connection_string

接続文字列を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oSMM is a Commerce.ShippingMethodManager object
' sConnectionString is a string containing the connection
' string

oSMM.Initialize(sConnectionString)

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.LoadMethodInstance

このメソッドは、指定された送付方法のインスタンスを読み込むために使います。

定義

Sub LoadMethodInstance(
methodid As Variant
)

パラメータ

methodid

送付方法のメソッド ID を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このメソッドは、要求された送付方法のインスタンスを現在のレコードセットの 1 つのレコードとして読み込みます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oSMM is an initialized Commerce.ShippingMethodManager object
' sMethodId is a string containing the method id

oSMM.LoadMethodInstance(sMethodId)

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.SaveMethodConfig

このメソッドは、SetMethodConfig メソッドで設定した現在の送付方法情報を保存するために使います。

定義

Sub SaveMethodConfig()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

SaveMethodConfig メソッドは、現在の送付情報の構成データを保存します。

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

例

' oSMM is a Commerce.ShippingMethodManager object

oSMM.SaveMethodConfig

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.SetCachableComponentConfig

このメソッドは、パイプライン コンポーネントの構成データと、ほかのコンポーネントの情報を設定するために使います。

定義

Sub SetCachableComponentConfig(
progid As Variant,
configdict As Variant,
action As Variant,
actionfriendlyname As Variant
)

パラメータ

progid

パイプライン コンポーネントの ProgID を含む文字列です。

configdict

コンポーネントの構成情報を保持する Dictionary オブジェクトです。

action

送付コンポーネントの ASP 編集ページの名前を含む文字列です。

actionfriendlyname

送付コンポーネントの ASP 編集ページの表示名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

このメソッドは、コンポーネントの Configuration ディクショナリを取得し、現在の構成と共に保存できる状態にします。また、このメソッドは ProgID、編集ページ、およびページの表示名を格納します。SaveMethodConfig メソッドが呼び出されるまで、設定は保存されません。

configdict パラメータは、通常、IPipelineComponentAdmin::GetConfigDictionary を使って取得されます。

このメソッドは、IPipelineComponentAdmin インターフェイスを利用します。このため、ShippingMethodManager オブジェクトによって構成可能なすべての送付コンポーネントは、IPipelineComponentAdmin インターフェイスをサポートしている必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oSMM is a Commerce.ShippingMethodManager object
' sProgID, sAction, and sActionFriendlyName are strings
' dConfigDict is a Commerce.Dictionary object

Call oSMM.SetCachableComponentConfig(sProgID, dConfigDict, _
                 sAction, sActionFriendlyName)

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager.SetMethodConfig

このメソッドは、現在の送付方法に、名前や説明などのプロパティを設定するために使います。

定義

Sub SetMethodConfig(
ParametersAndValues As Variant
)

パラメータ

ParametersAndValues

名前と値の組み合わせを連続要素として含む Array です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

この配列パラメータには、代替要素の名前と値が含まれます。奇数の添字には項目名が含まれ、偶数の添字には値が含まれます。

SaveMethodConfig メソッドは、このメソッドを使って入力された構成情報を保存するために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oSMM is a Commerce.ShippingMethodManager object

Call oSMM.SetMethodConfig(Array("shipping_method_name", "My Shipping Method", "description", "Cheapest but slowest shipping method", "enabled", 1))

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


SimpleFindResultInfo オブジェクト

このオブジェクトは、OrderGroupManager オブジェクトの SimpleFind メソッドと SimpleDelete メソッドを使うときの検索条件を指定するために使います。

ProgID: | Commerce.SimpleFindResultInfo (外部作成可能)
COM クラス名: | SimpleFindResultInfo
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

次の表は、SimpleFindResultInfo オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Columns | Variant | OrderGroupManager SimpleFind メソッドによって返される列のカスタム セットを指定します。
JoinLineItemInfo | Boolean | OrderFormLineItems テーブルと結果を結合するかどうかを指定します。
JoinOrderFormInfo | Boolean | OrderFormHeader テーブルが結果と結合されるかどうかを指定します。
OrderGroupSortColumn | Variant | 並べ替えに使う列名を指定します。
PageNumber | long | 結果セットのページ番号を指定して、結果セットが PageSize を超えているかどうかを示します。
PageSize | long | ページ サイズを指定します。
SortDirection | Variant | 並べ替え順序を指定します。

解説

次の表は、OrderGroupManager SimpleFind メソッドが SimpleFindResultInfo オブジェクトに渡され、表で指定された値が JoinOrderFormInfo プロパティと JoinLineItemInfo プロパティに設定されているときに、OrderGroupManager SimpleFind メソッドによって返されるデータを示しています。

JoinOrderFormInfo | JoinLineItemInfo | SimpleFind メソッドの返されるデータ
False | False | 検索条件を満たす OrderGroup ごとに 1 レコード。OrderGroup のデータのみを返します。既定の設定は False です。
True | False | 検索条件を満たす OrderForm ごとに 1 レコード。OrderGroup と OrderForm のデータを返します。
True | True | 検索条件を満たす注文項目ごとに 1 レコード。OrderGroup、OrderForm、および注文項目のデータを返します。
False | True | 検索条件を満たす注文項目ごとに 1 レコード。OrderGroup、OrderForm、および注文項目のデータを返します。

関連項目

ビジネス プロセス オブジェクト

SimpleFindSearchInfo オブジェクト

OrderGroupManager オブジェクト

OrderGroup オブジェクト

OrderForm オブジェクト


SimpleFindResultInfo.Columns

Columns プロパティは読み取りと書き込みが可能な Variant で、SimpleFind メソッドによって返される列のカスタム セットを指定します。列プロパティを指定する場合、列名をカンマで区切った文字列で指定する必要があります。プロパティが Null のままの場合、SimpleFind は標準的な列セットを返します。

定義

Property Columns As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このプロパティを使うための必要条件は、「SimpleFindResultInfo オブジェクト」に表示されます。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindResultInfo.JoinLineItemInfo

JoinLineItemInfo プロパティは、読み取りと書き込みが可能な Boolean で、OrderFormLineItems テーブルと結果を結合するかどうかを示します。

定義

Property JoinLineItemInfo As Boolean

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このプロパティを使うための必要条件は、「SimpleFindResultInfo オブジェクト」に表示されます。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindResultInfo.JoinOrderFormInfo

JoinOrderFormInfo プロパティは、読み取りと書き込みが可能な Boolean で、OrderFormHeader テーブルが結果に結合されるかどうかを示します。

定義

Property JoinOrderFormInfo As Boolean

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このプロパティを使うための必要条件は、「SimpleFindResultInfo オブジェクト」に表示されます。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindResultInfo.OrderGroupSortColumn

OrderGroupSortColumn プロパティは、読み取りと書き込みが可能な Variant で、並べ替えに使う列名を含みます。

定義

Property OrderGroupSortColumn As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このプロパティを使うための必要条件は、「SimpleFindResultInfo オブジェクト」に表示されます。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindResultInfo.PageNumber

PageNumber プロパティは、読み取りと書き込みが可能な long で、ジャンプ先のページ番号を含みます。このプロパティの設定は、PageSize プロパティと調整する必要があります。

定義

Property PageNumber As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このプロパティは、たとえば、ListSheet で表示される注文を複数のページに分けて表示できるようにする、ページ機能を実装するために使います。

このプロパティは、1 に初期化されています。

このプロパティを使うための必要条件は、「SimpleFindResultInfo オブジェクト」に表示されます。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindResultInfo.PageSize

PageSize プロパティは読み取りと書き込みが可能な long で、ページ サイズを含んでいます。このプロパティの設定は、PageNumber プロパティと調整する必要があります。

定義

Property PageSize As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このプロパティは、たとえば、ListSheet で表示される注文を複数のページに分けて表示できるようにする、ページ機能を実装するために使います。

このプロパティの既定値は 20 です。

このプロパティを使うための必要条件は、「SimpleFindResultInfo オブジェクト」に表示されます。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindResultInfo.SortDirection

SortDirection プロパティは読み取りと書き込みが可能な Variant で、並べ替え順序を含んでいます。このフィールドの値は、昇順の場合は "asc"、降順の場合は "desc" です。

定義

Property SortDirection As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

解説

このプロパティを使うための必要条件は、「SimpleFindResultInfo オブジェクト」に表示されます。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindSearchInfo オブジェクト

このオブジェクトは、OrderGroupManager オブジェクトの SimpleFind メソッドや SimpleDelete メソッドを使って検索や削除を行う場合に、検索条件を指定するために使います。

ProgID: | Commerce.SimpleFindSearchInfo (外部作成可能)
COM クラス名: | SimpleFindSearchInfo
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

次の表は、SimpleFindSearchInfo オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
description | Variant | 検索対象となる商品説明を指定します。Null のままにした場合、商品説明は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
order_number | Variant | 検索対象となる注文番号を指定します。Null のままにした場合、注文番号は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
ordergroup_id | Variant | 検索対象となる OrderGroup ID を指定します。Null のままにした場合、OrderGroup ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
po_number | Variant | 検索対象となる OrderForm ID を指定します。Null のままにした場合、OrderForm ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
product_id | Variant | 検索対象となる商品 ID を指定します。Null のままにした場合、商品 ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
SearchDateTimeColumn | Variant | 検索対象となる DateTime 列の名前を指定します。Null のままにした場合、DateTime 列の名前は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
SearchDateTimeEnd | Variant | 検索対象となる DateTime の終了値を指定します。Null のままにした場合、DateTime の終了値は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
SearchDateTimeStart | Variant | 検索対象となる DateTime の開始値を指定します。Null のままにした場合、DateTime の開始値は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
StatusFilter | long | OrderGroup の状態を指定します。このプロパティを使うと、ユーザーは、状態 (バスケット、テンプレート、新しい注文など) を基準にしてフィルタ処理を実行できるようになります。 このプロパティは読み取りと書き込みが可能です。
user_firstname | Variant | 検索対象となるユーザーの名を指定します。Null のままにした場合、ユーザーの名は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_id | Variant | 検索対象となるユーザー ID を指定します。Null のままにした場合、ユーザー ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_lastname | Variant | 検索対象となるユーザーの姓を指定します。Null のままにした場合、ユーザーの姓は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_org_id | Variant | 検索対象となるユーザー組織の ID を指定します。Null のままにした場合、ユーザー組織の ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_org_name | Variant | 検索対象となるユーザー組織を指定します。Null のままにした場合、ユーザー組織は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。

関連項目

ビジネス プロセス オブジェクト

SimpleFindResultInfo オブジェクト

OrderGroupManager オブジェクト

OrderGroup オブジェクト

OrderForm オブジェクト


SimpleFindSearchInfo.description

description プロパティは読み取りと書き込みが可能な Variant で、検索条件となる商品説明を指定するために使われます。Null のままにした場合、商品説明は検索条件の一部にはなりません。

定義

Property description As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.order_number

order_number プロパティは読み取りと書き込みが可能な Variant で、検索対象となる注文番号を指定するために使われます。Null のままにした場合、注文番号は検索条件の一部にはなりません。

定義

Property order_number As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.ordergroup_id

ordergroup_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となる OrderGroup ID を含んでいます。Null のままにした場合、OrderGroup ID は検索条件の一部にはなりません。

定義

Property ordergroup_id As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.po_number

po_number プロパティは読み取りと書き込みが可能な Variant で、検索対象となる OrderForm ID を含んでいます。Null のままにした場合、OrderForm ID は検索条件の一部にはなりません。

定義

Property po_number As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.product_id

product_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となる商品 ID を含んでいます。Null のままにした場合、商品 ID は検索条件の一部にはなりません。

定義

Property product_id As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.SearchDateTimeColumn

SearchDateTimeColumn プロパティは読み取りと書き込みが可能な Variant で、検索条件の一部となる DateTime 列の名前を含んでいます。Null のままにした場合、DateTime 列の名前は検索条件の一部にはなりません。

定義

Property SearchDateTimeColumn As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.SearchDateTimeEnd

SearchDateTimeEnd プロパティは読み取りと書き込みが可能な Variant で、検索対象となる DateTime の終了値を含んでいます。Null のままにした場合、DateTime の終了値は検索条件の一部にはなりません。このプロパティは、SearchDateTimeColumn プロパティと組み合わせて使います。

定義

Property SearchDateTimeEnd As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.SearchDateTimeStart

SearchDateTimeStart プロパティは読み取りと書き込みが可能な Variant で、検索対象となる DateTime の開始値を含んでいます。Null のままにした場合、DateTime の開始値は検索条件の一部にはなりません。このプロパティは、SearchDateTimeColumn プロパティと組み合わせて使います。

定義

Property SearchDateTimeStart As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.StatusFilter

StatusFilter プロパティは読み取りと書き込みが可能な Variant で、OrderGroup の状態を含んでいます。

定義

Property StatusFilter As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.user_firstname

user_firstname プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザーの名を含んでいます。Null のままにした場合、ユーザーの名は検索条件の一部にはなりません。

定義

Property user_firstname As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.user_id

user_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザーの ID を含んでいます。Null のままにした場合、ユーザーの ID は検索条件の一部にはなりません。

定義

Property user_id As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.user_lastname

user_lastname プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザーの姓を含んでいます。Null のままにした場合、ユーザーの姓は検索条件の一部にはなりません。

定義

Property user_lastname As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.user_org_id

user_org_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザー組織の ID を含んでいます。Null のままにした場合、ユーザー組織の ID は検索条件の一部にはなりません。

定義

Property user_org_id As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleFindSearchInfo.user_org_name

user_org_name プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザー組織の名前を含んでいます。Null のままにした場合、ユーザー組織の名前は検索条件の一部にはなりません。

定義

Property user_org_name As Variant

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager.SimpleDelete

OrderGroupManager.SimpleFind


SimpleList オブジェクト

このオブジェクトは、列挙型をサポートする Variant の配列を作成するために使います。

ProgID: | Commerce.SimpleList (外部作成可能)
COM クラス名: | CSimpleList
タイプ ライブラリ名: | Microsoft Commerce 2000 Core Components Type Library
DLL 名: | MscsCore.dll
スレッド モデル: | 両方

次の表は、SimpleList オブジェクトのプロパティを示しています。

プロパティ | 型 | 説明
Count | long | SimpleList オブジェクト内の要素の数を格納します｡ このプロパティは読み取り専用です。
Item | Variant | SimpleList オブジェクトの要素を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、SimpleList オブジェクトのメソッドを示しています。

メソッド | 説明
Add | 指定された項目を SimpleList オブジェクトに追加します。
Delete | 指定された項目を SimpleList オブジェクトから削除します。

関連項目

汎用オブジェクト

Dictionary オブジェクト


SimpleList.Add

このメソッドは、指定した項目をこの SimpleList オブジェクトに追加するために使います。

定義

Sub Add(
pVar As Variant
)

パラメータ

pVar

SimpleList に追加する Variant です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' The following example adds the string "Hello World" to the oSimpleList
' object instance
' oSimpleList is a Commerce SimpleList object
oSimpleList.Add("Hello World")

関連項目

SimpleList オブジェクト

SimpleList.Delete


SimpleList.Count

このプロパティは、SimpleList オブジェクト内の要素の数を返すために使います。

定義

Property Count As Long

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

Count パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

Delete メソッドなどの SimpleList オブジェクトのメソッドでは、パラメータとして配列インデックスの入力値が必要になります。このため、呼び出し元は必ず事前にこのメソッドを呼び出しておかなくてはなりません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleList オブジェクト


SimpleList.Delete

このメソッドは、指定した項目を SimpleList オブジェクトから削除するために使います。

定義

Sub Delete(
Index As Long
)

パラメータ

Index

削除する項目のインデックス値を含む long です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 説明
DISP_E_BADINDEX | Index パラメータが範囲外の値を参照しています。これは、Index に SimpleList よりも大きい値または 0 より小さい値が含まれていることを意味します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' The following example deletes the SimpleList item at index 1008
' oSimpleList is a Commerce SimpleList object
oSimpleList.Delete(1008)

関連項目

SimpleList オブジェクト

SimpleList.Add

SimpleList.Count


SimpleList.Item

Item プロパティは読み取りと書き込みが可能な Variant で、SimpleList オブジェクトの要素を含んでいます。初期化された Variant は、指定した配列インデックスの位置に格納されます。指定されたインデックス位置に既に項目が格納されていた場合、既存の項目は入力処理が行われると上書きされます。

定義

Property Item(
Index As Long
) As Variant

パラメータ

Index

項目のインデックスを含む long です。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値またはカスタム COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 説明
DISP_E_BADINDEX | Index パラメータが範囲外の値を参照しています。これは、Index に SimpleList よりも大きい値または 0 より小さい値が含まれていることを意味します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

値を入力する場合、オブジェクト参照を設定するときは putref_Item メソッドを使い、スカラ値を設定するときは put_Item メソッドを使います。

関連項目

SimpleList オブジェクト


SiteConfig オブジェクト

このオブジェクトは、次のことを行うために使います。

  • サイト構成情報の作成または削除

  • 管理データベースへの更新のあったサイト構成情報の格納

  • 管理データベースからのサイト構成情報の読み込み

  • サイトへのリソース構成データのインポート/サイトからのリソース構成データのエクスポート
ProgID: | Commerce.SiteConfig (外部作成可能)
COM クラス名: | SiteConfig
タイプ ライブラリ名: | Microsoft Commerce 2000 Configuration Type Library
DLL 名: | MSCSCfg.dll
スレッド モデル: | アパートメント

次の表は、SiteConfig オブジェクトが持つ唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Fields | Fields | 構成フィールドを返します。これらのフィールドのいくつかには、リソースの構成設定が含まれています。 このプロパティは、読み取りと書き込みが可能です。

次の表は、SiteConfig オブジェクトのメソッドを示しています。

メソッド | 説明
AddRefToGroupComponent | サイトがグローバル リソースにアクセスできるように、グローバル リソースへの参照を追加します。
CreateComponentConfig | 指定されたリソースの構成情報を管理データベースに作成し、書き込みます。
DeleteComponentConfig | 指定されたリソースの構成情報を削除します。
DeleteSQLScript | 指定された SQL スクリプト ファイルを管理データベースから削除します。
ExportResource | 指定されたファイルの中に、指定したリソース、プロパティ、および属性を書き込みます。
GetAppsInSite | 指定されたサイトにある Commerce Server 2000 アプリケーションの一覧を取得します。
GetIfCollection | このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトまたは Variant Array のうち、どちらか適切な方に変換するために使います。
GetResourcePropAttrib | 指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせが格納されているディクショナリを取得します。
GetSQLScript | 指定された SQL スクリプト ファイルを管理データベースから取得します。
ImportResource | 指定されたリソース、リソースのプロパティ、および属性を、指定されたファイルから読み取って、Commerce Server 2000 のデータベースに書き込みます。
Initialize | 管理データベースにあるサイト構成情報を読み込みます。
MakeArrayFromSimpleList | 指定された SimpleList オブジェクトを Array に変換します。
MakeArrayFromString | Fields プロパティから読み取られた値を Array に変換します。
MakeSimpleListFromArray | Array を SimpleList オブジェクトに変換します。
MakeStringFromArray | Array を変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにします。
MakeStringFromSimpleList | SimpleList オブジェクトを変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにします。
PutSQLScript | 指定された SQL スクリプト ファイルを管理データベースに入力します。
SaveConfig | サイトの構成設定を管理データベースに保存します。

解説

ユーザー独自のカスタム リソースの追加方法によっては、このオブジェクトを使って管理データベースから構成設定にアクセスできるようにする必要があります。

関連項目

構成オブジェクト

カスタム リソースを統合する

GlobalConfig オブジェクト

SiteConfigReadOnly オブジェクト


SiteConfig.AddRefToGroupComponent

このメソッドは、グローバル リソースへの参照を追加して、サイトがそのリソースにアクセスできるようにするために使います。このメソッドを使ってグローバル リソースを作成する場合、正しいプロパティ値を読み取るためには SiteConfigReadOnly オブジェクトのメソッドを使います。プロパティ値を正しく設定するために、このサイト レベルのリソースによって参照されているグローバル リソースの GlobalConfig オブジェクトを使います。

定義

Sub AddRefToGroupComponent(
bstrSiteResourceName As String,
bstrGroupResourceName As String
)

パラメータ

bstrSiteResourceName

サイトに加えられるリソース構成オブジェクトの名前を含む文字列です。

bstrGroupResourceName

参照の追加先であるグローバル リソース構成オブジェクトの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドを使ってグローバル リソースを作成する場合、正しいプロパティ値を読み取るためには SiteConfigReadOnly オブジェクトのメソッドを使います。プロパティ値を正しく設定するために、このサイト レベルのリソースによって参照されているグローバル リソースの GlobalConfig オブジェクトを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sSiteResName and sGlob are strings
' oSiteConfig is a Commerce SiteConfig object
oSiteConfig.AddRefToGroupComponent(sSiteResName,sGlob)

関連項目

SiteConfig オブジェクト


SiteConfig.CreateComponentConfig

このメソッドは、構成スキーマ クラスのインスタンスを作成して、サイトのレコードセットに読み込むために使います。

定義

Sub CreateComponentConfig(
bstrConfigComponentName As String,
bstrConfigSchemaClass As String
)

パラメータ

bstrConfigComponentName

リソース構成オブジェクト インスタンスの新しい名前を含む文字列です。

bstrConfigSchemaClass

リソース構成スキーマのクラス名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドは、bstrConfigSchemaClass パラメータに指定されているクラスのインスタンスを作成し、そのインスタンスの Name プロパティを bstrConfigComponentName で指定されている名前に設定します。インスタンスは、サイトのレコードセットに読み込まれます。

このメソッドは SaveConfig メソッドを呼び出します。

次の表は、このメソッドのスキーマ クラスの一覧です。

管理データベースでのクラスの名前 | リソース名
MSCS_Catalog | 商品カタログ
MSCS_AppConfigDefault | アプリケーション既定の構成
MSCS_TransactionConfig | トランザクションの構成
MSCS_Transactions | トランザクション
MSCS_Content | 現在では使用されていません
MSCS_Campaigns | キャンペーン
MSCS_AuthManager | CS 認証のサイト
MSCS_DirectMailer | ダイレクト メーラー
MSCS_Predictor | 予測
MSCS_Predictor_Site | 現在では使用されていません
MSCS_Datawarehouse_Group | グローバル データ ウェアハウス
MSCS_Datawarehouse_Site | サイト データ ウェアハウス
MSCS_BizDataStore | プロファイル リソース
MSCS_Address | IIS アプリケーション (Retail や RetailBizDesk など)
MSCS_UPMDtsTask | システム プロファイリングの DTS タスク 情報

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMyCatalog is a string
' oSiteConfig is a Commerce SiteConfig object
oSiteConfig.CreateComponentConfig(sMyCatalog, MSCS_Catalog)

関連項目

SiteConfig オブジェクト

SiteConfig.DeleteComponentConfig


SiteConfig.DeleteComponentConfig

このメソッドは、指定したリソースについての管理データベース情報を削除するために使います。

Sub DeleteComponentConfig(
bstrConfigComponentName As String
)

パラメータ

bstrConfigComponentName

削除対象のリソース構成オブジェクトの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

この削除処理では、リソースに固有の情報のうち、構成情報以外は何も削除されません。たとえば、商品カタログ リソースを削除しても、データベースから Product Catalog テーブルが削除されることはありません。構成情報のみが削除されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMyResource is the name of an existing resource
' oSiteConfig is a Commerce SiteConfig object
oSiteConfig.DeleteComponentConfig (sMyResource)

関連項目

SiteConfig オブジェクト

SiteConfig.CreateComponentConfig


SiteConfig.DeleteSQLScript

このメソッドは、指定した SQL スクリプト ファイルを管理データベースから削除するために使います。

定義

Sub DeleteSQLScript(
sResource As String,
sScriptName As String
)

パラメータ

sResource

削除する SQL スクリプト ファイルに関連付けられているリソースの名前を含む文字列です。

sScriptName

削除する SQL スクリプト ファイルの名前を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


SiteConfig.ExportResource

このメソッドは、指定したファイルの中に、指定したリソース、リソースのプロパティ、および属性を書き込むために使います。

定義

Sub ExportResource(
bstrResourceName As String,
bstrFileName As String
)

パラメータ

bstrResourceName

リソース名を含む文字列です。

bstrFileName

リソースのエクスポート先のファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドと ImportResource メソッドは、お互いに補完し合う関係にあります。このメソッドは、ImportResource が使うファイルを作成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMyResource and sMyFileName.txt are strings
' oSiteConfig is a Commerce SiteConfig object
oSiteConfig.ExportResource(sMyResource, sMyFileName.txt)

関連項目

SiteConfig オブジェクト


SiteConfig.Fields

Fields プロパティは、読み取りと書き込みが可能な Fields オブジェクトです。Fields オブジェクトには、リソースの構成設定を保持するレコードセットが含まれています。Fields オブジェクトは、ADO の切断されたレコードセットです。

定義

Property Fields As Object

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

構成情報を変更するには、Fields オブジェクト内のデータを更新します。次に、SaveConfig を呼び出して、その変更内容をコミットしてデータベースに戻します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


SiteConfig.GetAppsInSite

このメソッドは、指定したサイトにある Commerce Server 2000 アプリケーションの一覧を取得するために使います。

定義

Function GetAppsInSite(
strSiteName As String
) As Variant

パラメータ

strSiteName

実行中の Commerce Server 2000 アプリケーションの一覧を取得するサイトの名前を含む文字列です。

戻り値

このメソッドは正常に完了すると、Commerce Server 2000 のアプリケーションの一覧を含む Variant を返します｡

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMySiteName is a string
' vVariant is a Variant
' oSiteConfig is a Commerce SiteConfig object
vVariant = oSiteConfig.GetAppsInSite(sMySiteName)

関連項目

SiteConfig オブジェクト


SiteConfig.GetIfCollection

このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトや Variant Array などの適切なオブジェクトに変換するために使います。

定義

Function GetIfCollection(
strList As Variant
) As Variant

パラメータ

strList

変換対象のエンコードされた文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、適切なデータ型に変換されたデータを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

Fields プロパティに含まれる文字列のエンコードが SimpleList オブジェクトを示す場合、SimpleList オブジェクトが返されます。エンコードが Variant Array を示す場合、Variant Array が返されます。コレクション オブジェクトが示されていない場合、メソッドは元のエンコードされた入力文字列を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vVariant is a Variant; vEncodedString is a Variant
' oSiteConfig is a Commerce SiteConfig object
vVariant = oSiteConfig.GetIfCollection(vEncodedString)

関連項目

SiteConfig オブジェクト


SiteConfig.GetResourcePropAttrib

このメソッドは、キーと値の組み合わせを保持する Dictionary オブジェクトを取得するために使います。取得する Dictionary オブジェクトは、指定したリソースの指定したプロパティの属性を示すものです。

定義

Function GetResourcePropAttrib(
strResourceName As String,
strPropName As String
) As Object

パラメータ

strResourceName

リソース名を含む文字列です。

strPropName

リソースのプロパティ名を含む文字列です。

戻り値

このメソッドが正常に終了すると、指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせを含む Dictionary オブジェクトへのオブジェクト参照.が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' dDict is a Dictionary object
' sMyCatalog is an existing resource
' connstr_desc_Catalog is a valid Catalog resource property
' oSiteConfig is a Commerce SiteConfig object
dDict = _
oSiteConfig.GetResourcePropAttrib(sMyCatalog, connstr_desc_Catalog)

関連項目

SiteConfig オブジェクト


SiteConfig.GetSQLScript

このメソッドは、指定した SQL スクリプト ファイルを管理データベースから取得するために使います。

定義

Function GetSQLScript(
sResource As String,
sScriptName As String
) As String

パラメータ

sResource

目的の SQL スクリプト ファイルに関連付けられているリソースを含む文字列です。

sScriptName

目的の SQL スクリプト ファイルのファイル名を含む文字列です。

戻り値

このメソッドは正常に完了すると、SQL スクリプト ファイルの内容を含む文字列を返します｡

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMyCatalog is an existing resource
' sMySQLFileName.sql and sContents are strings
' oSiteConfig is a Commerce SiteConfig object
sContents = oSiteConfig.GetSQLScript(sMyCatalog, sMySQLFileName.sql)

関連項目

SiteConfig オブジェクト


SiteConfig.ImportResource

このメソッドは、指定したリソース、リソースのプロパティ、および属性を指定したファイルから読み取って、Commerce Server 2000 データベースに書き込むために使います。

定義

Sub ImportResource(
bstrFileName As String
)

パラメータ

bstrFileName

ファイル名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドは、ExportResource メソッドを補完するものです。このメソッドは、ExportResource メソッドが作成したファイルを利用します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMyFileName is a string
sMyFileName = "C:\ExportedFile.txt"
' oSiteConfig is a Commerce SiteConfig object
oSiteConfig.ImportResource(sMyFileName)

関連項目

SiteConfig オブジェクト


SiteConfig.Initialize

このメソッドは、管理データベースにあるサイト構成情報を読み込むために使います。

定義

Sub Initialize(
bstrSiteName As String
)

パラメータ

bstrSiteName

サイト名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMySiteName is a string
' oSiteConfig is a Commerce SiteConfig object
oSiteConfig.Initialize(sMySiteName)

関連項目

SiteConfig オブジェクト


SiteConfig.MakeArrayFromSimpleList

このメソッドは、指定された SimpleList オブジェクトを Array に変換するために使います。

定義

Function MakeArrayFromSimpleList(
list As Object
) As Variant

パラメータ

list

Array に変換する SimpleList オブジェクトへのオブジェクト参照です。

戻り値

このメソッドが正常に終了すると、変換された Array を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列に対しては、特殊なメソッドを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vMyVariant is a Variant
' varMySimpleList is a SimpleList object
' oSiteConfig is a Commerce SiteConfig object
vMyVariant = oSiteConfig.MakeArrayFromSimpleList(varMySimpleList)

関連項目

SiteConfig オブジェクト


SiteConfig.MakeArrayFromString

このメソッドは、Fields プロパティから読み取ったエンコードされた文字列を、Array に変換するために使います。エンコードされた文字列が Array プロパティを示していない場合、メソッドに渡された元の文字列が返されます。

定義

Function MakeArrayFromString(
strList As Variant
) As Variant

パラメータ

strList

エンコードされた文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、変換された Array または変換されていない文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列に対しては、特殊なメソッドが使われます。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトが表示する値にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfig オブジェクトは、エンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a Variant containing an encoded string
read from the Fields property
' vArray is a Variant
' oSiteConfig is a Commerce SiteConfig object
vArray = oSiteConfig.MakeArrayFromString(vEncoded)

関連項目

SiteConfig オブジェクト


SiteConfig.MakeSimpleListFromArray

このメソッドは、Array を SimpleList オブジェクトに変換するために使います。

定義

Function MakeSimpleListFromArray(
varArray As Variant
) As Object

パラメータ

varArray

変換対象となる SimpleList オブジェクトを含む Variant です。

戻り値

このメソッドが正常に終了すると、変換された SimpleList オブジェクトへのオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列に対しては、特殊なメソッドが使われます。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vMyArray is a Variant
' varMySimpleList is a SimpleList object
' oSiteConfig is a Commerce SiteConfig object
varMySimpleList = oSiteConfig.MakeSimpleListFromArray(vMyArray)

関連項目

SiteConfig オブジェクト


SiteConfig.MakeStringFromArray

このメソッドは、Array オブジェクトを変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにするために使います。

定義

Function MakeStringFromArray(
varArray As Variant
) As Variant

パラメータ

varArray

エンコード対象の Array を含む Variant です。

戻り値

このメソッドが正常に終了すると、エンコードされた文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列に対しては、特殊なメソッドが使われます。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfig オブジェクトは、エンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a Variant
' vArray is a Variant
' oSiteConfig is a Commerce SiteConfig object
vEncoded = oSiteConfig.MakeStringFromArray(vArray)

関連項目

SiteConfig オブジェクト


SiteConfig.MakeStringFromSimpleList

このメソッドは、SimpleList オブジェクトを変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにするために使います。

定義

Function MakeStringFromSimpleList(
slist As Object
) As String

パラメータ

slist

エンコードされた文字列に変換する SimpleList オブジェクトへのオブジェクト参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列に対しては、特殊なメソッドが使われます。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、SimpleList、または Fields 列のオブジェクトとしてはサポートされません。そのため、SiteConfig オブジェクトは、エンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a string
' vArray is a Variant
' varMySimpleList is a SimpleList object
' oSiteConfig is a Commerce SiteConfig object
vEncoded = oSiteConfig.MakeStringFromSimpleList(varMySimpleList)

関連項目

SiteConfig オブジェクト


SiteConfig.PutSQLScript

このメソッドは、指定した SQL スクリプト ファイルを管理データベースに入れるために使います。

定義

Sub PutSQLScript(
sResource As String,
sScriptName As String,
sScriptContents As String
)

パラメータ

sResource

SQL スクリプト ファイルに関連付けられているリソースの名前を含む文字列です。

sScriptName

SQL スクリプト ファイルの名前を含む文字列です。

sScriptContents

SQL スクリプト ファイルの内容を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMySQLFileName.sql, sMyRes and sMyContents are strings
' oSiteConfig is a Commerce SiteConfig object
oSiteConfig.PutSQLScript(sMyRes, "sMySQLFileName.sql" ,sMyContents )

関連項目

SiteConfig オブジェクト


SiteConfig.SaveConfig

このメソッドは、変更または更新のあったサイトの構成設定をすべて保存するために使います。

定義

Sub SaveConfig()

パラメータ

なし。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。特に、Description プロパティはエラーを説明したテキストを含みます。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドは、サイトの構成全体を保存します。2 人のユーザーがサイト構成の別の部分を同時に更新しようとした場合、最後に保存された内容によって、最初にサイト構成を更新したユーザーによる変更が上書きされます。

関連項目

SiteConfig オブジェクト


SiteConfigReadOnly オブジェクト

このオブジェクトは、管理データベースにあるサイト構成情報を読み込むために使います。

ProgID: | Commerce.SiteConfigReadOnly (外部作成可能)
COM クラス名: | SiteConfigReadOnly
タイプ ライブラリ名: | Microsoft Commerce 2000 Configuration Type Library
DLL 名: | MSCSCfg.dll
スレッド モデル: | アパートメント

次の表は、SiteConfigReadOnly オブジェクトが持つ唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Fields | Fields | サイトおよびサイト リソースの構成設定を返します。 このプロパティは読み取り専用です。

次の表は、SiteConfigReadOnly オブジェクトのメソッドを示しています。

メソッド | 説明
GetAppsInSite | 指定されたサイトにある Commerce Server 2000 アプリケーションの一覧を取得します。
GetIfCollection | このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトまたは Variant Array のうち、どちらか適切な方に変換するために使います。
Initialize | 管理データベースにあるサイト構成情報を読み込みます。
MakeArrayFromSimpleList | 指定された SimpleList オブジェクトを Array に変換します。
MakeArrayFromString | Fields プロパティから読み取った値を Array に変換します。
MakeSimpleListFromArray | Array を SimpleList オブジェクトに変換します。
MakeStringFromArray | Array をエンコードされた文字列に変換します。これは Fields プロパティに書き込めます。
MakeStringFromSimpleList | SimpleList オブジェクトをエンコードされた文字列に変換します。これは Fields プロパティに書き込めます。

解説

SiteConfigReadOnly オブジェクトを使うと、SiteConfig オブジェクトを使う場合よりも多くの構成データにアクセスすることができます。SiteConfigReadOnly オブジェクトを使う場合、リソースへの参照にアクセスすると、グループ リソースの値が返されます。SiteConfig オブジェクトを使う場合、返されるのはリソースの名前への参照のみです。

ユーザー独自のカスタム リソースの追加方法によっては、このオブジェクトを使って管理データベースから構成設定にアクセスできるようにする必要があります。

関連項目

構成オブジェクト

カスタム リソースを統合する

GlobalConfig オブジェクト

SiteConfig オブジェクト


SiteConfigReadOnly.Fields

Fields プロパティは読み取り専用の Fields オブジェクトです。Fields オブジェクトの中には、サイトおよびサイト リソースの構成設定が保持されています。

定義

Property Fields As Object

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト

SiteConfigReadOnly.Initialize


SiteConfigReadOnly.GetAppsInSite

このメソッドは、指定したサイトにある Commerce Server 2000 アプリケーションの一覧を取得するために使います。

定義

Function GetAppsInSite(
strSiteName As String
) As Variant

パラメータ

strSiteName

実行中の Commerce Server 2000 アプリケーションの一覧を取得するサイトの名前を含む文字列です。

戻り値

このメソッドが正常に終了すると、Commerce Server 2000 アプリケーションの一覧を含む Variant が返されます｡

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMySiteName is a String
' vVariant is a Variant
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
vVariant = oSiteConfigReadOnly.GetAppsInSite(sMySiteName)

関連項目

SiteConfigReadOnly オブジェクト


SiteConfigReadOnly.GetIfCollection

このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトや Variant Array などの適切なオブジェクトに変換するために使います。

定義

Function GetIfCollection(
strList As Variant
) As Variant

パラメータ

strList

変換対象のエンコードされた文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、適切なデータ型に変換されたデータを含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

Fields プロパティに含まれる文字列のエンコードが SimpleList オブジェクトを示す場合、SimpleList オブジェクトが返されます。エンコードが Variant Array を示す場合、Variant Array が返されます。コレクション オブジェクトが示されていない場合、メソッドは元のエンコードされた入力文字列を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vVariant is a Variant; vEncodedString is a Variant
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
vVariant = oSiteConfigReadOnly.GetIfCollection(vEncodedString)

関連項目

SiteConfigReadOnly オブジェクト


SiteConfigReadOnly.Initialize

このメソッドは、管理データベースにあるサイト構成情報を読み込むために使います。

定義

Sub Initialize(
bstrSiteName As String
)

パラメータ

bstrSiteName

サイト名を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このオブジェクトを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' sMySiteName is a string
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
oSiteConfigReadOnly.Initialize(sMySiteName)

関連項目

SiteConfigReadOnly オブジェクト


SiteConfigReadOnly.MakeArrayFromSimpleList

このメソッドは、指定された SimpleList オブジェクトを Array に変換するために使います。

定義

Function MakeArrayFromSimpleList(
list As Object
) As Variant

パラメータ

list

Array に変換する SimpleList オブジェクトへのオブジェクト参照です。

戻り値

このメソッドが正常に終了すると、変換された Array を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vMyVariant is a Variant
' varMySimpleList is a SimpleList object
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
vMyVariant = oSiteConfigReadOnly.MakeArrayFromSimpleList(varMySimpleList)

関連項目

SiteConfigReadOnly オブジェクト


SiteConfigReadOnly.MakeArrayFromString

このメソッドは、Fields プロパティから読み取ったエンコードされた文字列を、Array に変換するために使います。エンコードされた文字列が Array プロパティを示していない場合、メソッドに渡された元の文字列が返されます。

定義

Function MakeArrayFromString(
strList As Variant
) As Variant

パラメータ

strList

エンコードされた文字列を含む Variant です。

戻り値

このメソッドが正常に終了すると、変換された Array または変換されていない文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトが表示する値にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfigReadOnly オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a Variant containing an encoded string
' read from the Fields property
' vArray is a Variant
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
vArray = oSiteConfigReadOnly.MakeArrayFromString(vEncoded)

関連項目

SiteConfigReadOnly オブジェクト


SiteConfigReadOnly.MakeSimpleListFromArray

このメソッドは、Array を SimpleList オブジェクトに変換するために使います。

定義

Function MakeSimpleListFromArray(
varArray As Variant
) As Object

パラメータ

varArray

変換対象となる SimpleList オブジェクトを含む Variant です。

戻り値

このメソッドが正常に終了すると、変換された SimpleList オブジェクトへのオブジェクト参照が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vMyArray is a Variant
' varMySimpleList is an object reference to a SimpleList object
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
varMySimpleList = oSiteConfigReadOnly.MakeSimpleListFromArray(vMyArray)

関連項目

SiteConfigReadOnly オブジェクト


SiteConfigReadOnly.MakeStringFromArray

このメソッドは、Array オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列は Fields プロパティに書き込めます。

定義

Function MakeStringFromArray(
varArray As Variant
) As Variant

パラメータ

varArray

エンコード対象の Array を含む Variant です。

戻り値

このメソッドが正常に終了すると、エンコードされた文字列を含む Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfigReadOnly オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a Variant
' vArray is a Variant
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
vEncoded = oSiteConfigReadOnly.MakeStringFromArray(vArray)

関連項目

SiteConfigReadOnly オブジェクト


SiteConfigReadOnly.MakeStringFromSimpleList

このメソッドは、SimpleList オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列は Fields プロパティに書き込めます。

定義

Function MakeStringFromSimpleList(
slist As Object
) As String

パラメータ

slist

エンコードされた文字列に変換する SimpleList オブジェクトへのオブジェクト参照です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、SimpleList、または Fields 列のオブジェクトとしてはサポートされません。そのため、SiteConfigReadOnly オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' vEncoded is a string
' vArray is a Variant
' varMySimpleList is a SimpleList object
' oSiteConfigReadOnly is a Commerce SiteConfigReadOnly object
vEncoded = oSiteConfigReadOnly.MakeStringFromSimpleList(varMySimpleList)

関連項目

SiteConfigReadOnly オブジェクト


StandardSManager オブジェクト

このオブジェクトは、買物客 ID を実行時に作成し、取得する機能を利用するために使います。

ProgID: | Commerce.StandardSManager (外部作成可能)
COM クラス名: | MSCSStandardSManager_3_0
タイプ ライブラリ名: | Commerce 1.0 Type Library
DLL 名: | Commerce.dll
スレッド モデル: | 両方

次の表は、StandardSManager オブジェクトが持つ唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Mode | Integer | Page オブジェクトの GetShopperID メソッドと PutShopperID メソッドがどのように買物客 ID を取得し、格納するかを決定します。

次の表は、StandardSManager オブジェクトのメソッドを示しています。

メソッド | 説明
CreateShopperId | 現在のユーザーに割り当てる一意の買物客 ID を作成します。
GetShopperId | 現在のユーザーの一意な買物客 ID を返します。
InitManager | StandardSManager オブジェクトを初期化します。
PutShopperId | サイトの StandardSManager の初期化モードに応じて、指定された買物客 ID を Cookie に書き込むか、URL または SURL で使用するために格納するか、またはその両方の操作を行います。

解説

このオブジェクトは、Site Server 3.0 Commerce Edition との下位互換のためだけに含まれています。AuthManager オブジェクトによって置き換えられます。

関連項目

下位互換性オブジェクト

AuthManager オブジェクト


StandardSManager.CreateShopperId

このメソッドを使用して、現在のユーザーの一意な買物客 ID を作成します。

定義

Function CreateShopperId() As String

パラメータ

なし。

戻り値

このメソッドが正常に終了すると、新規買物客 ID を含んだ文字列が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

StandardSManager.InitManager

StandardSManager.GetShopperId

StandardSManager.PutShopperId


StandardSManager.GetShopperId

このメソッドを使用して、現在のユーザーの買物客 ID を取得します。サイトの StandardSManager オブジェクトの初期化モードに応じて、URL クエリ文字列または Cookie から買物客 ID が返されます。

定義

Function GetShopperId(
pdispContext As Object
) As Variant

パラメータ

pdispContext

ASP スクリプト コンテキストを持つオブジェクト参照です。

戻り値

このメソッドが正常に終了すると、買い物客 ID を指定する Variant が返されます。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

買物客 ID が見つからない場合は、GetShopperID メソッドが空文字列を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

StandardSManager.Mode

StandardSManager.PutShopperId


StandardSManager.InitManager

このメソッドを使用して、指定したサイト名およびモードに対して StandardSManager オブジェクトを初期化します。

定義

Sub InitManager(
bstrStoreKey As String,
bstrMode As String
)

パラメータ

bstrStoreKey

サイトの名前を含む文字列です。

bstrMode

ユーザー情報をどのように格納するかを示す文字列です。初期化モードの詳細については、"解説" を参照してください。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

bstrMode パラメータには、次の値を指定できます。

モード | 動作
Cookie | PutShopperID メソッドが、買物客 ID をクライアント システム上の Cookie に格納します。GetShopperID メソッドがこの Cookie を取得します。
url | MCSSIDUrlKey を URL 変数の名前の部分として、PutShopperID メソッドが買物客 ID を URL に追加します。GetShopperID メソッドが URL から買物客 ID を取得します。
Cookieurl | PutShopperID メソッドが、クライアント システム上の Cookie および URL に買物客 ID を格納します。GetShopperID メソッドが、まず Cookie から買物客 ID の取得を試み、次にURL から取得を試みます。
Urlcookie | PutShopperID メソッドが、URL に買物客 ID を格納し、それを cookie としてクライアント システムにも格納します。GetShopperID メソッドが、まず URL から買物客 ID の取得を試み、次に Cookie から取得を試みます。

このオブジェクトは、Site Server 3.0 Commerce Edition との下位互換のためだけに含まれています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

例

' oStdSManager is a Commerce.StandardSManager object
oStdSManager.InitManager("mySiteName", "Cookie")

関連項目

StandardSManager オブジェクト

StandardSManager.Mode

StandardSManager.PutShopperId


StandardSManager.Mode

Mode プロパティは読み取りと書き込みが可能な Integer で、Page オブジェクトの GetShopperID メソッドと PutShopperID メソッドが買物客 ID を取得および格納する方法を決定します。

定義

Property Mode As Integer

パラメータ

なし。

エラー値

このプロパティは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

StandardSManager オブジェクトを作成したら、GetShopperID メソッドまたは PutShopperID メソッドを呼び出す前に、StandardSManager オブジェクトを初期化する必要があります。初期化するには、サイト名と初期化モードを指定して StandardSManager オブジェクトの InitManager メソッドを呼び出します。

次の表は、Mode プロパティの Integer として指定できる値を示しています。

モード | 動作
0 | Cookie だけ参照します。
1 | URL だけ参照します。
2 | まず Cookie を、次に URL を参照します。
3 | まず URL を、次に Cookie を参照します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

Page オブジェクト

StandardSManager.InitManager


StandardSManager.PutShopperId

このメソッドを使用して、現在のユーザーの買物客 ID を格納します。オブジェクトが初期化されたら、買物客 ID が、Cookie または URL の一部として格納されます。

定義

Sub PutShopperId(
pdispContext As Object,
bstrShopperID As String
)

パラメータ

pdispContext

ASP スクリプト コンテキストを持つオブジェクト参照です。

bstrShopperID

格納する買い物客 ID を含む文字列です。

戻り値

なし。

エラー値

このメソッドは、成功を示すときはグローバル Err オブジェクトの Number プロパティを S_OK (&H00000000) に設定し、失敗を示すときは標準 COM エラー値に設定します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。具体的には、Description プロパティにテキストによるエラーの説明が入ります。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

StandardSManager.Mode

StandardSManager.GetShopperId


C++ からの呼び出し

ここでは、Microsoft Commerce Server 2000 で提供されている Component Object Model (COM) について、それらの持つプロパティやメソッドを C++ プログラムから呼び出す方法と共に説明します。次の表では各オブジェクトを一覧表示し、その目的を簡単に説明します。

オブジェクト | 説明
AdminEventLog | イベント ログにエラー、情報、警告、成功の各メッセージを書き込みます。
AdminFiles | サーバー側のバイナリ ファイルとテキスト ファイルに読み取り専用アクセスを指定します。
AdminSite | サイト構成プロパティに読み取りアクセスと書き込みアクセスを指定し、サイト管理ができるようにします。 このオブジェクトは下位互換性の目的にのみ提供されています。
AdminWebServer | Web サイトとそのプロパティを列挙します。
AppConfig | 国と地域のコードおよび名前をサイト構成ストアから取得します。
AppFrameWork | Active Server Pages (ASP) のフォームでの処理を簡素化する書式設定と検証に関するメソッドを提供します。
AsyncRpt | 静的レポートの非同期化された表示とエクスポートを行います。
Auction | オークションをサポートするメソッドを提供します。
AuthManager | ユーザーの認証を管理するために、安全で標準化され、かつ拡張可能な方法を提供します。
BizDeskSecurity | 特定の Commerce Server ビジネス デスク モジュールを特定のユーザーに対して非表示にします。
CacheManager | 汎用的なキャッシュ サービスを提供します。
CatalogManager | 商品カタログ システム全体にわたってカタログを管理します。
CatalogSets | さまざまなユーザーや組織の複数のカスタム カタログをフィルタ処理します。
CatalogToVendorAssociation | カタログを特定の製造元に関連付けます。
Category | 特定のカタログ内の商品の階層を管理します。
ContentList | 指定されたコンテンツの要求に当てはまる各コンテンツ項目が表示されます。フィルタ処理やソートなどのコンテンツ選択フレームワーク (CSF) コンポーネントのサービスも提供します。
ContentListFactory | ContentList オブジェクトを作成し、これらのオブジェクトで共有されるデータを格納します。
ContentListSchema | ContentListFactory オブジェクトのスキーマを操作します。
ContentSelector | ページのコンテンツの指定と取得ができるようにします。
DataFunctions | ロケール ベースのデータ型の処理と値の範囲チェックを実行するメソッドを提供します。
DBStorage | Dictionary オブジェクトと SimpleList オブジェクトを、データベースと相互にマッピングするメソッドを提供します。主に、発注情報とレシート情報の保存に使います。
Dictionary | メモリ内の名前と値の組み合わせの作成、保存、取得をサポートします。
DictionaryXMLTransforms | Dictionary オブジェクトのデータの拡張マークアップ言語 (XML) への変換や、XML データの Dictionary オブジェクトへの変換を行います。
EuroDisplay | 複数の通貨を表示する必要がある場合に、使用通貨に応じて金額を変換およびフォーマットします。
ExpressionEval | 一連のプロファイルに対して 1 つ以上の式を選択および評価します。
ExpressionStore | 式を作成、保存、変更、および取得するメソッドを提供します。
ExprEvalContext | 複数式の評価操作に使う特定の評価コンテキスト(一連のプロファイル)を保存します。
ExprFltrQueryBldr | XML 形式の式を SQL フィルタ文字列に変換します。
GenID | グローバル一意識別子 (GUID) を生成するメソッド、およびデータベースに保存されている複数のグローバルなシーケンシャル カウンタを作成および維持するメソッドを提供します。
GlobalConfig | グローバル リソースの構成管理用のメソッドを提供します。
ListManager | リストを作成、破棄、管理、および操作するメソッドを提供します。
LRUCache | CacheManager オブジェクトに対して LRU キャッシュを提供します。限られた数のエントリを保存し、使用頻度の最も少ない要素から順にそのエントリをソートします。
MessageManager | 複数の言語でテキスト文字列を保存します。用途の 1 つとしては、注文フォーム処理中に発生するエラー状態を記述するために、注文処理パイプライン (OPP) コンポーネントによって使われる例があります。
MicroPipe | パイプライン構成ファイル(.pcf)を使わずに、ASP ページからパイプライン コンポーネントを実行します。
MtsPipeline | 非トランザクション Microsoft Commerce Server 2000 パイプラインを実行します。
MtsTxPipeline | トランザクション Microsoft Commerce Server 2000 パイプラインを実行します。
OrderForm | ユーザー情報および購入情報用にメモリ内に記憶領域を用意します。
OrderGroup | 異なるサプライアや複数の発送先からの商品が含まれる注文など、複雑な注文の管理を可能にします。
OrderGroupManager | OrderGroup オブジェクトおよび OrderForm オブジェクトを管理するメソッドを提供します。
OrderPipeline | Microsoft Commerce Server 2000 のパイプラインを実行します。これはコンテンツ選択フレームワークに特に有益です。
Page | ASP ページのフォームでの処理を簡素化する書式設定と検証に関するメソッドを提供します。 このオブジェクトは下位互換性の目的にのみ提供されています。
PooledPipeline | パフォーマンス向上のため、COM+ オブジェクトプーリングを使う非トランザクション Microsoft Commerce Server 2000 のパイプラインを実行します。
PooledTxPipeline | パフォーマンス向上のため、COM+ オブジェクトプーリングを使うトランザクション Microsoft Commerce Server 2000 のパイプラインを実行します。
PredictorClient | 予測モデルのダウンロード、予測コンテキストの設定、および予測の実行に使うメソッドを提供します。
PredictorServiceAdmin | 予測モデルと予測モデルの構成を取得します。
PredictorServiceSiteAdmin | 予測モデルと予測モデルの構成を管理します。
PredModelBuilder | 予測モデルの複数の構築スレッドを制御するプロパティとメソッドを提供します。
Product | 商品バリエーションと商品カテゴリの関連付けを操作します。
ProductCatalog | カタログ データの作成、削除、変更をできるようにします。
ProfileObject | プロファイル プロパティのデータにランタイム読み取りアクセスと書き込みアクセスを、プロパティ属性に読み取り専用アクセスを与えます。
ProfileService | プロファイル スキーマのインスタンスを作成、削除、および取得できるようにします。
ReportRenderer | 静的レポートの同期化された表示およびエクスポートを行います。
RowCollection | ContentList オブジェクトの ActiveRows プロパティや AllRows プロパティ、検索から返された行、およびContentListFactory オブジェクトの AllRows プロパティや検索から返された行を列挙します。
Shipping | 送料のプレビュー情報を作成します。
ShippingMethodManager | 複数の送付方法を管理します。
SimpleFindResultInfo | OrderGroup オブジェクトと OrderGroupManager オブジェクトを使うときの検索条件を指定します。
SimpleFindSearchInfo | OrderGroup オブジェクトと OrderGroupManager オブジェクトを使って検索操作および削除操作を実行するときの検索条件を指定します。
SimpleList | 列挙型をサポートする Variant の配列を作成します。
SiteConfig | サイト リソースの構成を管理します。
SiteConfigReadOnly | 管理データベースからグローバル構成の値とサイト構成の値を読み取るメソッドを提供します。
StandardSManager | ユーザー ID のランタイム時の作成と取得を容易にします。 このオブジェクトは下位互換性の目的にのみ提供されています。


AdminEventLog オブジェクト

このオブジェクトは、エラー メッセージ、情報メッセージ、および警告メッセージをイベント ログに書き込むために使います。

ProgID: | Commerce.AdminEventLog (外部作成可能)
COM クラス名: | AdminEventLog
COM インターフェイス名: | IAdminEventLog
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

C++ で AdminEventLog オブジェクトのメソッドにアクセスするには、IAdminEventLog インターフェイスを使います。

次の表は、AdminEventLog オブジェクトのメソッドを示しています。

メソッド | 説明
Initialize | イベントを書き込むために、サイト、ソース、およびイベント サーバーを初期化します。
WriteErrorEvent | Commerce Server のイベント ログに、リソースに問題がある、ファイルが見つからないなどのエラー メッセージを書き込みます。
WriteInformationalEvent | Commerce Server のイベント ログに、ログオンしたユーザーの名前などの情報メッセージを書き込みます。
WriteWarningEvent | Commerce Server のイベント ログに、メモリの残量が少ないなどの警告メッセージを書き込みます。


IAdminEventLog::Initialize

このメソッドは、オブジェクトを初期化するために使います。

定義

HRESULT IAdminEventLog::Initialize(
BSTR bstrServer
);

パラメータ

bstrServer

[in] サーバー名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminEventLog オブジェクト


IAdminEventLog::WriteErrorEvent

このメソッドは、Commerce Server イベント ログにエラー イベントを書き込むために使います。

定義

HRESULT IAdminEventLog::WriteErrorEvent(
BSTR bstrSiteName,
BSTR bstrMessage
);

パラメータ

bstSiteName

[in] サイト名を含む BSTR です。

bstrMessage

[in] エラー イベントのメッセージ文字列を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminEventLog オブジェクト

IAdminEventLog::WriteInformationalEvent

IAdminEventLog::WriteWarningEvent


IAdminEventLog::WriteInformationalEvent

このメソッドは、Commerce Server イベント ログに情報イベントを書き込むために使います。

定義

HRESULT IAdminEventLog::WriteInformationalEvent(
BSTR bstrSiteName,
BSTR bstrMessage
);

パラメータ

bstSiteName

[in] サイト名を含む BSTR です。

bstrMessage

[in] 情報イベントのメッセージ文字列を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminEventLog オブジェクト

IAdminEventLog::WriteErrorEvent

IAdminEventLog::WriteWarningEvent


IAdminEventLog::WriteWarningEvent

このメソッドは、Commerce Server イベント ログに警告イベントを書き込むために使います。

定義

HRESULT IAdminEventLog::WriteWarningEvent(
BSTR bstrSiteName,
BSTR bstrMessage
);

パラメータ

bstSiteName

[in] サイト名を含む BSTR です。

bstrMessage

[in] 警告イベントのメッセージ文字列を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminEventLog オブジェクト

IAdminEventLog::WriteErrorEvent

IAdminEventLog::WriteInformationalEvent


AdminFiles オブジェクト

このオブジェクトは、サーバー側のファイルに読み取り専用アクセスするために使います。バイナリ ファイル用とテキスト ファイル用に、それぞれ別のメソッドが用意されています。

ProgID: | Commerce.AdminFiles (外部作成可能)
COM クラス名: | CAdminFiles
COM インターフェイス名: | IAdminFiles
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

C++ で AdminFiles オブジェクトのメソッドにアクセスするには、IAdminFiles インターフェイスを使います。

次の表は、AdminFiles オブジェクトのメソッドを示しています。

メソッド | 説明
ReadFromBinaryFile | 指定されたバイナリ ファイルの内容を読み取ります。
ReadFromFile | 指定されたテキスト ファイルの内容を読み取ります。

関連項目

汎用オブジェクト


IAdminFiles::ReadFromBinaryFile

このメソッドは、指定したバイナリ ファイルの内容を読み取るために使います。数値データやビットマップなど、ファイルの中にどのような種類のデータが含まれていてもかまいません。

定義

HRESULT IAdminFiles::ReadFromBinaryFile(
BSTR bstrFileName,
VARIANT* prgByte
);

パラメータ

bstrFileName

[in] 読み取るファイルのパスと名前を指定する BSTR です。

prgByte

[out] ファイルの内容を返すために使う Variant のアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

prgByte パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminFiles オブジェクト

IAdminFiles::ReadFromFile


IAdminFiles::ReadFromFile

このメソッドは、指定したテキスト ファイルの内容を返すために使います。ファイルの内容はテキスト文字列として返されます。

定義

HRESULT IAdminFiles::ReadFromFile(
BSTR bstrFileName,
BSTR* pbstrOut
);

パラメータ

bstrFileName

[in] 読み取るファイルのパスと名前を指定する BSTR です。

pbstrOut

[out] ファイルの内容を返すために使う BSTR のアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrOut パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminFiles オブジェクト

IAdminFiles::ReadFromBinaryFile


AdminSite オブジェクト

このオブジェクトは、Site Server 3.0 Commerce Edition サイト構成への集中アクセスを取得し、サイトの構成とメンテナンスを行うために使います。

重要

  • このオブジェクトは、Commerce Server 2000 サイトに対して使うことはできません。このオブジェクトは Site Server 3.0 Commerce Edition との下位互換性を維持する目的でのみ用意されています。
ProgID: | Commerce.AdminSite (外部作成可能)
COM クラス名: | AdminSite
COM インターフェイス名: | IAdminSite
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

C++ で AdminSite オブジェクトのプロパティとメソッドにアクセスするには、IAdminSite インターフェイスを使います。

次の表は、AdminSite オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Directory | BSTR | 現在登録されている Site Server 3.0 Commerce Edition サイトの物理ディレクトリを格納します。 このプロパティは読み取りと書き込みが可能です。
Status | Variant | Site Server 3.0 Commerce Edition サイトが開いているか、それとも閉じているかという状態を格納します。 このプロパティは読み取りと書き込みが可能です。
Version | long | Site Server 3.0 Commerce Edition のバージョン番号を格納します。 このプロパティは読み取り専用です。

次の表は、AdminSite オブジェクトのメソッドを示しています。

メソッド | 説明
Create | Site Server 3.0 Commerce Edition サイトを作成します。
Delete | Site Server 3.0 Commerce Edition サイトを削除します。
Initialize | AdminSite オブジェクトを初期化し、Site Server 3.0 Commerce Edition サイトに関する情報を読み込みます。
InitializeFromMDPath | メタベースのパスにある情報を使って、AdminSite オブジェクトを初期化します。
IsValidName | 指定されたテキスト文字列が、Site Server 3.0 Commerce Edition サイトのショートネームとして有効であるかどうかを判定します。
ReadDefaultProperties | Site.csc ファイルからプロパティを読み取って、それらのプロパティを含む Dictionary オブジェクトを返します。
ReadManagerProperties | Site.csc ファイルからプロパティを読み取り、それらのプロパティを含む Dictionary オブジェクト (サイト ディクショナリ) を返します。
Reload | Site Server 3.0 Commerce Edition サイト用のアプリケーションおよびセッション オブジェクトをすべて閉じ、もう一度読み込みます。
WriteDefaultProperties | 指定されたサイト ディクショナリからプロパティを読み取って、Site.csc ファイルに書き込みます。
WriteManagerProperties | 指定されたサイト ディクショナリからプロパティを読み取って、Site\Manager\Config\Site.csc ファイルに書き込みます。

解説

AdminSite オブジェクトには、データ ソースやユーザー アカウントの指定などのサイト管理を実行するためのメソッドが用意されています。このオブジェクトは、構成に関するさまざまなプロパティを "サイト ディクショナリ" 中に保持します。サイト ディクショナリは、MSCSSite という名前の Dictionary オブジェクトとして実装されます。これらのプロパティは、サイト、保護付きのホスト、および保護なしのホストが持つショートネームとロングネームを含んでいます。また、名前付き接続文字列や名前付きクエリの一覧など、ほかの Dictionary オブジェクトの名前も含んでいます。

関連項目

下位互換性オブジェクト


IAdminSite::Create

このメソッドは、Site Server 3.0 Commerce Edition サイトを作成し、必要に応じてアプリケーションと Config\SQL\SqlSvr and Config\SQL\Oracle サブディレクトリを作成するために使います。

定義

HRESULT IAdminSite::Create(
BSTR bstrInstance,
BSTR bstrVDir,
BSTR bstrDir,
long nAuthorization,
VARIANT_BOOL bIsApplication,
VARIANT_BOOL bIsCommerceSite
);

パラメータ

bstrInstance

[in] Web サイトを表す BSTR として表現された数値です。既定の Web サイトの場合は (1) を指定します。

bstrVDir

[in] Site Server 3.0 Commerce Edition サイトのショートネーム (仮想ディレクトリ) を含む BSTR です。

bstrDir

[in] サイトを作成する物理ディレクトリを指定する BSTR です。

nAuthorization

[in] 認証の種類を含む long です。

bIsApplication

[in] サイト用にアプリケーションを作成するかどうかを制御する VARIANT_BOOL です。True に設定すると、サイト用にアプリケーションが作成されます。それ以外の値に設定した場合、アプリケーションは作成されません。Site Server 3.0 Commerce Edition サイトの場合は、True に設定する必要があります。

bIsCommerceSite

[in] サイト用に SQL Server と Oracle の各サブディレクトリを作成するかどうかを制御する VARIANT_BOOL です。True に設定すると、Site Server 3.0 Commerce Edition で管理するようにサイトがマークされ、Directory\Config\SQL\SqlSvr と Directory\Config\SQL\Oracle の各サブディレクトリが作成されます (Directory は bstrDir パラメータで渡された値です)。False に設定すると、最上位の Directory だけが作成されます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AdminSite オブジェクトが持つメソッドのほとんどは、AdminSite オブジェクトの初期化後しか呼び出せません。例外は Create メソッドと IsValidName メソッドです。AdminSite オブジェクトの Create メソッドによって作成されたオブジェクトは、自動的に初期化されます。Initialize メソッドを明示的に呼び出す必要はありません。

Web サイト名に使用できる文字および Web サイト名の最大長は、Microsoft SQL Server のテーブル名に課されている制限の内容によって決まります。また、サーバー上のほかのショートネームと同じ名前を使うことはできません。

サイトの作成前に IsValidName メソッドを使って、サイトのショートネームが有効なものであることを確認してください。そのショートネームが多くの環境で有効であるためには、いくつかの命名規則に従う必要があります。たとえば、Commerce Server はサイトのショートネームをデータベース テーブルおよび生成されたページに追加します。

関連項目

AdminSite オブジェクト

IAdminSite::Delete

IAdminSite::Initialize

IAdminSite::IsValidName


IAdminSite::Delete

このメソッドは、Site Server 3.0 Commerce Edition サイトを削除するために使います。Delete メソッドは、インターネット インフォメーション サービス (IIS) のメタベースからサイトの属性を削除します。ディレクトリとデータベースは削除されません。

定義

HRESULT IAdminSite::Delete(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AdminSite オブジェクトが持つメソッドのほとんどは、AdminSite オブジェクトの初期化後しか呼び出せません。例外は Create メソッドと IsValidName メソッドです。AdminSite オブジェクトの Create メソッドによって作成されたオブジェクトは、自動的に初期化されます。Initialize メソッドを明示的に呼び出す必要はありません。

関連項目

AdminSite オブジェクト

IAdminSite::Create


IAdminSite::get_Directory/put_Directory

Directory プロパティは読み取りと書き込みが可能な文字列で、現時点で登録済みの Site Server 3.0 Commerce Edition サイトの物理ディレクトリを含んでいます。

定義

Get メソッド :

HRESULT IAdminSite::get_Directory(
BSTR* Directory
);

Put メソッド :

HRESULT IAdminSite::put_Directory(
BSTR Directory
);

パラメータ

Directory

[in] プロパティを入力する場合は、ディレクトリ名を含む BSTR です。
[out] プロパティを取得する場合は、ディレクトリ名を返すために使う BSTR のアドレスです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Web サイト名に使用できる文字および Web サイト名の最大長は、ファイル システムにおける制限事項によって決まります。

Directory パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト

IAdminSite::InitializeFromMDPath


IAdminSite::Initialize

このメソッドは、AdminSite オブジェクトを初期化し、Site Server 3.0 Commerce Edition サイトに関する情報を読み込めるようにするために使います。サイトは、サイトのショートネームとサーバー インスタンスを使うことで一意に識別されます。ReadDefaultProperties メソッドは、この情報を使ってサイトのプロパティを読み込みます。

定義

HRESULT IAdminSite::Initialize(
BSTR bstrInstance,
BSTR bstrVDir
);

パラメータ

bstrInstance

[in] Web サイトを表す BSTR として表現された数値です。

bstrVDir

[in] Site Server 3.0 Commerce Edition サイトのショートネーム (仮想ディレクトリ) を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AdminSite オブジェクトのメソッドは、AdminSite オブジェクトの初期化後しか使用できません。例外は Create メソッドと IsValidName メソッドです。AdminSite オブジェクトの Create メソッドによって作成されたオブジェクトは、自動的に初期化されます。Initialize メソッドを明示的に呼び出す必要はありません。

関連項目

AdminSite オブジェクト

IAdminSite::ReadDefaultProperties

IAdminSite::Create

IAdminSite::IsValidName


IAdminSite::InitializeFromMDPath

このメソッドは、指定したインターネット インフォメーション サービス (IIS) メタベースのパスにある AdminSite オブジェクトを初期化するために使います。メタベースのパスは、Request.ServerVariables メソッドの呼び出しを使うことで取得できます。

定義

HRESULT IAdminSite::InitializeFromMDPath(
BSTR bstrMDPath
);

パラメータ

bstrMDPath

[in] メタベースのパスを含む BSTR です。メタベースのパスは、Request.ServerVariables メソッドの呼び出しを使うことで取得できます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Initialize メソッドではサーバー インスタンスと仮想ディレクトリを個別に指定する必要がありますが、このメソッドで指定する必要があるのはメタベースのパスです。

関連項目

AdminSite オブジェクト

IAdminSite::Initialize


IAdminSite::IsValidName

このメソッドは、サイト名の有効性を判定するために使います。IsValidName メソッドは、指定された Site Server 3.0 Commerce Edition サイトのショートネームが有効な場合には True を返し、無効な場合には False を返します。

定義

HRESULT IAdminSite::IsValidName(
BSTR bstrName,
BSTR bstrInstance,
VARIANT_BOOL* pbRet
);

パラメータ

bstrName

[in] テストされるショートネームを指定する BSTR です。

bstrInstance

[in] Web サーバー インスタンスを指定する BSTR です。サーバー インスタンスの一覧を取得するには、GetWebSites メソッドを使います。既定の Web サイトの場合は "1" を指定します。

pbRet

[out] サイト名が有効かどうかを返すために使われる VARIANT_BOOL のアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Web サイト名に使用できる文字および Web サイト名の最大長は、Microsoft SQL Server のテーブル名に課されている制限の内容によって決まります。また、サーバー上のほかのショートネームと同じ名前を使うことはできません。

pbRet パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

サイトを実際に作成する前に、サイトのショートネームが有効なものであることを、このメソッドを使って確認してください。そのショートネームが多くの環境で有効であるためには、いくつかの命名規則に従う必要があります。たとえば、Commerce Server はサイトのショートネームをデータベース テーブルおよび生成されたページに追加します。

オブジェクトが持つ IsValidName メソッドは、そのオブジェクトの Initialize メソッドや Create メソッドを呼び出さなくても使用できます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト

IAdminSite::Initialize


IAdminSite::ReadDefaultProperties

このメソッドは、Site.csc ファイルからプロパティを読み取って、それらのプロパティが含まれるサイト ディクショナリを返すために使います。

定義

HRESULT IAdminSite::ReadDefaultProperties(
IDictionary** ppIDictProp
);

パラメータ

ppIDictProp

[out] Site.csc ファイルから読み取られたサイト プロパティを含む Dictionary オブジェクトの IDictionary インターフェイスを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Site Server 3.0 Commerce Edition サイトの Site.csc ファイルは、<サイト名>\Config ディレクトリにあります。管理サイトの Site.csc ファイルは <サイト名>\Manager\Config ディレクトリにあります。

ppIDictProp パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト

IAdminSite::WriteDefaultProperties

IAdminSite::ReadManagerProperties

IAdminSite::Initialize


IAdminSite::ReadManagerProperties

このメソッドは、管理ページの構成ファイル (<サイト名>\Manager\Config\Site.csc) からプロパティを読み取って、それらのプロパティが含まれるサイト ディクショナリを返すために使います。

定義

HRESULT IAdminSite::ReadManagerProperties(
IDictionary** ppIDict
);

パラメータ

ppIDict

[out] 管理ページの構成ファイルから読み取られたプロパティを含む Dictionary オブジェクトの IDictionary インターフェイスを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

管理サイトのディクショナリのプロパティは、DefaultConnectionString と ConnectionStringMap です。これらのプロパティは、メイン サイト構成におけるそれぞれのプロパティとは別のものです。

ppIDict パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト

IAdminSite::WriteManagerProperties

IAdminSite::ReadDefaultProperties


IAdminSite::Reload

このメソッドは、Site Server 3.0 Commerce Edition サイトのすべてのアプリケーションとセッション オブジェクトを閉じ、もう一度読み込むために使います。

定義

HRESULT IAdminSite::Reload(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

再読み込みが行われた後、次のブラウザ要求が発生すると Global.asa ファイルが読み込まれます。

関連項目

AdminSite オブジェクト


IAdminSite::get_Status/put_Status

Status プロパティは読み取りと書き込みが可能なBoolean で、Site Server 3.0 Commerce Edition サイトが開いているかどうかを示します。また、Status プロパティに値が設定されると、Site Server 3.0 Commerce Edition サイトが開かれたり閉じられたりします。

定義

Get メソッド :

HRESULT IAdminSite::get_Status(
VARIANT_BOOL* Status
);

Put メソッド :

HRESULT IAdminSite::put_Status(
VARIANT_BOOL Status
);

パラメータ

Status

[in] Put メソッドの場合は、VARIANT_BOOL は、サイトが開いているか、それとも閉じているかという状態を表す BOOL 値です。
[out] Get メソッドの場合は、サイトが開いているか、それとも閉じているかという状態を返すために使われる VARIANT_BOOL のアドレスです。値が True の場合、サイトが開いていることを示し、False の場合は、サイトが閉じていることを示します。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティを変更すると、サイト構成に "Open" または "Closed" というテキスト値が設定されます。サイトの再読み込みが実行されると、Global.asa ファイルによってこの値が読み取られ、サイトの Dictionary オブジェクトの com_compref_frnc.htm 値に格納されます。その後、Site Server 3.0 Commerce Edition サイト内の各ページは Site.Status プロパティの値を確認し、ブラウザをリダイレクトするかどうかを決めます。テキストが "Open" 以外の場合、ブラウザは Site.CloseRedirectURL プロパティで指定されているアドレスにリダイレクトされます。

プロパティを取得する場合、Status パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminSite オブジェクト


IAdminSite::get_Version

Version プロパティは読み取り専用の整数値で、使用中の Site Server 3.0 Commerce Edition のバージョンを返すために使われます。

定義

HRESULT IAdminSite::get_Version(
long* Version
);

パラメータ

Version

[out] 使用中の Site Server 3.0 Commerce Edition のバージョンを返すために使われる long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Version パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

AdminSite オブジェクト


IAdminSite::WriteDefaultProperties

このメソッドは、指定したサイト Dictionary オブジェクトからプロパティを読み取って、Site.csc ファイルに書き込むために使います。

定義

HRESULT IAdminSite::WriteDefaultProperties(
IDictionary* pIDictProp
);

パラメータ

pIDictProp

[in] Site.csc ファイルへ書き込むプロパティを含む Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

AdminSite オブジェクト

IAdminSite::ReadDefaultProperties

IAdminSite::WriteManagerProperties


IAdminSite::WriteManagerProperties

このメソッドは、指定したサイト Dictionary オブジェクトからプロパティを読み取って、管理ページの構成ファイル (<サイト名>\Manager\Config\Site.csc) に書き込むために使います。

定義

HRESULT IAdminSite::WriteManagerProperties(
IDictionary* pIDictProp
);

パラメータ

pIDictProp

[in] 管理ページの構成ファイルへ書き込むプロパティを含む Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

管理サイトのディクショナリのプロパティは、DefaultConnectionString と ConnectionStringMap です。これらのプロパティは、メイン サイト構成におけるそれぞれのプロパティとは別のものです。サイトの管理ページへのアクセスに必要なユーザー名とパスワードは、ユーザー ページで使われているものと異なる可能性があります。

関連項目

AdminSite オブジェクト

IAdminSite::ReadManagerProperties

IAdminSite::WriteDefaultProperties


AdminWebServer オブジェクト

このオブジェクトは、サーバー上のすべての Web サイトを列挙してそれらのサイトのプロパティを取得したり、Web サイト上のすべての Commerce Server サイトを列挙したりするために使います。

ProgID: | Commerce.AdminWebServer (外部作成可能)
COM クラス名: | AdminWebServer
COM インターフェイス名: | IAdminWebServer
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Commerce Admin 1.0 Type Library
DLL 名: | MSCSadmin.dll
スレッド モデル: | 両方

C++ で AdminWebServer オブジェクトのメソッドにアクセスするには、IAdminWebServer インターフェイスを使います。

次の表は、AdminWebServer オブジェクトのメソッドを示しています。

メソッド | 説明
GetCommerceSites | Web サイトのサーバー インスタンスが指定されたとき、その Web サイト上の Site Server 3.0 Commerce Edition サイトをすべて列挙します。
GetWebSiteProperties | サーバー インスタンスが指定されたとき、そのサイトのプロパティを Dictionary オブジェクト内の名前と値のペアとして返します。
GetWebSites | すべての Web サイトを列挙し、それらの Web サイト (サーバー インスタンス) が持つ番号の配列を返します。

解説

インターネット インフォメーション サービス (IIS) のメタベースにアクセスする Active Server Pages (ASP) スクリプトは、IIS を実行しているコンピュータ上の管理者特権を持っていなければなりません。これらのスクリプトをリモート コンピュータから実行する場合は、Microsoft 暗号化認証などの、セキュリティが設定された接続を介して接続する必要があります。管理作業のために作成した .asp ファイル用にサーバーまたはディレクトリを作成し、そのサーバーやディレクトリのディレクトリ セキュリティ認証方法を "Microsoft 暗号化認証" に設定します。

関連項目

構成オブジェクト


IAdminWebServer::GetCommerceSites

このメソッドは、指定した Web サイトに関連付けられている Commerce Server サイトをすべて列挙するために使います。このメソッドは、すべての Commerce Server サイト インスタンスが持つ番号の配列を返します。

このメソッドは、Commerce Server 2000 サイトに対しては使用できません。このメソッドは、Site Server 3.0 Commerce Edition サイトとの下位互換性を維持する目的でのみ用意されています。

定義

HRESULT IAdminWebServer::GetCommerceSites(
BSTR bstrInstance,
VARIANT* pVarRet
);

パラメータ

bstrInstance

[in] サイトのサーバー インスタンスを表す、BSTR として表現された数値です。

pVarRet

[out] すべての Commerce Server サイト インスタンスを表す数値の配列を返すために使われる Variant のアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pVarRet パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

GetCommerceSites メソッドは、メタベースに保存されているキーを検査することで、サイトが Commerce Server サイトであるかどうかを判定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminWebServer オブジェクト


IAdminWebServer::GetWebSiteProperties

このメソッドは、サーバー インスタンスが指定されたとき、サイトのプロパティを Dictionary オブジェクト内の名前と値のペアとして取得します。

定義

HRESULT IAdminWebServer::GetWebSiteProperties(
BSTR bstrInstance,
IDictionary** ppIDictSiteProperties
);

パラメータ

bstrInstance

[in] サイトのサーバー インスタンスを表す、BSTR として表現された数値です。

ppIDictSiteProperties

[out] 指定したサイトのプロパティを含む Dictionary オブジェクトの IDictionary インターフェイスを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppIDictSiteProperties パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminWebServer オブジェクト


IAdminWebServer::GetWebSites

このメソッドは、すべての Web サイトを列挙するために使います。各 Web サイトのサーバー インスタンス番号を表している番号の配列を返します。

定義

HRESULT IAdminWebServer::GetWebSites(
VARIANT* pvarInstances
);

パラメータ

pvarInstances

[out] すべてのサーバー インスタンスを表す数値の配列を返すために使われる Variant のアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvarInstances パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AdminWebServer オブジェクト


AppConfig オブジェクト

このオブジェクトは、サイト構成ストアからサイトの構成設定を取得するために使います。また、サイト構成ストアからさまざまな国/地域の名称と国/地域コードを取得する場合にも使います。

ProgID: | Commerce.AppConfig (外部作成可能)
COM クラス名: | AppCfg
COM インターフェイス名: | IAppCfg
インターフェイス ID 定数: | IID_IAppCfg
ヘッダー ファイル: | mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 App Helper Type Library
DLL 名: | AppHelper.dll
スレッド モデル: | 両方

C++ で AppConfig オブジェクトのメソッドにアクセスするには、IAppCfg インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、AppConfig オブジェクトのメソッドを示しています。

メソッド | 説明
DecodeStatusCode | 指定された状態コードをデコードします。
GetCountryCodeFromCountryName | 指定された国の国コードを返します。
GetCountryNameFromCountryCode | 指定された国コードに対応する国名を返します。
GetCountryNamesList | 国名のアルファベット順一覧を返します。
GetOptionsDictionary | サイト構成キーをサイト構成値にマップしている Dictionary オブジェクトを返します。
GetRegionCodeFromCountryCodeAndRegionName | 指定された国コードと地域名に対応する、地域コードを返します。
GetRegionNameFromCountryCodeAndRegionCode | 指定された国コードと地域コードに対応する、地域名を返します。
GetRegionNamesListFromCountryCode | 指定された国コードに対応する地域名をアルファベット順に並べた一覧を返します。
Initialize | AppConfig オブジェクトを初期化します。
RefreshCache | AppConfig オブジェクトのキャッシュを最新の状態に更新します。

解説

このオブジェクトは、パフォーマンスへの影響を避けるために、通常は Global.asa ファイル内で 1 回だけ作成され、初期化されます。このオブジェクトのインスタンスは、Application オブジェクトに格納され、必要になったときに ASP ページ上で使われます。

次のサンプル コードは、これらの処理の例を示しています。

Dim oAppConfig
Set oAppConfig = Server.CreateObject("Commerce.AppConfig")
Set Application("MSCSAppCfg") = oAppConfig

国コードは、ビジネス デスクで追加された値に応じて変化するため、ISO の国コードとは一致しないこともあります。

関連項目

構成オブジェクト

国名と国コードの対応表


IAppCfg::DecodeStatusCode

このメソッドは、指定した状態コードをデコードするために使います。

定義

HRESULT IAppCfg::DecodeStatusCode(
int iStatusCode,
BSTR* pbstrStatusCode
);

パラメータ

iStatusCode

デコード対象の状態コードを指定する Integer です。

pbstrStatusCode

[out, retval] デコードされた状態コードを返すために使う BSTR のアドレスです。指定した状態コードがシステムにない場合は、同じ状態コードが返されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrStatusCode パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

状態コードは、Commerce Server ビジネス デスクで入力します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト


IAppCfg::GetCountryCodeFromCountryName

このメソッドは、指定した国名に対応する国コードを取得するために使います。

定義

HRESULT IAppCfg::GetCountryCodeFromCountryName(
BSTR bstrCountryName,
BSTR* pbstrCountryCode
);

パラメータ

bstrCountryName

[in] 要求されている国コードに対応する国名を含む BSTR です。

pbstrCountryCode

[out, retval] 要求されている国コードを返すために使う BSTR のアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrCountryCode パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

国コードが見つからない場合は、空文字列が返されます。

国コードと国名は、Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト

IAppCfg::GetCountryNameFromCountryCode

IAppCfg::GetCountryNamesList

国名と国コードの対応表


IAppCfg::GetCountryNameFromCountryCode

このメソッドは、指定した国コードに対応する国名を取得するために使います。

定義

HRESULT IAppCfg::GetCountryNameFromCountryCode(
BSTR bstrCountryCode,
BSTR* pbstrCountryName
);

パラメータ

bstrCountryCode

[in] 要求されている国名に対応する国コードを含む BSTR です。

pbstrCountryName

[out, retval] 要求されている国名を返すために使う BSTR のアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrCountryName パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

国名が見つからない場合は、bstrCountryCode パラメータに指定した国コードが返されます。

国コードと国名は、Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト

IAppCfg::GetCountryCodeFromCountryName

IAppCfg::GetCountryNamesList

国名と国コードの対応表


IAppCfg::GetCountryNamesList

このメソッドは、サイト構成データベース内にある国名のアルファベット順一覧を取得するために使います。

定義

HRESULT IAppCfg::GetCountryNamesList(
ISimpleList** pplistCountryNames
);

パラメータ

pplistCountryNames

[out, retval] ISimpleList インターフェイスを返すために使うポインタのアドレスです。このメソッドが正常に終了すると、この一覧には国名のアルファベット順一覧が入ります。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pplistCountryNames パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

国コードと国名は、Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト

IAppCfg::GetCountryCodeFromCountryName

国名と国コードの対応表


IAppCfg::GetOptionsDictionary

このメソッドは、サイト構成情報を含んでいる Dictionary オブジェクトを取得するために使います。

定義

HRESULT IAppCfg::GetOptionsDictionary(
BSTR bstrUserID,
IDictionary** ppdispOptionsDictionary
);

パラメータ

bstrUserID

[in] 空の文字列 ("") を含む BSTR です。

ppdispOptionsDictionary

[out, retval] IDictionary インターフェイス ポインタを返すために使うポインタのアドレスです。関連付けられた Dictionary オブジェクトには、サイト構成情報が含まれています。ディクショナリ キーについては、"解説" を参照してください。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppdispOptionsDictionary パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

i_AuctionOptions などのいくつかのオプション ディクショナリ キーは、将来の使用のために予約されています。次の表は、このメソッドによって返される Dictionary オブジェクトが含むキーのうち、Microsoft 管理コンソール (MMC) にマップされているものの一覧です。

プログラム上の定義名 | MMC での既定の構成のマッピング
i_AddItemRedirectOptions | [品目の追加リダイレクト オプション]
i_AddressBookOptions | [アドレス帳オプション]
f_AltCurrencyConversionRate | [通貨 : 代替通貨の変換レート]
i_AltCurrencyLocale | [通貨 : 代替通貨のロケール]
i_AltCurrencyOptions | [通貨 : 代替通貨オプション]
i_BaseCurrencyLocale | [通貨 : 基本通貨のロケール]
i_BillingOptions | [支払いオプション : 請求書オプション]
i_BizTalkOptions | [BizTalk オプション]
i_CookiePathCorrectionOptions | [Cookie パス訂正オプション]
i_CurrencyDisplayOrderOptions | [通貨 : [通貨の表示順序オプション]
i_DelegatedAdminOptions | [代理管理者オプション]
i_FormLoginOptions | [フォーム ログイン オプション]
i_FormLoginTimeOut | [認証マネージャの認証チケットのタイムアウト]
i_HostNameCorrectionOptions | [ホスト名訂正オプション]
i_PaymentOptions | [支払いオプション]
i_SitePrivacyOptions | [サイト プライバシ オプション]
i_SiteRegistrationOptions | [サイト登録オプション]
i_SiteTicketOptions | [サイト チケット オプション]
s_AltCurrencySymbol | [通貨 : 代替通貨記号]
s_BaseCurrencySymbol | [通貨 : 基本通貨記号]
s_BizTalkCatalogDocType | [BizTalk カタログの形式]
s_BizTalkConnString | [BizTalk 接続文字列]
s_BizTalkOrderDocType | [BizTalk 注文書の形式]
s_BizTalkSourceQualifierID | [BizTalk 送信元組織の修飾子]
s_BizTalkSourceQualifierValue | [BizTalk 送信元組織の修飾子の値]
s_BizTalkSubmittypeQueue | [BizTalk 送信形式]
s_PageEncodingCharset | [ページ エンコーディング文字セット]
s_SMTPServerName | [SMTP サーバー名]
s_WeightMeasure | [重量測定単位]

次の表は、このメソッドによって返される Dictionary が含むキーのうち、MMC にマップされていないものの一覧です。

プログラム上の定義名 | 値または説明
i_IsFullTextSearchInstalled | SQL Server でフルテキスト検索が有効になっているかどうかを示します。
s_BizDataStoreConnectionString | プロファイル サービス : s_BizDataStoreConnectionString
s_CampaignsConnectionString | キャンペーン : connstr_db_Campaigns
s_CatalogConnectionString | 商品カタログ : connstr_db_Catalog
s_CommerceProviderConnectionString | プロファイル サービス : s_CommerceProviderConnectionString
s_NonSecureHostname | この値は、global.asa ファイル内でアプリケーションの保護なしホスト名に設定されます。
s_ProfileServiceConnectionString | プロファイル サービス : s_ProfileServiceConnectionString
s_SecureHostname | この値は、global.asa ファイル内でアプリケーションの保護付きホスト名に設定されます。
s_SiteName | サイトの名前です。
s_TransactionConfigConnectionString | トランザクション構成 : connstr_db_TransactionConfig
s_TransactionsConnectionString | トランザクション : connstr_db_Transactions

関連項目

AppConfig オブジェクト


IAppCfg::GetRegionCodeFromCountryCodeAndRegionName

このメソッドは、指定した国コードと地域名に対応した地域コードを含む文字列を取得するために使います。

定義

HRESULT IAppCfg::GetRegionCodeFromCountryCodeAndRegionName(
BSTR bstrCountryCode,
BSTR bstrRegionName,
BSTR* pbstrRegionCode
);

パラメータ

bstrCountryCode

[in] 要求されている地域コードに対応する国コードを含む BSTR です。

bstrRegionName

[in] 要求されている地域コードに対応する地域名を含む BSTR です。

pbstrRegionCode

[out, retval] 要求されている地域コードを返すために使う BSTR のアドレスです。空の BSTR は、コードが見つからなかったことを示します。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRegionCode パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

地域コードが見つからなかった場合は、空文字列が返されます。

国コード、国名、地域コード、および地域名は Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト

IAppCfg::GetCountryCodeFromCountryName

IAppCfg::GetCountryNamesList

IappCfg::GetRegionNameFromCountryCodeAndRegionCode

IAppCfg::GetRegionNamesListFromCountryCode

国名と国コードの対応表


IAppCfg::GetRegionNameFromCountryCodeAndRegionCode

このメソッドは、指定した国コードと地域コードに対応する地域名を取得するために使います。

定義

HRESULT IAppCfg::GetRegionNameFromCountryCodeAndRegionCode(
BSTR bstrCountryCode,
BSTR bstrRegionCode,
BSTR* pbstrRegionName
);

パラメータ

bstrCountryCode

[in] 要求されている地域名に対応する国コードを含む BSTR です。

bstrRegionCode

[in] 要求されている地域名に対応する地域コードを含む BSTR です。

pbstrRegionName

[out, retval] 地域名を返すために使う BSTR のアドレスです。地域名が見つからない場合、BSTR には bstrRegionCode パラメータに指定された地域コードが含まれています。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRegionName パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

地域名が見つからない場合は、bstrRegionCode パラメータに指定した地域コードが返されます。

国コード、国名、地域コード、および地域名は Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト

IAppCfg::GetCountryCodeFromCountryName

IAppCfg::GetCountryNamesList

IAppCfg::GetRegionCodeFromCountryCodeAndRegionName

IAppCfg::GetRegionNamesListFromCountryCode

国名と国コードの対応表


IAppCfg::GetRegionNamesListFromCountryCode

このメソッドは、指定した国コードに対応する地域名のアルファベット順一覧を取得するために使います。

定義

HRESULT IAppCfg::GetRegionNamesListFromCountryCode(
BSTR bstrCountryCode,
ISimpleList** pplistRegionNames
);

パラメータ

bstrCountryCode

[in] 地域名の一覧が要求されている国の国コードを含む BSTR です。

pplistRegionNames

[out, retval] ISimpleList インターフェイス ポインタを返すために使うポインタのアドレスです。処理が正常に終了すると、一覧には、指定した国コードに対応する地域名のアルファベット順一覧が入ります。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pplistRegionNames パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

国コード、国名、地域コード、および地域名は Commerce Server ビジネス デスクで設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト

IAppCfg::GetCountryCodeFromCountryName

IAppCfg::GetCountryNamesList

IAppCfg::GetRegionCodeFromCountryCodeAndRegionName

国名と国コードの対応表


IAppCfg::Initialize

このメソッドは、AppConfig オブジェクトを初期化するために使います。

定義

HRESULT IAppCfg::Initialize(
BSTR bstrSiteName
);

パラメータ

bstrSiteName

[in] この AppConfig オブジェクトが関連付けられているサイトの名前を含む BSTR です。この名前では、大文字と小文字は区別されません。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AppConfig オブジェクトのほかのメソッドを使うには、このオブジェクトをあらかじめ初期化しておく必要があります。初期化は、通常はオブジェクトの作成直後に Global.asa ファイル内で一度実行されるだけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppConfig オブジェクト

IAppCfg::RefreshCache


IAppCfg::RefreshCache

このメソッドは、AppConfig オブジェクトに関連付けられたキャッシュを最新の状態に更新するために使います。

定義

HRESULT IAppCfg::RefreshCache(
);

パラメータ

なし。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

国コード、地域コード、およびそのほかの値は、Commerce Server ビジネス デスクを使って追加したり変更したりできます。それらの変更内容は、プログラム内部で RefreshCache メソッドを使うことにより、いつでも反映させることができます。

関連項目

AppConfig オブジェクト

IAppCfg::Initialize


AppFrameWork オブジェクト

このオブジェクトは、Active Server Pages (ASP) で処理するフォームを簡素化するために使います。

ProgID: | Commerce.AppFrameWork (外部作成可能)
COM クラス名: | AppFrameWork
COM インターフェイス名: | IAppFrameWork
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | AspLib 1.0 Type Library
DLL 名: | asplib.dll
スレッド モデル: | 両方

C++ で AppFrameWork オブジェクトのメソッドにアクセスするには、IAppFrameWork インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、AppFrameWork オブジェクトのメソッドを示しています。

メソッド | 説明
Option | ページ上に選択肢を表示するための、タグを生成します。
RequestDate | URL クエリ文字列またはフォーム送信変数から値を取得し、それを Date 値 (Date Variant) に変換します。
RequestDateTime | URL クエリ文字列またはフォーム送信変数から値を取得し、それを Date/Time 値 (Date Variant) に変換します。
RequestFloat | URL クエリ文字列またはフォーム送信変数から値を取得し、それを浮動小数点値に変換します。
RequestMoneyAsNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、指定されたロケールに基づいてそれを金額に変換します。
RequestNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、それを数値に変換します。
RequestString | URL クエリ文字列またはフォーム送信変数から値を取得し、その値に対して文字列処理を実行します。
RequestTime | URL クエリ文字列またはフォーム送信変数から値を取得し、それを Time 値 (Date Variant) に変換します。
VerifyWith | 検証する値を入れるための、非表示の入力フィールドを生成します。
VirtualDirectory | サイトの仮想ディレクトリ名を返します。

解説

AppFrameWork オブジェクトのメソッドは、大きく次のカテゴリに分けられます。

  • 書式設定 : Option メソッドを使うと、HTML ページの項目の書式を簡単に設定できるほか、可能な場合には、ページ内のほかの変数を実行時に評価し、それに基づいて HTML 項目の値を決定することができます。

  • 検証 : これらのメソッドは、"Request" で始まり、URL クエリ文字列から値を取得し、その値のデータ型をロケール値に基づいて変換した後、それらの値が指定した範囲に収まっているかどうかを検証するために使います。

このオブジェクトを作成するには、アプリケーション スコープ内であらかじめ Commerce.DataFunctions オブジェクトを作成しておく必要があります。

関連項目

表示オブジェクト


IAppFrameWork::Option

このメソッドは、HTML フォームの選択肢リストに表示される OPTION (選択肢) 項目を生成するために使います。値および選択状態を指定することができます。

定義

HRESULT IAppFrameWork::Option(
VARIANT vtVal1,
VARIANT vtVal2,
BSTR* pbstrRet
);

パラメータ

vtVal1

[in] 選択肢リストで使われる選択肢の値を含む Variant です。

vtVal2

[in] 選択肢が選択された状態であるかどうかを示す値を含む Variant です。vtVal2 パラメータが vtVal1 パラメータと同値の場合、選択肢リストの定義に HTML キーワードの SELECTED が挿入されます。

pbstrRet

[out, retval] OPTION (選択肢) 項目を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト


IAppFrameWork::RequestDate

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date 値 (Date Variant) に変換するために使います。

定義

HRESULT IAppFrameWork::RequestDate(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列名またはフォーム送信変数名を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される日付を含む Variant です。この既定値には、Date/Time 値や Time 値を格納することはできません。

vtMin

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための日付値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換後の値が vtMin より小さい場合は、Null が返されます。

vtMax

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための日付値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換後の値が vtMax より大きい場合は、Null が返されます。

vtLocale

[in, optional] 日付を変換するときに使われる、ロケールを指定するための数値を含む Variant です。この値が指定されていない場合、RequestDate メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 処理済みの日付値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。検証に失敗した場合、pvtRet パラメータは Null に設定されます。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IAppFrameWork.RequestDateTime

IDataFunctions_4_0::ConvertDateString

IDataFunctions_4_0::Date


IAppFrameWork::RequestDateTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date/Time 値 (Date Variant) に変換するために使います。

定義

HRESULT IAppFrameWork::RequestDateTime(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列名またはフォーム送信変数名を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Time 値を格納することはできません。

vtMin

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための Date/Time 値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換後の値が vtMin より小さい場合は、Null が返されます。

vtMax

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための Date/Time 値を含む Variant です。 Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換後の値が vtMax より大きい場合は、Null が返されます。

vtLocale

[in, optional] 日付/時刻文字列を変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが指定されていない場合、RequestDateTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] Date/Time 値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。検証に失敗した場合、pvtRet パラメータは Null に設定されます。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IAppFrameWork::RequestDate

IDataFunctions_4_0::ConvertDateTimeString

IAppFrameWork::RequestTime


IAppFrameWork::RequestFloat

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを浮動小数点数値に変換するために使います。

RequestFloat メソッドでも、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

定義

HRESULT IAppFrameWork::RequestFloat(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列名またはフォーム送信変数名を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。

vtMin

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための数値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換後の値が vtMin より小さい場合は、Null が返されます。

vtMax

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換後の値が vtMax より大きい場合は、Null が返されます。

vtLocale

[in, optional] 値を変換するときに使われる、ロケールを示す数値を含む Variant です。この値が指定されていない場合、RequestFloat メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 浮動小数点値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。検証に失敗した場合、pvtRet パラメータは Null に設定されます。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IAppFrameWork::RequestNumber

IDataFunctions_4_0::ConvertFloatString

IDataFunctions_4_0::Float

IDataFunctions_4_0::ValidateFloat


IAppFrameWork::RequestMoneyAsNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールに基づいて、それを金額に変換するために使います。

定義

HRESULT IAppFrameWork::RequestMoneyAsNumber(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列名またはフォーム送信変数名を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。既定値が文字列値である場合、文字列値は基本通貨単位の値に変換されます。そのほかのデータ型である場合、値は基本通貨単位で表現されていると仮定されます。

vtMin

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための金額値を含む Variant です。vtMin パラメータでは、値が基本通貨単位で表現されている必要があります。変換後の値が vtMin より小さい場合は、Null が返されます。

vtMax

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための金額値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。vtMax パラメータでは、値が基本通貨単位で表現されている必要があります。変換後の値が vtMax より大きい場合は、Null が返されます。

vtLocale

[in, optional] bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestMoneyAsNumber は DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 指定したロケールまたは既定のロケールの基本通貨単位で表現された数値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。検証に失敗した場合、pvtRet パラメータは Null に設定されます。

このメソッドが正常に終了すると、指定した文字列値を表現する数値が返されます。この数値の単位は、指定されたロケールの基本通貨単位です。たとえば、値の単位が米ドルである場合は、その値をセント単位で表現した数値が返されます。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertMoneyStringToNumber

IDataFunctions_4_0::Money

IAppFrameWork::RequestFloat

IAppFrameWork::RequestNumber


IAppFrameWork::RequestNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを数値に変換するために使います。

RequestNumber メソッドでも、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

定義

HRESULT IAppFrameWork::RequestNumber(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列名またはフォーム送信変数名を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。

vtMin

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための数値を含む Variant です。変換後の値が vtMin より小さい場合は、Null が返されます。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。

vtMax

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。変換後の値が vtMax より大きい場合は、Null が返されます。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。

vtLocale

[in, optional] bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestNumber メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 変換後の数値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。検証に失敗した場合、pvtRet パラメータは Null に設定されます。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IAppFrameWork::RequestFloat

IDataFunctions_4_0::ConvertNumberString

IDataFunctions_4_0::Number

IDataFunctions_4_0::ValidateNumber


IAppFrameWork::RequestString

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、その値に対して文字列処理を実行するために使います。

定義

HRESULT IAppFrameWork::RequestString(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtStripWhite,
VARIANT vtStripReturn,
VARIANT vtCase,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列名またはフォーム送信変数名を含む BSTR です。

vtDefault

[in, optional] 指定した URL クエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。

vtMin

[in, optional] bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最短の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMin パラメータの値が考慮されません。この値が無効なものである場合、または bstrName パラメータや vtDefault パラメータの長さが指定範囲をはずれている場合には、Null が返されます。

vtMax

[in, optional] bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最長の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMax パラメータの値が考慮されません。この値が無効なものである場合、または bstrName パラメータや vtDefault パラメータの長さが指定範囲をはずれている場合には、Null が返されます。

vtStripWhite

[in, optional] 文字列から先頭と末尾の空白を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。

vtStripReturn

[in, optional] 文字列から先頭と末尾の改行文字を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。

vtCase

[in, optional] 文字列を大文字/小文字のどちらに変換するかを示す数値を含む Variant です。既定値は 0 です。この場合、文字列の大文字/小文字変換は実行されません。vtCase パラメータが 1 の場合、文字列は大文字に変換されます。vtCase パラメータが 2 の場合、文字列は小文字に変換されます。

vtLocale

[in, optional] ロケールを指定する数値を含む Variant です。変換はこのロケールに基づいて行われます。この値が指定されていない場合、RequestString メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 処理済みの文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

このメソッドを使うと、何種類かの文字列処理を実行することもできます。実行可能なのは、文字列から先頭と末尾の空白 (空白文字とタブ文字) を除去する、文字列から改行文字を削除する、および文字列の大文字/小文字を変換するという 3 つの処理です。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale


IAppFrameWork::RequestTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date Variant に変換するために使います。

定義

HRESULT IAppFrameWork::RequestTime(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列名またはフォーム送信変数名を含む BSTR です。

vtDefault

[in, optional] 指定した URL クエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Date/Time 値や Date 値を格納することはできません。

vtMin

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための時刻値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換後の値が vtMin より小さい場合は、Null が返されます。

vtMax

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための時刻値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換後の値が vtMax より大きい場合は、Null が返されます。

vtLocale

[in, optional] Date/Time 値を変換するときに使われる、ロケールを指定する数値を含む Variant です。この値が指定されていない場合、RequestTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 日付を返すために使う Variant へのポインタです。検証に失敗した場合、値は Null に設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。検証に失敗した場合、pvtRet パラメータは Null に設定されます。

このメソッドは、vtLocale パラメータが指定されている場合は、その指定ロケールに基づいて、指定された文字列を変換します。vtLocale パラメータが指定されていない場合は、DataFunctions オブジェクト内の既定のロケールが使われます。vtMin パラメータと vtMax パラメータが指定されている場合は、変換後の値が指定範囲内に収まっているかどうかを検証します。検証に失敗した場合は、Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertTimeString

IAppFrameWork::RequestDate


IAppFrameWork::VerifyWith

このメソッドは、検証する値を入れるための、非表示の入力フィールドを生成する場合に使います。

定義

HRESULT IAppFrameWork::VerifyWith(
IDispatch* pdispOrder,
SAFEARRAY(VARIANT) pParams,
BSTR* pbstrRet
);

パラメータ

pdispOrder

[in] 検証対象となるフィールドを含む OrderForm オブジェクトを取得するために使う、IDispatch インターフェイスへのポインタです。

pParams

[in] 指定した OrderForm オブジェクト内にある確認対象フィールド名の一覧を含む SAFEARRAY です。

pvtRet

[out, retval] HTML タグを返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

このメソッドは、HTML フォーム内に <INPUT TYPE="HIDDEN"> という形式の HTML タグを出力するために使います。これらの非表示フィールドには、OrderForm オブジェクト内で指定された値が含まれています。それらの値は、OrderForm オブジェクトの表示中から最終的な購入までの間に、注文内容が変更されていないかどうかを検証するために使われます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

OrderForm オブジェクト


IAppFrameWork::VirtualDirectory

このメソッドは、サイトの仮想ディレクトリ名を返すために使います。

定義

HRESULT IAppFrameWork::VirtualDirectory(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] サイトの仮想ディレクトリを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AppFrameWork オブジェクト

StandardSManager オブジェクト


AsyncRpt オブジェクト

このオブジェクトは、静的レポートを非同期的に表示したりエクスポートしたりするために使います。

ProgID: | Commerce.AsyncRpt (外部作成可能)
COM クラス名: | AsyncRpt
COM インターフェイス名: | IAsyncRpt
インターフェイス ID 定数: | IID_IAsyncRpt
ヘッダー ファイル: | AsyncReport.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Async Report Manager Type Library
DLL 名: | AsyncReport.dll
スレッド モデル: | 両方

C++ で AsyncRpt オブジェクトのメソッドにアクセスするには、IAsyncRpt インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているためです。C++ コードからアクセスするのは、一般的な使い方ではありません。

次の表は、AsyncRpt オブジェクトのメソッドを示しています。

メソッド | 説明
RunReport | レポートを実行またはエクスポートします。

解説

AsyncRpt オブジェクトは、レポートを非同期的に表示またはエクスポートします。

ReportRender オブジェクトは、レポートを同期的に表示またはエクスポートします。

AsyncRpt オブジェクトは、ReportRender オブジェクトを呼び出して、表示に必要なパラメータが含まれる文字列を渡します。表示プロセスの詳細については、「ReportRenderer オブジェクト」を参照してください。

関連項目

分析とレポート作成のためのスキーマ

分析とレポートのための XML 構造

カスタム レポートを作成する

ListManager オブジェクト

ReportRenderer オブジェクト

レポートを実行する


IAsyncRpt::RunReport

このメソッドは、AsyncRpt オブジェクトを初期化し、静的レポートを非同期的に表示またはエクスポートするために使います。

定義

HRESULT IAsyncRpt::RunReport(
BSTR bstrRepParam
);

パラメータ

bstrRepParam

[in, out] AsyncRpt オブジェクトにパラメータを指定するために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM E_FAIL エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

解説

AsyncRpt オブジェクトは、ReportRender オブジェクトを呼び出して bstrRepParam パラメータを渡します。

bstrRepParam パラメータは、ReportRender オブジェクトの Init メソッドが持つ sParamString パラメータと同じものです。詳細については、「ReportRender オブジェクト」を参照してください。

関連項目

AsyncRpt オブジェクト


Auction オブジェクト

このオブジェクトは、サイトにオークション機能を実装させるために使います。このオブジェクトを使うと、簡単なものから複雑なものまでさまざまなルールを使って、サイト上で商品のオークション、入札価格提示の受付、および落札者の決定を行えるようになります。ユーザーは、オークションにかける品物の最低競売価格、最低入札価格、入札開始/終了日、入札価格を増額するときの増分単位、および同位の入札者が複数いる場合の解決方法を設定できます。オークションの参加者に、重要なお知らせを DHTML、HTML、または電子メールで定期的に通知することもできます。

ProgID: | Commerce.Auction (外部作成可能)
COM クラス名: | Auction
COM インターフェイス名: | _Auction
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Commerce Server 4.0 Auction Component
DLL 名: | auction.dll
スレッド モデル: | アパートメント

C++ で Auction オブジェクトのプロパティとメソッドにアクセスするには、_Auction インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、Auction オブジェクトのプロパティを示しています。

プロパティ | 型 | 説明
AuctionID | BSTR | AuctionID の GUID を格納します。 このプロパティは読み取り専用です。
dtAMT | Date | オークションの実行エンジンが使う日付/時刻スタンプを格納します。 このプロパティは読み取りと書き込みが可能です。
objMessageManager | IDispatch | エラー メッセージを生成するために使われる MessageManager オブジェクトを格納します。 このプロパティは読み取りと書き込みが可能です。
szBidOrderBy | BSTR | 同位の入札者が複数いるときに、順位を決めるために使われる並べ替え文字列を格納します。 このプロパティは読み取りと書き込みが可能です。
szBidTableName | BSTR | Bid テーブルの名前をデータベースに格納します。 このプロパティは読み取りと書き込みが可能です。
szDSN | BSTR | データベースへの接続文字列を格納します。 このプロパティは読み取りと書き込みが可能です。
szItemTableName | BSTR | Item テーブルの名前をデータベースに格納します。 このプロパティは読み取りと書き込みが可能です。
szLanguage | BSTR | エラー メッセージを生成するときに MessageManager オブジェクトが使う言語を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、Auction オブジェクトのメソッドを示しています。

メソッド | 説明
AuctionAddBid | オークションに入札価格を提示したり、入札価格を更新したりします。
AuctionAddItem | Auction データベースに新しいオークション品目を追加します。
AuctionBidNormalize | 入札価格の端数を切り捨てて、入札価格の増分単位の倍数にします。
AuctionDeleteBid | オークションから入札価格を削除します。
AuctionDeleteBids | 特定のオークションから、すべての入札価格を削除します。
AuctionDeleteItem | 特定のオークションから、ある品物とその品物のすべての入札価格を削除します。
AuctionGetBid | 特定のオークション品目について、特定のユーザーが提示した入札価格が含まれた行セットを返します。
AuctionGetBids | あるオークション品目についてのすべての入札価格が含まれた行セットを返します。
AuctionGetItem | オークションに出品されている品物についての行セットを返します。
AuctionGetStatus | オークションに出品中の品物についての行セットを含んでいる Dictionary オブジェクトを返します。
AuctionInit | Auction オブジェクトを初期化します。
AuctionRandomBids | 運用テストを支援するために、オークションに対して、無作為に生成した複数の入札価格を入力します。
AuctionResolve | 現在の設定とルールに基づいて、オークションを終結させます。
AuctionUpdateItem | Auction データベース内にあるオークション品目を更新します。

解説

Auction オブジェクトは、サイトのデータベースに格納される Item テーブルと Bid テーブルに依存しています。また、MessageManager オブジェクトを利用してエラー メッセージを保持します。Auction オブジェクトを初めて使うときまでに、これらのテーブルを作成しておく必要があります。また、Auction オブジェクトがユーザーにエラー メッセージを戻せるようにするために、MessageManager オブジェクトが適切な形で初期化されている必要があります。


_Auction::AuctionAddBid

このメソッドは、品物の入札価格を提示したり、更新したりするために使います。入札価格は、オークションの現在のルールに基づいて検証されます。

定義

HRESULT _Auction::AuctionAddBid(
BSTR szAuctionId,
BSTR szShopperId,
BSTR szBidName,
BSTR szEmail,
CURRENCY cyBidPrice,
long nDesired,
VARIANT_BOOL fTakeLess,
CURRENCY cyMinimumBid,
IDispatch* objErrorList,
VARIANT_BOOL bResolve,
long* plNumErrors
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

szShopperId

[in] 入札者の一意の ID を含む BSTR です。

szBidName

[in] 入札者の名前を含む BSTR です。

szEmail

[in] 入札者の電子メール アドレスを含む BSTR です。

cyBidPrice

[in] 入札価格を含む Currency です。

nDesired

[in] 品物の希望数量を含む long です。

fTakeLess

[in] 品物が希望する数量よりも少なくても入札者が受け入れるかどうかを示す VARIANT_BOOL です。値が True の場合、希望数量より少なくても入札者が受け入れることを示します。値が False の場合、入札者は希望する数量より量が少ない場合には入札しないことを示します。

cyMinimumBid

[in] 最低入札価格を含む Currency です。

objErrorList

[in] MessageManager オブジェクトによって生成されたエラーのリストを含む SimpleList オブジェクトの IDispatch インターフェイスへのポインタです。

bResolve

[in, optional, defaultvalue (-1)] AuctionResolve メソッドを呼び出すかどうかを示す VARIANT_BOOL です。既定値は True で、メソッドは bOptimize パラメータが True に設定された状態で呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。

plNumErrors

[out, retval] objErrorList オブジェクトに書き込まれたエラー文字列の数を返すための、long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionAddItem

このメソッドは、オークション システムに新しい品物を追加するために使います。

定義

HRESULT _Auction::AuctionAddItem(
BSTR szSKU,
CURRENCY cyReservePrice,
long nAvailable,
CURRENCY cyBidIncrement,
long nAuctionType,
CURRENCY cyMinimumBid,
VARIANT_BOOL fSealedBid,
VARIANT_BOOL fSealedInventory,
VARIANT_BOOL fActive,
DATE dtStartDate,
DATE dtEndDate,
long nAutoCloseSeconds,
IDispatch* objErrorList,
long* plNumErrors
);

パラメータ

szSKU

[in] 品物の一意の ID を含む BSTR です。

cyReservePrice

[in] 売り手が望む、品物の最低競売価格を含む Currency です。最低競売価格は、最低入札価格より大きくなくてはなりません。

nAvailable

[in] 競売中の品物の数を含む long です。

cyBidIncrement

[in] 品物の入札で、入札価格を増額するときの増額単位を含む Currency です。

nAuctionType

[in] オークションの種類を含む long です。詳細については、"解説" の表を参照してください。

cyMinimumBid

[in] 最低入札価格 (入札開始価格) を含む Currency です。

fSealedBid

[in] 入札価格を、最低入札価格と比較して確認するかどうかを示す VARIANT_BOOL です。値が True の場合、最低入札価格の確認は省略されます。

fSealedInventory

[in] 入札されている品物の希望数量と、競売されている品物の数とを比較して確認するかどうかを示す VARIANT_BOOL です。値が False の場合、品物を確認することを示します。値が True の場合、確認処理を省略します。入札処理における fTakeLess パラメータは無視されます。

fActive

[in] オークションが進行中かどうかを示す VARIANT_BOOL です。値が True の場合、進行中のオークションであることを示します。値が False の場合、オークションの入札が中断されます。

dtStartDate

[in] 品物の入札申し込みの開始日時を特定する Date です。

dtEndDate

[in] オークションが終了し、品物が購入可能になる最終日時を特定する Date です。

nAutoCloseSeconds

[in] 最後の入札価格を受け付けてから、次の入札までに何秒経過すると、オークションを自動終了させるかを示す long です。この値を指定すると、終了期日より前にオークションを終了させることができます。値が 0 の場合は、最後の入札の時刻とは関係なく、設定どおり終了期日になったらオークションを終了させることを示します。

objErrorList

[in] エラー一覧を含む IDispatch インターフェイスへのポインタです。

plNumErrors

[out, retval] objErrorList オブジェクトに書き込まれたエラー文字列の数を返すための、long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

落札者および落札者の支払金額を決定するための方法は、オークションの種類によって決まります。次の表は、利用可能なオークションの種類とその説明です。

オークションの種類 | 値 | 説明 | 例
落札価格型 | 0 | 落札者は、本人が提示した入札価格を支払って品物を受け取ることができます。品物が複数ある場合には、落札者は、希望した数を本人が入札した価格で受け取ることができます。 | オークションに、ある品物が 2 個出品されています。入札者 A は 10.00 ドルで入札し、入札者 B と入札者 C はそれぞれ 5.00 ドルと 3.00 ドルで入札しました。各人とも品物の購入希望数は1 個です。 入札者 A は品物 1 個を 10.00 ドルで受け取り、入札者 B は 1 個 5.00 ドルで受け取ります。ただし、入札者 A が 1 個 10.00 ドルで 2 個の品物を希望していた場合には、品物は 2 個とも入札者 A に渡ります。
最低落札価格型 | 1 | 落札者は、入札されている品物を、一番低い落札価格を支払って受け取ることができます。 | 状況が "落札価格型" オークションの例と同じだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 5.00 ドルで受け取ります。
第 2 落札価格型 | 2 | 落札者は、次のうちで最も小さい金額を支払います。 入札にもれた価格のうち 1 番高いものと入札価格増額単位との合計、落札価格のうち最も低いもの、または最低競売価格。最低競売価格以上で落札された数量は、入手可能な品物の数量より少ないと仮定しています。 | 状況は "落札価格型" オークションの例と同じで、入札価格の増額単位が 0.50 ドルだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 3.50 ドルで受け取ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionBidNormalize

このメソッドは、入札価格を入札価格増額単位の倍数にするために使います。入札価格は、最低入札価格に入札価格増額単位の倍数を加えたものとなり、端数が出た場合は切り捨てられます。

定義

HRESULT _Auction::AuctionBidNormalize(
CURRENCY cyBidAmount,
CURRENCY cyBidIncrement,
CURRENCY cyMinimumBid,
CURRENCY* cyBidNormal
);

パラメータ

cyBidAmount

[in] 入札価格を含む Currency です。

cyBidIncrement

[in] 入札価格の増分単位を含む Currency です。

cyMinimumBid

[in] 許容される最低の入札価格を含む Currency です。

cyBidNormal

[out, retval] 端数切り捨て後の入札価格を返すために使う Currency へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionDeleteBid

このメソッドは、オークション対象の品物について提示されている入札価格を削除するために使います。

定義

HRESULT _Auction::AuctionDeleteBid(
BSTR szAuctionId,
BSTR szShopperId,
VARIANT_BOOL bResolve,
VARIANT* unnamed parameter
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

szShopperId

[in] 入札者の一意の ID を含む BSTR です。

bResolve

[in, optional, defaultvalue (-1)] AuctionResolve メソッドを呼び出すかどうかを示す VARIANT_BOOL です。既定値は True で、メソッドは bOptimize パラメータが True に設定された状態で呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。

unnamed parameter

[out, retval] 将来の使用のために予約されています。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionDeleteBids

このメソッドは、オークションにかけられている、ある品物についての入札価格をすべて削除するために使います。品物は、オークション データベース内には保持されているので、新しい入札価格が提示されれば受け付けられます。

定義

HRESULT _Auction::AuctionDeleteBids(
BSTR szAuctionId,
VARIANT_BOOL bResolve,
VARIANT* unnamed parameter
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

bResolve

[in, optional, defaultvalue (-1)] AuctionResolve メソッドを呼び出すかどうかを示す VARIANT_BOOL です。既定値は True で、メソッドは bOptimize パラメータが True に設定された状態で呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。

unnamed parameter

[out, retval] 将来の使用のために予約されています。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionDeleteItem

このメソッドは、ある品物およびその品物に対して提示されているすべての入札価格を、オークション データベースから削除するために使います。

定義

HRESULT _Auction::AuctionDeleteItem(
BSTR szAuctionId,
VARIANT* unnamed parameter
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

unnamed parameter

[out, retval] 将来の使用のために予約されています。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionGetBid

このメソッドは、特定のオークション品目について特定の入札者が提示した入札価格を取得するために使います。

定義

HRESULT _Auction::AuctionGetBid(
BSTR szShopperId,
BSTR szAuctionId,
IDispatch** pprsBid
);

パラメータ

szShopperId

[in] 入札者の一意の ID を含む BSTR です。

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

pprsBid

[out, retval] 指定した入札価格を返すために使う、ADODB.Recordset オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionGetBids

このメソッドは、指定したオークション品目に対して提示されている、すべての入札価格を取得するために使います。

定義

HRESULT _Auction::AuctionGetBids(
BSTR szAuctionId,
DATE dtSinceDate,
IDispatch** rsBids
);

パラメータ

szAuctionId

[in] オークション IＤ を含む BSTR です。

dtSinceDate

[in, optional, defaultvalue (12:00:00 AM)] この日付以降に状態が変化している入札価格だけを返すことを指定するための Date です。状態の変化は、入札価格や計算済みのフィールドが更新されることによって起こります。値が Null の場合、すべての入札価格が返されることを示します。

rsBids

[out, retval] 指定した入札価格を返すために使う、ADODB.Recordset オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionGetItem

このメソッドは、オークションにかけられている品物を取得するために使います。

定義

HRESULT _Auction::AuctionGetItem(
BSTR szAuctionId,
IDispatch** rsItem
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

rsItem

[out, retval] 指定した品物を返すために使う、ADODB.Recordset オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionGetStatus

このメソッドは、オークションにかけられている品物およびその品物の入札価格に関する情報が含まれた Dictionary オブジェクトを取得するために使います。

定義

HRESULT _Auction::AuctionGetStatus(
BSTR szAuctionId,
IDispatch** dictStatus
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

dictStatus

[out, retval] 指定した品物を、その入札価格と共に返すために使う、Dictionary オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Dictonary オブジェクトには、rsAuctionItem と rsAuctionBids という 2 つの Recordset オブジェクトが含まれています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_AuctionID

AuctionID プロパティは読み取り専用の文字列で、Auction オブジェクトを一意に識別するための GUID が含まれています。

定義

HRESULT _Auction::get_AuctionID(
BSTR* AuctionID
);

パラメータ

AuctionID

[out, retval] オークション ID (GUID) を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionInit

このメソッドは、Auction オブジェクトを初期化するために使います。

定義

HRESULT _Auction::AuctionInit(
BSTR szDSN,
BSTR szItemTableName,
BSTR szBidTableName,
BSTR szBidOrderBy,
IDispatch* objMessageManager,
BSTR szLanguage,
DATE dtAMT,
VARIANT* unnamed parameter
);

パラメータ

szDSN

[in] Bid テーブルと Item テーブルを持つデータベースへの接続文字列を含む BSTR です。

szItemTableName

[in] Item テーブル名を含む BSTR です。

szBidTableName

[in] Bid テーブル名を含む BSTR です。

szBidOrderBy

[in] 入札価格の既定の並べ替え順 (SQL の ORDER BY 句) を含む BSTR です。

objMessageManager

[in] MessageManager オブジェクトの IDispatch インターフェイスへのポインタです。

szLanguage

[in] MessageManager オブジェクトで使う言語を含む BSTR です。

dtAMT

[in] タイム スタンプを含む Date です。

unnamed parameter

[out, retval] 将来の使用のために予約されています。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionRandomBids

このメソッドは、運用テストやデモンストレーションなどの目的で、オークションに無作為に生成した入札価格を入力するために使います。

定義

HRESULT _Auction::AuctionRandomBids(
BSTR szAuctionId,
VARIANT_BOOL fDelete,
long nNumberBids,
VARIANT* unnamed parameter
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

fDelete

[in] 新しい入札価格を追加する前に、以前無作為に生成した入札価格を削除するかどうかを示す VARIANT_BOOL です。値が True の場合、入札価格を削除することを指定します。値が False の場合、入札価格を保存しておくことを指定します。

nNumberBids

[in] 追加する無作為生成の入札価格の数を含む long です。

unnamed parameter

[out, retval] 将来の使用のために予約されています。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

無作為に生成された入札者の名前には、"Random" が割り振られます。入札価格は、少なくとも最低入札価格以上になります。購入希望数は、1 個から入手可能な最大個数までの間で決まります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionResolve

このメソッドは、オークションの実行エンジンを実行し、オークションの状態を決定するために使います。このメソッドによって、Item と Bid の両テーブルにある計算済みの値が更新されます。

定義

HRESULT _Auction::AuctionResolve(
BSTR szAuctionId,
VARIANT_BOOL bOptimize,
VARIANT* unnamed parameter
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

bOptimize

[in, optional, defaultvalue (-1)] 落札価格の検索をいつ止めるかを決める VARIANT_BOOL です。既定値の True は、落札者が一度選択されたら落札価格の確認を止めることを示します。値が False の場合、データベース内の全レコードを対象として検索を実行し、落札価格を探すことを示します。

unnamed parameter

[out, retval] 将来の使用のために予約されています。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::AuctionUpdateItem

このメソッドは、オークション システム内の既存の品物を更新するために使います。

定義

HRESULT _Auction::AuctionUpdateItem(
BSTR szAuctionId,
BSTR szSKU,
CURRENCY cyReservePrice,
long nAvailable,
CURRENCY cyBidIncrement,
long nAuctionType,
CURRENCY cyMinimumBid,
VARIANT_BOOL fSealedBid,
VARIANT_BOOL fSealedInventory,
VARIANT_BOOL fActive,
DATE dtStartDate,
DATE dtEndDate,
long nAutoCloseSeconds,
IDispatch* objErrorList,
VARIANT_BOOL bResolve,
long* plNumErrors
);

パラメータ

szAuctionId

[in] オークションの一意の ID を含む BSTR です。

szSKU

[in] 品物の一意の ID を含む BSTR です。

cyReservePrice

[in] 売り手が望む、品物の最低競売価格を含む Currency です。最低競売価格は、最低入札価格より大きくなくてはなりません。

nAvailable

[in] 競売中の品物の数を含む long です。

cyBidIncrement

[in] 品物の入札で、入札価格を増額するときの増額単位を含む Currency です。

nAuctionType

[in] オークションの種類を含む long です。詳細については、"解説" を参照してください。

cyMinimumBid

[in] 最低入札価格 (入札開始価格) を含む Currency です。

fSealedBid

[in] 入札価格を、最低入札価格と比較して確認するかどうかを示す VARIANT_BOOL です。値が True の場合、最低入札価格の確認は省略されます。値が False の場合、最低入札価格と比較しての確認が実行されます。

fSealedInventory

[in] 入札されている品物の希望数量と、競売されている品物の数とを比較して確認するかどうかを示す VARIANT_BOOL です。値が True の場合、確認処理を省略します。入札処理における fTakeLess パラメータは無視されます。値が False の場合、入手可能な品物の数と比較しての確認が実行されます。

fActive

[in] オークションが進行中かどうかを示す VARIANT_BOOL です。値が True の場合、オークションが進行中であることを示します。値が False の場合、オークションの入札が中断されます。

dtStartDate

[in] 品物の入札申し込みの開始日時を特定する Date です。

dtEndDate

[in] オークションが終了し、品物が購入可能になる最終日時を特定する Date です。

nAutoCloseSeconds

[in] 最後の入札価格を受け付けてから、次の入札までに何秒経過すると、オークションを自動終了させるかを示す long です。この値を指定すると、終了期日より前にオークションを終了させることができます。値が 0 の場合は、最後の入札の時刻とは関係なく、設定どおり終了期日になったらオークションを終了させることを示します。

objErrorList

[in] エラー一覧を含む IDispatch インターフェイスへのポインタです。

bResolve

[in, optional, defaultvalue (-1)] AuctionResolve メソッドを呼び出すかどうかを示す VARIANT_BOOL です。既定値は True で、メソッドは bOptimize パラメータが False に設定された状態で呼び出されます。値が False の場合、Auction オブジェクトは AuctionResolve メソッドを自動的には呼び出しません。

plNumErrors

[out, retval] objErrorList オブジェクトに書き込まれたエラー文字列の数を返すための、long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

落札者および落札者の支払金額を決定するための方法は、オークションの種類によって決まります。次の表は、利用可能なオークションの種類とその説明です。

オークションの種類 | 値 | 説明 | 例
落札価格型 | 0 | 落札者は、本人が提示した入札価格を支払って品物を受け取ることができます。品物が複数ある場合には、落札者は、希望した数を本人が入札した価格で受け取ることができます。 | オークションに、ある品物が 2 個出品されています。入札者 A は 10.00 ドルで入札し、入札者 B と入札者 C はそれぞれ 5.00 ドルと 3.00 ドルで入札しました。各人とも品物の購入希望数は1 個です。 入札者 A は品物 1 個を 10.00 ドルで受け取り、入札者 B は 1 個 5.00 ドルで受け取ります。ただし、入札者 A が 1 個 10.00 ドルで 2 個の品物を希望していた場合には、品物は 2 個とも入札者 A に渡ります。
最低落札価格型 | 1 | 落札者は、入札されている品物を、一番低い落札価格を支払って受け取ることができます。 | 状況が "落札価格型" オークションの例と同じだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 5.00 ドルで受け取ります。
第 2 落札価格型 | 2 | 落札者は、次のうちで最も小さい金額を支払います。 入札にもれた価格のうち 1 番高いものと入札価格増額単位との合計、落札価格のうち最も低いもの、または最低競売価格。最低競売価格以上で落札された数量は、入手可能な品物の数量より少ないと仮定しています。 | 状況は "落札価格型" オークションの例と同じで、入札価格の増額単位が 0.50 ドルだとします。 落札者 A と落札者 B は、品物を 1 個ずつそれぞれ 3.50 ドルで受け取ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_dtAMT/put_dtAMT

dtAMT プロパティは読み取りと書き込みが可能な Date で、オークションに対する操作にタイムスタンプを付けるために使われます。

定義

Get メソッド :

HRESULT _Auction::get_dtAMT(
DATE* dtAMT
);

Put メソッド :

HRESULT _Auction::put_dtAMT(
DATE dtAMT
);

パラメータ

dtAMT

[in] プロパティを入力する場合は、タイム スタンプを含む Date です。
[out, retval] プロパティを取得する場合は、タイム スタンプを返すために使う Date へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_objMessageManager/put_objMessageManager

objMessageManager プロパティは読み取りと書き込みが可能な MessageManager オブジェクトで、入札者にエラー メッセージを返すために使われます。

定義

Get メソッド :

HRESULT _Auction::get_objMessageManager(
IDispatch** objMessageManager
);

Put メソッド :

HRESULT _Auction::put_objMessageManager(
IDispatch* objMessageManager
);

パラメータ

objMessageManager

[in] プロパティを入力する場合は、MessageManager オブジェクトの IDispatch インターフェイスへのポインタです。
[out, retval] プロパティを取得する場合は、MessageManager オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_szBidOrderBy/put_szBidOrderBy

szBidOrderBy プロパティは読み取りと書き込みが可能な文字列で、同位の入札者が複数いる場合に順位を決めるために使われます。

定義

Get メソッド :

HRESULT _Auction::get_szBidOrderBy(
BSTR* szBidOrderBy
);

Put メソッド :

HRESULT _Auction::put_szBidOrderBy(
BSTR szBidOrderBy
);

パラメータ

szBidOrderBy

[in] プロパティを入力する場合は、オークションの落札者を選択する基準として使うフィールドの、カンマで区切られたリストを含む BSTR です。
[out, retval] プロパティを取得する場合は、オークションの落札者を選択する基準として使うフィールドの、カンマで区切られたリストを返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

この文字列には Bid テーブルから取得したフィールドが含まれています。このフィールドは、1 つの品物について同じ入札価格が複数提示された場合に、オークションの落札者を選択するための選択基準として使われます。この文字列は、落札者を選択するためにデータベースに渡される SQL 文字列の ORDER BY 句に追加されます。既定の文字列は "desired, modified_date" です。これは、2 人の入札者が同じ価格を提示した場合、より多くの品物を購入しようとした入札者が落札することを意味します。同位の入札者がまだ複数いる場合は、最初にその入札価格を提示した人が落札します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_szBidTableName/put_szBidTableName

szBidTableName プロパティは読み取りと書き込みが可能な文字列で、データベースに Bid テーブルの名前を格納するために使われます。

定義

Get メソッド :

HRESULT _Auction::get_szBidTableName(
BSTR* szBidTableName
);

Put メソッド :

HRESULT _Auction::put_szBidTableName(
BSTR szBidTableName
);

パラメータ

szBidTableName

[in] プロパティを入力する場合は、Bid テーブルの名前を含む BSTR です。
[out, retval] プロパティを取得する場合は、Bid テーブル名を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Bid テーブルには、オークション品目に対して提示された入札価格に関する情報が含まれています。サイト データベースにおけるこのテーブルの既定の名前は、Auction_bid です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_szDSN/put_szDSN

szDSN プロパティは読み取りと書き込みが可能な文字列で、データベースへの接続文字列を格納するために使われます。

定義

Get メソッド :

HRESULT _Auction::get_szDSN(
BSTR* szDSN
);

Put メソッド :

HRESULT _Auction::put_szDSN(
BSTR szDSN
);

パラメータ

szDSN

[in] プロパティを入力する場合は、接続文字列を含む BSTR です。
[out, retval] プロパティを取得する場合は、接続文字列を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

接続文字列は既定では空文字列であるため、Auction オブジェクトを使う前にあらかじめ設定しておく必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_szItemTableName/put_szItemTableName

szItemTableName プロパティは読み取りと書き込みが可能な文字列で、データベースに Item テーブルの名前を格納するために使われます。

定義

Get メソッド :

HRESULT _Auction::get_szItemTableName(
BSTR* szItemTableName
);

Put メソッド :

HRESULT _Auction::put_szItemTableName(
BSTR szItemTableName
);

パラメータ

szItemTableName

[in] プロパティを入力する場合は、Item テーブルの名前を含む BSTR です。
[out, retval] プロパティを取得する場合は、Item テーブル名を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Item テーブルには、オークションで入手可能な品物に関する情報が含まれています。サイト データベースにおけるこのテーブルの既定の名前は、Auction_item です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


_Auction::get_szLanguage/put_szLanguage

szLanguage プロパティは読み取りと書き込みが可能な文字列で、エラー メッセージ生成時に MessageManager オブジェクトが使用する言語を格納するために使われます。

定義

Get メソッド :

HRESULT _Auction::get_szLanguage(
BSTR* szLanguage
);

Put メソッド :

HRESULT _Auction::put_szLanguage(
BSTR szLanguage
);

パラメータ

szLanguage

[in] プロパティを入力する場合は、MessageManager オブジェクトで使う言語の名前を含む BSTR です。
[out, retval] プロパティを取得する場合は、MessageManager オブジェクトで使う言語の名前を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Auction オブジェクト


AuthManager オブジェクト

このオブジェクトは、ユーザーの識別と認証を実行し、ユーザーのセキュリティ情報を管理するために使います。このオブジェクトには、cookie を使う参照と cookie を使わない参照のメソッドも含まれています。

ProgID: | Commerce.AuthManager (外部作成可能)
COM クラス名: | MSCSAuthManager
COM インターフェイス名: | IMSCSAuthManager
インターフェイス ID 定数: | IID_IMSCSAuthManager
ヘッダー ファイル: | MSCSAuth.h
タイプ ライブラリ名: | Microsoft Commerce 2000 AuthManager Type Library
DLL 名: | mscsauth.dll
スレッド モデル: | 両方

AuthManager オブジェクトは、ASP スクリプトを通してのみ使用されるように設計されています。しかし、GenerateEncryptionKey、GetUserIDFromCookie、Initialize、Refresh、および UnInitialize メソッドは、IMSCSAuthManager インタフェースを通して C++ で使用できます。

次の表は、AuthManager オブジェクトのメソッドを示しています。

メソッド | 説明
GenerateEncryptionKey | cookie データの管理用に暗号化キーを生成します。このメソッドは管理コンポーネントまたはセットアップ コンポーネントだけで使用します。
GetProperty | cookie またはクエリ文字列に格納されている指定のカスタム プロパティを取得します。
GetURL | 省略可能な名前と値の組み合わせを含む Uniform Resource Locator (URL) を生成します。
GetUserID | 現在のユーザーの一意の ID を取得します。
GetUserIDFromCookie | cookie からユーザー ID を取得します。
Initialize | 必要なサイト構成リソースのプロパティをすべてキャッシュして、AuthManager オブジェクトを初期化します。
IsAuthenticated | ユーザーが現在、認証されているかどうかを示します。
Refresh | いずれかのプロパティを変更してから、キャッシュされたサイト構成リソースのプロパティを更新します。
SetAuthTicket | 登録済みユーザー用に暗号化された MSCSAuth チケットを生成します。
SetProfileTicket | 匿名ユーザー用に暗号化された MSCSProfile チケットを生成します。
SetProperty | プロパティと値の組み合わせをチケットが含まれる cookie またはクエリ文字列に追加します。
SetUserID | チケットにユーザー ID プロパティを設定します。
UnInitialize | サイト固有の構成リソースのプロパティをキャッシュから削除します。
URLArgs | URL エンコード処理されたクエリ文字列をパラメータ名およびパラメータ値の配列から生成します。
URLShopperArgs | URL エンコード処理されたクエリ文字列をパラメータ名およびパラメータ値の配列から生成し、ユーザーのチケットを文字列に追加します。

解説

AuthManager オブジェクトは、ユーザーを識別してユーザー認証に使う情報を集めます。このオブジェクトのメソッドとプロパティは、cookie やエンコードされた URL 文字列の内容を制御し、かつその内容へアクセスします。

Commerce Server 2000 のコンテキストでは、認証にチケットを使います。チケットはプロパティと値を組み合わせた文字列で、ユーザーに関する情報を提供します。2 種類のチケットがサポートされています。MSCSAuth という認証チケットは登録済みユーザーに、MSCSProfile というプロファイル チケットは匿名ユーザーに使われます。このコンテキストで登録済みユーザーとは、サイトに識別に使う情報を提供したユーザーのことです。

ユーザーは両方の種類のチケットを持つことができます。この場合、MSCSAuth チケットが優先されます。

チケットには一意のユーザー ID が含まれます。認証チケットには前回ログインした時刻と時間ウィンドウが含まれます。cookie を許可する匿名ユーザーの場合、MSCSProfile チケットはユーザーのローカル コンピュータに固定 cookie として格納されます。cookie を許可する登録済みユーザーの場合、MSCSAuth チケットはセッション Cookie に格納され、セッションまたは指定された時間ウィンドウの継続中は有効で、その後削除されます。

ユーザーが cookie を許可しない場合、チケットはエンコードされた URL 文字列に格納されます。URL 文字列は、ページ間やサイト間でユーザー情報を渡すために使われます。ただし、すべての URL およびクエリ文字列が AuthManager オブジェクトで生成されている場合に限られます。

AuthManager オブジェクトは、チケットが cookie に格納されていても URL クエリ文字列に格納されていても、チケットに対して透過的なインターフェイスを提供し、チケットの暗号化と複合化を処理してセキュリティを保証します。

AuthManager オブジェクトは、Active Server Pages (ASP) 固有のオブジェクトに依存しているため、ASP を介してのみ使うことを目的としています。AuthManager オブジェクトは個々のユーザー セッションに依存しているため、アプリケーション スコープ内には作成しないでください。AuthManager オブジェクトは、それぞれの ASP ページで作成および破棄する必要があります。

関連項目

サイト セキュリティ オブジェクト

サイト セキュリティとフィルタを使用する


IMSCSAuthManager::GenerateEncryptionKey

このメソッドは、チケットに使われる cookie およびクエリ文字列データを、暗号化および暗号解読するための暗号化キーを生成するために使います。

定義

HRESULT IMSCSAuthManager::GenerateEncryptionKey(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] 暗号化キーのコピーが返される BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_GENERATE_ENCRYPTIONKEY_FAILED | 0xC1004C26 | CryptoAPI. を使って暗号化キーを生成している間にエラーが発生しました。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、セットアップおよびインストール中の Commerce Server サイト パッケージャ コンポーネントで使われ、後で暗号化キーを変更するために使うこともできます。

暗号化キーは、管理データベースにサイト構成リソースのプロパティの一部として格納されます。

このメソッドは、C++ アプリケーションで使われる数少ない AuthManager メソッドの 1 つです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbstrRet パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::GetProperty

このメソッドは、指定されたカスタム プロパティの値を現在のユーザー チケットから取得するために使います。

定義

HRESULT IMSCSAuthManager::GetProperty(
EnumMSCS_TicketType enumTicketType,
BSTR propName,
VARIANT* pVarCustomPropVal
);

パラメータ

enumTicketType

[in] プロパティを含むチケットの種類を示す EnumMSCS_TicketType です。

propName

[in] 検索するプロパティの名前を含む BSTR です。

PVarCustomPropVal

[out, retval] 現在のユーザー チケット内で指定されているプロパティの値を伴う BSTR が設定された Variant へのポインタです。そのプロパティが見つからない場合、このポインタに Null が設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_PROPERTY | 0xC1004C27 | カスタム プロパティの名前または値が無効です。
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
E_UPM_AUTHMANAGER_TICKET_NOT_SET | 0xC1004C25 | 必要なチケットが設定されていません。
MSG_UPM_AUTH_PROPNOTFOUND_ERROR | 0xC1004C00 | 必要なプロパティがチケットにありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

SetProperty メソッドは、カスタム プロパテイ値を現在のユーザーのチケットに設定するために使います。

pVarCustomPropVal パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト

IMSCSAuthManager::SetProperty


IMSCSAuthManager::GetURL

このメソッドは、エンコードされた Uniform Resource Locator (URL) 文字列を生成するために使います。

定義

HRESULT IMSCSAuthManager::GetURL(
BSTR FileName,
BOOL fCookie,
BOOL fSecure,
VARIANT* pVarURLParameters,
VARIANT* pVarURLValues,
BSTR* pbstrRet
);

パラメータ

FileName

[in] URL で参照するファイル名を含む BSTR です。

fCookie

[in] ユーザーが cookie を許容するかどうかを示す Boolean です。

fSecure

[in] URL が保護されているかどうかを示す Boolean (HTTPS 対 HTTP) です。

pVarURLParameters

[in, optional, defaultvalue (NULL)] URL に含めるパラメータ名の SafeArray を含む Variant へのポインタです。

pVarURLValues

[in, optional] パラメータ名に対応するパラメータ値の SafeArray を含む Variant へのポインタです。

pbstrRet

[out, retval] エンコードされた URL を返すために使う BSTR へのポインタです。

Return Values

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

Error Values

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

エンコードされた URL には、ホスト名 (サイト構成から取得)、ファイルが格納される仮想ディレクトリ (スクリプト コンテキストにより決定)、ファイルの名前、cookie サポートおよびセキュリティのフラグ、省略可能なカスタム名とカスタム値の組み合わせ (たとえば、"SKU" とショッピング カートにある品物の在庫保管単位 (SKU) の値) が含まれます。

cookie が許可されていない場合、cookie のフラグは False に設定され、チケットが URL に追加されます。

注

  • キャッシュされた HTML セグメント (追加されたチケットを持つ URL を含む) が取得されている場合、 チケットは正しいものと置き換える必要があります (現在のユーザー コンテキストについて)。

参照先のホストが保護されている場合、保護付きフラグは True に設定されます。

URLArgsメソッドまたは URLShopperArgs メソッドは、名前と値の組み合わせから URL クエリ文字列をエンコードするために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbstrRet パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::GetUserID

このメソッドは、チケットに格納されているユーザー ID を取得するために使います。

定義

HRESULT IMSCSAuthManager::GetUserID(
EnumMSCS_TicketType enumTicketType,
VARIANT* pUserID
);

パラメータ

enumTicketType

[in] ユーザー ID を含むチケットのタイプを示す EnumMSCS_TicketType です。

pUserID

[out, retval] 現在のユーザーの一意の ID が返される BSTR が格納された Variant へのポインタです。適切なチケット タイプが見つからないか、ユーザー ID がない場合、このポインタに Null が設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

チケットが MSCSAuth チケットで期限が切れている場合、このチケットは削除され、戻り値ではチケットがなかったように表されます。

チケットが MSCSAuth チケットで、期限が切れてから 5 分以内の場合、前回のログイン時刻を現在の時刻に更新し、チケットの有効期間を延長できます。

pUserIDパラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::GetUserIDFromCookie

このメソッドは、cookie に格納されているユーザー ID を取得するために使います。

定義

HRESULT IMSCSAuthManager::GetUserIDFromCookie(
BSTR cookieData,
BSTR* pbstrUserID
);

パラメータ

cookieData

[in] cookie を含む BSTR です。

pbstrUserID

[out, retval] ユーザー ID が返される BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

cookie データは必ず URL にデコードされます。

Commerce Server 2000 の分析アプリケーションでは、このメソッドを使って、インターネット インフォメーション サービス (IIS) のログで検出された cookie からユーザー ID を抽出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbstrUserID パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::Initialize

このメソッドは、AuthManager オブジェクトを初期化するために使います。

定義

HRESULT IMSCSAuthManager::Initialize(
BSTR bstrSiteName,
);

パラメータ

bstrSiteName

[in] Commerce Server 2000 Web サイトの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AuthManager オブジェクトは、このオブジェクトを作成した直後、ほかの AuthManager オブジェクトのメソッドを使う前に、有効なサイト名に正しく初期化する必要があります。

AuthManager オブジェクトがこのメソッドを初めて使うときは、AuthManager オブジェクトは管理データベースに接続し、SiteConfig オブジェクトを使ってサイト構成データをキャッシュします。後続の AuthManager オブジェクトがこのメソッドを呼び出した場合、データはキャッシュから読み取られます。

Refresh メソッドは、いずれかのプロパティを変更してからサイト構成データを更新するために使います。

UnInitialize メソッドは、サイトが有効でなくなったときに、サイト固有の構成リソースのプロパティをキャッシュから削除するために使います。

Global.asa ファイル内の AuthManager オブジェクトのインスタンス作成および初期化は、パフォーマンス上の理由から、オブジェクトのインスタンスが少なくとも 1 つは存在すること、またダイナミック リンク ライブラリ (DLL) がメモリに読み込まれていて、インターネット インフォメーション サービス (IIS) によってフラッシュされていないことを確かめるために行うことをお勧めします。この AuthManager オブジェクトはほかの場所で使わないでください。AuthManager オブジェクトの個々のインスタンスは、それぞれの ASP ページ上で作成および破棄する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::IsAuthenticated

このメソッドは、現在のユーザーが有効な MSCSAuth チケットを持っているかどうかを判断するために使います。このメソッドでは、ユーザーが指定された期間内に認証されているかどうかを判断することもできます。

定義

HRESULT IMSCSAuthManager::IsAuthenticated(
long TimeWindow,
VARIANT_BOOL* pboolAuth
);

パラメータ

TimeWindow

[in, optional, defaultvalue (0)] 時間間隔を分単位で含む long です。

pboolAuth

[out, retval] 現在のユーザーの認証ステータスが含まれる VARIANT_BOOL へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

MSCSAuth チケットには、ユーザーが前回ログインした時刻と有効期間を示す有効な時間ウィンドウが含まれています。チケットが生成されたときに、前回のログイン以降の時間が SetAuthTicket メソッドで指定された時間ウィンドウを超えた場合、チケットは有効ではなくなります。

このメソッドの省略可能なパラメータである TimeWindow を使うと、ユーザーの前回のログインから有効期間が切れるまでの時間を、SetAuthTicket メソッドで指定された時間ウィンドウよりも短く設定することができます。規定値のゼロ (0) にすると、SetAuthTicket メソッドで指定したものと同じ値を、時間ウィンドウに設定したことになります。

ユーザーが MSCSAuth チケットを持っていない場合、チケットが無効な場合、またはユーザーの前回のログイン以降の時間が指定された時間ウィンドウを超えた場合、このメソッドは False を返します。

チケットの前回のログイン時刻が現在の時刻に更新されてから 5 分以内の場合、チケットの有効期間を延長できます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pboolAuth パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::Refresh

このメソッドは、いずれかのプロパティを変更してから、キャッシュされたサイト構成リソースのプロパティを更新するために使います。

定義

HRESULT IMSCSAuthManager::Refresh(
BSTR bstrSiteName
);

パラメータ

bstrSiteName

[in] サイトの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、認証に関連するいずれかのサイト構成リソースのプロパティを変更した直後に呼び出す必要があります。また、このメソッドは、Active Server Pages (ASP) と Microsoft Visual Basic Scripting Edition (VBScript) のファイルを切り替えて、サイト構成のプロパティを更新するときにも使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::SetAuthTicket

このメソッドは、登録済みユーザー用に暗号化された MSCSAuth チケットを設定するために使います。

定義

HRESULT IMSCSAuthManager::SetAuthTicket(
BSTR UserID,
VARIANT_BOOL fCookieSupport,
long TimeWindow
);

パラメータ

UserID

[in] 現在のユーザーの一意の ID を含む BSTR です。

fCookieSupport

[in] セッション cookie がサポートされているかどうかを示す VARIANT_BOOL です。

TimeWindow

[in] MSCSAuth チケットが有効である時間ウィンドウを分単位で定義する long です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | 0xC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ユーザーが前回ログインした時刻と、前回のログインからのチケットの有効期間がチケットに保存されています。

ユーザーの MSCSAuth チケットが既に存在し、空の文字列がユーザーの ID (UserID) として渡された場合、既存のチケットは削除されます。

現在のユーザーが匿名の場合、SetProfileTicket メソッドを使って MSCSProfile チケットを生成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト

IMSCSAuthManager::IsAuthenticated


IMSCSAuthManager::SetProfileTicket

このメソッドは、匿名ユーザーの MSCSProfile チケットを設定するために使います。匿名ユーザーはサイトには登録されません。

定義

HRESULT IMSCSAuthManager::SetProfileTicket(
BSTR UserID,
VARIANT_BOOL fCookieSupport
);

パラメータ

UserID

[in] 現在のユーザーの一意の ID を含む BSTR です。

fCookieSupport

[in] 永続的な cookie がサポートされているかどうかを示す VARIANT_BOOL です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | 0xC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ユーザーの MSCSProfile チケットが既に存在し、空の文字列がユーザーの ID (UserID) に渡された場合、既存のチケットは削除されます。

現在のユーザーを登録済みの場合、SetAuthTicket メソッドを使って MSCSAuth チケットを生成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト

IMSCSAuthManager::IsAuthenticated


IMSCSAuthManager::SetProperty

このメソッドは、カスタム プロパテイの名前と値の組み合わせをユーザーの現在のチケットに設定するために使います。

定義

HRESULT IMSCSAuthManager::SetProperty(
EnumMSCS_TicketType enumTicketType,
BSTR propName,
BSTR propVal
);

パラメータ

enumTicketType

[in] チケットの種類を示す EnumMSCS_TicketType です。

propName

[in] プロパティの名前を含む BSTR です。

propVal

[in] 指定されたプロパティに対応する値を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | 0xC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHID_INVALID_PROPERTY | 0xC1004C27 | カスタム プロパティの名前または値が無効です。
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetProperty メソッドは、現在のチケットからカスタム プロパテイ値を取得するために使います。

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

注

  • "Ticket" という名前のプロパティは、AuthManager オブジェクトが Commerce Server 2000 関連の情報を保存するために使います。カスタム プロパティを作成するときは、プロパティ名を "Ticket" に設定しないでください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト

IMSCSAuthManager::GetProperty


IMSCSAuthManager::SetUserID

このメソッドは、チケットのユーザー ID プロパティを変更するために使います。

定義

HRESULT IMSCSAuthManager::SetUserID(
EnumMSCS_TicketType enumTicketType,
BSTR newUserID
);

パラメータ

enumTicketType

[in] ユーザー ID を含むチケットのタイプを示す EnumMSCS_TicketType です。

newUserID

[in] 現在のユーザーの一意の ID を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHID_INVALID_CHARACTER_PRESENT | 0xC1004C23 | 無効な文字 (';'、'%'、'=') がユーザー ID またはプロパティの名前と値の組み合わせの中に含まれています。
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ユーザー ID の値は、登録済みユーザーのログオン名、匿名ユーザーのグローバル一意識別子 (GUID) 、または任意の一意値にすることができます。

適切なチケットが既に存在する場合、ユーザー ID の値は更新されます。チケットが既に存在し、空の文字列がユーザー ID の値 (newUserID) として渡された場合、既存のチケットは削除されます。

チケットが存在しない場合、残りのデータの既定値でチケットが作成されます。

次の表は、EnumMSCS_TicketType に指定できる値を定義しています。

名前 | 値 | 説明
enumMSCS_ProfileTicketType | 1 | 匿名ユーザーに使われる MSCSProfile チケットです。
enumMSCS_AuthTicketType | 2 | 登録済みユーザーに使われる MSCSAuth チケットです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::UnInitialize

このメソッドは、サイトが有効でなくなったときに、キャッシュからサイト固有の構成リソースのプロパティを削除するために使います。

定義

HRESULT IMSCSAuthManager::UnInitialize(
BSTR bstrSiteName,
);

パラメータ

bstrSiteName

[in] サイトの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、指定されたサイトから AuthManager オブジェクトのキャッシュを切断するために呼び出す必要があります。

Initialize メソッドは、サイト構成リソースのプロパティをキャッシュに読み込むために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

AuthManager オブジェクト


IMSCSAuthManager::URLArgs

このメソッドは、名前と値を組み合わせたクエリ文字列をエンコードした Uniform Resource Locator (URL) を生成するために使います。

定義

HRESULT IMSCSAuthManager::URLArgs(
VARIANT* pVarURLParameters,
VARIANT* pVarURLValues,
BSTR* pbstrRet
);

パラメータ

pVarURLParameters

[in] パラメータ名の SafeArray を含む Variant へのポインタです。

pVarURLValues

[in] パラメータ名に対応するパラメータ値の SafeArray を含む Variant へのポインタです。

pbstrRet

[out, retval] URL にエンコードされたクエリ文字列を含む BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、パラメータの名前と値の組み合わせを URL にエンコードされた文字列に関連付けます。パラメータ名と値を含む 2 つの配列のサイズが同じでない場合、このメソッドは失敗します。

URLShopperArgs メソッドは、同じ URL エンコードを実行し、チケットが設定されている場合はチケットをクエリ文字列に追加します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbstrRet パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

AuthManager オブジェクト

IMSCSAuthManager::URLShopperArgs


IMSCSAuthManager::URLShopperArgs

このメソッドは、名前と値を組み合わせたクエリ文字列をエンコードした Uniform Resource Locator (URL) を生成し、チケットが設定されている場合はチケットをクエリ文字列に追加するために使います。

定義

HRESULT IMSCSAuthManager::URLShopperArgs(
VARIANT* pVarURLParameters,
VARIANT* pVarURLValues,
BSTR* pbstrRet
);

パラメータ

pVarURLParameters

[in] パラメータ名の SafeArray を含む Variant へのポインタです。

pVarURLValues

[in] パラメータ名に対応するパラメータ値の SafeArray を含む Variant へのポインタです。

pbstrRet

[out, retval] URL にエンコードされたクエリ文字列を含む BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_UPM_AUTHMANAGER_API_ASP_ONLY | 0xC1004C24 | このメソッドは ASP ページ内からしか呼び出せません。
MSG_UPM_AUTH_SITE_NEEDED_ERROR | 0xC1004C10 | Initialize メソッドを、インストールされたサイト名を使って、このメソッドより前に呼び出す必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、パラメータの名前と値の組み合わせを URL にエンコードされた文字列に関連付け、チケットを追加します。これは cookie を使わないショッピングのサポートに便利です。パラメータと値を含む 2 つの配列のサイズが同じでない場合、このメソッドは失敗します。

両方の種類のチケットが存在する場合、MSCSAuth チケットが優先されます。

URLArgs メソッドは、チケットを追加せずにパラメータと値の組み合わせを URL にエンコードするために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbstrRet パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

AuthManager オブジェクト

IMSCSAuthManager::SetProperty

IMSCSAuthManager::SetAuthTicket

IMSCSAuthManager::SetProfileTicket

IMSCSAuthManager::URLArgs


BizDeskSecurity オブジェクト

このオブジェクトは、Commerce Server ビジネス デスクのナビゲーション ウィンドウにモジュールを表示するかどうかを決定するために使います。

ProgID: | Commerce.BizDeskSecurity (外部作成可能)
COM クラス名: | BizDeskSecurity
COM インターフェイス名: | IBizDeskSecurity
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 BizDesk Security Type Library
DLL 名: | BDSecurity.dll
スレッド モデル: | フリー

C++ で BizDeskSecurity オブジェクトのメソッドにアクセスするには、IBizDeskSecurity インターフェイスを使います。

次の表は、BizDeskSecurity オブジェクトのメソッドを示しています。

メソッド | 説明
CanUserAccess | 指定されたファイルへの読み取りアクセス権をユーザーが持っているかどうかを判定します。

解説

ビジネス デスク フレームワークは、このオブジェクトを呼び出すことによって、現在のユーザーにどのモジュールを表示するのかを決定します。

関連項目

サイト セキュリティ オブジェクト


IBizDeskSecurity::CanUserAccess

このメソッドは、指定した Commerce Server ビジネス デスク モジュールの読み取りアクセス権を現在のユーザーが持っているかどうかを判定するために使います。

定義

HRESULT IBizDeskSecurity::CanUserAccess(
BSTR bstrPath,
VARIANT_BOOL* pbAccessOK
);

パラメータ

bstrPath

[in] ビジネス デスク モジュールのファイル名とパスを含む BSTR です。

pbAccessOK

[out, retval] True または False を返すために使う VARIANT_BOOL のアドレスです。値が True の場合、指定されたファイルへの読み取りアクセス権を現在のユーザーが持っていることを表します。値が False の場合は、指定されたファイルへの読み取りアクセス権を現在のユーザーが持っていないことを示します。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

指定したビジネス デスク モジュールの読み取りアクセス権をユーザーが持っているかどうかは、ファイルのアクセス制御リスト (ACL) に設定されているエントリによって決まります。

pbAccessOK パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

BizDeskSecurity オブジェクト


CacheManager オブジェクト

このオブジェクトは、データ キャッシュのコレクションを設定して利用するために使います。各データ キャッシュは、Dictionary オブジェクトまたは LRUCache オブジェクトのいずれかになります。どちらを使うかは、CacheObjectProgID プロパティを設定することで指定できます。

ProgID: | Commerce.CacheManager (外部作成可能)
COM クラス名: | CacheManager
COM インターフェイス名: | ICacheManager
インターフェイス ID 定数: | IID_ICacheManager
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

C++ で CacheManager オブジェクトのプロパティとメソッドにアクセスするには、ICacheManager インターフェイスを使います。

次の表は、CacheManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AppUrl | BSTR | アプリケーションの完全な URL (Uniform Resource Locator) を格納します。 このプロパティは読み取りと書き込みが可能です。
CacheObjectProgId | BSTR | CacheManager オブジェクトの内部でキャッシュ機能を使うための、オブジェクトのプログラム ID (ProgID) を格納します。GetCache メソッドによって返されるオブジェクトの種類を決定します。 このプロパティは読み取りと書き込みが可能です。
LoaderConfig | IDispatch | ローダー コンポーネントに渡される構成 Dictionary オブジェクトを格納します。 このプロパティは読み取りと書き込みが可能です。
LoaderProgId | BSTR | データ キャッシュ作成およびデータ格納に使われるコンポーネントの ProgID を格納します。 このプロパティは読み取りと書き込みが可能です。
RefreshInterval | long | キャッシュ自動更新の実行間隔 (秒) を格納します。 このプロパティは読み取りと書き込みが可能です。
RetryInterval | long | キャッシュの読み込みに失敗してから読み込みを再試行するまでの、待機時間 (秒) を格納します。 このプロパティは読み取りと書き込みが可能です。
WriterConfig | IDispatch | ライタ コンポーネントに渡される構成 Dictionary オブジェクトを格納します。 このプロパティは読み取りと書き込みが可能です。
WriterProgId | BSTR | 前回の更新後から蓄積されているデータをキャッシュから取得するためのライタ コンポーネントの ProgID を格納します。蓄積され得るデータの一例としては、広告イベント データがあります。 このプロパティは読み取りと書き込みが可能です。

次の表は、CacheManager オブジェクトのメソッドを示しています。

メソッド | 説明
GetCache | 指定されたデータ キャッシュ名に関連付けられているデータ キャッシュ Dictionary オブジェクトを取得します。
RefreshCache | キャッシュを同期させるための更新を直ちに実行します。

関連項目

汎用プログラミングの概念

カスタム キャッシュ コンポーネントを実装するためのコード


ICacheManager::get_AppUrl/put_AppUrl

AppUrl プロパティは読み取りと書き込みが可能な文字列で、アプリケーションの完全な URL (Uniform Resource Locator) を含んでいます。

定義

Get メソッド :

HRESULT ICacheManager::get_AppUrl(
BSTR* AppUrl
);

Put メソッド :

HRESULT ICacheManager::put_AppUrl(
BSTR AppUrl
);

パラメータ

AppUrl

[in] プロパティを入力する場合は、アプリケーションの完全な URL を含む BSTR です。
[out,retval] プロパティを取得する場合は、アプリケーションの完全な URL を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティの既定値は、現行のインターネット インフォメーション サービス (IIS) 5.0 アプリケーションの URL です。IIS アプリケーションを起動した後、最初にアクセスしたときに使った URL によっては、この URL に "localhost" という特殊なホスト名が含まれていることがあります。その場合は、外部からアクセスすることができません。このため、このプロパティに対しては、明示的に IIS アプリケーションの完全な URL を設定することをお勧めします。

キャッシュごとに設定される CacheManager オブジェクトのそのほかのプロパティとは異なり、AppUrl プロパティはグローバルなプロパティです。AppUrl プロパティの通常の用途は、Web サーバー ファームで実行されているキャッシュをすべて登録することです。これにより、管理者がキャッシュを明示的に登録しなくてもキャッシュを管理できます。Commerce Server ビジネス デスクのキャンペーン発行モジュールは、この例です。

キャッシュ オブジェクトが Dictionary オブジェクトである場合、このプロパティの値は、キャッシュが更新されるたびに CacheLoader オブジェクトと CacheWriter オブジェクトに渡されます。値は Dictionary オブジェクトの _AppUrl キーに挿入されます。

関連項目

CacheManager オブジェクト


ICacheManager::GetCache

このメソッドは、指定したキャッシュ名を持つ Dictionary オブジェクトまたは LRUCache オブジェクトを取得するために使います。

定義

HRESULT ICacheManager::GetCache(
BSTR bstrName,
IDispatch** ppdict
);

パラメータ

bstrName

[in] 取得するキャッシュの名前を含む BSTR です。

ppdict

[out,retval] データ キャッシュ Dictionary オブジェクトの IDispatch インターフェイスを返すために使うポインタです。

戻り値

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、リソースの消費を少なくし、高速に動作するよう設計されています。通常は、任意の指定 ASP ページ上で何度も呼び出されます。

GetCache メソッドまたは RefreshCache メソッドを初めて呼び出したとき、データ キャッシュ オブジェクトが作成され、そこにデータを取り込むための構成済み CacheLoader コンポーネントが呼び出されます。その後に GetCache メソッドを呼び出すと、同じキャッシュ オブジェクトか、キャッシュ更新時に作成された新しいキャッシュ オブジェクトが返されます。

特定のキャッシュに対して、GetCache メソッドの最初の呼び出しで更新に失敗したときは、同じキャッシュに対して多くの GetCache メソッド呼び出しが行われているので、CacheManager オブジェクトはすぐには更新を再試行しません。これは、データベース接続が一時的に利用できなくなるなど、タイムアウトの繰り返し発生によるシステム障害を回避するためです。この障害シナリオでは、以降に GetCache メソッドを呼び出すと、キャッシュ読み込み不能を示すエラーが返されます。更新時期に達するまで時間が経過するか、RefreshCache メソッドが明示的に呼び出されるまで更新は再試行されません。

キャッシュが正常に作成された後に更新が失敗した場合、更新が成功するまでは既存のキャッシュ オブジェクトが返されます。CacheManager オブジェクトを使うことで、可用性の高いキャッシュ データを利用できますが、それにはキャッシュ データを常に最新の状態に保っておく必要があります。

関連項目

CacheManager オブジェクト


ICacheManager::get_CacheObjectProgId/put_CacheObjectProgId

CacheObjectProgId プロパティは、読み取りと書き込みが可能な文字列で、CacheManager オブジェクトのキャッシュ機能を利用するために内部で使われるオブジェクトの名前を含んでいます。GetCache メソッドによって返されるオブジェクトの種類も、このプロパティによって決まります。

定義

Get メソッド :

HRESULT ICacheManager::get_CacheObjectProgId(
BSTR bstrName,
BSTR* CacheObjectProgId
);

Put メソッド :

HRESULT ICacheManager::put_CacheObjectProgId(
BSTR bstrName,
BSTR CacheObjectProgId
);

パラメータ

bstrName

[in] キャッシュ オブジェクトの名前を含む BSTR です。

CacheObjectProgId

[in] プロパティを入力する場合は、キャッシュ オブジェクトのプログラム識別子 (ProgＩＤ) を含む BSTR です。
[out,retval] プロパティを取得する場合は、キャッシュ オブジェクトの ProgID を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CacheObjectProgId パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

既定では、CacheManager オブジェクトのこのプロパティの値は "Commerce.Dictionary" と設定されています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CacheManager オブジェクト


ICacheManager::get_LoaderConfig/putref_LoaderConfig

LoaderConfig プロパティは、ローダー コンポーネント用の構成情報が含まれる Dictionary オブジェクトへの参照で、読み取りと書き込みが可能です。

定義

Get メソッド :

HRESULT ICacheManager::get_LoaderConfig(
BSTR bstrName,
IDispatch** LoaderConfig
);

Put メソッド :

HRESULT ICacheManager::putref_LoaderConfig(
BSTR bstrName,
IDispatch* LoaderConfig
);

パラメータ

bstrName

[in] ローダー コンポーネント構成情報を提供または取得するデータ キャッシュの名前を含む BSTR です。

LoaderConfig

[in] プロパティを入力するときは、ローダー コンポーネント構成情報を含んでいる Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。
[out,retval] プロパティを取得するときは、構成情報を含んでいる Dictionary オブジェクトの IDispatch インターフェイスを返すために使われるポインタのアドレスになります。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、特定のローダー コンポーネント用の構成情報が含まれる Dictionary オブジェクトです。このプロパティは、関連付けられたデータ キャッシュを読み込むためにローダー コンポーネントが作成されたとき、そのローダー コンポーネントに渡されます。このプロパティを設定すると、ディクショナリは軽度に複製され、その複製されたディクショナリが CacheManager オブジェクトに格納されます。これは、単にディクショナリへの参照を格納するやり方とは対照的なものです。軽度の複製とは、ディクショナリ内のスカラは値渡しによってコピーされ、ディクショナリ内のそのほかのオブジェクトは参照渡しによってコピーされることを意味します。ローダー コンポーネントは、ディクショナリから構成値を読み取るために、IPipelineComponentAdmin インターフェイス、特にこのインターフェイスの SetConfigData メソッドを実装している必要があります。このプロパティによって識別される Dictionary オブジェクトは、SetConfigData メソッドを使って、新しく作成されたローダー コンポーネントに渡されます。

関連項目

CacheManager オブジェクト


ICacheManager::get_LoaderProgId/put_LoaderProgId

LoaderProgId プロパティは読み取りと書き込みが可能な文字列で、キャッシュへのデータ取り込みに使うコンポーネントのプログラム ID (ProgID) を含んでいます。

定義

Get メソッド :

HRESULT ICacheManager::get_LoaderProgId(
BSTR bstrName,
BSTR* LoaderProgId
);

Put メソッド :

HRESULT ICacheManager::put_LoaderProgId(
BSTR bstrName,
BSTR LoaderProgId
);

パラメータ

bstrName

[in] ローダー コンポーネントの ProgID を提供または取得するデータ キャッシュの名前を含む BSTR です。

LoaderProgId

[in] プロパティを入力する場合は、ローダー コンポーネントの ProgＩＤ を含む BSTR です。
[out,retval] プロパティを取得する場合は、ローダー コンポーネントの ProgID を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

CacheManager オブジェクト


ICacheManager::RefreshCache

このメソッドは、データ キャッシュ Dictionary オブジェクトを直ちに最新の状態に更新するために使います。このメソッドは同期型で、指定されたデータ キャッシュが更新されるまで呼び出し元に制御を戻しません。

定義

HRESULT ICacheManager::RefreshCache(
BSTR bstrName
);

パラメータ

bstrName

[in] 更新するデータ キャッシュの名前を含む BSTR です。

戻り値

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

バックグラウンドのタイマ スレッドや別のフォアグラウンド スレッドによって RefreshCache メソッドが呼び出された場合に、指定されたキャッシュが更新の最中であったときは、このメソッドは更新処理が完了するまで待機した後、制御を戻します。もう一度更新処理が実行されることはありません。

関連項目

CacheManager オブジェクト


ICacheManager::get_RefreshInterval/put_RefreshInterval

RefreshInterval プロパティは読み取りと書き込みが可能な数値で、指定したキャッシュの自動更新が行われるおおよその間隔を、秒数で指定します。

定義

Get メソッド :

HRESULT ICacheManager::get_RefreshInterval(
BSTR bstrName,
long* RefreshInterval
);

Put メソッド :

HRESULT ICacheManager::put_RefreshInterval(
BSTR bstrName,
long RefreshInterval
);

パラメータ

bstrName

[in] 更新間隔を提供または取得するデータ キャッシュの名前を含む BSTR です。

RefreshInterval

[in] プロパティを入力する場合は、新しい更新間隔値を含む long です。
[out,retval] プロパティを取得する場合は、現在の更新間隔値を返すために使う long へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

更新間隔が 0 の場合、キャッシュは自動的には更新されないことを意味します。

既定の更新間隔値は 0 です。

この値は、キャッシュの自動更新処理が実行される間隔を秒数で表したものです。

関連項目

CacheManager オブジェクト


ICacheManager::get_RetryInterval/put_RetryInterval

RetryInterval プロパティは読み取りと書き込みが可能な数値で、データ キャッシュの読み込みに失敗した後、読み込みを再試行するまでのおおよその期間を秒数で指定します。

定義

Get メソッド :

HRESULT ICacheManager::get_RetryInterval(
BSTR bstrName,
long* RetryInterval
);

Put メソッド :

HRESULT ICacheManager::put_RetryInterval(
BSTR bstrName,
long RetryInterval
);

パラメータ

bstrName

[in] 再試行間隔を提供または取得するデータ キャッシュの名前を含む BSTR です。

RetryInterval

[in] プロパティを入力する場合は、新しい再試行間隔値を含む long です。
[out,retval] プロパティを取得する場合は、現在の再試行間隔値を返すために使う long へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

再試行間隔の値には、キャッシュ更新処理が失敗した場合に、失敗後から再試行までに CacheManager オブジェクトが待機しなければならない秒数を指定します。

既定の再試行間隔値は 60 (秒) です。

再試行間隔値は、少なくとも 1 (秒) 以上にする必要があります。

関連項目

CacheManager オブジェクト


ICacheManager::get_WriterConfig/putref_WriterConfig

WriterConfig プロパティは、ライタ コンポーネント用の構成情報が含まれる Dictionary オブジェクトへの参照で、読み取りと書き込みが可能です。

定義

Get メソッド :

HRESULT ICacheManager::get_WriterConfig(
BSTR bstrName,
IDispatch** WriterConfig
);

Put メソッド :

HRESULT ICacheManager::putref_WriterConfig(
BSTR bstrName,
IDispatch* WriterConfig
);

パラメータ

bstrName

[in] ライタ コンポーネント構成情報を提供または取得するデータ キャッシュの名前を含む BSTR です。

WriterConfig

[in] プロパティを入力するときは、ライタ コンポーネント構成情報を含んでいる Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。
[out,retval] プロパティを取得するときは、構成情報を含んでいる Dictionary オブジェクトの IDispatch インターフェイスを返すために使われるポインタのアドレスになります。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、特定のライタ コンポーネント用の構成情報が含まれる Dictionary オブジェクトです。このプロパティは、キャッシュの使用状況に関するレポートを作成するためにライタ コンポーネントが作成されたとき、そのライタ コンポーネントに渡されます。このプロパティを設定すると、ディクショナリは軽度に複製され、その複製されたディクショナリが CacheManager オブジェクトに格納されます。これは、単にディクショナリへの参照を格納するやり方とは対照的なものです。軽度の複製とは、ディクショナリ内のスカラは値渡しによってコピーされ、ディクショナリ内のそのほかのオブジェクトは参照渡しによってコピーされることを意味します。ライタ コンポーネントは、ディクショナリから構成値を読み取るための IPipelineComponentAdmin インターフェイス、特にこのインターフェイスの SetConfigData メソッドを実装している必要があります。このプロパティによって識別される Dictionary オブジェクトは、SetConfigData メソッドを使って、新しく作成されたライタ コンポーネントに渡されます。

関連項目

CacheManager オブジェクト


ICacheManager::get_WriterProgId/put_WriterProgId

WriterProgId プロパティは読み取りと書き込みが可能な文字列で、キャッシュへのデータ取り込みに使うコンポーネントのプログラム ID (ProgID) を含んでいます。

定義

Get メソッド :

HRESULT ICacheManager::get_WriterProgId(
BSTR bstrName,
BSTR* WriterProgId
);

Put メソッド :

HRESULT ICacheManager::put_WriterProgId(
BSTR bstrName,
BSTR WriterProgId
);

パラメータ

bstrName

[in] ライタ コンポーネントの ProgID を提供または取得するデータ キャッシュの名前を含む BSTR です。

WriterProgId

[in] プロパティを入力する場合は、ライタ コンポーネントの ProgＩＤ を含む BSTR です。
[out,retval] プロパティを取得する場合は、ライタ コンポーネントの ProgID を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

CacheManager オブジェクト


CatalogManager オブジェクト

このオブジェクトは、商品カタログ システム全体に対する処理を行うために使います。このオブジェクトのメソッドとプロパティは、商品カタログ システムに含まれているカタログすべてに作用します。

ProgID: | Commerce.CatalogManager (外部作成可能)
COM クラス名: | CatalogManager
COM インターフェイス名: | ICatalogManager
インターフェイス ID 定数: | IID_ICatalogManager
ヘッダー ファイル: | Catalog.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

C++ で CatalogManager オブジェクトのプロパティとメソッドにアクセスするには、ICatalogManager インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、CatalogManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Catalogs | _Recordset | 商品カタログ システム内にある各カタログのレコードが含まれるレコードセットを、カタログが持つプロパティと共に返します。 このプロパティは読み取り専用です。
CategoryDefinitions | _Recordset | カテゴリ定義の名前がすべて含まれたレコードセットを返します。現時点で商品カタログ システム内にあるカテゴリ定義がすべて返されます。 このプロパティは読み取り専用です。
CustomCatalogs | _Recordset | 各カスタム カタログのレコードを含んでいるレコードセットを返します。これらのレコードには、カスタム カタログ名や、カスタム カタログの基となったカタログの名前が含まれています。 このプロパティは読み取り専用です。
ProductDefinitions | _Recordset | 商品定義の名前がすべて含まれたレコードセットを返します。現時点で商品カタログ システム内にある商品定義が、すべて返されます。 このプロパティは読み取り専用です。
Properties | _Recordset | プロパティの名前がすべて含まれたレコードセットを返します。現時点で商品カタログ システム内にあるプロパティが、すべて返されます。 このプロパティは読み取り専用です。

次の表は、CatalogManager オブジェクトのメソッドを示しています。

メソッド | 説明
AddDefinitionProperty | 定義にプロパティを追加します。
AddDefinitionVariantProperty | 定義にバリエーション プロパティを追加します。
AddPropertyValue | このプロパティ用の定義済みの値のリストに、値を追加します。列挙型の値についてのみ使用可能です。
CreateCatalog | 新しいカタログを作成します。
CreateCategoryDefinition | 新しいカテゴリ定義を作成します。
CreateProductDefinition | 新しい商品定義を作成します。
CreateProperty | 新しいプロパティを作成します。
DeleteCatalog | カタログを削除します。
DeleteDefinition | 商品定義またはカテゴリ定義を削除します。
DeleteProperty | プロパティを削除します。
ExportCSV | カタログ データをカンマ区切り値形式のファイルとしてエクスポートします。
ExportXML | カタログ データを拡張マークアップ言語 (XML) 形式のファイルとしてエクスポートします。
FreeTextSearch | カタログのフリーテキスト検索を実行します。
GetCatalog | 指定したカタログ オブジェクトを返します。
GetDefinitionProperties | 指定した定義のプロパティを返します。
GetPropertyAttributes | 指定したプロパティのすべての属性を返します。
GetPropertyValues | 列挙型プロパティの適切な値のリストを返します。
ImportCSV | カンマ区切り値形式のファイルをカタログ データとしてインポートします。
ImportXML | XML 形式のファイルをカタログ データとしてインポートします。
Initialize | CatalogManager オブジェクトを初期化します。
Query | 1 つ以上のカタログにある商品、バリエーション、およびカテゴリ データに対してクエリを実行します。
RemoveDefinitionProperty | 指定したプロパティまたはバリエーション プロパティを定義から削除します。
RemovePropertyValue | 列挙型プロパティから定義済みの値を削除します。
RenameDefinition | 定義を削除します。
RenameProperty | プロパティを削除します。
SetDefinitionProperties | このメソッドは、カテゴリ定義または商品定義のプロパティを変更するために使います。
SetPropertyAttributes | プロパティの属性を変更します。

解説

CatalogManager オブジェクトのいくつかのメソッドは、トランザクション中のオブジェクト内で呼び出すことができません。これらのメソッドは、CreateCatalog、DeleteCatalog、GenerateCustomCatalog、ImportCSV、ImportXML、および RegenerateFreeTextSearchIndex です。これらのメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

Required または Requires New プロパティ セットを持つ COM+ コンポーネントの CatalogManager にバインドすると、実行時エラーが発生します。


ICatalogManager::AddDefinitionProperty

このメソッドは、既存のカテゴリ定義または商品定義に既存のプロパティを追加するために使います。

定義

HRESULT ICatalogManager::AddDefinitionProperty(
BSTR strDefinitionName,
BSTR strPropertyName
);

パラメータ

strDefinitionName

[in] プロパティの追加先となる定義の名前を含む BSTR です。

strPropertyName

[in] プロパティの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した定義は存在しません。
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_IN_DEFINITION | 0x8898000D | 指定したプロパティは既に定義に存在します。
OLE_E_BLANK | 0x80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、プロパティを定義に追加します。その定義を基に作成された商品とカテゴリにも、そのプロパティが保持されます。プロパティは、一度しか定義に追加できません。商品定義の各プロパティは、プロパティとバリエーション プロパティの両方として使うことはできません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddDefinitionVariantProperty

ICatalogManager::RemoveDefinitionProperty


ICatalogManager::AddDefinitionVariantProperty

このメソッドは、バリエーション プロパティを定義に追加するために使います。このメソッドは、AddDefinitionProperty メソッドに似ています。このメソッドで追加したプロパティは、商品バリエーションのみで使われれます。

定義

HRESULT ICatalogManager::AddDefinitionVariantProperty(
BSTR strDefinitionName,
BSTR strPropertyName
);

パラメータ

strDefinitionName

[in] 指定した Variant の追加先となる定義の名前を含む BSTR です。

strPropertyName

[in] 指定した定義に追加するプロパティの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した定義は存在しません。
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_IN_DEFINITION | 0x8898000D | 指定したプロパティは既に定義に存在します。
OLE_E_BLANK | 0x80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、バリエーション プロパティを定義に追加します。その定義を基に作成された商品にも、そのプロパティが保持されます。プロパティは、一度しか定義に追加できません。商品定義の各プロパティは、プロパティとバリエーション プロパティの両方として使うことはできません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddDefinitionProperty

ICatalogManager::RemoveDefinitionProperty


ICatalogManager::AddPropertyValue

このメソッドは、指定した列挙型プロパティに使用する定義済みの値のリストに、値を追加するために使います。

定義

HRESULT ICatalogManager::AddPropertyValue(
BSTR strPropertyName,
BSTR strLegalValue
);

パラメータ

strPropertyName

[in] 新しい値を定義する列挙型プロパティの名前を含む BSTR です。

strLegalValue

[in] 新しい値を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_NOT_ENUM | 0x88980007 | 指定したプロパティは、cscEnumeration 型ではありません。
E_CAT_VALUE_ALREADY_ADDED | 0x88980008 | 指定した列挙値は既にリストに存在します。
OLE_E_BLANK | 0x80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AddPropertyValue メソッドは、cscEnumeration データ型のプロパティに対してのみ使います。

このメソッドは、列挙型プロパティに使用する定義済みの値のリストに、新しい値を追加します。クライアントがこのプロパティを未定義の値に設定しようとすると、エラーになります。このメソッドは、少量の固定した値しか持っていないプロパティを自動的に検証する場合に役立ちます。たとえば、Color プロパティには、定義済みの値として赤、緑、および青だけを保持することができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::GetPropertyValues

ICatalogManager::RemovePropertyValue


ICatalogManager::get_Catalogs

Catalogs プロパティは読み取り専用レコードセットで、商品カタログ システムに存在するカタログをすべて記述しています。返されるレコードセットには、各カタログのプロパティが含まれています。

定義

HRESULT ICatalogManager::get_Catalogs(
_Recordset** Catalogs
);

パラメータ

Catalogs

[out, retval] カタログを返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
OLE_E_BLANK | 0x80040007 | オブジェクトが初期化されていません。ほかのメソッドを呼び出す前に、必ず Initialize メソッドを呼び出さなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Catalogs パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、次のフィールドが含まれます。

フィールド名 | データ型 | 説明
CatalogName | 文字列 (128 文字) | なし
Locale | Integer | なし
StartDate | Date/Time | なし
EndDate | Date/Time | なし
VariantID | 文字列 (128 文字) | 商品バリエーションを一意に識別するプロパティの名前
ProductID | 文字列 (128 文字) | 商品を一意に識別するプロパティの名前
Currency | 文字列 (128 文字) | なし
WeightMeasure | 文字列 (128 文字) | なし
TimeStamp | Timestamp | なし
CatalogID | Integer | カタログを一意に識別する番号
CustomCatalog | bit | このレコードセットがカスタム カタログかどうかを示すフラグ
FreeTextIndexCreated | Date/Time | なし
ProductTableUpdated | Date/Time | なし

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateCatalog

ICatalogManager::DeleteCatalog


ICatalogManager::get_CategoryDefinitions

CategoryDefinitions プロパティは読み取り専用レコードセットで、商品カタログ システムのすべての商品定義の名前を含んでいます。

定義

HRESULT ICatalogManager::get_CategoryDefinitions(
_Recordset** CategoryDefinitions
);

パラメータ

CategoryDefinitions

[out, retval] カテゴリ定義を返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CategoryDefinitions パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されたレコードセットには、DefinitionName という 1 つのフィールドと、商品カタログ システムのカテゴリ定義ごとに 1 つの行が含まれています。このフィールドは 128 文字の文字列です。

現在、商品カタログ システムにカテゴリ定義が存在しない場合、返されたレコードセットの EOF プロパティは VARIANT_TRUE. に設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateCategoryDefinition

ICatalogManager::DeleteDefinition


ICatalogManager::CreateCatalog

このメソッドは、新しいカタログを作成するために使います。

定義

HRESULT ICatalogManager::CreateCatalog(
BSTR strCatalogName,
BSTR strProductID,
VARIANT strProductVariantID,
VARIANT lcidLocale,
VARIANT strCurrency,
VARIANT strWeightMeasure,
VARIANT dtStartDate,
VARIANT dtEndDate,
IProductCatalog** ppNewCatalog
);

パラメータ

strCatalogName

[in] 作成するカタログの名前を含む BSTR です。使用できない文字については、"解説" を参照してください。

strProductID

[in] 商品 ID のプロパティを含む BSTR です。

strProductVariantID

[in, optional] 商品バリエーション ID プロパティを含む Variant です。

lcidLocale

[in, optional] 作成されるカタログのロケール ID (LCID) を含む Variant です。

strCurrency

[in, optional ] 作成されるカタログ通貨型を含む Variant です。

strWeightMeasure

[in, optional] 作成されるカタログの、重量または長さの単位を含む Variant です。

dtStartDate

[in, optional] DATE という内部処理形式の開始日付を含むVariant です。

dtEndDate

[in, optional] DATE という内部処理形式の終了日付を含むVariant です。

ppNewCatalog

[out, retval] 新しいカタログの IProductCatalog インターフェイスを返すために使うポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_EXISTS | 0x88980001 | 指定した名前のカタログは既に存在します。カタログ名は、商品カタログ システム全体で一意でなければなりません。
E_CAT_PRODID_DOESNT_EXIST | 0x88980010 | ProductID に指定したプロパティは、商品カタログ システムのプロパティに存在しません。
E_CAT_UPDATE_FREETEXT_INDEX_FAILED | 0x88980015 | このエラーが発生するのは、フルテキスト検索がインストールされた後に、フルテキスト検索用インデックスの更新に失敗した場合です。 カタログは作成されますが、フルテキスト検索は機能しません。カタログをフルテキスト検索できるようにするには、カタログを削除して作成し直してください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppNewCatalog パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

このカタログでバリエーションを使う予定がある場合は、省略可能なパラメータ strProductVariantID にプロパティ名を必ず指定してください。作成時にこのパラメータを指定しなかったカタログには、商品バリエーションを作成できません。

strProductID または strProductVariantID パラメータのデータ型が cscString、cscEnumeration、または cscFileName の場合、長さは 256 文字に制限されます。

返される ProductCatalog オブジェクトは、あらかじめ初期化され使用可能な状態になっています。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • カタログ名、つまり strCatalogName パラメータには、シャープ記号 (#) で始まる名前、および次の文字を含む名前は指定できません。
    • スペース ( )

    • 二重引用符 (")

    • カンマ (,)

    • ピリオド (.)

    • 左角かっこ ([)

    • 右角かっこ (])

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::DeleteCatalog

ICatalogManager::GetCatalog


ICatalogManager::CreateCategoryDefinition

このメソッドは、新しいカテゴリ定義を作成するために使います。

定義

HRESULT ICatalogManager::CreateCategoryDefinition(
BSTR strDefinitionName
);

パラメータ

strDefinitionName

[in] 新しいカテゴリ定義の名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_EXISTS | 0x8898000A | 指定したカテゴリ定義名は既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

カテゴリ定義名と商品定義名は、商品カタログ システム全体でグローバルに一意でなければなりません。カテゴリ定義と商品定義は、同じ名前にすることはできません。

初期定義は、作成時には空です。個々のプロパティを定義に追加するには、AddDefinitionProperty メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddDefinitionProperty

ICatalogManager::CreateProductDefinition

ICatalogManager::DeleteDefinition


ICatalogManager::CreateProductDefinition

このメソッドは、新しい商品定義を作成するために使います。

定義

HRESULT ICatalogManager::CreateProductDefinition(
BSTR strDefinitionName
);

パラメータ

strDefinitionName

[in] 新しい商品定義の名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_EXISTS | 0x8898000A | 指定した商品定義名は既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

カテゴリ定義名と商品定義名は、商品カタログ システム全体でグローバルに一意でなければなりません。カテゴリ定義と商品定義は、同じ名前にすることはできません。

初期定義は、作成時には空です。個々のプロパティを定義に追加するには、AddDefinitionProperty メソッドまたは AddDefinitionVariantProperty メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddDefinitionProperty

ICatalogManager::AddDefinitionVariantProperty

ICatalogManager::CreateCategoryDefinition

ICatalogManager::DeleteDefinition


ICatalogManager::CreateProperty

このメソッドは、新しいプロパティを作成するために使います。

定義

HRESULT ICatalogManager::CreateProperty(
BSTR strPropertyName,
CatalogDataTypeEnum eDataType,
VARIANT varMaxLength,
_Recordset** ppRSProperty
);

パラメータ

strPropertyName

[in] 新しいプロパティの名前を含む BSTR です。このパラメータに含めることができるのは、XML タグで使える文字だけです。

eDataType

[in] 新しいプロパティのデータ型を指定する列挙値です。有効な値については、"解説" を参照してください。

varMaxLength

[in, optional] プロパティの最大長を含む Variant です。このパラメータは省略可能ですが、プロパティのデータ型が cscString の場合は必須です。データ型 cscEnumeration のプロパティの既定値は定数 128 であり、これを変更することはできません。データ型 cscFilePath のプロパティの既定値は定数 256 であり、これを変更することはできません。

ppRSProperty

[out, retval] 新しいプロパティを含む Recordset オブジェクトを返すために使うポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_EXISTS | 0x88980003 | 指定したプロパティ名は既に存在します。プロパティ名は、商品カタログ システム全体で一意でなければなりません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSProductVariant パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このメソッドは、新しく作成されたプロパティを含む単一行の Recordset オブジェクトを返します。この Recordset オブジェクトのフィールドの詳細については、「PropertyAttribute レコードセット」を参照してください。

次の表は、CatalogDataTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscInteger | 0 | -2[31] (-2,147,483,648) ～ 2[31] -1 (2,147,483,647) の範囲の数値。
cscBigInteger | 1 | 有効桁数 19 (符号付きの場合) または 20 (符号なしの場合)、小数部桁数 0 の符号付き固定小数点数値 (符号付きの場合 -2[63] ～ 2[63] - 1、符号なしの場合 0 ～ 2[64] - 1) [3], [9]。
cscFloat | 2 | 負または正の浮動小数点数。正の値の範囲は、およそ 2.23E –308 ～ 1.79E 308、負の値の範囲は、およそ –2.23E –308 ～ –1.79E 308 です。
cscDouble | 3 | 負または正の浮動小数点数。正の値の範囲は、およそ 2.23E –308 ～ 1.79E 308、負の値の範囲は、およそ –2.23E –308 ～ –1.79E 308 です。
cscBoolean | 4 | Boolean (bit)。1 または 0 を保持します。1 または 0 以外の整数値も受け付けますが、その場合は常に 1 と見なされます。
cscString | 5 | 最大長 255 文字の可変長の文字列。
cscDateTime | 6 | Microsoft SQL Server のDate/Time データ型。
cscCurrency | 7 | Microsoft SQL Server の Money データ型。
cscFilePath | 8 | ファイル パスを保持する文字列。
cscEnumeration | 9 | 定義済み定数に関連付けられた Integer。
cscInvalid | -1 | 予約されています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::DeleteProperty

ICatalogManager::GetPropertyAttributes

ICatalogManager::SetPropertyAttributes


ICatalogManager::get_CustomCatalogs

CustomCatalogs プロパティは読み取り専用レコードセットで、商品カタログ システムのカスタム カタログ、およびそれらの基となる基本カタログを記述しています。

定義

HRESULT ICatalogManager::get_CustomCatalogs(
_Recordset** CustomCatalogs
);

パラメータ

CustomCatalogs

[out, retval] 商品カタログ システム内のカスタム カタログの説明を返すために使う Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CustomCatalogs パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

Recordset オブジェクトには、次のフィールドが含まれます。

フィールド | データ型 | 説明
CustomCatalogName | 文字列 (128 文字) | なし
CatalogName | 文字列 (128 文字) | なし
CustomCatalogID | Integer | カタログを一意に識別する番号
TimeStamp | Timestamp | なし

Recordset オブジェクトは、CustomCatalogName フィールドで並べ替えられています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::get_Catalogs


ICatalogManager::DeleteCatalog

このメソッドは、カタログを削除するため、および商品カタログ システムから派生したカスタム カタログを削除するために使います。

定義

HRESULT ICatalogManager::DeleteCatalog(
BSTR strCatalogName
);

パラメータ

strCatalogName

[in] 削除するカタログの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_EXIST | 0x88980002 | 指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • カタログを削除すると、そのカタログから派生したカスタム カタログも削除されます。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateCatalog


ICatalogManager::DeleteDefinition

このメソッドは、商品カタログ システムから定義を削除するために使います。

定義

HRESULT ICatalogManager::DeleteDefinition(
BSTR strDefinitionName,
VARIANT_BOOL fForceDelete
);

パラメータ

strDefinitionName

[in] 削除する定義の名前を含む BSTR です。

fForceDelete

[in, optional, defaultvalue (0)] 強制的に削除するかどうかを指定する VARIANT_BOOL です。値が True の場合、カタログで使用中でも定義は削除されることを示します。値が False の場合、カタログで使用中でなければ定義は削除されることを示します。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した定義は存在しません。
E_CAT_DEFINITION_USED_IN_CATALOG | 0x8898000C | このエラーが返されるのは、fForceDelete パラメータが False に設定され、定義がカタログで使われていた場合だけです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

fForceDelete パラメータに値 True を使用する場合は、カテゴリ定義や商品定義だけでなく、全カタログ内のそれらの定義に基づくカテゴリと商品もすべて削除されるので、細心の注意を払ってください。結果として、データを損失する可能性があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateCategoryDefinition

ICatalogManager::CreateProductDefinition


ICatalogManager::DeleteProperty

このメソッドは、商品カタログ システムからプロパティを削除するために使います。

定義

HRESULT ICatalogManager::DeleteProperty(
BSTR strPropertyName
);

パラメータ

strPropertyName

[in] 削除するプロパティの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_IS_ID | 0x88980011 | 指定したプロパティは、1 つ以上のカタログで ProductID プロパティまたは VariantID プロパティとして使われています。これらのプロパティは、カタログの作成時に定義され、削除することはできません。
E_CAT_PROP_STILL_IN_DEF | 0x88980004 | 指定したプロパティは、定義で使われています。プロパティを定義から削除するには、このメソッドを呼び出す前に RemoveDefinitionProperty メソッドを呼び出してください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateProperty


ICatalogManager::ExportCSV

このメソッドは、カタログ データをカンマ区切り値 (CSV) 形式のファイルにエクスポートするために使います。

定義

HRESULT ICatalogManager::ExportCSV(
BSTR strCSVDestination,
BSTR strCatalogToExport
VARIANT_BOOL fRunSynchronously
);

パラメータ

strCSVDestination

[in] 作成するエクスポート ファイルのフル パスとファイル名を含む BSTR です。

strCatalogToExport

[in] エクスポートするカタログの名前を含む BSTR です。

fRunSynchronously

[in, defaultvalue (0)] メソッドを同期的に実行するかどうかを指定する VARIANT_BOOL です。値が True の場合、エクスポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、エクスポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

このメソッドは、正常に終了したことを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | 0x88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_CREATION_FAILED | 0x88980018 | メソッドが出力ファイルを作成できません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ExportCSV メソッドを使うと、Microsoft Excel など、ほかのプログラムで使用できる形式で、商品カタログ システムから商品データを出力できます。

このメソッドは、同時には 1 つのカタログからしか商品データを出力できません。

生成されたカンマ区切り値 (CSV) ファイルには、商品のみが含まれます。カテゴリ、関連付け、および階層は、CSV ファイルに書き込まれません。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

注意

  • エクスポートの処理中にカタログに対して行った変更は、出力ファイルに反映される場合と反映されない場合があります。エクスポートの処理中に追加および削除した場合は、出力ファイルが破損する可能性があります。エクスポートの処理中の変更は避ける必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::ExportXML

ICatalogManager::ImportCSV


ICatalogManager::ExportXML

このメソッドは、カタログ データを拡張マークアップ言語 (XML) ファイルにエクスポートするために使います。

定義

HRESULT ICatalogManager::ExportXML(
BSTR strXMLFilePath,
VARIANT strCatalogsToExport
VARIANT_BOOL fRunSynchronously
);

パラメータ

strXMLFilePath

[in] 作成する XML ファイルのパスとファイル名を含む BSTR です。

strCatalogsToExport

[in, optional] エクスポート対象のカタログを含む Variant です。詳細については、"解説" を参照してください。

fRunSynchronously

[in, defaultvalue (0)] メソッドを同期的に実行するかどうかを指定する VARIANT_BOOL です。値が True の場合、エクスポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、エクスポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

このメソッドは、正常に終了したことを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | 0x88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_CREATION_FAILED | 0x88980018 | メソッドが出力ファイルを作成できません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

strCatalogsToExport パラメータ自体を指定しなかった場合、またはこのパラメータに空文字列を指定した場合、すべてのカタログがエクスポートされます。それ以外の場合、strCatalogsToExport パラメータには、エクスポートするカタログ名をカンマで区切ったリストで指定します。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

注意

  • エクスポートの処理中にカタログに対して行った変更は、出力ファイルに反映される場合と反映されない場合があります。エクスポートの処理中に追加および削除した場合は、出力ファイルが破損する可能性があります。エクスポートの処理中の変更は避ける必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::ExportCSV

ICatalogManager::ImportXML


ICatalogManager::FreeTextSearch

このメソッドは、カタログのフリーテキスト検索を実行するために使います。

定義

HRESULT ICatalogManager::FreeTextSearch(
BSTR strPhrase,
VARIANT strCatalogsToSearch,
VARIANT eClassTypeRequired,
VARIANT strPropertiesToReturn,
VARIANT strPropertyToSortOn,
VARIANT_BOOL fSortAscending,
VARIANT lStartingRecord,
VARIANT lRecordsToRetrieve,
VARIANT* plTotalRecordsInQuery,
_Recordset** ppRSResult
);

パラメータ

strPhrase

[in] 検索語句を含む BSTR です。

strCatalogsToSearch

[in, optional] 検索するカタログをカンマ区切りリスト形式で含む Variant です。空文字列の場合、すべてのカタログが検索されます。

eClassTypeRequired

[in, optional] 目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

strPropertiesToReturn

[in, optional] 返すプロパティを含む Variant です。これは、カンマで区切られた文字列です。

strPropertyToSortOn

[in, optional] 並べ替えに使用するプロパティを含む Variant です。指定しない場合、返されるレコードセットは並べ替えが行われません。

fSortAscending

[in, defaultvalue (-1)] 並べ替えを昇順にするか、または降順にするかを指定する VARIANT_BOOL です。値が True の場合、返されるレコードセットは昇順に並べ替えられることを示します。値が False の場合、返されるレコードセットは降順に並べ替えられることを示します。

lStartingRecord

[in, optional] 取得開始レコード番号を含むVariant です。これは、先頭レコードからのオフセットです。

lRecordsToRetrieve

[in, optional] 取得開始レコードから数えて、いくつのレコードを取得するかを指定する Variant です。

plTotalRecordsInQuery

[out, optional] 検索によって返されたレコードの数を返すために使う Variant へのポインタです。

ppRSResult

[out, retval] クエリの結果を返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_MULTI_CAT_QUERY_NEEDS_PROPS | 0x8898000F | strPropertiesToReturn パラメータは、複数のカタログを検索する場合に指定する必要があります。
E_CAT_NO_CATALOGS | 0x88980013 | 商品カタログ システムにカタログが存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

plTotalRecordsInQuery パラメータと ppRSResult パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

FreeTextSearch メソッドは、1 つ以上のカタログにある単語または語句に対して任意の字句比較を実行するために使います。商品カタログ システムの FreeTextSearch 機能は、SQL Server 2000 のフルテキスト インデックスに基づいているので、フリー テキスト検索を制御するキーワードと演算子を SQL Server 2000 から継承しています。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

strPropertiesToReturn パラメータに関するプログラミング ルールは、strCatalogsToSearch パラメータに 1 つのカタログ名を渡すか、または複数のカタログ名を渡すかによって異なります。1 つのカタログ名を渡す場合、strPropertiesToReturn パラメータは省略可能で、既定ではすべてのプロパティになります。複数のカタログ名を渡す場合、strPropertiesToReturn パラメータは必須です。

strPropertiesToReturn パラメータに値を指定しなかった場合、メソッドは、指定したカタログのすべてのフィールドを返します。strPropertiesToReturn パラメータに値を指定した場合は、指定したフィールドだけを返します。

詳細については、「CatalogProduct レコードセット」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::Query


ICatalogManager::GetCatalog

このメソッドは、指定したカタログを商品カタログ システムから取得するために使います。

定義

HRESULT ICatalogManager::GetCatalog(
BSTR strCatalogName,
IProductCatalog** ppCatalog
);

パラメータ

strCatalogName

[in] 取得するカタログの名前を含む BSTR です。

ppCatalog

[out] ProductCatalog オブジェクトを返すために使う IProductCatalog インターフェイスへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppCatalog パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateCatalog

ICatalogManager::DeleteCatalog


ICatalogManager::GetDefinitionProperties

このメソッドは、指定したカタログ定義または商品定義のプロパティを返すために使います。

定義

HRESULT ICatalogManager::GetDefinitionProperties(
BSTR strDefinitionName,
_Recordset** ppRSProperties
);

パラメータ

strDefinitionName

[in] プロパティを返す定義の名前を含む BSTR です。

ppRSProperties

[out, retval] 定義のプロパティを返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した定義は存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSProperties パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
DefinitionID | Integer | 定義を一意に識別する番号。
PropertyName | 文字列 (256 文字) | なし。
PropertyOrder | Integer | なし。
PropertyType | Integer | 0 は商品またはカテゴリを示し、1 は商品バリエーションを示します。
TimeStamp | Timestamp | なし。

レコードセットの行は、PropertyOrder フィールドで並べ替えられています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddDefinitionProperty

ICatalogManager::AddDefinitionVariantProperty

ICatalogManager::RemoveDefinitionProperty


ICatalogManager::GetPropertyAttributes

このメソッドは、指定したプロパティの属性を返すために使います。

定義

HRESULT ICatalogManager::GetPropertyAttributes(
BSTR strPropertyName,
_Recordset** ppRSAttributes
);

パラメータ

strPropertyName

[in] 属性を返すプロパティの名前を含む BSTR です。

ppRSAttributes

[out] プロパティの属性を返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSAttributes パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドは、要求したプロパティを含む単一行の Recordset オブジェクトを返します。この Recordset オブジェクトのフィールドの詳細については、「PropertyAttribute レコードセット」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::SetPropertyAttributes


ICatalogManager::GetPropertyValues

このメソッドは、列挙型プロパティに定義した値のリストを返すために使います。

定義

HRESULT ICatalogManager::GetPropertyValues(
BSTR strPropertyName,
_Recordset** ppRSPropertyValues
);

パラメータ

strPropertyName

[in] 定義済みの値を返す列挙型プロパティの名前を含む BSTR です。

ppRSPropertyValues

[out, retval] プロパティ値を返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSPropertyValues パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
PropertyName | 文字列 (256 文字) | なし
Value | 文字列 (256 文字) | なし

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddPropertyValue

ICatalogManager::RemovePropertyValue


ICatalogManager::ImportCSV

このメソッドは、カンマ区切り値 (CSV) 形式のファイルをカタログ データとしてインポートするために使います。

定義

HRESULT ICatalogManager::ImportCSV(
BSTR strCSVFileSource,
BSTR strProductIDColumnName,
BSTR strPriceColumnName,
BSTR strCatalogName,
VARIANT_BOOL fUpdateOnly
VARIANT_BOOL fRunSynchronously
);

パラメータ

strCSVFileSource

[in] インポートする CSV ファイルのパスとファイル名を含む BSTR です。

strProductIDColumnName

[in] 列の名前を含む BSTR です。カタログにインポートする商品のための一意の ID の値を提供する列の名前です。

strPriceColumnName

[in] CSV ファイル内で商品価格を保持している列の名前を含む BSTR です。

strCatalogName

[in] CSV ファイルをインポートするカタログの名前を含む BSTR です。カタログ名には、"#" で始まる名前、およびスペースだけで構成される名前は指定できません。

fUpdateOnly

[in, defaultvalue (0)] 既存のカタログを更新するか、または新しいカタログを作成するかを指定する VARIANT_BOOL です。値が True の場合、strCatalogName パラメータに指定したものと同じ名前のカタログがシステムに存在すると、そのカタログはインポートのデータで更新されることを示します。値が False の場合、既存のカタログは削除され、新しいカタログがインポートのデータで作成されることを示します。

fRunSynchronously

[in, defaultvalue (0)] メソッドを同期的に実行するかどうかを指定する VARIANT_BOOL です。値が True の場合、インポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、インポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

このメソッドは、正常に終了したことを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | 0x88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_OPEN_ERROR | 0x88980020 | メソッドがファイルを開けません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

存在しないカタログを strCatalogName パラメータに指定した場合、新しいカタログが作成され、fUpdateOnly パラメータの値は無視されます。

ImportCSV メソッドは、既存データをさまざまなソースから商品カタログ システムに移動するために使います。CSV ファイルは、次の形式に従う必要があります。

  • データの先頭行は、カンマで区切られた列名で構成されます。行は、テキスト ファイルの新しい行で区切られます。

  • 後続の各行 (データ行) には、先頭行と同数のカンマが必要です。言い換えれば、CSV のすべての列は先頭行によって定義する必要があります。

  • CSV ファイル (1 項目につき 1 行) のすべての項目は商品と見なされ、共通の商品定義を基に作成されます。商品定義が送信先のカタログに存在しない場合、インポートの処理中に、1 つの商品定義が作成されます。

  • 各項目について、Price 列と ProductID 列には必ず値を指定しなければなりません。

  • 欠落したデータは、2 つのカンマが隣接します。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、指定したファイルを開けること、および、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::ExportCSV

ICatalogManager::ImportXML


ICatalogManager::ImportXML

このメソッドは、拡張マークアップ言語 (XML) ファイルをカタログ データとしてインポートするために使います。

定義

HRESULT ICatalogManager::ImportXML(
BSTR strXMLFilePath,
VARIANT_BOOL fUpdateOnly
VARIANT_BOOL fRunSynchronously
);

パラメータ

strXMLFilePath

[in] インポートする XML ファイルのパスとファイル名を含む BSTR です。

fUpdateOnly

[in, defaultvalue (0)] 既存のカタログを更新するか、または新しいカタログを作成するかを指定する VARIANT_BOOL です。値が True の場合、strCatalogName パラメータに指定したものと同じ名前のカタログがシステムに存在すると、そのカタログはインポートのデータで更新されることを示します。値が False の場合、既存のカタログは削除され、新しいカタログがインポートのデータで作成されることを示します。

fRunSynchronously

[in, defaultvalue (0)] メソッドを同期的に実行するかどうかを指定する VARIANT_BOOL です。値が True の場合、インポートが完了するまでメソッドは制御を戻さないことを示します。値が False の場合、インポート スレッドの起動直後にメソッドは制御を戻すことを示します。

戻り値

このメソッドは、正常に終了したことを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_IMPORT_IN_PROGRESS | 0x88980025 | 呼び出された既存のインポート メソッドが、まだ完了していません。このメソッドは、インポートの処理中には実行できません。
E_CAT_FILE_OPEN_ERROR | 0x88980020 | メソッドがファイルを開けません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

部分的なインポートまたは差分のインポートを実行する場合、つまり、新しいカタログ データまたは変更されたカタログ データをインポートして既存カタログを更新する場合、インポートするデータのスキーマが既存カタログのスキーマと一致していることが重要です。カタログ スキーマの詳細については、「インポート セマンティクス」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注

  • このメソッドは、別々のスレッドで実行されます。スレッドを起動する前に、このメソッドは、指定したファイルを開けること、および、既存の ExportCSV、ExportXML、ImportCSV、または ImportXML メソッドが処理中でないことをチェックします。fRunSynchronously が False の場合、このメソッドは、新しいスレッドの起動直後にエラーなしで制御を戻します。カタログのインポート中に発生したエラーはすべて、Windows NT イベント ログに記録されます。Windows NT イベント ログを表示するには、Windows イベント ビューアを使います。

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

  • SQL 接続が一時的に切断された場合、その時間が 2 分を超えると、インポートまたはエクスポートは中断されます。中断後、ほかのメソッドが動作します。

  • カタログ名には、"#" で始まる名前、およびスペースだけで構成される名前は指定できません。

  • カタログに存在するプロパティの種類と、インポート ファイルに存在する同じ名前のプロパティの種類が異なる場合、インポートは失敗します。たとえば、カタログでは SKU プロパティが文字列であるのに対して、インポートする XML ファイルでは SKU プロパティが整数であるとします。このような場合にエラーが発生します。

関連項目

CatalogManager オブジェクト

ICatalogManager::ExportXML

ICatalogManager::ImportCSV


ICatalogManager::Initialize

このメソッドは、CatalogManager オブジェクトを初期化するために使います。ほかのメソッドまたはプロパティを呼び出す前に、このメソッドを一度呼び出す必要があります。

定義

HRESULT ICatalogManager::Initialize(
BSTR strConfigString,
VARIANT_BOOL fIsADOConnectionString
);

パラメータ

strConfigString

[in] 構成文字列を含む BSTR です。

fIsADOConnectionString

[in, defaultvalue (0)] strConfigString パラメータが指しているのが、ActiveX Data Objects (ADO) 接続文字列であるか、またはサイト名であるかを指定する VARIANT_BOOL です。値が True の場合、ADO 接続文字列であることを示します。値が False の場合、サイト名であることを示します。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATMGR_ALREADY_INITIALIZED | 0x88980062 | CatalogManager オブジェクトは既に初期化されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト


ICatalogManager::get_ProductDefinitions

ProductDefinitions プロパティは読み取り専用 Recordset オブジェクトで、商品カタログ システムのすべての商品定義の名前を含んでいます。

定義

HRESULT ICatalogManager::get_ProductDefinitions(
_Recordset** ProductDefinitions
);

パラメータ

ProductDefinitions

[out, retval] 商品定義を返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ProductDefinitions パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されたレコードセットには、DefinitionName という 1 つのフィールドと、商品カタログ システムの商品定義ごとに 1 つの行が含まれています。このフィールドは 128 文字の文字列です。

現在、商品カタログ システムに商品定義が存在しない場合、返されたレコードセットの EOF プロパティは VARIANT_TRUE に設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateProductDefinition

ICatalogManager::DeleteDefinition


ICatalogManager::get_Properties

Properties プロパティは読み取り専用レコードセットで、現在商品カタログ システムに存在する各プロパティの名前を返します。カタログ名が指定された場合は、そのカタログで使われているプロパティだけを返します。

定義

HRESULT ICatalogManager::Properties(
VARIANT strCatalogName,
_Recordset** ppRSProperties
);

パラメータ

strCatalogName

[in, optional] カタログの名前を含む Variant です。このカタログのプロパティが返されます。この省略可能なパラメータを省略すると、すべてのプロパティが返されます。

ppRSProperties

[out] プロパティを返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Properties パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このメソッドは、返されるプロパティごとに 1 つの行を含む Recordset オブジェクトを返します。この Recordset オブジェクトのフィールドの詳細については、「PropertyAttribute レコードセット」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateProperty

ICatalogManager::DeleteProperty


ICatalogManager::Query

このメソッドは、1 つ以上のカタログにある商品、カテゴリ、およびバリエーション データに対してクエリを実行するために使います。

定義

HRESULT ICatalogManager::Query(
BSTR strPhrase,
VARIANT strCatalogsToSearch,
VARIANT eClassTypeRequired,
VARIANT strPropertiesToReturn,
VARIANT strPropertyToSortOn,
VARIANT_BOOL fSortAscending,
VARIANT lStartingRecord,
VARIANT lRecordsToRetrieve,
VARIANT* plTotalRecordsInQuery,
_Recordset** ppRSResult
);

パラメータ

strPhrase

[in] 検索語句を含む BSTR です。

strCatalogsToSearch

[in, optional] 検索するカタログを、カンマで区切られたリスト形式で含む Variant です。空文字列の場合、すべてのカタログが検索されます。

eClassTypeRequired

[in, optional] 目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

strPropertiesToReturn

[in, optional] 返すプロパティを、カンマで区切られたリスト形式で含む Variant です。

strPropertyToSortOn

[in, optional] 並べ替えに使用するプロパティを含む Variant です。

fSortAscending

[in, defaultvalue (-1)] 並べ替えを昇順にするか、または降順にするかを指定する VARIANT_BOOL です。値が True の場合、返されるレコードセットは昇順に並べ替えられることを示します。値が False の場合、返されるレコードセットは降順に並べ替えられることを示します。

lStartingRecord

[in, optional] 取得開始レコードを含むVariant です。これは、先頭レコードからのオフセットです。

lRecordsToRetrieve

[in, optional] 取得開始レコードから数えて、いくつのレコードを取得するかを指定する Variant です。

plTotalRecordsInQuery

[out, optional] クエリに当てはまるレコードの総数を返すために使う Variant へのポインタです。

ppRSResult

[out, retval] 検索結果を返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_MULTI_CAT_QUERY_NEEDS_PROPS | 0x8898000F | strPropertiesToReturn パラメータは、複数のカタログを検索する場合に指定する必要があります。
E_CAT_NO_CATALOGS | 0x88980013 | 商品カタログ システムにカタログが存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

plTotalRecordsInQuery パラメータと ppRSResult パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

Query メソッドは、1 つ以上のカタログにある商品、商品バリエーション、およびカテゴリ データに対して任意のクエリを実行するために使います。strPhrase パラメータは、ADO レコードセットのフィルタ プロパティによく似ています。簡単なクエリを作成する場合は、たとえば length < 100 のように、キー、演算子、値という順番の規則に従います。クエリに文字列データ型の値を使う場合は、たとえば color = 'Blue' のように、その値を一重引用符で囲みます。

より高度なクエリを作成する場合は、たとえば (level > 10) OR (Name = 'Bob' AND Title = 'CPA') のように、AND 演算子と OR 演算子を使って複数の句をグループ化することができます。

strPropertiesToReturn パラメータに関するプログラミング ルールは、strCatalogsToSearch パラメータに 1 つのカタログ名を渡すか、または複数のカタログ名を渡すかによって異なります。1 つのカタログ名を渡す場合、strPropertiesToReturn パラメータは省略可能で、既定ではすべてのプロパティになります。複数のカタログ名を渡す場合、strPropertiesToReturn パラメータは必須です。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

strPropertiesToReturn パラメータに値を指定しなかった場合、メソッドは、指定したカタログのすべてのフィールドを返します。strPropertiesToReturn パラメータに値を指定した場合は、指定したフィールドだけを返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::FreeTextSearch


ICatalogManager::RemoveDefinitionProperty

このメソッドは、指定したプロパティまたはバリエーション プロパティを、指定した定義から削除するために使います。

定義

HRESULT ICatalogManager::RemoveDefinitionProperty(
BSTR strDefinitionName,
BSTR strPropertyName
);

パラメータ

strDefinitionName

[in] 定義の名前を含む BSTR です。指定したプロパティがこの定義から削除されます。

strPropertyName

[in] 削除するプロパティの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した定義は存在しません。
E_CAT_PROP_NOT_IN_DEFINITION | 0x8898000E | 指定したプロパティはこの定義には含まれていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

定義から削除されるプロパティは、その定義を基に作成されたすべての商品、商品バリエーション、およびカテゴリからも削除されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注意

  • このメソッドの使用には、細心の注意を払ってください。このメソッドを呼び出すと、ほとんどの場合データが削除されることになります。

  • 商品グループ定義のバリエーション プロパティをすべて削除すると、その商品グループ定義は商品定義に変換され、この定義に基づく既存の商品バリエーションはすべて削除されます。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddDefinitionProperty

ICatalogManager::AddDefinitionVariantProperty

ICatalogManager::GetDefinitionProperties


ICatalogManager::RemovePropertyValue

このメソッドは、列挙型プロパティから定義済みの値を削除するために使います。

定義

HRESULT ICatalogManager::RemovePropertyValue(
BSTR strPropertyName,
BSTR strLegalValue
);

パラメータ

strPropertyName

[in] 列挙型プロパティの名前を含む BSTR です。指定した値がこの列挙型プロパティから削除されます。

strLegalValue

[in] 削除する値を含む BSTR です。この値は、指定した列挙型プロパティから選びます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定したプロパティは存在しません。
E_CAT_PROP_NOT_ENUM | 0x88980007 | 指定したプロパティは、cscEnumeration 型ではありません。列挙型プロパティに対してのみ、このメソッドを呼び出してください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注意

  • 列挙型プロパティから値を削除すると、該当のプロパティが削除対象の値に設定されている商品はすべて、その値が Null に変更されます。

関連項目

CatalogManager オブジェクト

ICatalogManager::AddPropertyValue

ICatalogManager::GetPropertyValues


ICatalogManager::RenameDefinition

このメソッドは、定義の名前を変更するために使います。

定義

HRESULT ICatalogManager::RenameDefinition(
BSTR strOldName,
BSTR strNewName
);

パラメータ

strOldName

[in] 既存の定義の名前を含む BSTR です。

strNewName

[in] 変更後の定義の名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した古い定義名が存在しません。
E_CAT_DEFINITION_EXISTS | 0x8898000A | 指定した新しい名前の定義は既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、定義を使うすべての商品とカテゴリに影響を与えます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::RenameProperty


ICatalogManager::RenameProperty

このメソッドは、プロパティの名前を変更するために使います。

定義

HRESULT ICatalogManager::RenameProperty(
BSTR strOldPropertyName,
BSTR strNewPropertyName
);

パラメータ

strOldPropertyName

[in] 既存のプロパティ名を含む BSTR です。

strNewPropertyName

[in] 変更後のプロパティ名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定した古いプロパティ名が存在しません。
E_CAT_PROP_EXISTS | 0x88980003 | 指定した新しい名前のプロパティは既に存在します。
E_CAT_PROP_IS_ID | 0x88980011 | 指定したプロパティ名は、カタログの ProductID または VariantID として使われています。これらのプロパティは、カタログの作成時に指定され、名前を変更したり、削除したりすることはできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::RenameDefinition


ICatalogManager::SetDefinitionProperties

このメソッドは、カテゴリ定義または商品定義のプロパティを変更するために使います。

定義

HRESULT ICatalogManager::SetDefinitionProperties(
BSTR strDefinitionName,
Recordset* pRSProperties,
);

パラメータ

strDefinitionName

[in] 定義の名前を含む BSTR です。

pRSProperties

[in] 新しいプロパティを指定する _Recordset への参照です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定した名前のプロパティが存在しません。
E_CAT_PROP_CHANGED | 0x88980006 | このプロパティの属性は、そのプロパティが前回読み取られた後に変更されています。このエラーが発生するのは、sForceUpdate パラメータが False で、CreateProperty メソッドまたは GetPropertyAttributes メソッドの呼び出し後にプロパティの属性が変更された場合です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateProperty


ICatalogManager::SetPropertyAttributes

このメソッドは、プロパティの属性を変更するために使います。

定義

HRESULT ICatalogManager::SetPropertyAttributes(
_Recordset* pRSNewState,
VARIANT fForceUpdate
);

パラメータ

pRSNewState

[in] 新しい属性値を指定する _Recordset オブジェクトへの参照です。

fForceUpdate

[in, optional] 強制的に更新するかどうかを指定する Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PROP_CHANGED | 0x88980006 | このプロパティの属性は、そのプロパティが前回読み取られた後に変更されています。このエラーが発生するのは、sForceUpdate パラメータが False で、CreateProperty メソッドまたは GetPropertyAttributes メソッドの呼び出し後にプロパティの属性が変更された場合です。
E_CAT_PROP_DOESNT_EXIST | 0x88980005 | 指定した名前のプロパティが存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetPropertyAttributes メソッドまたは CreateProperty メソッドから返される Recordset オブジェクトを pRSNewState パラメータとして使うと、エラー検出のために、そのタイムスタンプを既存のプロパティのタイムスタンプと比較することができます。データ型を除いて、プロパティの属性はすべて変更することができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogManager オブジェクト

ICatalogManager::CreateProperty

ICatalogManager::GetPropertyAttributes


CatalogSets オブジェクト

このオブジェクトは、カタログ管理システムのカタログ セットを操作するために使います。カタログ セットによって、異なるユーザーや組織に対して、別々のカタログの集まりを提供することができます。

ProgID: | Commerce.CatalogSets (外部作成可能)
COM クラス名: | CatalogSets
COM インターフェイス名: | _CatalogSets
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Sets Type Library
DLL 名: | CatalogSets.dll
スレッド モデル: | アパートメント

C++ で CatalogSets オブジェクトのプロパティとメソッドにアクセスするには、_CatalogSets インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、CatalogSets オブジェクトのメソッドを示しています。

メソッド | 説明
CreateCatalogSet | 新しいカタログ セットを作成します。
DeleteCatalogSet | 指定したカタログ セットを削除します。
GetCatalogs | すべてのカタログのリストを返します。
GetCatalogSetIDForUser | ユーザーの CatalogSetID を返します。
GetCatalogSetInfo | 指定したカタログ セットに関する情報を返します。
GetCatalogSets | すべてのカタログ セットのリストを返します。
GetCatalogsForUser | 指定したユーザーに関連付けられたカタログのリストを返します。
GetCatalogsInCatalogSet | 指定したカタログ セットに関連付けられたカタログのリストを返します。
GetCatalogsNotInCatalogSet | 指定したカタログ セットに関連付けられていないカタログをすべて含むリストを返します。
Initialize | CatalogSets オブジェクトを初期化します。
RemoveCatalogFromCatalogSets | すべてのカタログ セットからカタログを削除します。
UpdateCatalogSet | 既存のカタログ セットを変更することができます。


_CatalogSets::CreateCatalogSet

このメソッドは、カタログ データベースに新しいカタログ セットを作成するために使います。

定義

HRESULT _CatalogSets::CreateCatalogSet(
BSTR CatalogSetName,
BSTR CatalogSetDescription,
VARIANT_BOOL bWildCard,
_Recordset* CatalogNamesRS,
BSTR* CatalogSetID
);

パラメータ

CatalogSetName

[in] 新しいカタログ セットの名前を含む BSTR です。入力できる文字数は、最大 128 文字です。

CatalogSetDescription

[in] 新しいカタログ セットの説明を含む BSTR です。

bWildCard

[in] 将来作成される可能性がある新しいカタログも含め、すべてのカタログをこのカタログ セットに自動的に含めるかどうかを示す VARIANT_BOOL です。値が True の場合、このカタログ セットには既存のすべてのカタログが含まれることを示します。値が False の場合、このカタログ セットにはカタログの特定のセットしか含まれないことを示します。

CatalogNamesRS

[in, optional] ActiveX Data Objects (ADO) の _Recordset オブジェクトへのポインタです。新しいカタログ セットに含めるカタログをこのオブジェクトに指定します。_Recordset オブジェクトは CatalogName という名前の 1 つの列で構成され、含めるカタログごとに 1 つの行を保持します。bWildCard パラメータが True の場合、このパラメータは無視されます。

CatalogSetID

[out, retval] 新しいカタログ セットの自動的に生成される ID (GUID) を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CatalogSetID パラメータに有効なデータが含まれるのは、新しいカタログ セットが正常に作成された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::DeleteCatalogSet

このメソッドは、カタログ データベースから既存のカタログ セットを削除するために使います。

定義

HRESULT _CatalogSets::DeleteCatalogSet(
BSTR CatalogSetID
);

パラメータ

CatalogSetID

[in] 削除するカタログ セットの GUID を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

カタログ セットを削除しても、カタログ セット ID は削除されません。無効になったカタログ セット ID を参照しても、ソリューション サイトにはアクセスできません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::GetCatalogs

このメソッドは、すべてのカタログのリストを返します。

定義

HRESULT _CatalogSets::GetCatalogs(
_Recordset** unnamed parameter
);

パラメータ

unnamed parameter

[out, retval] 返される _Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトには名前のないパラメータが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

unnamed parameter に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、CatalogName という 128 文字のフィールドだけが含まれます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::GetCatalogSetIDForUser

このメソッドは、特定のユーザーの CatalogSetID を返すために使います。

定義

HRESULT _CatalogSets::GetCatalogSetIDForUser(
IDispatch* objProfileService,
BSTR user_id,
BSTR defaultCatalogSetID,
VARIANT* unnamed parameter
);

パラメータ

objProfileService

[in] ProfileService オブジェクトに対する IDispatch インターフェイスへのポインタです。

user_id

[in] ユーザー ID を含む BSTR です。

defaultCatalogSetID

[in] 既定のカタログ セット ID を含む BSTR です。

unnamed parameter

[out, retval] カタログ セット ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

unnamed parameter に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

objProfileService パラメータで定義されたユーザーが、自分に関連付けられたカタログ セットを持っている場合、このメソッドはそのカタログ セット ID を返します。持ってない場合は、そのユーザーの組織に関連付けられたカタログ セットを返します。このカタログ セットが存在しない場合は、defaultCatalogSetID パラメータに指定された値を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト

ProfileService オブジェクト


_CatalogSets::GetCatalogSetInfo

このメソッドは、カタログ セットの基本的なプロパティを返すために使います。

定義

HRESULT _CatalogSets::GetCatalogSetInfo(
BSTR CatalogSetID,
_Recordset** unnamed parameter
);

パラメータ

CatalogSetID

[in] カタログ セット ID (GUID) を含む BSTR です。

unnamed parameter

[out, retval] 返される _Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトには名前のないパラメータが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

unnamed parameter に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドは、前方スクロール タイプの Recordset オブジェクトを返します。このオブジェクトには 1 つの行が含まれ、その行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogSetID | GUID | なし。
CatalogSetName | 文字列 (最大 255 文字) | なし。
CatalogSetDescription | 文字列 (最大 255 文字) | なし。
bWildCard | Integer | 将来作成される可能性がある新しいカタログも含め、すべてのカタログをこのカタログ セットに自動的に含めるかどうかを示す Boolean です。値が True の場合、このカタログ セットには既存のすべてのカタログが含まれることを示します。値が False の場合、このカタログ セットにはカタログの特定のセットしか含まれないことを示します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::GetCatalogSets

このメソッドは、すべてのカタログ セットのリストを返すために使います。

定義

HRESULT _CatalogSets::GetCatalogSets(
_Recordset** unnamed parameter
);

パラメータ

unnamed parameter

[out, retval] 返される _Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトには名前のないパラメータが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

unnamed parameter に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドは、前方スクロール タイプの Recordset オブジェクトを返します。このオブジェクトには、カタログ セットごとに 1 つの行が含まれ、各行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogSetID | GUID | なし。
CatalogSetName | 文字列 (255 文字) | なし。
CatalogSetDescription | 文字列 (255 文字) | なし。
bWildCard | Integer | 将来作成される可能性がある新しいカタログも含め、すべてのカタログをこのカタログ セットに自動的に含めるかどうかを示す Boolean です。値が True の場合、このカタログ セットには既存のすべてのカタログが含まれることを示します。値が False の場合、このカタログ セットにはカタログの特定のセットしか含まれないことを示します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::GetCatalogsForUser

このメソッドは、特定のユーザーのプロファイルに指定されたカタログ セットによってそのユーザーに割り当てられているカタログのリストを返すために使います。

定義

HRESULT _CatalogSets::GetCatalogsForUser(
IDispatch* objProfileService,
BSTR user_id,
BSTR defaultCatalogSetID,
_Recordset** unnamed parameter
);

パラメータ

objProfileService

[in] プロファイル サービスに対する IDispatch インターフェイスへのポインタです。

user_id

[in] ユーザー ID を含む BSTR です。

defaultCatalogSetID

[in] 既定のカタログ セット ID を含む BSTR です。

unnamed parameter

[out, retval] 返される _Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトには名前のないパラメータが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

unnamed parameter に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、user_id パラメータのユーザー プロファイルに関連付けられたカタログ セット内のカタログごとに 1 つの行が含まれ、各行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogName CatalogSet_Catalogs テーブルのフィールド | 文字列 (最大 255 文字) | なし。
CatalogName CatalogGlobal テーブルのフィールド | 文字列 (最大 128 文字) | なし。

このメソッドに渡されるユーザー プロファイル オブジェクトが初期化されていない場合、このオブジェクトは既定のカタログ セットを返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::GetCatalogsInCatalogSet

このメソッドは、特定のカタログ セットに含まれるカタログを返すために使います。

定義

HRESULT _CatalogSets::GetCatalogsInCatalogSet(
BSTR CatalogSetID,
_Recordset** unnamed parameter
);

パラメータ

CatalogSetID

[in] カタログ セット ID を含む BSTR です。

unnamed parameter

[out, retval] 返される _Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトには名前のないパラメータが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

unnamed parameter に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、カタログ セット内のカタログごとに 1 つの行が含まれ、各行は次のフィールドで構成されます。

フィールド | 型 | 説明
CatalogName CatalogSet_Catalogs テーブルのフィールド | 文字列 (最大 255 文字) | なし。
CatalogName CatalogGlobal テーブルのフィールド | 文字列 (最大 128 文字) | なし。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::GetCatalogsNotInCatalogSet

このメソッドは、指定したカタログ セットに含まれないカタログを返すために使います。

定義

HRESULT _CatalogSets::GetCatalogsNotInCatalogSet(
BSTR CatalogSetID,
_Recordset** unnamed parameter
);

パラメータ

CatalogSetID

[in] カタログ セット ID を含む BSTR です。

unnamed parameter

[out, retval] 返される _Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトには名前のないパラメータが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

unnamed parameter に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

このメソッドが返す Recordset オブジェクトには、CatalogName という 128 文字のフィールドだけが含まれます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::Initialize

このメソッドは、新しい CatalogSet オブジェクトを初期化するために使います。

定義

HRESULT _CatalogSets::Initialize(
BSTR CatalogConnectionString,
BSTR TransactionConfigConnectionString
);

パラメータ

CatalogConnectionString

[in] カタログの接続文字列を含む BSTR です。

TransactionConfigConnectionString

[in] トランザクション構成の接続文字列を含む BSTR です。このパラメータは使われていません。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

注

  • TransactionConfigConnectionString パラメータは必須ですが、使われていません。その文字列の内容は無視されます。このパラメータは、将来の使用のために予約されています。

関連項目

CatalogSets オブジェクト


_CatalogSets::RemoveCatalogFromCatalogSets

このメソッドは、すべてのカタログ セットからカタログを削除するために使います。

定義

HRESULT _CatalogSets::RemoveCatalogFromCatalogSets(
BSTR CatalogName
);

パラメータ

CatalogName

[in] 削除するカタログ名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

カタログを削除する場合は、CatalogManager.DeleteCatalog メソッドまたは ProductCatalog.DeleteCustomCatalog メソッドを呼び出す前、または呼び出した後に、このメソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


_CatalogSets::UpdateCatalogSet

このメソッドは、既存のカタログ セットとその基本的なプロパティを更新するために使います。

定義

HRESULT _CatalogSets::UpdateCatalogSet(
BSTR CatalogSetID,
BSTR CatalogSetName,
BSTR CatalogSetDescription,
VARIANT_BOOL bWildCard,
_Recordset* CatalogNamesRS
);

パラメータ

CatalogSetID

[in] カタログ セット ID (GUID) を含む BSTR です。

CatalogSetName

[in] カタログ セット名を含む BSTR です。入力できる文字数は、最大 128 文字です。

CatalogSetDescription

[in] カタログ セットの説明を含む BSTR です。

bWildCard

[in] 使用するカタログを示す VARIANT_BOOL です。値が True の場合は、すべてのカタログを使うことを示します。値が False の場合は、CatalogNameRS パラメータに指定されたカタログを使うことを示します。

CatalogNamesRS

[in, optional] カタログ名を含む _Recordset オブジェクトへの参照です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogSets オブジェクト


CatalogToVendorAssociation オブジェクト

このオブジェクトは、カタログを製造元に関連付けるために使います。

ProgID: | Commerce.CatalogToVendorAssociation (外部作成可能)
COM クラス名: | CatalogToVendorAssociation
COM インターフェイス名: | _CatalogToVendorAssociation
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Vendor Association Type Library
DLL 名: | CatalogVendorAssociation.dll
スレッド モデル: | アパートメント

C++ で _CatalogToVendorAssociation オブジェクトのプロパティとメソッドにアクセスするには、CatalogToVendorAssociation インターフェイスを使います。

次の表は、CatalogToVendorAssociation オブジェクトのメソッドを示しています。

メソッド | 説明
GetVendorInfoForCatalog | 指定したカタログに関連付けられた製造元に関する情報を返します。
GetVendorList | カタログに関連付けるために利用できる製造元のリストを返します。
Initialize | 適切なデータベースに接続して、CatalogToVendorAssociation オブジェクトを初期化します。
SpecifyVendorForCatalog | 指定した製造元とカタログを関連付けます。
UnspecifyVendorForCatalog | 指定した製造元とカタログとの関連付けを解除します。


_CatalogToVendorAssociation::GetVendorInfoForCatalog

このメソッドは、指定したカタログに関連付けられた製造元に関する情報を取得するために使います。

定義

HRESULT _CatalogToVendorAssociation::GetVendorInfoForCatalog(
BSTR szCatalogID,
_Recordset** rsVendorInfo
);

パラメータ

szCatalogID

[in] 製造元情報が返されるカタログの ID を含む BSTR です。

rsVendorInfo

[out, retval] 要求された製造元情報を含む ADO _Recordset オブジェクトを返すために使うポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

返される ADO Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogToVendorAssociation オブジェクト


_CatalogToVendorAssociation::GetVendorList

このメソッドは、渡された別名修飾子と値に関連付けられ製造元、および入力ドキュメント名に関連付けられた製造元のリストを取得するために使います。

定義

HRESULT _CatalogToVendorAssociation::GetVendorList(
BSTR szSourceAliasQualifier,
BSTR szSourceAliasValue,
BSTR szInputDocumentName,
_Recordset** rsVendorList
);

パラメータ

szSourceAliasQualifier

[in] ソースの別名修飾子を含む BSTR です。

szSourceAliasValue

[in] ソースの別名値を含む BSTR です。

szInputDocumentName

[in] 入力ドキュメント名を含む BSTR です。

rsVendorList

[out, retval] 要求された製造元リストを含む ADO _Recordset オブジェクトを返すために使うポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

返される ADO Recordset オブジェクトに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

注

  • このメソッドを利用できるのは、BizTalk Server がインストールされている場合だけです。このメソッドは、BizTalKDBInternal オブジェクトを必要とします。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogToVendorAssociation オブジェクト


_CatalogToVendorAssociation::Initialize

このメソッドは、CatalogToVendorAssociation オブジェクトを初期化するために使います。

定義

HRESULT _CatalogToVendorAssociation::Initialize(
BSTR vConnectionString
);

パラメータ

vConnectionString

[in] カタログと製造元との関連付けを示すデータベースへの接続文字列を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogToVendorAssociation オブジェクト


_CatalogToVendorAssociation::SpecifyVendorForCatalog

このメソッドは、製造元を特定のカタログに関連付ける場合に使います。

定義

HRESULT _CatalogToVendorAssociation::SpecifyVendorForCatalog(
BSTR szCatalogID,
BSTR szVendorQualifier,
BSTR szVendorQualifierValue,
BSTR szVendorName
);

パラメータ

szCatalogID

[in] 指定した製造元に関連付けられたカタログの識別子を含む BSTR です。

szVendorQualifier

[in] 指定したカタログに関連付けられた製造元の修飾子を含む BSTR です。

szVendorQualifierValue

[in] 指定したカタログに関連付けられた製造元の修飾子の値を含む BSTR です。

szVendorName

[in] 指定したカタログに関連付けられた製造元の名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogToVendorAssociation オブジェクト


_CatalogToVendorAssociation::UnspecifyVendorForCatalog

このメソッドは、以前に関連付けた製造元とカタログとの関連付けを解除するために使います。

定義

HRESULT _CatalogToVendorAssociation::UnspecifyVendorForCatalog(
BSTR szCatalogID
);

パラメータ

szCatalogID

[in] 製造元との関連付けを解除するカタログの識別子を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CatalogToVendorAssociation オブジェクト


Category オブジェクト

このオブジェクトは、カテゴリと商品との関連付けを操作するために使います。カテゴリの親子関係を操作する場合にも、このオブジェクトを使うことができます。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | Category
COM インターフェイス名: | ICategory
インターフェイス ID 定数: | IID_ICategory
ヘッダー ファイル: | Catalog.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

C++ で Category オブジェクトのプロパティとメソッドにアクセスするには、ICategory インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、Category オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AncestorCategories | _Recordset | このカテゴリの上に存在し、また直接間接を問わず、階層内にこのカテゴリを持つカテゴリ名のレコードセットを含みます。 このプロパティは読み取り専用です。
CatalogName | BSTR | この Category オブジェクトがメンバになっているカタログの名前が含まれます。 このプロパティは読み取り専用です。
CategoryName | BSTR | このカテゴリの名前が含まれます。 このプロパティは読み取り専用です。
ChildCategories | _Recordset | このカテゴリの子 Category オブジェクトを保持するレコードセットが含まれます。 このプロパティは読み取り専用です。
DescendantProducts | _Recordset | このカテゴリの下位に存在する商品がすべて含まれます。ルート カテゴリでこのプロパティにアクセスすると、カタログ全体の商品がすべて返されます。 このプロパティは読み取り専用です。
GetCategoryProperties | _Recordset | このカテゴリのプロパティ値を保持するレコードセットが含まれます。 このプロパティは読み取り専用です。
ParentCategories | _Recordset | このカテゴリの親カテゴリである Category オブジェクトの名前を保持するレコードセットが含まれます。 このプロパティは読み取り専用です。
Products | _Recordset | このカテゴリ内に存在して、子孫カテゴリには存在しない商品が含まれます。 このプロパティは読み取り専用です。
RelatedCategories | _Recordset | このカテゴリに関連付けを持っているカテゴリと商品グループをすべて記述するレコードセットが含まれます。 このプロパティは読み取り専用です。
RelatedProducts | _Recordset | このカテゴリに関連付けを持っている商品バリエーションと商品グループをすべて記述するレコードセットが含まれます。 このプロパティは読み取り専用です。

次の表は、Category オブジェクトのメソッドを示しています。

メソッド | 説明
AddChildCategory | 指定した別のカテゴリをこのカテゴリの子として追加します。
AddParentCategory | 指定した別のカテゴリをこのカテゴリの親として追加します。
AddProduct | 指定した別の商品バリエーションをこのカテゴリの子として追加します。
AddRelationshipToCategory | 別のカテゴリからの関連付けをこのカテゴリに追加します。
AddRelationshipToProduct | このカテゴリからの関連付けを、指定した商品に追加します。
RemoveChildCategory | このカテゴリの子として指定したカテゴリを削除します。
RemoveParentCategory | このカテゴリの親として指定したカテゴリを削除します。
RemoveProduct | このカテゴリから商品を削除します。
RemoveRelationshipToCategory | このカテゴリと指定したカテゴリとの関連付けを削除します。
RemoveRelationshipToProduct | このカテゴリと指定した商品との関連付けを削除します。
SetCategoryProperties | 新しいプロパティをカテゴリに割り当てます。

解説

Category オブジェクトは従属オブジェクトです。ICategory インターフェイスへのポインタを取得するには、次のいずれかのメソッドを呼び出します。

  • IProductCatalog::CreateCategory

  • IProductCatalog::GetCategory


ICategory::AddChildCategory

このメソッドは、カテゴリをこのカテゴリの子として追加するために使います。

定義

HRESULT ICategory::AddChildCategory(
BSTR strCategoryName
);

パラメータ

strCategoryName

[in] このカテゴリに子として追加されるカテゴリの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_ALREADY_ADDED | 0x8898002D | 指定したカテゴリは、このカテゴリの子として既に追加されています。
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。
E_CAT_INVALID_CHILDCATEGORY | 0x8898005D | 指定したカテゴリは、このカテゴリの親として既に存在します。
E_CAT_INVALID_RELATION | 0x88980039 | カテゴリは、そのカテゴリ自身の親または子になることはできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::AddParentCategory

ICategory::RemoveChildCategory


ICategory::AddParentCategory

このメソッドは、指定したカテゴリをこのカテゴリの親として追加するために使います。

定義

HRESULT ICategory::AddParentCategory(
BSTR strCategoryName
);

パラメータ

strCategoryName

[in] このカテゴリの親として追加するカテゴリの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_ALREADY_ADDED | 0x8898002D | 指定したカテゴリは、既にこのカテゴリの子になっています。
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。
E_CAT_PARENT_CAT_EXISTS_AS_CHILD | 0x88980052 | 親カテゴリとして指定したカテゴリは、このカテゴリの子カテゴリとして既に存在します。
E_CAT_INVALID_RELATION | 0x88980039 | カテゴリは、そのカテゴリ自身の親または子になることはできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::AddChildCategory

ICategory::RemoveParentCategory


ICategory::AddProduct

このメソッドは、指定したカテゴリをこのカテゴリに追加するために使います。

定義

HRESULT ICategory::AddProduct(
VARIANT varProductID
);

パラメータ

varProductID

[in] 追加する商品の ID を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | 指定した商品はカタログに存在しません。
E_CAT_PRODUCT_ALREADY_ADDED | 0x88980029 | 指定した商品はこのカテゴリに既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

1 つの商品が同時に複数のカテゴリに、際限なく存在する場合があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::RemoveProduct


ICategory::AddRelationshipToCategory

このメソッドは、このカテゴリからの関連付けを、指定した別のカテゴリに追加するために使います。

定義

HRESULT ICategory::AddRelationshipToCategory(
BSTR strRelatedCategoryName,
BSTR strRelationshipName,
VARIANT strRelationshipDescription
);

パラメータ

strRelatedCategoryName

[in] 関連付けの追加先のカテゴリの名前を含む BSTR です。

strRelationshipName

[in] 関連付けの名前を含む BSTR です。

strRelationshipDescription

[in, optional] 関連付けについて説明した文字列サブタイプを含む Variant です (省略可能)。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。
E_CAT_INVALID_RELATION | 0x88980039 | この関連付けは無効です。カテゴリまたは商品を、それ自身に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | 0x88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | 0x88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_RELATIONSHIP_EXISTS | 0x88980033 | 指定した関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

関連付けについて、名前は必ず指定しなければなりませんが、説明は必要に応じて指定します。説明には、カテゴリ間の関連付けの性質を記述する情報 (たとえば "アクセサリ"、"アドオン" など) を含めることができます。関連付けは一方向です。つまり、カテゴリ A からカテゴリ B への関連付けがある場合、逆方向のカテゴリ B からカテゴリ A への関連付けは作成されません。

同じ 2 つのカテゴリ間で複数の関連付けを作成する場合は、それぞれの関連付けには一意の名前を付けなければなりません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::RemoveRelationshipToCategory


ICategory::AddRelationshipToProduct

このメソッドは、指定した商品とこのカテゴリとの関連付けを追加するために使います。この関連付けについて、名前は必ず指定しなければなりませんが、説明は必要に応じて指定します。説明には、カテゴリ間の関連付けの性質を記述する情報 (たとえば "アクセサリ"、"アドオン" など) を含めることができます。

定義

HRESULT ICategory::AddRelationshipToProduct(
VARIANT varRelatedProductID,
BSTR strRelationshipName,
VARIANT strRelationshipDescription
);

パラメータ

varRelatedProductID

[in] 関連付けられた商品の ID を含む Variant です。

strRelationshipName

[in] 関連付けの名前を含む BSTR です。

strRelationshipDescription

[in, optional] 関連付けの説明を含む Variant です (省略可能)。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_INVALID_RELATION | 0x88980039 | この関連付けは無効です。カテゴリまたは商品を、それ自身に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | 0x88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | 0x88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | 指定した商品は存在しません。
E_CAT_RELATIONSHIP_EXISTS | 0x88980033 | 指定した商品との関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドが正常に終了するには、指定した商品が存在していなければなりません。

カテゴリと商品との間に複数の関連付けを作成する場合は、それぞれの関連付けには一意の名前を付けなければなりません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::RemoveRelationshipToProduct


ICategory::get_AncestorCategories

AncestorCategories プロパティは読み取り専用 Recordset オブジェクトで、このカテゴリの上位階層に存在するカテゴリの名前を含んでいます。

定義

HRESULT ICategory::get_AncestorCategories(
_Recordset** AncestorCategories
);

パラメータ

AncestorCategories

[out, retval] 先祖カテゴリを返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AncestorCategories プロパティに有効なデータが含まれるのは、このプロパティへのアクセスが正常に行われた場合だけです。

AncestorCategories プロパティは、Name という 128 文字のフィールドを 1 つだけ持つ Recordset オブジェクトです。

関連項目

Category オブジェクト

ICategory::get_ParentCategories

ICategory::get_ChildCategories


ICategory::get_CatalogName

CatalogName プロパティは読み取り専用文字列で、このカテゴリが存在するカタログの名前を含んでいます。

定義

HRESULT ICategory::get_CatalogName(
BSTR* CatalogName
);

パラメータ

CatalogName

[out, retval] カタログ名を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CatalogName パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

Category オブジェクト


ICategory::get_CategoryName

CategoryName プロパティは読み取り専用文字列で、このカテゴリの名前を含んでいます。

定義

HRESULT ICategory::get_CategoryName(
BSTR* CategoryName
);

パラメータ

CategoryName

[out, retval] カテゴリ名を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CategoryName パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

Category オブジェクト


ICategory::get_ChildCategories

ChildCategories プロパティは読み取り専用 Recordset オブジェクトで、このカテゴリの下位階層に存在するカテゴリの名前を含んでいます。

定義

HRESULT ICategory::get_ChildCategories(
_Recordset** ChildCategories
);

パラメータ

ChildCategories

[out, retval] 子カテゴリを返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ChildCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

ChildCategories レコードセットには、このカテゴリの子カテゴリごとに 1 つの行が含まれています。次の表は、ChildCategories レコードセットのフィールドを示しています。

フィールド | データ型 | 説明
CategoryName | 文字列 (最大 128 文字) | カテゴリの名前
DefinitionName | 文字列 (最大 128 文字) | 定義の名前
CatalogName | 文字列 (最大 128 文字) | カテゴリを含むカタログの名前

このカテゴリに子がない場合、EOF プロパティが VARIANT_TRUE に設定された空のレコードセットが返されます。ユーザーはこのプロパティの値を確認し、子カテゴリが存在するかどうかを判断しなければなりません。

関連項目

Category オブジェクト

ICategory::get_ParentCategories

ICategory::get_AncestorCategories


ICategory::get_DescendantProducts

DescendantProducts プロパティは読み取り専用 Recordset オブジェクトで、このカテゴリの下位に存在するすべての商品を含んでいます。ルート カテゴリでこのプロパティにアクセスすると、カタログ全体の商品がすべて返されます。

定義

HRESULT ICategory::get_DescendantProducts(
VARIANT eClassTypeRequired,
VARIANT lStartingRecord,
VARIANT lRecordsToRetrieve,
VARIANT* plTotalRecordsInQuery,
_Recordset** DescendantProducts
);

パラメータ

eClassTypeRequired

[in, optional] 目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。詳細については、"解説" を参照してください。

lStartingRecord

[in, optional] 開始レコードを含む Variant です。

lRecordsToRetrieve

[in, optional] 取得するレコード数を含む Variant です。

plTotalRecordsInQuery

[out, optional] クエリのレコード総数を返すために使う Variant へのポインタです。

DescendantProducts

[out, retval] 派生商品を返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

DescendantProducts パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このプロパティは、このカテゴリの直下またはそれより下位の商品をすべて取得します。

返されるレコードセットには、CatalogProduct レコードセットのフィールドがすべて含まれています。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::get_RelatedProducts

ICategory::get_Products


ICategory::get_GetCategoryProperties

GetCategoryProperties プロパティは読み取り専用レコードセットで、このカテゴリのプロパティを含んでいます。このカテゴリの定義にあるプロパティ、および組み込み済みのプロパティの両方が返されます。

定義

HRESULT ICategory::get_GetCategoryProperties(
_Recordset** GetCategoryProperties
);

パラメータ

GetCategoryProperties

[out, retval] カテゴリのプロパティを返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | このカテゴリはカタログから削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetCategoryProperties パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、CatalogProduct レコードセットに共通するすべてのフィールドが含まれています。カテゴリの商品定義にあるフィールドもすべて含まれています。ProductID フィールド (一意の商品 ID) は、商品定義に存在しなくても返されます。

返されたレコードセットは更新可能ですが、接続されていません。このカテゴリがデータベースから削除されていると、このプロパティはエラーを返します。

関連項目

Category オブジェクト

ICategory::SetCategoryProperties


ICategory::get_ParentCategories

ParentCategories プロパティは読み取り専用レコードセットで、このカテゴリの親カテゴリの名前を含んでいます。

定義

HRESULT ICategory::get_ParentCategories(
_Recordset** ParentCategories
);

パラメータ

ParentCategories

[out, retval] 親カテゴリを返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ParentCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

ParentCategories には、このカテゴリの親カテゴリのカテゴリ名が含まれています。返されるレコードセットには、Name という 128 文字の文字列の列が 1 つと、存在する親ごとに 1 つの行が含まれています。

このカテゴリがルート カテゴリの場合、親カテゴリは存在しません。また、この場合、EOF プロパティが VARIANT_TRUE に設定された空のレコードセットが返されます。

関連項目

Category オブジェクト

ICategory::get_AncestorCategories

ICategory::get_ChildCategories


ICategory::get_Products

Products プロパティは読み取り専用レコードセットで、このカテゴリに直接存在するすべての商品の商品データを含んでいます。

定義

HRESULT ICategory::get_Products(
VARIANT eClassTypeRequired,
VARIANT strPropertyToSortOn,
VARIANT lStartingRecord,
VARIANT lRecordsToRetrieve,
VARIANT* plTotalRecordsInQuery,
_Recordset** Products
);

パラメータ

eClassTypeRequired

[in, optional] 目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。詳細については、"解説" を参照してください。

strPropertyToSortOn

[in, optional] 並べ替えに使用するプロパティを含む Variant です。

lStartingRecord

[in, optional] 開始レコード番号を含む Variant です。

lRecordsToRetrieve

[in, optional] 取得するレコード数を含む Variant です。

plTotalRecordsInQuery

[out, optional] クエリのレコード総数を返すために使う Variant へのポインタです。

Products

[out, retval] 商品を返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Products パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

strPropertyToSortOn パラメータに指定したプロパティが無効である場合、レコードセットは並べ替えが行われません。

注

  • cscCategoryClass の値を eClassTypeRequired パラメータに指定すると、返されるレコードセットには、このカテゴリのすべての商品とすべての子カテゴリが含まれます。

Products プロパティには、このカテゴリのすべての商品の商品データが含まれています。

返されるレコードセットには、CatalogProduct レコードセットのフィールドがすべて含まれています。

このカテゴリに商品が含まれていない場合、Products プロパティは、EOF プロパティが VARIANT_TRUE に設定された空のレコードセットを返します。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::get_DescendantProducts

ICategory::get_RelatedProducts


ICategory::get_RelatedCategories

RelatedCategories プロパティは読み取り専用レコードセットで、このカテゴリに関連付けられたカテゴリをすべて含んでいます。

定義

HRESULT ICategory::get_RelatedCategories(
_Recordset** RelatedCategories
);

パラメータ

RelatedCategories

[out, retval] 関連付けられたカテゴリを返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RelatedCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

RelatedCategories プロパティには、このカテゴリがほかのカテゴリに対して持っているすべての関連付けの情報が含まれています。返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
CategoryName | 文字列 (最大 128 文字) | カテゴリの名前
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前
RelationshipDescription | 文字列 (最大 256 文字) | 関連付けの説明

関連項目

Category オブジェクト

ICategory::get_AncestorCategories

ICategory::get_ChildCategories

ICategory::get_ParentCategories

ICategory::AddRelationshipToCategory

ICategory::RemoveRelationshipToCategory


ICategory::get_RelatedProducts

RelatedProducts プロパティは読み取り専用レコードセットで、このカテゴリに関連付けられたすべての商品に関する情報を含んでいます。

定義

HRESULT ICategory::get_RelatedProducts(
_Recordset** RelatedProducts
);

パラメータ

RelatedProducts

[out, retval] 関連付けられた商品を返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RelatedProducts パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

次の表は、返されるレコードセットのフィールドを示しています。

フィールド | データ型 | 説明
<定義される ProductID フィールド> | 任意のデータ型 | カタログ作成時に定義される一意の商品 ID
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前
RelationshipDescription | 文字列 (最大 256 文字) | 関連付けの説明

関連項目

Category オブジェクト

ICategory::get_DescendantProducts

ICategory::get_Products

ICategory::AddRelationshipToProduct

ICategory::RemoveRelationshipToProduct


ICategory::RemoveChildCategory

このメソッドは、このカテゴリの子カテゴリを削除するために使います。

定義

HRESULT ICategory::RemoveChildCategory(
BSTR strCategoryName
);

パラメータ

strCategoryName

[in] 削除する子カテゴリの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しないか、またはこのカテゴリの子ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RemoveChildCategory メソッドは、このカテゴリの子カテゴリを削除するために使います。strCategoryName パラメータに指定したカテゴリが存在しない場合、このメソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::AddChildCategory

ICategory::RemoveParentCategory


ICategory::RemoveParentCategory

このメソッドは、このカテゴリの親として指定したカテゴリを削除するために使います。

定義

HRESULT ICategory::RemoveParentCategory(
BSTR strCategoryName
);

パラメータ

strCategoryName

[in] 削除対象となる、このカテゴリの親カテゴリの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しないか、またはこのカテゴリの親ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RemoveParentCategory メソッドは、このカテゴリの親カテゴリを削除するために使います。strCategoryName パラメータに指定したカテゴリが存在しない場合、このメソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::AddParentCategory

ICategory::RemoveChildCategory


ICategory::RemoveProduct

このメソッドは、このカテゴリの商品を削除するために使います。

定義

HRESULT ICategory::RemoveProduct(
VARIANT varProductID
);

パラメータ

varProductID

[in] 商品 ID を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | 指定した商品は存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::AddProduct


ICategory::RemoveRelationshipToCategory

このメソッドは、指定したカテゴリとこのカテゴリとの関連付けを削除するために使います。

定義

HRESULT ICategory::RemoveRelationshipToCategory(
BSTR strRelatedCategoryName,
BSTR strRelationshipName
);

パラメータ

strRelatedCategoryName

[in] 関連付けられたカテゴリの名前を含む BSTR です。

strRelationshipName

[in] 関連付けの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しないか、またはこのカテゴリの親ではありません。
E_CAT_DEFN_NO_RELATIONSHIP_EXISTS | 0x88980045 | 指定した関連付けは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RemoveRelationshipToCategory メソッドは、このカテゴリと strRelatedCategoryName パラメータに指定したカテゴリとの関連付けを削除します。これらの 2 つのカテゴリ間に複数の関連付けが存在する場合があるので、削除する関連付けの名前を strRelationshipName パラメータに指定する必要もあります。strRelatedCategoryName パラメータに指定したカテゴリが存在しない場合、または strRelationshipName パラメータに指定した関連付けが存在しない場合、このメソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト

ICategory::AddRelationshipToCategory

ICategory::RemoveRelationshipToProduct


ICategory::RemoveRelationshipToProduct

このメソッドは、指定した商品とこのカテゴリとの関連付けを削除するために使います。

定義

HRESULT ICategory::RemoveRelationshipToProduct(
VARIANT varRelatedProductID,
BSTR strRelationshipName
);

パラメータ

varRelatedProductID

[in] 関連付けられた商品の ID を含む Variant です。

strRelationshipName

[in] 関連付けの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_DEFN_NO_RELATIONSHIP_EXISTS 0x88980045
            指定した関連付けは存在しません。
    E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | 指定した商品は存在しません。

    グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

    解説

    RemoveRelationshipToProduct メソッドは、このカテゴリと varRelatedProductID パラメータに指定した商品との関連付けを削除します。また、このカテゴリと商品との間に複数の関連付けが存在する場合があるので、削除する関連付けの名前を strRelationshipName パラメータに指定する必要があります。varRelatedProductID パラメータに指定した商品が存在しない場合、または strRelationshipName パラメータに指定した関連付けが存在しない場合、このメソッドは失敗します。

    COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

    関連項目

    Category オブジェクト

    ICategory::AddRelationshipToProduct


ICategory::SetCategoryProperties

このメソッドは、このカテゴリのプロパティに値を設定するために使います。

定義

HRESULT ICategory::SetCategoryProperties(
_Recordset* pRSCategory,
VARIANT fForceUpdate
);

パラメータ

pRSCategory

[in] このカテゴリのプロパティを含む Recordset オブジェクトへの参照です。

fForceUpdate

[in, optional] カテゴリのプロパティを強制的に更新するための Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_CHANGED | 0x88980028 | このカテゴリのプロパティは、前回読み取られた後に変更されています。このエラーが返されるのは、fForceUpdate パラメータが False に設定されている場合だけです。
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | このカテゴリはカタログから削除されています。
E_CAT_INVALIDVALUE_FOR_PROPERTY 0x88980038 このエラーが返されるのは次の場合です。
  • いずれかのプロパティが最小/最大条件を満たしていません。

  • 文字列データまたは列挙データのプロパティが最大長を超えています。

  • 列挙型プロパティの値が定義済みの有効な値のいずれにも当てはまりません。
E_CAT_NULL_PRICE_NOT_ALLOWED | 0x8898003F | pRSCategory レコードセットの OriginalPrice フィールドが空または Null です。カテゴリが価格カテゴリとして使われている場合、このフィールドは必須です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SetCategoryProperties メソッドは、カテゴリのプロパティを変更するために使います。pRSCategory パラメータには、このカテゴリの新しいプロパティ値を記述する Recordset オブジェクトを指定します。GetCategoryProperties メソッドが返す Recordset オブジェクトを使うと、エラー確認のために、そのタイムスタンプを比較することができます。

fForceUpdate パラメータが False に設定されていて、pRSCategory パラメータのプロパティ値が変更されていると、このメソッドは失敗します。

このメソッドは、カタログに組み込まれたフィールドを更新しません。このカテゴリが価格カテゴリとして使われている場合、このメソッドは、このカテゴリを価格カテゴリとして使っているすべての商品の価格を更新します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Category オブジェクト


ContentList オブジェクト

このオブジェクトは、コンテンツ項目の特定コレクションにアクセスするために使います。ContentList オブジェクトは、このオブジェクトに格納されている非公開データ、およびこのオブジェクトを作成した ContentListFactory オブジェクトに格納されている共有データへの集計アクセスを提供します。このオブジェクトは、コンテンツ項目のスコア計算のために、コンテンツ選択フレームワーク (CSF) パイプラインを流れます。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | ContentList
COM インターフェイス名: | IContentList
インターフェイス ID 定数: | IID_IContentList
ヘッダー ファイル: | cacheint.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

C++ では、IContentList および IDataContainer インターフェイスを使って、ContentList オブジェクトのメソッドとプロパティにアクセスします。

次の表は、ContentList オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ActiveRows | IRowCollection | 現在の Threshold プロパティと RowLimit プロパティを満たし、ContentList オブジェクトからフィルタ処理されていない行のコレクション。 このプロパティは読み取り専用です。
AllRows | IRowCollection | この ContentList オブジェクトの行すべてを含む RowCollection オブジェクトを含みます。 このプロパティは読み取り専用です。
Count | long | この ContentList オブジェクトの行数を含みます。 このプロパティは読み取りと書き込みが可能です。
Factory | IContentListFactory | この ContentList オブジェクトを作成した ContentListFactory オブジェクトを含みます。 このプロパティは読み取り専用です。
Fields | Fields | この ContentList オブジェクトの Fields コレクションを含みます。 このプロパティは読み取り専用です。
RowLimit | long | アクティブ行の最大数を含みます。 このプロパティは読み取りと書き込みが可能です。
Sorted | VARIANT_BOOL | 返される ActiveRows コレクション プロパティの行がスコアで並べ替えられるかどうかを制御するフラグを格納します。 このプロパティは読み取りと書き込みが可能です。
Threshold | Float | アクティブ行に必要な Threshold スコアを含みます。 このプロパティは読み取りと書き込みが可能です。
TraceMessages | ISimpleList | ContentList オブジェクトの特定の行に蓄積された TraceMessage 文字列のリストを格納します。 このプロパティは読み取り専用です。
TraceMode | VARIANT_BOOL | TraceMode 値を格納します。値が True の場合はスコア追跡が有効になり、False の場合は無効になります。 このプロパティは読み取りと書き込みが可能です。

次の表は、ContentList オブジェクトのメソッドを示しています。

メソッド | 説明
AdjustScore | 乗数を適用することによって、ContentList オブジェクトの項目に関連付けられたスコアを調整します。
BuildIndex | 指定した列にインデックスを作成します。
Filter | 指定した条件に基づいて、ContentList オブジェクトの項目をフィルタ処理します。
GetData | ContentList オブジェクト内の指定された行と列から、スクリプトを実行せずに高いパフォーマンスで、データを取得します。
GetScore | ContentList オブジェクトの項目のスコアを取得します。
Search | 検索条件に一致するコンテンツ項目のコレクションが含まれる RowCollection オブジェクトを返します。
SetData | ContentList オブジェクトの指定された行と列に、スクリプトを実行せずに高いパフォーマンスで、データを設定します。
SetScore | ContentList オブジェクトの項目のスコアを設定します。

解説

ContentList オブジェクトと ContentListFactory オブジェクトは両方とも、共通インターフェイス IDataContainer を実装しています。したがって、これらのオブジェクトは次のメソッドとプロパティを共有します。それぞれのメソッドとプロパティは、どちらのオブジェクトでも同一の機能を果たします。

プロパティ :

  • AllRows

  • Count

  • Fields

メソッド :

  • BuildIndex

  • GetData

  • Search

  • SetData

ContentList オブジェクトの機能は次のとおりです。

  • ContentList オブジェクトの非公開データと ContentListFactory オブジェクトの共有データを集計します。

  • コンテンツのリストのスコアリング、検索、およびフィルタ処理の機能を提供します。

ContentList オブジェクトは従属オブジェクトです。新しい ContentList オブジェクトを作成して、IContentListFactory::CreateNewContentList メソッドを呼び出すことにより、その IContentList インターフェイスへのポインタを取得します。

重要

  • ContentList オブジェクトと ContentListFactory オブジェクトは、クライアントと共にインプロセスで実行されるように設計されています。GetData メソッドと SetData メソッドは、良好なパフォーマンスを得るため、ダイレクト メモリ アクセスを前提としています。


IContentList::get_ActiveRows

ActiveRows プロパティは、RowCollection オブジェクトを返します。このプロパティは読み取り専用ですが、RowCollection オブジェクトは読み取りと書き込みが可能です。RowCollection オブジェクト内のデータに対して行った変更は、ContentList オブジェクトにも反映されます。

定義

Get メソッド :

HRESULT IContentList::get_ActiveRows(
IRowCollection** ActiveRows
);

パラメータ

ActiveRows

[out,retval] RowCollection オブジェクトの IRowCollection インターフェイスを返すために使われるポインタのアドレスです。これにより、この ContentList オブジェクトのアクティブ項目セットにアクセスできるようになります。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ActiveRows の RowCollection オブジェクトを使うと、Threshold プロパティに含まれる現在のしきい値スコア以上のスコアを持つ ContentList オブジェクトのコンテンツ項目にアクセスできます。Threshold プロパティの値が負の数に設定されている場合、Filter メソッドでフィルタ処理された項目でも ActiveRows コレクションに含まれる可能性があります。フィルタ処理される項目は、スコアがゼロに設定され、負のしきい値より大きいためです。

しきい値より大きいスコアを持つ項目の数とは無関係に、ActiveRows オブジェクトの項目数は RowLimit プロパティによって制限されます。

Sorted プロパティが True に設定されていない場合、ActiveRows コレクションの行の順番は定義されません。

関連項目

ContentList オブジェクト

RowCollection オブジェクト


IContentList::AdjustScore

このメソッドは、乗数を適用することによって、ContentList オブジェクトの項目のスコアを調整するために使います。

定義

HRESULT IContentList::AdjustScore(
long RowNum,
float Multiplier,
BSTR Component,
BSTR Description
);

パラメータ

RowNum

[in] スコアが調整される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

Multiplier

[in] スコアが乗算される値を含む Float です。

Component

[in,optional] スコアを調整するパイプライン コンポーネントの識別子を含む BSTR です。規則により、これはパイプライン コンポーネントのプログラム識別子 (ProgID) になります。

説明

[in,optional] スコア調整追跡文字列に追加される説明を含む BSTR です。この文字列に、どのような調整を行うかを簡単に記述します。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Component パラメータと Description パラメータは省略可能です。TraceMode プロパティが True に設定されていない場合、これらのパラメータは無視されます。

このメソッドは、ContentList オブジェクトに CLCOL_SCORE_COLUMN フラグを設定した CLCOL_R4 型の列があることを前提としています。

関連項目

ContentList オブジェクト


IContentList::get_AllRows

AllRows プロパティは、新しい RowCollection オブジェクトを返します。このオブジェクトを使うと、ContentList オブジェクトの項目のほか、集計によって ContentListFactory オブジェクトの項目にもアクセスもできます。AllRows プロパティは読み取り専用ですが、RowCollection オブジェクトは読み取りと書き込みが可能です。RowCollection オブジェクトのデータに対して行った変更は、ContentList オブジェクトに反映されます。

定義

Get メソッド :

HRESULT IContentList::get_AllRows(
IRowCollection** AllRows
);

パラメータ

AllRows

[out,retval] この ContentList オブジェクト内のすべての項目を含む RowCollection オブジェクトの IRowCollection インターフェイスを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentList オブジェクト


IContentList::BuildIndex

このメソッドは、ContentList オブジェクトの特定の列にインデックスを作成するために使います。

定義

HRESULT IContentList::BuildIndex(
VARIANT vCol
);

パラメータ

vCol

[in] インデックスを作成する列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

S_FALSE

その列にはインデックスが既に存在します。

解説

インデックスを作成できる列は、非公開列以外の読み取り専用の列で、データ型が、文字列型、Integer 型、あるいは文字列または Integer の配列型の列です。(CLCOL_READONLY が設定されていて、CLCOL_PRIVATE が設定されていない列)。また、CLCOL_I2、CLCOL_I4、CLCOL_STRING、および CLCOL_VARIANTARRAY 型の列に対してのみ、インデックスを付けることができます。非公開以外の列に制限されるので、その列は、対応する ContentListFactory オブジェクトに実際に存在することになります。

インデックスがまだ存在していない列で検索を実行すると、インデックスが自動的に作成されます。つまり、BuildIndex メソッドを呼び出す必要はまったくありませんが、パフォーマンスへの影響を避けるためには、一定の時間を費やして手動でインデックスを作成します。

このメソッドは、ContentListFactory オブジェクトにある同じ名前のメソッドと機能的に同一です。

関連項目

ContentList オブジェクト


IContentList::get_Count/put_Count

Count プロパティ は読み取りと書き込みが可能な数値で、ContentList オブジェクトの項目数を取得または設定します。

定義

Get メソッド :

HRESULT IContentList::get_Count(
long* Count
);

Put メソッド :

HRESULT IContentList::put_Count(
long Count
);

パラメータ

Count

[in] プロパティを入力する場合は、項目数を含む long です。
[out,retval] プロパティを取得する場合は、項目数を返すために使う long へのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

通常、Count プロパティは、ContentList オブジェクトが ContentListFactory オブジェクトによって作成される時点で、既に確定しています。このプロパティは、コンテンツ項目をまだ 1 つも格納していない ContentListFactory オブジェクトによって作成された ContentList オブジェクトの場合だけは設定することができます。また、Count プロパティは、現在の設定より小さい数値に設定することはできません。

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentList オブジェクト


IContentList::get_Factory

Factory プロパティは、この ContentList オブジェクトを作成した ContentListFactory オブジェクトの IContentListFactory インターフェイスへの読み取り専用ポインタです。

定義

Get メソッド :

HRESULT IContentList::get_Factory(
IContentListFactory** Factory
);

パラメータ

Factory

[out,retval] この ContentList オブジェクトを作成した ContentListFactory オブジェクトの IContentListFactory インターフェイスを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ContentList オブジェクト


IContentList::get_Fields

Fields プロパティは新しい Fields オブジェクトを作成します。このオブジェクトを使うと、指定したコンテンツ項目のフィールドにアクセスできます。Fields プロパティは読み取り専用ですが、Fields オブジェクトは、このオブジェクトによる変更を ContentList オブジェクトに反映させるため、読み取りと書き込みが可能です。

定義

Get メソッド :

HRESULT IContentList::get_Fields(
long RowNum,
Fields** Fields
);

パラメータ

RowNum

[in] Fields オブジェクトが返される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

Fields

[out,retval] ContentList オブジェクトの指定の行に Fields オブジェクトを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Fields オブジェクトは、ActiveX Data Objects (ADO) Fields オブジェクトと同じインターフェイスを公開しています。

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentList オブジェクト


IContentList::Filter

このメソッドは、ContentList オブジェクトの項目をフィルタ処理するために使います。フィルタを通過しない項目は、スコアが 0 に設定されます。

定義

HRESULT IContentList::Filter(
VARIANT vColumn,
VARIANT vFilterCriteria,
FilterActionEnum FilterAction,
BSTR Component
);

パラメータ

vColumn

[in] フィルタ処理対象の列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

vFilterCriteria

[in] フィルタ条件を含む Variant です。条件は、単一の BSTR、BSTR の SAFEARRAY、または Integer です。

FilterAction

[in] 列挙値です。有効な値は、FILTER_REQUIRE と FILTER_EXCLUDE です。これら 2 つのアクションの結果の詳細については、"解説" を参照してください。

Component

[in,optional] フィルタ処理を行うパイプライン コンポーネントの名前を示すための BSTR です。このパラメータは省略可能で、スコア追跡に使います。追跡メッセージは、フィルタ処理されたコンテンツ項目に対して生成されます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ContentList オブジェクトの項目が条件に一致するのは、指定した列の値が vFilterCriteria parameter パラメータで渡した文字列または数値と正確に一致する場合です。vFilterCriteria パラメータが文字列の配列である場合は、その配列の文字列のいづれかに一致すると、条件に一致したと見なされます。FilterAction パラメータが FILTER_REQUIRE に設定されている場合、一致しない項目はスコアが 0 に設定されます。FilterAction パラメータが FILTER_EXCLUDE に設定されている場合、一致する項目はスコアが 0 に設定されます。

Commerce Server 2000 に用意されているパイプライン コンポーネントは、統一性を保持するために、そのコンポーネントのプログラム ID (ProgID) を Component パラメータに渡します。

関連項目

ContentList オブジェクト


IContentList::GetData

これは、スクリプト インターフェイスをサポートしていない 2 つの ContentList メソッドうちの 1 つです。もう 1 つのメソッドは SetData です。これらのメソッドは、C++ のみでの使用を想定しています。

定義

HRESULT IContentList::GetData(
long iRow,
long iCol,
BYTE* pData
);

パラメータ

iRow

[in] データの読み取り元の行の位置を含む long です。行位置は、1 からではなく、0 からカウントされます。

iCol

[in] データの読み取り元の指定行内にある列の位置を含む long です。列位置は、1 からではなく、0 からカウントされます。

pData

[out] データの書き込み先へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetData メソッドは、型の確認を行いません。pData パラメータによって指定されるメモリは、読み取られる値を受け取るのに十分な大きさでなければなりません。割り当てられたメモリが小さすぎると、メモリ破損が発生します。

ContentList オブジェクトのデータには、そのデータ型によって、値で格納されるデータと参照で格納されるデータがあります。したがって、GetData メソッドと SetData メソッドをどのように使うかは、扱うデータ型によって判断します。

ある文字列へのポインタを SetData メソッドに渡すと、SetData メソッドはその文字列を ContentList オブジェクトに格納します。ポインタは格納しません。GetData メソッドは、ContentList オブジェクトに格納されたその文字列へのポインタを返します。文字列は返しません。有効期間を過ぎた ContentList オブジェクトには、文字列への参照は保持しないでください。オブジェクトを破棄すると、参照が無効になるためです。ContentList オブジェクトには、ワイド文字の Unicode 文字列だけが格納されます。ANSI 文字列はサポートしていません。

あるオブジェクトへのインターフェイス ポインタを SetData メソッドに渡すと、SetData メソッドはそのインターフェイス ポインタで AddRef メソッドを呼び出して、ContentList オブジェクトにそのポインタを格納します。GetData メソッドはこのポインタを返した後、このポインタで AddRef メソッドを呼び出します。呼び出し元は、GetData メソッドによって返されたポインタで Release を呼び出す必要があります。

ある SafeArray へのポインタを SetData メソッドに渡すと、SetData メソッドはその SafeArray をロックして、その SafeArray への参照を ContentList オブジェクトに格納します。GetData メソッドは、ロックされたその配列への参照を返します。呼び出し元は、その配列のロックを解除してはいけません。ロックを解除すると、ContentList オブジェクトに格納された参照が無効になる可能性があります。配列は、VT_ARRAY または VT_VARIANT 型のバリアントに格納するのが安全です。このようにすると、::VariantClear を呼び出しても、 SafeArray はロックされているため開放されません。ContentList オブジェクトを破棄しようとすると、SafeArray のロックが解除され、SafeArrayDestroy が呼び出されます。SafeArrays は参照カウントに類似したロック カウントを持っていて、このロック カウントがゼロでなければ、配列データは開放されません。

サポートされるそのほかのデータ型については、GetData による読み取りおよび SetData による格納はすべて値で行われます。

このメソッドは、ContentListFactory オブジェクトにある同じ名前のメソッドと機能的に同一です。

関連項目

ContentList オブジェクト


IContentList::GetScore

このメソッドは、ContentList オブジェクトの項目のスコアを取得するために使います。

定義

HRESULT IContentList::GetScore(
long RowNum,
float* Score
);

パラメータ

RowNum

[in] スコアが返される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

Score

[out,retval] 指定した項目のスコアを返すために使われる Float へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ContentList オブジェクト


IContentList::get_RowLimit/put_RowLimit

RowLimit プロパティは読み取りと書き込みが可能な数値で、オブジェクトが ActiveRows プロパティに選択する最大項目数を指定します。

定義

Get メソッド :

HRESULT IContentList::get_RowLimit(
long* RowLimit
);

Put メソッド :

HRESULT IContentList::put_RowLimit(
long RowLimit
);

パラメータ

RowLimit

[in] プロパティを入力する場合は、行制限を指定する long です。
[out,retval] プロパティを取得する場合は、行制限を返すために使う long へのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ContentList オブジェクト

IContentList::get_ActiveRows


IContentList::Search

このメソッドは、RowCollection オブジェクトを作成するために使います。このオブジェクトを使うと、指定した条件に一致する ContentList オブジェクトの各項目にアクセスできます。

定義

HRESULT IContentList::Search(
VARIANT vCol,
VARIANT vSearchCriteria,
IRowCollection** ppIRowCollection
);

パラメータ

vCol

[in] 検索対象の列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

vSearchCriteria

[in] フィルタ条件を含む Variant です。通常、条件は、BSTR、BSTR の配列、または Integer です。Search メソッドは、データ型を検索する列の型に強制的に変更しようとします。

ppIRowCollection

[out,retval] 新しい RowCollection オブジェクトの IRowCollection インターフェイス ポインタを取得するためのアドレスへのポインタです。このオブジェクトを使うと、検索条件に一致する行にアクセスできます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

ContentList オブジェクトには、フィルタ条件に一致する行がありませんでした。その結果、返された RowCollection が空になっています。

解説

インデックス作成と検索のために、列は、共有にして (非公開ではなく)、読み取り専用とする必要があります。また、列のデータ型は、文字列、Integer (long または short) 、または検索可能な Variant 配列にする必要があります。検索条件は、検索する列の型に強制的に型変換できるなら Variant でも可能です。

検索条件がバリアントの配列である場合、返される行のセットには、検索条件の配列要素に一致する行がすべて含まれています。これは、一致する行の和集合です。

このプロパティは、ContentListFactory オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentList オブジェクト


IContentList::SetData

これは、スクリプト インターフェイスをサポートしていない 2 つの ContentList メソッドうちの 1 つです。もう 1 つのメソッドは GetData です。これらのメソッドは、C++ のみでの使用を想定しています。

定義

HRESULT IContentList::SetData(
long iRow,
long iCol,
BYTE* pData
);

パラメータ

iRow

[in] データの書き込み先の行の位置を含む long です。行位置は、1 からではなく、0 からカウントされます。

iCol

[in] データの書き込み先の指定行内にある列の位置を含む long です。列位置は、1 からではなく、0 からカウントされます。

pData

[in] ContentList オブジェクトに書き込むデータへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SetData メソッドは、書き込むデータに対して型の確認を行いません。pData パラメータでポイントされるデータは、列の正しい型でなければなりません。型 (特にサイズ) の不一致によってメモリの混乱は発生しませんが (これは、GetData メソッドでは発生する可能性があります)、一部のデータが ContentList オブジェクトに書き込まれないことがあります。

ContentList オブジェクトのデータには、そのデータ型によって、値で格納されるデータと参照で格納されるデータがあります。したがって、GetData メソッドと SetData メソッドをどのように使うかは、扱うデータ型によって判断します。

ある文字列へのポインタを SetData メソッドに渡すと、SetData メソッドはその文字列を ContentList オブジェクトに格納します。ポインタは格納しません。GetData メソッドは、ContentList オブジェクトに格納されたその文字列へのポインタを返します。文字列は返しません。有効期間を過ぎた ContentList オブジェクトには、文字列への参照は保持しないでください。オブジェクトを破棄すると、参照が無効になるためです。ContentList オブジェクトには、ワイド文字の Unicode 文字列だけが格納されます。ANSI 文字列はサポートしていません。

あるオブジェクトへのインターフェイス ポインタを SetData メソッドに渡すと、SetData メソッドはそのインターフェイス ポインタで AddRef メソッドを呼び出して、ContentList オブジェクトにそのポインタを格納します。GetData メソッドはこのポインタを返した後、このポインタで AddRef メソッドを呼び出します。呼び出し元は、GetData メソッドによって返されたポインタで Release を呼び出す必要があります。

ある SafeArray へのポインタを SetData メソッドに渡すと、SetData メソッドはその SafeArray をロックして、その SafeArray への参照を ContentList オブジェクトに格納します。GetData メソッドは、ロックされたその配列への参照を返します。呼び出し元は、その配列のロックを解除してはいけません。ロックを解除すると、ContentList オブジェクトに格納された参照が無効になる可能性があります。配列は、VT_ARRAY または VT_VARIANT 型の Variant に格納するのが安全です。このようにすると、::VariantClear を呼び出しても、 SafeArray はロックされているため開放されません。ContentList オブジェクトを破棄しようとすると、SafeArray のロックが解除され、SafeArrayDestroy が呼び出されます。SafeArrays は参照カウントに類似したロック カウントを持っていて、このロック カウントがゼロでなければ、配列データは開放されません。

サポートされるそのほかのデータ型については、GetData による読み取りおよび SetData による格納はすべて値で行われます。

ContentList オブジェクトに格納するには、オブジェクトを "both threaded" として、Free Threaded Marshaller オブジェクトに集約する必要があります。この制限を無視すると、マーシャンリング エラーが発生します。

このメソッドは、ContentListFactory オブジェクトにある同じ名前のメソッドと機能的に同一です。

注意

  • ContentList オブジェクトは同期化もロックも実行しないため、マルチスレッド化されたシナリオで文字列、配列、またはオブジェクト値を記述するときは注意してください。リソース リークの原因となる競合が存在する可能性があります。

関連項目

ContentList オブジェクト


IContentList::SetScore

このメソッドは、ContentList オブジェクトの項目に新しいスコアを設定するために使います。

定義

HRESULT IContentList::SetScore(
long RowNum,
float Score,
BSTR Component,
BSTR Description
);

パラメータ

RowNum

[in] 新しいスコアが設定される ContentList オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

Score

[in] 新しいスコアを含む Float です。

Component

[in,optional] 新しいスコアを設定するパイプライン コンポーネントの名前を示すための BSTR です。このパラメータは省略可能で、スコア追跡に使います。

Description

[in,optional] たとえば、表示頻度など、スコアが設定される理由を示すための BSTR です。このパラメータは省略可能で、スコア追跡に使います。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Component パラメータと Description パラメータは省略可能です。

このメソッドは、ContentList オブジェクトに CLCOL_SCORE_COLUMN フラグを設定した CLCOL_R4 型の列があることを前提としています。

Commerce Server 2000 に用意されているパイプライン コンポーネントは、統一性を保持するために、そのコンポーネントのプログラム ID (ProgID) を Component パラメータに渡します。

関連項目

ContentList オブジェクト


IContentList::get_Sorted/put_Sorted

Sorted プロパティは読み取りと書き込みが可能な Boolean で、ContentList オブジェクトの ActiveRows プロパティで返される項目の列挙がスコアの降順に並べ替えられるかどうかを決定します。

定義

Get メソッド :

HRESULT IContentList::get_Sorted(
VARIANT_BOOL* Sorted
);

Put メソッド :

HRESULT IContentList::put_Sorted(
VARIANT_BOOL Sorted
);

パラメータ

Sorted

[in] プロパティを入力する場合は、ActiveRows プロパティをソート順に返すかどうかを指定する VARIANT_BOOL です。
[out,retval] プロパティを取得する場合は、Sorted プロパティの値を返すために使われる VARIANT_BOOL へのポインタです。このプロパティの効果については、"解説" を参照してください。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

値が True の場合、ContentList オブジェクトの ActiveRows プロパティで返される項目の列挙がスコアの降順に並べ替えられることを示します。値が False の場合は、並べ替えが行われないことを示します。リスト内の項目の位置が実際に変わるわけではありません。つまり、項目を識別する序数が変わることはありません。値を True に設定したときに影響を受けるのは、ActiveRows プロパティで返される項目の列挙だけです。後続の列挙については、このプロパティを再度 True に設定しなければ、並べ替えは行われません。

関連項目

ContentList オブジェクト


IContentList::get_Threshold/put_Threshold

Threshold プロパティは読み取りと書き込みが可能な単精度小数点値です。この数値には、スコアしきい値が含まれます。このスコアしきい値以上でない項目は、ActiveRows コレクション プロパティに含めることができません。

定義

Get メソッド :

HRESULT IContentList::get_Threshold(
float* Threshold
);

Put メソッド :

HRESULT IContentList::put_Threshold(
float Threshold
);

パラメータ

Threshold

[in] プロパティを入力する場合は、新しいしきい値スコアを含む Float です。
[out,retval] プロパティを取得する場合は、しきい値スコアを返すために使われる Float へのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ContentList オブジェクト


IContentList::get_TraceMessages

TraceMessages プロパティは SimpleList オブジェクトで、ContentList オブジェクト内の特定の項目に蓄積された追跡文字列のリストを含んでいます。TraceMessages プロパティは読み取り専用ですが、SimpleList オブジェクトは読み取りと書き込みが可能です。

定義

Get メソッド :

HRESULT IContentList::get_TraceMessages(
long RowNum,
ISimpleList** TraceMessages
);

パラメータ

RowNum

[in] 追跡メッセージが返される行の位置を含む long です。行位置は、1 からではなく、0 から始まります。

TraceMessages

[out,retval] 追跡メッセージを含む SimpleList オブジェクトの ISimpleList インターフェイスを返すために使われるポインタのアドレスです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

TraceMode プロパティは、スコア追跡を実行するかどうかを制御するグローバル スイッチとして機能します。このプロパティを True に設定すると、スコア追跡が実行されます。False に設定すると、スコア追跡が抑制されます。

スコア追跡を使うと、パフォーマンスが著しく低下します。そのため、普段は、スコア追跡を実行しないでください。しかし、スコア追跡は、スコアリングに関する問題のトラブルシューティングを行う場合に役立ちます。

TraceMode プロパティを False に設定した場合、または項目に対するスコアの変更を行っていない場合、リストは空になります。

リストの各項目の文字列は、次の形式になります。

<component>,<operator><number>,<description>

文字列の各フィールドの定義は次のとおりです。

component

スコアの変更を行うコンポーネントの識別子で、AdjustScore、SetScore、および Filter メソッドに渡されます。

operator

= は、SetScore メソッドまたは Filter メソッドによってスコアが絶対値に設定された場合に使われます。* は、AdjustScore メソッドによって乗数がスコアに適用された場合に使われます。

number

Filter メソッドまたは AdjustScore メソッドによる調整後に、SetScore メソッドから返されるスコアです。

description

スコアが変更された理由です。AdjustScore メソッドまたは SetScore メソッドに渡され、Filter メソッドによって設定されます。

次に、スコア追跡の例を示します。

"Commerce.AdNod,=0.9875,Need of Delivery".

関連項目

ContentList オブジェクト


IContentList::get_TraceMode/put_TraceMode

TraceMode プロパティは読み取りと書き込みが可能な Boolean で、スコア追跡を有効にするか、または抑制するかを制御します。

定義

Get メソッド :

HRESULT IContentList::get_TraceMode(
VARIANT_BOOL* TraceMode
);

Put メソッド :

HRESULT IContentList::put_TraceMode(
VARIANT_BOOL TraceMode
);

パラメータ

TraceMode

[out,retval] プロパティを取得する場合は、現在の追跡モード設定を返すために使われる VARIANT_BOOL へのポインタです。値が True の場合、スコア追跡が有効になります。値が False の場合、スコア追跡が抑制されます。
[in] プロパティを入力する場合は、新しい追跡モード設定を含む VARIANT_BOOL です。値が True の場合、スコア追跡が有効になります。値が False の場合、スコア追跡が抑制されます。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、スコア追跡を実行するかどうかを制御するグローバル スイッチとして機能します。値を True に設定すると、追跡メッセージの SimpleList オブジェクトが構築され、TraceMessages プロパティを使ってアクセスすることができます。False に設定すると、スコア追跡が抑制されます。

スコア追跡を使うと、パフォーマンスが著しく低下します。そのため、普段は、スコア追跡を実行しないでください。しかし、スコア追跡は、スコアリングに関する問題のトラブルシューティングを行う場合に役立ちます。

関連項目

ContentList オブジェクト


ContentListFactory オブジェクト

このメソッドは、コンテンツ選択パイプライン (CSP) が Web ページに表示するコンテンツ項目を選択する際に、互いに競合するコンテンツ項目のリストを効率よく保守するために使います。

ProgID: | Commerce.ContentListFactory (外部作成可能)
COM クラス名: | ContentListFactory
COM インターフェイス名: | IContentListFactory
インターフェイス ID 定数: | IID_IContentListFactory
ヘッダー ファイル: | cacheint.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、ContentListFactory オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AllRows | IRowCollection | ContentListFactory オブジェクトのすべての行のコレクションです。 このプロパティは読み取り専用です。
Count | long | ContentListFactory オブジェクトの行数です。 このプロパティは読み取りと書き込みが可能です。
Fields | Fields | ContentListFactory オブジェクトの特定の行の Fields コレクションです。 このプロパティは読み取り専用です。
Schema | IContentListSchema | この ContentListFactory オブジェクトで使われている ContentListSchema オブジェクトへの参照を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、ContentListFactory オブジェクトのメソッドを示しています。

メソッド | 説明
BuildIndex | 指定した列にインデックスを作成します。
ConstructFromRecordset | ContentListFactory オブジェクトを初期化し、ADO Recordset オブジェクトを基に新しい ContentListSchema オブジェクトを作成して初期化します。ContentListFactory オブジェクトには、Recordset オブジェクトからのデータが格納されます。
CreateNewContentList | この ContentListFactory オブジェクトで使われているスキーマに基づいて、新しい ContentList オブジェクトを作成します。新しい ContentList オブジェクトは、作成元の ContentListFactory オブジェクトの共有データにアクセスできます。
GetData | ContentListFactory オブジェクト内の指定された行と列から、スクリプトを実行せずに高いパフォーマンスで、データを取得します。
Search | 検索条件に一致するコンテンツ項目のコレクションが含まれる RowCollection オブジェクトを返します。
SetData | ContentListFactory オブジェクトの指定された行と列に、スクリプトを実行せずに高いパフォーマンスで、データを設定します。

解説

重要

  • ContentList オブジェクトと ContentListFactory オブジェクトは、クライアントと共にインプロセスで実行できるように設計されています。GetData メソッドと SetData メソッドは、良好なパフォーマンスを得るため、ダイレクト メモリ アクセスを前提としています。

ContentList オブジェクトと ContentListFactory オブジェクトは両方とも、共通インターフェイス IDataContainer を実装しています。したがって、これらのオブジェクトは次のメソッドとプロパティを共有します。それぞれのメソッドとプロパティは、どちらのオブジェクトでも同一の機能を果たします。

プロパティ :

  • AllRows

  • Count

  • Fields

メソッド :

  • BuildIndex

  • GetData

  • Search

  • SetData


IContentListFactory::get_AllRows

AllRows プロパティは、新しい RowCollection オブジェクトを返します。このオブジェクトを使うと、ContentListFactory オブジェクトの項目にアクセスできます。AllRows プロパティは読み取り専用ですが、RowCollection オブジェクトは、このオブジェクトによる変更を ContentListFactory オブジェクトに反映させるため、読み取りと書き込みが可能です。

定義

Get メソッド :

HRESULT IContentListFactory::get_AllRows(
IRowCollection** AllRows
);

パラメータ

AllRows

[out,retval] この ContentListFactory オブジェクト内のすべての項目を含む RowCollection オブジェクトの IRowCollection インターフェイスを返すために使われるポインタのアドレスです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、ContentList オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentListFactory オブジェクト

RowCollection オブジェクト


IContentListFactory::BuildIndex

このメソッドは、ContentListFactory オブジェクトの特定の列にインデックスを作成するために使います。

定義

HRESULT IContentListFactory::BuildIndex(
VARIANT vCol
);

パラメータ

vCol

[in] インデックスを作成する列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

S_FALSE

その列にはインデックスが既に存在します。

解説

インデックスを作成できる列は、非公開列以外の読み取り専用の列で、データ型が、文字列型、Integer 型、あるいは文字列または Integer の配列型の列です。(CLCOL_READONLY が設定されていて、CLCOL_PRIVATE が設定されていない列)。また、CLCOL_I2、CLCOL_I4、CLCOL_STRING、および CLCOL_VARIANTARRAY 型の列に対してのみ、インデックスを付けることができます。

インデックスがまだ存在していない列で検索を実行すると、インデックスが自動的に作成されます。つまり、BuildIndex メソッドを呼び出す必要はまったくありませんが、パフォーマンスへの影響を避けるためには、一定の時間を費やして手動でインデックスを作成します。

このメソッドは、ContentList オブジェクトにある同じ名前のメソッドと機能的に同一です。

関連項目

ContentListFactory オブジェクト


IContentListFactory::ConstructFromRecordset

このメソッドは、新しい ContentListFactory オブジェクトを初期化したり、ADO Recordset オブジェクトを基に新しい ContentListSchema オブジェクトを作成して初期化するために使います。

定義

HRESULT IContentListFactory::ConstructFromRecordset(
_Recordset* Recordset,
VARIANT Skip,
IContentListSchema* Add
);

パラメータ

Recordset

[in] ContentList オブジェクトが構成される ADO Recordset オブジェクトへのポインタです。

Skip

[in,optional] SimpleList オブジェクトである Variant です。SimpleList オブジェクトには、Recordset オブジェクトに存在するフィールドのうち、新しい ContentList オブジェクトに列を持たないフィールドの名前が含まれています。

Add

[in,optional] 追加の列、または新しい ContentList オブジェクトの作成時に考慮する必要がある既存の列を示す新しいフラグに関する情報を含む ContentListSchema オブジェクトの IContentListSchema インターフェイスへのポインタです。追加情報については、"解説" を参照してください。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Skip パラメータと Add パラメータは、いずれも省略可能です。

ContentListSchema オブジェクトに定義されていて、Recordset オブジェクトに存在しない列は、ContentListFactory オブジェクトの新しいスキーマに追加されます。ContentListSchema オブジェクトと Recordset オブジェクトの両方に定義したスキーマ列には、ContentListSchema オブジェクトから取得したフラグ設定が適用され、既定のフラグ設定よりも優先されます。それ以外のスキーマ列には、既定のフラグ設定が適用されます。そのほかの列は、共有または非公開のいずれかになります。この場合、共有列のデータは、SetData メソッドを使って初期化する必要があります。また、非公開列のデータは、対応する ContentList オブジェクトが作成されるまでは利用できません。

Recordset オブジェクトのフィールドを基に作成された列の dwFlags の既定値は、CLCOL_READONLY です。

ContentListFactory オブジェクトは、領域の割り当てが必要なデータの行数を確認するために、Recordset オブジェクトの RecordCount プロパティにアクセスしようとします。すべての Recordset オブジェクトが、この処理をサポートしているとは限りません。RecordCount プロパティを確認できない場合、ContentListFactory オブジェクトは、ファクトリを 100 行のチャンクに拡張します。このため、RecordCount プロパティが定義されている Recordset オブジェクトを渡すのが最も効率的です。

列の型は、次の表に従って Recordset オブジェクトからマップされます。

ADO の型 | ContentList の型
adSmallInt、adUnsignedSmallInt | CLCOL_I2
adInteger、adUnsignedInt、adError | CLCOL_I4
adSingle | CLCOL_I4
adDouble | CLCOL_R8
adDBDate、adDBTime、adDBTimeStamp | CLCOL_DATE
adChar、adVarChar、adLongVarChar、adWChar、adVarWChar、adLongVarWChar | CLCOL_STRING
adChapter*、adDispatch | CLCOL_DISPATCH
adChapter | CLCOL_UNKNOWN
adBoolean | CLCOL_BOOL

注

  • * 1 レベルの階層型 Recordset オブジェクトをサポートしています。子 Recordset オブジェクトが、Dictionary オブジェクトの SimpleList として ContentList オブジェクトに作成されます。

関連項目

ContentListFactory オブジェクト


IContentListFactory::get_Count/put_Count

Count プロパティ は読み取りと書き込みが可能な数値で、ContentListFactory オブジェクトのコンテンツ項目数を取得または設定します。

定義

Get メソッド :

HRESULT IContentListFactory::get_Count(
long* Count
);

Put メソッド :

HRESULT IContentListFactory::put_Count(
long Count
);

パラメータ

Count

[in] プロパティを入力する場合は、項目数を含む long です。
[out,retval] プロパティを取得する場合は、項目数を返すために使う long へのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ContentList オブジェクトが ContentListFactory オブジェクトによって作成された後は、Count プロパティの変更はできません。また、Count プロパティには、現在の設定よりも小さい数値を設定することはできません。

このプロパティは、ContentList オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentListFactory オブジェクト


IContentListFactory::CreateNewContentList

このメソッドは、この ContentListFactory オブジェクトに設定されたスキーマに基づいて、新しい ContentList オブジェクトを作成するために使います。新しく作成された ContentList オブジェクトは、このオブジェクトに格納されている非公開データ、およびこのオブジェクトを作成した ContentListFactory オブジェクトに格納されている共有データへの統一インターフェイスを提供します。

定義

HRESULT IContentListFactory::CreateNewContentList(
IContentList** NewList
);

パラメータ

NewList

[out,retval] 新しい ContentList オブジェクトを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

新しい ContentList オブジェクトは、この ContentListFactory オブジェクトに設定されたスキーマに基づいて作成されます。スキーマで CLCOL_PRIVATE として指定した列の記憶領域は、ContentList オブジェクトに割り当てられます。ContentList オブジェクトは、作成元のファクトリに戻るポインタを保持します。このファクトリが、"共有" 列の記憶領域が保持されている場所です。

ContentList オブジェクトは、ContentListFactory オブジェクトから独立して存在することはできません。

このメソッドを呼び出すための唯一の前提条件は、スキーマの設定が完了していることです。スキーマを設定するには、Schema プロパティを設定するか、ConstructFromRecordset メソッドを呼び出します。

関連項目

ContentListFactory オブジェクト


IContentListFactory::get_Fields

Fields プロパティは新しい Fields オブジェクトを作成します。このオブジェクトを使うと、指定したコンテンツ項目のフィールドにアクセスできます。Fields プロパティは読み取り専用ですが、Fields オブジェクトは、このオブジェクトによる変更を ContentListFactory オブジェクトに反映させるため、読み取りと書き込みが可能です。

定義

Get メソッド :

HRESULT IContentListFactory::get_Fields(
long RowNum,
Fields** Fields
);

パラメータ

RowNum

[in] Fields オブジェクトが返される ContentListFactory オブジェクト内の項目の位置を含む long です。位置は、1 からではなく、0 からカウントされます。

Fields

[out,retval] ContentListFactory オブジェクトの指定の行に Fields オブジェクトを返すために使われるポインタのアドレスです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Fields オブジェクトは、ADO Fields オブジェクトと同じインターフェイスを公開しています。

このプロパティは、ContentList オブジェクトにある同じ名前のプロパティと機能的に同一です。

関連項目

ContentListFactory オブジェクト


IContentListFactory::GetData

このメソッドは、ContentListFactory オブジェクトの特定の行と列からデータを読み取るために使います。

これは、スクリプト インターフェイスをサポートしていない 2 つの ContentListFactory メソッドうちの 1 つです。もう 1 つのメソッドは SetData です。これらのメソッドは、C++ のみでの使用を想定しています。

定義

HRESULT IContentListFactory::GetData(
long iRow,
long iCol,
BYTE* pData
);

パラメータ

iRow

[in] データの読み取り元の行の位置を含む long です。行位置は、1 からではなく、0 からカウントされます。

iCol

[in] データの読み取り元の指定行内にある列の位置を含む long です。列位置は、1 からではなく、0 からカウントされます。

pData

[out] データの書き込み先へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetData メソッドは、型の確認を行いません。pData パラメータによって指定されるメモリは、読み取られる値を受け取るのに十分な大きさでなければなりません。割り当てられたメモリが小さすぎると、メモリ破損が発生します。

ContentListFactory オブジェクトのデータには、そのデータ型によって、値で格納されるデータと参照で格納されるデータがあります。したがって、GetData メソッドと SetData メソッドをどのように使うかは、扱うデータ型によって判断します。

ある文字列へのポインタを SetData メソッドに渡すと、SetData メソッドはその文字列を ContentListFactory オブジェクトに格納します。ポインタは格納しません。GetData メソッドは、ContentListFactory オブジェクト格納されたその文字列へのポインタを返します。文字列は返しません。有効期間を過ぎた ContentListFactory オブジェクトには、文字列への参照は保持しないでください。オブジェクトを破棄すると、参照が無効になるためです。ContentListFactory オブジェクトには、ワイド文字の Unicode 文字列だけが格納されます。ANSI 文字列はサポートしていません。

あるオブジェクトへのインターフェイス ポインタを SetData メソッドに渡すと、SetData メソッドはそのインターフェイス ポインタで AddRef メソッドを呼び出して、ContentListFactory オブジェクトにそのポインタを格納します。GetData メソッドはこのポインタを返した後、このポインタが参照するインターフェイスで AddRef メソッドを呼び出します。呼び出し元は、GetData メソッドによって返されたポインタを解放する必要があります。

ある SafeArray へのポインタを SetData メソッドに渡すと、SetData メソッドはその SafeArray をロックして、その SafeArray への参照を ContentListFactory オブジェクトに格納します。GetData メソッドは、ロックされたその配列への参照を返します。呼び出し元は、その配列のロックを解除してはいけません。ロックを解除すると、ContentListFactory オブジェクトに格納された参照が無効になる可能性があります。配列は、VT_ARRAY または VT_VARIANT 型の Variant に格納するのが安全です。このようにすると、VariantClear を呼び出しても、SafeArray はロックされているため解放されません。ContentListFactory オブジェクトを破棄すると、SafeArray のロックが解除され、SafeArrayDestroy が呼び出されます。SafeArrays は参照カウントに類似したロック カウントを持っていて、このロック カウントがゼロでなければ、配列データは解放されません。

サポートされるそのほかのデータ型については、GetData による読み取りはすべて値で行われます。

このメソッドは、ContentList オブジェクトにある同じ名前のメソッドと機能的に同一です。

関連項目

ContentListFactory オブジェクト


IContentListFactory::get_Schema/put_Schema

Schema プロパティは、この ContentListFactory オブジェクトで使われているスキーマを含む ContentListSchema オブジェクトです。Schema プロパティは読み取りと書き込みが可能です。

定義

Get メソッド :

HRESULT IContentListFactory::get_Schema(
IContentListSchema** Schema
);

Put メソッド :

HRESULT IContentListFactory::put_Schema(
IContentListSchema* Schema
);

パラメータ

Schema

[in] プロパティを入力する場合は、この ContentListFactory オブジェクトの新しいスキーマを含む ContentListSchema オブジェクトの IContentListSchema インターフェイスへのポインタです。
[out,retval] プロパティを取得する場合は、この ContentListFactory オブジェクトのスキーマを含む ContentListSchema オブジェクトの IContentListSchema インターフェイスを返すために使われるアドレスへのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、1 回だけ設定されることを想定しています。ただし、ContentList オブジェクトが CreateNewContentList メソッドによって作成されるまで、または Count プロパティの設定によって ContentListFactory オブジェクトに行が割り当てられるまでは、このプロパティを変更できます。

このプロパティがまだ書き込まれていないときに、それを読み取ると、空の ContentListSchema オブジェクトが作成され、返されます。

関連項目

ContentListFactory オブジェクト


IContentListFactory::Search

このメソッドは、RowCollection オブジェクトを作成するために使います。このオブジェクトを使うと、指定した条件に一致する ContentListFactory オブジェクトの各項目にアクセスできます。

定義

HRESULT IContentListFactory::Search(
VARIANT vCol,
VARIANT vSearchCriteria,
IRowCollection** ppIRowCollection
);

パラメータ

vCol

[in] 検索対象の列を識別する Variant です。この列は、0 から始まる列位置を表す番号、または列名が含まれる文字列のいずれかによって識別されます。

vSearchCriteria

[in] フィルタ条件を含む Variant です。通常、条件は、BSTR、BSTR の配列、または Integer です。検索処理は、検索する列の型に、強制的にデータ型を合わせて行われます。

ppIRowCollection

[out,retval] 新しい RowCollection オブジェクトの IRowCollection インターフェイス ポインタを取得するためのアドレスへのポインタです。このオブジェクトを使うと、検索条件に一致する行にアクセスできます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

S_FALSE

ContentListFactory オブジェクトには、フィルタ条件に一致する行がありませんでした。その結果、返された RowCollection が空になっています。

解説

インデックス作成と検索のために、列は、共有にして (非公開ではなく)、読み取り専用とする必要があります。また、列のデータ型は、文字列、Integer (long または short) 、または検索可能な Variant 配列にする必要があります。検索条件は、検索する列の型に強制的に型変換できるなら Variant でも可能です。

検索条件が Variant の配列である場合、返される行のセットには、検索条件の配列要素に一致する行がすべて含まれています。これは、一致する行の和集合です。

このメソッドは、ContentList オブジェクトにある同じ名前のメソッドと機能的に同一です。

関連項目

ContentListFactory オブジェクト


IContentListFactory::SetData

このメソッドは、ContentListFactory オブジェクトの特定の行と列にデータを書き込むために使います。

これは、スクリプト インターフェイスをサポートしていない 2 つの ContentListFactory メソッドうちの 1 つです。もう 1 つのメソッドは GetData です。これらのメソッドは、C++ のみでの使用を想定しています。

定義

HRESULT IContentListFactory::SetData(
long iRow,
long iCol,
BYTE* pData
);

パラメータ

iRow

[in] データの書き込み先の行の位置を含む long です。行位置は、1 からではなく、0 からカウントされます。

iCol

[in] データの書き込み先の指定行内にある列の位置を含む long です。列位置は、1 からではなく、0 からカウントされます。

pData

[in] ContentListFactory オブジェクトに書き込むデータへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SetData メソッドは、書き込むデータに対して型の確認を行いません。pData パラメータでポイントされるデータは、列の正しい型でなければなりません。型 (特にサイズ) の不一致によってメモリの混乱は発生しませんが (これは、GetData メソッドでは発生する可能性があります)、一部のデータが ContentListFactory オブジェクトに書き込まれないことがあります。

ContentListFactory オブジェクトのデータには、そのデータ型によって、値で格納されるデータと参照で格納されるデータがあります。したがって、GetData メソッドと SetData メソッドをどのように使うかは、扱うデータ型によって判断します。

ある文字列へのポインタを SetData メソッドに渡すと、SetData メソッドはその文字列を ContentListFactory オブジェクトに格納します。ポインタは格納しません。GetData メソッドは、ContentListFactory オブジェクトに格納されたその文字列へのポインタを返します。文字列は返しません。有効期間を過ぎた ContentListFactory オブジェクトには、文字列への参照は保持しないでください。オブジェクトを破棄すると、参照が無効になるためです。ContentListFactory オブジェクトには、ワイド文字の Unicode 文字列だけが格納されます。ANSI 文字列はサポートしていません。

あるオブジェクトへのインターフェイス ポインタを SetData メソッドに渡すと、SetData メソッドはそのインターフェイス ポインタで AddRef メソッドを呼び出して、ContentListFactory オブジェクトにそのポインタを格納します。GetData メソッドはこのポインタを返した後、このポインタが参照するインターフェイスで AddRef メソッドを呼び出します。呼び出し元は、GetData メソッドによって返されたポインタを解放する必要があります。

ある SafeArray へのポインタを SetData メソッドに渡すと、SetData メソッドはその SafeArray をロックして、その SafeArray への参照を ContentListFactory オブジェクトに格納します。GetData メソッドは、ロックされたその配列への参照を返します。呼び出し元は、その配列のロックを解除してはいけません。ロックを解除すると、ContentListFactory オブジェクトに格納された参照が無効になる可能性があります。配列は、VT_ARRAY または VT_VARIANT 型の Variant に格納するのが安全です。このようにすると、VariantClear を呼び出しても、SafeArray はロックされているため解放されません。ContentListFactory オブジェクトを破棄すると、SafeArray のロックが解除され、SafeArrayDestroy が呼び出されます。SafeArrays は参照カウントに類似したロック カウントを持っていて、このロック カウントがゼロでなければ、配列データは解放されません。

サポートされるそのほかのデータ型については、SetData による格納はすべて値で行われます。

ContentListFactory オブジェクトに格納するには、オブジェクトを "both thread" として、Free Threaded Marshaller オブジェクトに集約する必要があります。この制限を無視すると、マーシャンリング エラーが発生します。

このメソッドは、ContentList オブジェクトにある同じ名前のメソッドと機能的に同一です。

関連項目

ContentListFactory オブジェクト


ContentListSchema オブジェクト

このオブジェクトは、ContentListFactory オブジェクトのスキーマを操作するために使います。

ProgID: | Commerce.ContentListSchema (外部作成可能)
COM クラス名: | ContentListSchema
COM インターフェイス名: | IContentListSchema
インターフェイス ID 定数: | IID_IContentListSchema
ヘッダー ファイル: | cacheint.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

次の表は、ContentListSchema オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ColumnFlags | long | ビット フィールドで表される列フラグを格納します。 このプロパティは読み取りと書き込みが可能です。
ColumnName | BSTR | 列名を格納します。 このプロパティは読み取りと書き込みが可能です。
ColumnType | ColumnTypeEnum | 列のデータ型を格納します。 このプロパティは読み取りと書き込みが可能です。
Count | long | スキーマで定義した列数を格納します。 このプロパティは読み取り専用です。
Locked | VARIANT_BOOL | このスキーマを変更できるかどうかを示します。 このプロパティは読み取りと書き込みが可能です。最初は False に設定されています。いったん True に設定すると、False に設定し直すことができません。

次の表は、ContentListSchema オブジェクトのメソッドを示しています。

メソッド | 説明
Add | 新しい列をスキーマに追加します。
FindColumn | 名前付き列の位置を返します。列位置は、1 からではなく、0 から始まります。この位置インデックスは、IContentList インターフェイスの GetData、SetData、Filter、および Search メソッドの Column インデックス パラメータとして使用できます。
GetSchema | スクリプトを実行せずに高いパフォーマンスで、スキーマ全体を返します。
SetSchema | スクリプトを実行せずに高いパフォーマンスで、スキーマ全体を設定します。

解説

GetSchema メソッドと SetSchema メソッドは、C++ からしかアクセスできません。これらのメソッドはそれぞれ、ContentListSchema オブジェクトに関連するスキーマ全体を取得および設定します。これらのメソッドは、スキーマを CLCOL_DESCRIPTOR 構造体の配列として渡します。構造体では、配列内の各要素は、スキーマ内の対応する列を、配列に現れるのと同じ順序で表します。

CLCOL_DESCRIPTOR 構造体の定義は、次のとおりです。

typedef struct
{
  ColumnTypeEnum  coltyp;    // column type
  ULONG           lFlags;    // column flags, represented as a bit field
  ULONG           cchName;   // length of column name
  WCHAR*          pwszName;  // column name
} CLCOL_DESCRIPTOR;

次の表は、CLCOL_DESCRIPTOR 構造体のメンバを説明しています。

構造体メンバ | 説明
coltyp | 列に関連するデータ型を示す値を含みます。この値は、ColumnTypeEnum 列挙に存在する値である必要があります。この列挙の詳細については、「IContentListSchema::get_ColumnType/put_ColumnType」の "解説" を参照してください。
lFlags | ビット フィールドとして表される、列に関連する列フラグを示す値を含みます。
cchName | 列名文字列の長さを文字数で示す値を含みます。
pwszName | 列の名前を含む Null 終了文字列へのポインタを含みます。


IContentListSchema::Add

このメソッドは、ContentListFactory オブジェクト、およびそれに関連付けられた ContentList オブジェクトで使われるスキーマに、新しい列を追加するために使います。

定義

HRESULT IContentListSchema::Add(
BSTR sName,
ColumnTypeEnum Type,
long Flags,
long* ColumnNum
);

パラメータ

sName

[in] 新しい列の名前を含む BSTR です。

Type

[in] ColumnTypeEnum 列挙からの値です。詳細については、"解説" を参照してください。

Flags

[in] 新しい列のビット マスク列フラグ設定を含む long です。

ColumnNum

[out,retval] 新しい列の位置を返すために使われる long へのポインタです。列位置は、1 からではなく、0 から始まります。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Locked プロパティが True に設定されると、その後、このメソッドの呼び出しは失敗します。ContentListFactory オブジェクトが、その ContentListSchema オブジェクトの Locked プロパティを True に設定するのは、次の条件のいずれかを満たす場合です。

  • Count プロパティを設定するか、ConstructFromRecordset メソッドを呼び出すことによって、データ行がファクトリに割り当てられている。

  • ContentListFactory オブジェクトを使って、CreateNewContentList メソッドにより ContentList オブジェクトが 1 つ以上構築されている。

次の表は、ColumnTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
CLCOL_I2 | 2 | 16 ビット整数です。この値は、VARTYPE 値の VT_I2 に対応しています。
CLCOL_I4 | 3 | 32 ビット整数です。この値は、VARTYPE 値の VT_I4 に対応しています。
CLCOL_R4 | 4 | 短精度浮動小数点数です。この値は、VARTYPE 値の VT_R4 に対応しています。
CLCOL_R8 | 5 | 倍精度浮動小数点数です。この値は、VARTYPE 値の VT_R8 に対応しています。
CLCOL_CY | 6 | 通貨型の値を格納する 64 ビット整数です。この値は、VARTYPE 値の VT_CY に対応しています。この型で格納された金額値は、10,000 で位取りさます (小数点以下の桁数が 4 桁になります)。たとえば、値 86900 は、米国では $8.69 という通貨型の値に対応します。また、これは SQL7 で使われる金額データ型と同じです。
CLCOL_DATE | 7 | Date/Time 型の値を格納するために使う倍精度浮動小数点数です。この値は、VARTYPE 値の VT_DATE に対応しています。
CLCOL_DISPATCH | 9 | スクリプティングまたはオートメーションをサポートするオブジェクトへの参照です (IDispatch から継承します)。この値は、VARTYPE 値の VT_DISPATCH に対応しています。
CLCOL_BOOL | 11 | ブール値です。この値は、VARTYPE 値の VT_BOOL に対応しています。C++ の 4 バイトの BOOL 型と混同しないようにしてください。
CLCOL_UNKNOWN | 13 | スクリプティングまたはオートメーションをサポートしていない可能性がある IUnknown ベースのインターフェイスへの参照です (IUnknown から継承します)。この値は、VARTYPE 値の VT_UNKNOWN に対応しています。
CLCOL_STRING | 14 | すべての ContentListFactory オブジェクトが維持しているプライベート ヒープの文字列へのポインタです。対応する VARTYPE 値はありません。
CLCOL_VARIANTARRAY | 15 | SAFEARRAY へのポインタです。対応するバリアント型は、VT_ARRAY または VT_VARIANT です。

注

  • これらの型は、CLCOL_STRING と CLCOL_VARIANTARRAY を除いて、対応する VARTYPE と同一であり、同じ定数値を共有します。これらの型は、VARTYPE として使うこともできます。

関連項目

ContentListSchema オブジェクト


IContentListSchema::get_ColumnFlags/put_ColumnFlags

ColumnFlags プロパティは読み取りと書き込みが可能な long で、列フラグを含んでいます。

定義

Get メソッド :

HRESULT IContentListSchema::get_ColumnFlags(
VARIANT vColumn,
long* ColumnFlags
);

Put メソッド :

HRESULT IContentListSchema::put_ColumnFlags(
VARIANT vColumn,
long ColumnFlags
);

パラメータ

vColumn

[in] 処理対象の列を識別するための列名または列位置のいずれかを含む Variant です。列位置は、1 からではなく、0 からカウントされます。

ColumnFlags

[in] プロパティを設定する場合は、ビット フィールドとして表される、新しい列のフラグ設定を含む long です。
[out,retval] プロパティを取得する場合は、ビット フィールドとして表される、現在の列のフラグ設定を返すために使われる long へのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

列フラグは、ビット フィールドで表されます。次の表は、列フラグのビットを操作するために、使用するビットの意味と利用できる定数を示しています。

ビット | 定数 | 説明
1 | CLCOL_READONLY (= 0x01) | このビットを設定している列のデータは、読み取り専用で、更新できません。これに関しては、ContentListFactory オブジェクトに格納されているデータも同じようになります。このデータは、複数のページ要求で共有されるためです。 このビットを設定していない列のデータは、読み取りと書き込みが可能で、自由に更新できます。レコードのロックは実行されません。そのため、ContentListFactory オブジェクトのデータを更新するときに、更新の競合が発生する可能性があります。これは、非公開として指定した列には関係がありません。非公開列は ContentList オブジェクトの個別のインスタンスに存在しており、ContentList オブジェクトは通常、単一のスレッドのために作成され、単一のスレッドだけで使用されるからです。
2 | CLCOL_PRIVATE (= 0x02) | このビットを設定した列のデータは、このスキーマに基づいて作成された各 ContentList オブジェクトに公開されません。つまり、このデータは、作成される各 ContentList オブジェクトに別々に格納されます。対応する ContentListFactory オブジェクトの共有列には格納されません。
4 | CLCOL_SCORE_COLUMN (= 0x04) | このビットを設定した列のデータは、コンテンツ項目に関連付けられたスコア値になります。この列の型は、短精度浮動小数点数型 (CLCOL_R4) でなければなりません。また、このフラグを設定できるのは、スキーマ内の 1 つの列に限定されます。さらに、一意のスコア値は個別の各ページ要求に関連付ける必要があるため、このビットの設定は必ず CLCOL_PRIVATE ビットと併せて行います。 言い換えれば、このビットを設定できるのは、ContentListFactory オブジェクトとは対照的な ContentList オブジェクトに格納され、スコア列として指定された列でなければなりません。

関連項目

ContentListSchema オブジェクト


IContentListSchema::get_ColumnName/put_ColumnName

ColumnName プロパティは読み取りと書き込みが可能な文字列で、列の名前を含んでいます。

定義

Get メソッド :

HRESULT IContentListSchema::get_ColumnName(
VARIANT vColumn,
BSTR* ColumnName
);

Put メソッド :

HRESULT IContentListSchema::put_ColumnName(
VARIANT vColumn,
BSTR ColumnName
);

パラメータ

vColumn

[in] 処理対象の列を識別するための列名または列位置のいずれかを含む Variant です。列位置は、1 からではなく、0 からカウントされます。

ColumnName

[in] プロパティを入力する場合は、新しい列名を含む BSTR です。
[out,retval] プロパティを取得する場合は、現在の列名を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

列名を取得するために vColumn パラメータの値としてその列名を使用しても意味がありません。列名を渡すことに意味があるのは、列名を変更する場合です。

関連項目

ContentListSchema オブジェクト


IContentListSchema::get_ColumnType/put_ColumnType

ColumnType プロパティは、ColumnTypeEnum 列挙から取得される読み取りと書き込みが可能な値で、指定した列のデータ型を示します。

定義

Get メソッド :

HRESULT IContentListSchema::get_ColumnType(
VARIANT vColumn,
ColumnTypeEnum* ColumnType
);

Put メソッド :

HRESULT IContentListSchema::put_ColumnType(
VARIANT vColumn,
ColumnTypeEnum ColumnType
);

パラメータ

vColumn

[in] 処理対象の列を識別するための列名または列位置のいずれかを含む Variant です。列位置は、1 からではなく、0 からカウントされます。

ColumnType

[in] プロパティを入力する場合は、ColumnTypeEnum 列挙からの値です。詳細については、"解説" を参照してください。

[out,retval] プロパティを取得する場合は、ColumnTypeEnum 列挙から値を返すために使うポインタです。詳細については、"解説" を参照してください。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

次の表は、ColumnTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
CLCOL_I2 | 2 | 16 ビット整数です。この値は、VARTYPE 値の VT_I2 に対応しています。
CLCOL_I4 | 3 | 32 ビット整数です。この値は、VARTYPE 値の VT_I4 に対応しています。
CLCOL_R4 | 4 | 短精度浮動小数点数です。この値は、VARTYPE 値の VT_R4 に対応しています。
CLCOL_R8 | 5 | 倍精度浮動小数点数です。この値は、VARTYPE 値の VT_R8 に対応しています。
CLCOL_CY | 6 | 通貨型の値を格納する 64 ビット整数です。この値は、VARTYPE 値の VT_CY に対応しています。この型で格納された金額値は、10,000 で位取りさます (小数点以下の桁数が 4 桁になります)。たとえば、値 86900 は、米国では $8.69 という通貨型の値に対応します。また、これは SQL7 で使われる金額データ型と同じです。
CLCOL_DATE | 7 | Date/Time 型の値を格納するために使う倍精度浮動小数点数です。この値は、VARTYPE 値の VT_DATE に対応しています。
CLCOL_DISPATCH | 9 | スクリプティングまたはオートメーションをサポートするオブジェクトへの参照です (IDispatch から継承します)。この値は、VARTYPE 値の VT_DISPATCH に対応しています。
CLCOL_BOOL | 11 | ブール値です。この値は、VARTYPE 値の VT_BOOL に対応しています。C++ の 4 バイトの BOOL 型と混同しないようにしてください。
CLCOL_UNKNOWN | 13 | スクリプティングまたはオートメーションをサポートしていない可能性がある IUnknown ベースのインターフェイスへの参照です (IUnknown から継承します)。この値は、VARTYPE 値の VT_UNKNOWN に対応しています。
CLCOL_STRING | 14 | すべての ContentListFactory オブジェクトが維持しているプライベート ヒープの文字列へのポインタです。対応する VARTYPE 値はありません。
CLCOL_VARIANTARRAY | 15 | SAFEARRAY へのポインタです。対応するバリアント型は、VT_ARRAY または VT_VARIANT です。

注

  • これらの型は、CLCOL_STRING と CLCOL_VARIANTARRAY を除いて、対応する VARTYPE と同一であり、同じ定数値を共有します。実際に、これらの型は VARTYPE として使われることもあります。

関連項目

ContentListSchema オブジェクト


IContentListSchema::get_Count

Count プロパティは読み取り専用の値で、スキーマの現在の列数を含んでいます。

定義

Get メソッド :

HRESULT IContentListSchema::get_Count(
long* Count
);

パラメータ

Count

[out,retval] スキーマ内の現在の列数を返すために使われる long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ContentListSchema オブジェクト


IContentListSchema::FindColumn

このメソッドは、名前で指定された列の位置を見つけるために使います。

定義

HRESULT IContentListSchema::FindColumn(
BSTR sName,
long* ColumnNum
);

パラメータ

sName

[in] 位置が返される列の名前を含む BSTR です。

ColumnNum

[out,retval] 指定した列の位置を返すために使われる long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

列位置は、1 からではなく、0 からカウントされます。

関連項目

ContentListSchema オブジェクト


IContentListSchema::GetSchema

このメソッドは、ContentListSchema オブジェクトからスキーマ全体を読み取るために使います。

これは、高いパフォーマンスを得るために、スクリプト インターフェイスをサポートしていない 2 つの ContentListSchema メソッドうちの 1 つです。もう 1 つのメソッドは SetSchema です。これらのメソッドは、C++ のみでの使用を想定しています。

定義

HRESULT IContentListSchema::GetSchema(
long* pnCols,
CLCOL_DESCRIPTOR** prgColDesc
);

パラメータ

pnCols

[out] 返されるスキーマ内の列数を返すために使われる long へのポインタです。この値は、prgColDesc パラメータに返される列記述子の配列を処理するときに重要になります。

prgColDesc

[out,size_is(,*pnCols)] CLCOL_DESCRIPTOR 構造体の配列のアドレスを返すために使われるポインタのアドレスです。この構造体はスキーマ全体を表しており、配列の各要素には、スキーマの同じ位置にある列に関する情報が含まれています。列記述子構造体の詳細については、「ContentListSchema オブジェクト」を参照してください。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetSchema メソッドへの呼び出しによって返されるメモリがどのように解放されるかについて注意する必要があります。次のコード サンプルは、正しい方法を示しています。

// Declare variables for the GetSchema call.
long              cCols
CLCOL_DESCRIPTOR *pColDesc;

// Get the schema.
pContentListSchema->GetSchema(&cCols, &pColDesc);

// Use the returned schema as needed.

// When finished with the schema array,
// start by freeing the column name string memory.
for ( int i=0 ; I < cCols ; i++ ) {
    if ( NULL != pColDesc[i].pwszName ) {
        ::CoTaskMemFree(pColDesc[i].pwszName);
    }
}

// Then free the structure array memory.
::CoTaskMemFree(pColDesc);

関連項目

ContentListSchema オブジェクト


IContentListSchema::get_Locked/put_Locked

Locked プロパティは読み取りと書き込みが可能な Boolean で、ContentListSchema オブジェクトを変更できるかどうかを示します。値が True の場合、スキーマはロックされ、変更できないことを示します。値が False の場合、スキーマはロックされず、変更できることを示します。いったんオブジェクトが使用されると、スキーマは変更できなくなります。

定義

Get メソッド :

HRESULT IContentListSchema::get_Locked(
VARIANT_BOOL* Locked
);

Put メソッド :

HRESULT IContentListSchema::put_Locked(
VARIANT_BOOL Locked
);

パラメータ

Locked

[in] プロパティを設定する場合は、新しいロック設定を指定する VARIANT_BOOL です。スキーマは、一度ロックされるとロックを解除できないため、Locked パラメータが True に設定されているこのメソッドへの最初の呼び出しだけが有効になります。
[out,retval] プロパティを取得する場合は、スキーマ ロックのステータスを返すために使われる VARIANT_BOOL へのポインタです。値が True の場合、スキーマがロックされていることを示します。値が False の場合、スキーマがまだロックされていないことを示します。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティが True に設定されると、直ちに ContentListSchema オブジェクトが恒久的にロックされます。このオブジェクトに含まれるスキーマは、いったんロックされると、変更することもロックを解除することもできません。行が割り当てられるか、ContentList オブジェクトが作成されると、そのどちらが先に発生したかにかかわらず、直ちに ContentListFactory オブジェクトがスキーマをロックします。

関連項目

ContentListSchema オブジェクト


IContentListSchema::SetSchema

このメソッドは、スキーマ全体を ContentListSchema オブジェクトに書き込むために使います。

これは、高いパフォーマンスを得るために、スクリプト インターフェイスをサポートしていない 2 つの ContentListSchema メソッドうちの 1 つです。もう 1 つのメソッドは GetSchema です。これらのメソッドは、C++ のみでの使用を想定しています。

定義

HRESULT IContentListSchema::SetSchema(
long nCols,
CLCOL_DESCRIPTOR* rgColDesc
);

パラメータ

nCols

[in] rgColDesc パラメータに渡される列記述子配列内の列数を指定する long です。

rgColDesc

[in,size_is(nCols)] CLCOL_DESCRIPTOR 構造体の配列へのポインタです。この構造体はスキーマ全体を表しており、配列の各要素には、スキーマの同じ位置にある列に関する情報が含まれています。列記述子構造の詳細については、「ContentListSchema オブジェクト」を参照してくださ。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ContentListSchema オブジェクト


ContentSelector オブジェクト

このメソッドは、Web ページへの表示に 1 つ以上のコンテンツ項目を選択するために使います。コンテンツは、顧客キャンペーン (広告、割引) から取得するか、またはコンテンツ選択フレームワーク (CSF) 上に構築したカスタム アプリケーションから取得することもできます。

Web ページへの表示にカスタム コンテンツを選択する場合、ContentSelector オブジェクトのインスタンスを作成してから使うようにすると、CSF を使用することができます。ContentSelector オブジェクトは、さまざまな CSF パイプラインを呼び出して、GetContent メソッドに渡されたディクショナリーに基づいて、さまざまな種類のコンテンツを選択します。

ProgID: | Commerce.ContentSelector (外部作成可能)
COM クラス名: | CContentSelector
COM インターフェイス名: | IContentSelector
インターフェイス ID 定数: | IID_IContentSelector
ヘッダー ファイル: | csf.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 CSF Pipeline Component 1.0 Type Library
DLL 名: | CSFComp.dll
スレッド モデル: | 両方

C++ で ContentSelector オブジェクトのプロパティにアクセスするには、IContentSelector インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

ContentSelector オブジェクトは、Dictionary オブジェクトのメソッドとプロパティをすべて実装します。次の表は、Dictionary オブジェクトから継承されないメソッドだけを示しています。

メソッド | 説明
GetContent | コンテンツ選択パイプラインを実行します。パイプラインは、1 つ以上のコンテンツ項目を選択します。選択されたコンテンツ項目は、SimpleList オブジェクトに格納され、HTML または XML の文字列として書式設定されます。

解説

Context ディクショナリには、その ContextProfile エントリの ContentSelector オブジェクトへの参照が保持されます。この ContentSelector オブジェクトは、任意のプロパティをパイプライン コンポーネントに渡すために使われます。任意のプロパティは ContentSelector オブジェクトに関連付けることができます。ContentSelector オブジェクトは Dictionary オブジェクトから継承されているためです。

関連項目

コンテンツ選択オブジェクト


IContentSelector::GetContent

このメソッドは、コンテンツ選択パイプラインを実行し、取得したコンテンツを SimpleList オブジェクトに返すために使います。

定義

HRESULT IContentSelector::get_GetContent(
IDictionary* pdictCSFContext,
ISimpleList** ppLstContent
);

パラメータ

pdictCSFContext

CSF アプリケーションのインスタンスの構成情報を持つ、グローバル コンテキスト ディクショナリへのポインタです。このディクショナリには、ContentSelector オブジェクトで使われるグローバルなオブジェクトと構成が含まれています。ContentSelector オブジェクトが実行するパイプラインを認識できるように、このディクショナリには、少なくとも Pipeline キーが含まれていなければなりません。

ppLstContent

[out, retval] 選択されたコンテンツを含む SimpleList オブジェクトへのポインタです。SimpleList オブジェクトの要素は、HTML または XML の文字列です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

注

  • このメソッドは、呼び出したパイプラインによって返されるエラーを返すこともできます。

解説

ContentSelector オブジェクトは、ディクショナリ オブジェクトに渡された Pipeline キーを読み取り、呼び出すパイプライン オブジェクトを見つけます。そして、渡されたディクショナリの値を新しいディクショナリにコピーします。この新しいディクショナリは、パイプ Context ディクショナリとしてパイプラインに渡されます。空のディクショナリが作成され、Order ディクショナリとしてパイプラインに渡されます。ContentSelector オブジェクトは、それ自身への参照をパイプ Context ディクショナリの ContextProfile キーで追加します。

パイプラインの実行が完了すると、ContentSelector オブジェクトは、Order ディクショナリの _formatted というキーを探し、そのキーに割り当てられたリストを戻り値として返します。_formatted キーに割り当てられたリストが存在しない場合、空のリストが作成され返されます。パイプ Context ディクショナリの自己参照は削除され、循環参照ができなくなります。ContentSelector オブジェクトが制御を戻す前に、Order ディクショナリと Context ディクショナリへの参照が ContentSelector オブジェクトに追加され、パイプラインによってそれらのディクショナリに書き込まれた値にページ アクセスできるようになります。

関連項目

CacheManager オブジェクト

コンテンツ選択パイプライン

ContentSelector オブジェクト


DataFunctions オブジェクト

このメソッドは、サイト内で、ロケール ベースの書式設定、解析、および値範囲のチェックを実行するために使います。このオブジェクトには、サイトの開発に役立つ各種ユーティリティもあります。

ProgID: | Commerce.DataFunctions (外部作成可能)
COM クラス名: | DataFunctions_4_0
COM インターフェイス名: | IDataFunctions_4_0
インターフェイス ID 定数: | IID_IDataFunctions_4_0
ヘッダー ファイル: | commerce.h, mspu_guids.h
タイプ ライブラリ名: | Commerce -- MSCSAspHelp Type Library
DLL 名: | MSCSAspHelp.dll
スレッド モデル: | 両方

C++ では、IDataFunctions_4_0 および IDataFunctions_3_0 インターフェイスを使い、DataFunctions オブジェクトのプロパティとメソッドにアクセスします。

次の表は、DataFunctions オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Locale | long | 日付、時刻、金額、および数値を書式設定するために使われる既定のロケールを表す数値を格納します。 このプロパティは読み取りと書き込みが可能です。
CurrencySymbol | Variant | ConvertStringToCurrency メソッドと LocalizeCurrency メソッドに通貨記号が指定されなかった場合に使われる通貨記号を格納します。既定値は、システムの既定の通貨記号です。 このプロパティは読み取りと書き込みが可能です。

次の表は、DataFunctions オブジェクトのメソッドを示しています。

メソッド | 説明
CleanString | 指定した文字列を処理します。この処理には、空白の除去、文字列の大文字/小文字変換、および文字列の長さが指定した範囲に収まるかどうかの検証が含まれます。
ConvertDateString | 日付の指定された文字列表記を、既定のロケールまたは指定したロケールに基づいて Date Variant に変換します。
ConvertDateTimeString | 日付と時刻の指定された文字列表記を、既定のロケールまたは指定したロケールに基づいて Date Variant に変換します。
ConvertFloatString | 浮動小数点数の指定された文字列表記を、既定のロケールまたは指定したロケールに基づいて Double Variant に変換します。
ConvertMoneyStringToNumber | 通貨値の指定された文字列表記を、既定のロケールまたは指定したロケールに基づいて long Variant に変換します。
ConvertNumberString | 数字の指定された文字列表記を、既定のロケールまたは指定したロケールに基づいて Integer Variant に変換します。
ConvertTimeString | 時刻値の指定された文字列表記を、既定のロケールまたは指定したロケールに基づいて Date Variant に変換します。
Date | Date Variant に保存された日付の文字列表記を、既定のロケールまたは指定したロケールに基づいて返します。
DateTime | Date Variant に保存された日付と時刻の文字列表記を、既定のロケールまたは指定したロケールに基づいて返します。
Float | 既定のロケールまたは指定したロケールに基づいて、浮動小数点数の文字列表記を返します。
GetLocaleInfo | 指定したロケールに関する情報を取得します。
GetLocaleList | インストールされているロケールのリストを取得します。
Money | 既定のロケールまたは指定したロケールに基づいて、書式設定された通貨の文字列を返します。
Number | 既定のロケールまたは指定したロケールに基づいて、数値の文字列表記を返します。
Time | Date Variant に保存された時刻の文字列表記を、既定のロケールまたは指定したロケールに基づいて返します。
ValidateDateTime | 指定した文字列に有効な日付または時刻、あるいはその両方が含まれているかどうかを確認します。また、指定した範囲に当てはまるかどうかを必要に応じて確認します。
ValidateFloat | 指定した文字列に有効な浮動小数点数が含まれているかどうかを確認します。また、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認します。
ValidateNumber | 指定した文字列に有効な数値が含まれているかどうかを確認します。また、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認します。
CloneObject | SimpleList オブジェクトまたは Dictionary オブジェクトを複製します。
ConvertStringToCurrency | 通貨値の指定された文字列表記を Currency Variant に変換します。
LocalizeCurrency | 指定したロケールと通貨記号の書式設定に基づいて、金額値の文字列表記を作成します。


IDataFunctions_4_0::CleanString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、文字列を処理するために使います。この処理には、先頭と末尾の空白の除去、文字列の大文字/小文字変換、および文字列の長さが指定した範囲に収まっているかどうかの検証が含まれます。

定義

HRESULT IDataFunctions_4_0::CleanString(
VARIANT vtInput,
VARIANT vtMinLen,
VARIANT vtMaxLen,
VARIANT vtStripWhite,
VARIANT vtStripReturn,
VARIANT vtCase,
VARIANT vtLocale,
VARIANT* pvarOutput
);

パラメータ

vtInput

[in] 処理する文字列のテキストを含む Variant です。

vtMinLen

[in] 入力文字列の検証の基準となる最小長を含む Variant です。このパラメータの既定値は 0 です。

vtMaxLen

[in] 入力文字列の検証の基準となる最大長を含む Variant です。このパラメータの既定値は無制限です。

vtStripWhite

[in] 先頭または末尾の空白を入力文字列から削除するかどうかを指定する Boolean 値を含む Variant です。既定値は True です。

vtStripReturn

[in] 入力文字列のどこかに含まれる改行文字を削除するかどうかを指定する Boolean 値を含む Variant です。既定値は True です。

vtCase

[in] 入力文字列の大文字/小文字変換を指定する Variant です。このパラメータの既定値は 0 です。この場合、入力文字列の大文字/小文字変換は実行されません。このパラメータが 1 に設定されている場合、入力文字列は大文字に変換されます。このパラメータが 2 に設定されている場合、入力文字列は小文字に変換されます。

vtLocale

[in] 入力文字列を処理するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvarOutput

[out, retval] 処理済みの文字列を含む Variant を返すために使うポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvarOutput パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IMSCSPage_3_0::RequestString


IDataFunctions_4_0::CloneObject

このメソッドは、SimpleList オブジェクトまたは Dictionary オブジェクトを複製するために使います。このメソッドは、複製されたオブジェクトのディープ コピーを実行して、新しいメモリがその複製に割り当てられるようにします。

定義

HRESULT IDataFunctions_4_0::CloneObject(
IDispatch* pdispSource,
IDispatch** ppdispDest
);

パラメータ

pdispSource

[in] 複製対象の SimpleList または Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。

ppdispDest

[out, retval] SimpleList または Dictionary オブジェクトの複製の IDispatch インターフェイスを返すために使うポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppdispDest パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale


IDataFunctions_4_0::ConvertDateString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、日付の文字列を Date Variant に変換するために使います。

定義

HRESULT IDataFunctions_4_0::ConvertDateString(
VARIANT vtDate,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

vtDate

[in] 変換する日付の文字列表記を含む Variant です。

vtLocale

[in] 文字列を処理するときに使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 変換された日付を返すために使う Date Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

DataFunctions.ConvertDateString メソッドは、日付の文字列表記を Date Variant に変換するときに、ラトビア語とブルガリア語のロケールの場合は、Null を返すことがあります。この問題を避けるには、[コントロール パネル] の [地域のオプション] に従って、日付表記文字列の末尾に追加された定数文字列を削除します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertDateTimeString

IDataFunctions_4_0::Date

IDataFunctions_4_0::DateTime

IMSCSPage_3_0::RequestTime


IDataFunctions_4_0::ConvertDateTimeString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、日付と時刻の文字列を Date/Time Variant に変換するために使います。

定義

HRESULT IDataFunctions_4_0::ConvertDateTimeString(
VARIANT vtDateTime,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

vtDateTime

[in] 変換する日付/時刻値を指定する文字列を含む Variant です。

vtLocale

[in] 日付の変換に使うロケールを指定する Variant です。この値が指定されなかった場合は、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 変換された日付/時刻値を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertDateString

IDataFunctions_4_0::Date

IDataFunctions_4_0::DateTime

IMSCSPage_3_0::RequestTime


IDataFunctions_4_0::ConvertFloatString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、文字列表記された浮動小数点数を Double Variant に変換するために使います。

定義

HRESULT IDataFunctions_4_0::ConvertFloatString(
VARIANT vtNum,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

vtNum

[in] 変換する浮動小数点数の文字列表記を含む Variant です。

vtLocale

[in] 文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 変換された浮動小数点数を返すために使う Double Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::Float

IDataFunctions_4_0::ValidateFloat


IDataFunctions_4_0::ConvertMoneyStringToNumber

このメソッドは、既定のロケールまたは指定したロケールに基づいて、金額の文字列を数値に変換するために使います。

定義

HRESULT IDataFunctions_4_0::ConvertMoneyStringToNumber(
VARIANT vtMoney,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

vtMoney

[in] 変換する金額値の文字列表記を含む Variant です。

vtLocale

[in] 文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 変換された金額値を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

ConvertMoneyStringToNumber メソッドは、指定したロケールの基本通貨単位で値を返します。たとえば、値の単位が米ドルである場合、ConvertMoneyStringToNumber はその値をセント単位で表現した数値を返します。

また、ConvertMoneyStringToNumber は、値の端数処理を行いません。たとえば、"123.009" を渡すと、このメソッドは 12301 ではなく 12300 を返します。

このメソッドは、OLE Currency 型ではなく long 型の Variant を返します。

このメソッドは、金額値の文字列表記を Currency Variant に変換するときに、スウェーデン語とポルトガル語 (標準) のロケールの場合は、Null を返すことがあります。この問題を避けるには、ConvertMoneyStringToNumber メソッドを呼び出す前に、Microsoft Visual Basic Scripting Edition (VBScript) の関数 Replace(MoneyString, CurrencyDigitGroupingSymbol, "") を使って、金額の文字列から通貨の桁区切り記号を削除します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertFloatString

IDataFunctions_4_0::ConvertNumberString


IDataFunctions_4_0::ConvertNumberString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、文字列表記された整数を Integer Variant に変換するために使います。

定義

HRESULT IDataFunctions_4_0::ConvertNumberString(
VARIANT vtNum,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

vtNum

[in] 変換する値の文字列表記を含む Variant です。

vtLocale

[in] 文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 変換後の数値を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

ConvertNumberString メソッドは、整数のみを受け付けるように設計されています。vtNum パラメータとして浮動小数点数を渡すと、エラーになります。浮動小数点数を変換するには、ConvertFloatString メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertFloatString

IDataFunctions_4_0::Number

IDataFunctions_4_0::ValidateNumber


IDataFunctions_4_0::ConvertStringToCurrency

このメソッドは、指定したロケールまたは通貨記号に基づいて、金額値の文字列表記を Currency Variant に変換するために使います。

定義

HRESULT IDataFunctions_4_0::ConvertStringToCurrency(
VARIANT vtMoneyString,
VARIANT vtLocale,
VARIANT vtCurrencySymbol,
VARIANT* pvtRet
);

パラメータ

vtMoneyString

[in] 変換する通貨の文字列を含む Variant です。

vtLocale

[in, optional] 文字列を Currency Variant に変換するときに使うロケールを含む Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

vtCurrencySymbol

[in, optional] 通貨の文字列の変換に使う通貨記号を含む Variant です。

pvtRet

[out, retval] 変換された金額値の文字列表記を返すために使う Variant へのポインタです。これは、金額値の文字列が有効ではない場合、Null に設定されます。

戻り値

パラメータ pvtRet は、解析された値、または入力金額値が解析不能な場合は Null を返します。このメソッドは、無効な引数を受け取るなどの重大なエラー時には、失敗の HRESULT を返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::LocalizeCurrency

IDataFunctions_4_0::ConvertMoneyStringToNumber


IDataFunctions_4_0::ConvertTimeString

このメソッドは、既定のロケールまたは指定したロケールに基づいて、時刻の文字列を Date Variant に変換するために使います。

定義

HRESULT IDataFunctions_4_0::ConvertTimeString(
VARIANT vtDate,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

vtDate

[in] 変換する時刻の文字列表記を指定する Variant です。

vtLocale

[in] 文字列を変換するときに使われるロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 変換された時刻値を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::Time

IDataFunctions_4_0::ValidateDateTime


IDataFunctions_4_0::get_CurrencySymbol/put_CurrencySymbol

CurrencySymbol プロパティは読み取りと書き込みが可能な文字列 Variant で、ConvertStringToCurrency メソッドと LocalizeCurrency メソッドに通貨記号が指定されなかった場合に使われる通貨記号を格納します。既定値は、システムの既定の通貨記号です。

定義

Get メソッド :

HRESULT IDataFunctions_4_0::get_CurrencySymbol(
VARIANT* CurrencySymbol
);

Put メソッド :

HRESULT IDataFunctions_4_0::put_CurrencySymbol(
VARIANT CurrencySymbol
);

パラメータ

CurrencySymbol

[in] プロパティを入力する場合は、通貨記号を含む文字列 Variant です。
[out, retval] プロパティを取得する場合、通貨記号を返すために使用される文字列 Variant へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

プロパティを取得する場合、CurrencySymbol パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::ConvertStringToCurrency

IDataFunctions_4_0::LocalizeCurrency


IDataFunctions_4_0::Date

このメソッドは、既定のロケールまたは指定したロケールに基づいて、Date Variant を、指定した日付の文字列表記に変換するために使います。

定義

HRESULT IDataFunctions_4_0::Date(
DATE dtDate,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

dtDate

[in] 書式設定する日付を含む Date Variant です。

vtLocale

[in] 日付を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 文字列として書式設定された日付を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::DateTime

IDataFunctions_4_0::ValidateDateTime

IDataFunctions_4_0::ConvertDateString


IDataFunctions_4_0::DateTime

このメソッドは、既定のロケールまたは指定したロケールに基づいて、Date Variant を、指定した日付値の文字列表記に変換するために使います。

定義

HRESULT IDataFunctions_4_0::DateTime(
DATE dtDate,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

dtDate

[in] 変換する日付/時刻値を含む Date です。

vtLocale

[in] Date Variant を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 指定した日付/時刻値の文字列表記を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::Date

IDataFunctions_4_0::ValidateDateTime

IDataFunctions_4_0::Time


IDataFunctions_4_0::Float

このメソッドは、既定のロケールまたは指定したロケールに基づいて、Double で格納された数値を、その数値の文字列表記に変換するために使います。

定義

HRESULT IDataFunctions_4_0::Float(
double fNumber,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

fNumber

[in] 変換する浮動小数点数を含む Double (8 バイト浮動小数点数) です。

vtLocale

[in] 浮動小数点数を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 指定の浮動小数点数の文字列表記を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ValidateFloat

IDataFunctions_4_0::ConvertFloatString


IDataFunctions_4_0::GetLocaleInfo

このメソッドは、指定したロケールに関する情報を取得するために使います。

定義

HRESULT IDataFunctions_4_0::GetLocaleInfo(
long vtInfo,
VARIANT vtLocale,
VARIANT* pvarRet
);

パラメータ

vtInfo

[in] pvarRet パラメータに返すロケール情報のタイプを指定する long です。この値は、LCTYPE 定数のうちのいずれかにマップしなければなりません。これらの定数については、Win32 SDK のヘルプを参照してください。

vtLocale

[in] 情報を返すロケールを識別する Variant です。この Variant が空 (VT_EMPTY) または Null (VT_NULL) の場合、このメソッドは、put_Locale への最新の呼び出しによって指定したロケールの情報を返します。

pvarRet

[out, retval] 要求されたロケール情報を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

Locale プロパティには、日付、時刻、金額、および数値の情報を書式設定するために DataFunctions メソッドで使われる既定のロケールを示す数値を格納します。それらの DataFunctions メソッドは、パラメータでロケール値を受け取るため、その値が指定されなかった場合は、このプロパティの値が使われます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale


IDataFunctions_4_0::GetLocaleList

このメソッドは、コンピュータ上で利用できるロケールが含まれている SimpleList オブジェクトを取得するために使います。

定義

HRESULT IDataFunctions_4_0::GetLocaleList(
VARIANT* pvarList
);

パラメータ

pvarList

[out, retval] コンピュータ上で使用できるロケールを指定する SimpleList オブジェクトを返すために使う Varient へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale


IDataFunctions_4_0::get_Locale/put_Locale

Locale プロパティは、DataFunctions メソッドによって日付、時刻、通貨、および数値の情報を書式設定するために使う既定のロケールを示す、読み取りと書き込みが可能な long です。DataFunctions メソッドは、パラメータでロケール値を受け取るため、その値が指定されなかった場合は、このプロパティを初期化したときの値が使われます。

定義

Get メソッド:

HRESULT IDataFunctions_4_0::get_Locale(
long* Locale
);

Put メソッド :

HRESULT IDataFunctions_4_0::put_Locale(
long Locale
);

パラメータ

Locale

[in] プロパティを入力する場合は、ロケールを指定する long です。
[out, retval] プロパティを取得する場合は、ロケールを返すために使う long へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Commerce Server オブジェクトに実装されたメソッドの多くは、省略可能なパラメータとしてロケール ID を受け取ります。これらの ID は、一意の 16 進コードで表されます。

ロケールと言語の ID のリストは、「National Language Support」 API にあります。この仕様は、Microsoft Developer Network にあります。「Platform SDK Documentation」ブックの「Base Services」に含まれる「International Features」を参照してください。

このリストは常に拡張を続け、さらなるロケールのサポートが将来の製品に追加される可能性があります。

次の表は、これらの 16 進数のロケール ID のリストを示しています。

ID | Locale
0x0000 | ニュートラル言語
0x0400 | 既定の言語
0x0401 | アラビア語 (サウジアラビア)
0x0801 | アラビア語 (イラク)
0x0c01 | アラビア語 (エジプト)
0x1001 | アラビア語 (リビア)
0x1401 | アラビア語 (アルジェリア)
0x1801 | アラビア語 (モロッコ)
0x1c01 | アラビア語 (チュニジア)
0x2001 | アラビア語 (オマーン)
0x2401 | アラビア語 (イエメン)
0x2801 | アラビア語 (シリア)
0x2c01 | アラビア語 (ヨルダン)
0x3001 | アラビア語 (レバノン)
0x3401 | アラビア語 (クウェート)
0x3801 | アラビア語 (アラブ首長国連邦)
0x3c01 | アラビア語 (バーレーン)
0x4001 | アラビア語 (カタール)
0x0402 | ブルガリア語
0x0403 | カタロニア語
0x0404 | 中国語 (台湾)
0x0804 | 中国語 (中国)
0x0c04 | 中国語 (香港)
0x1004 | 中国語 (シンガポール)
0x0405 | チェコ語
0x0406 | デンマーク語
0x0407 | ドイツ語 (標準)
0x0807 | ドイツ語 (スイス)
0x0c07 | ドイツ語 (オーストリア)
0x1007 | ドイツ語 (ルクセンブルグ)
0x1407 | ドイツ語 (リヒテンシュタイン)
0x0408 | ギリシャ語
0x0409 | 英語 (米国)
0x0809 | 英語 (英国)
0x0c09 | 英語 (オーストラリア)
0x1009 | 英語 (カナダ)
0x1409 | 英語 (ニュージーランド)
0x1809 | 英語 (アイルランド)
0x1c09 | 英語 (南アフリカ)
0x2009 | 英語 (ジャマイカ)
0x2409 | 英語 (カリブ)
0x2809 | 英語 (ベリーズ)
0x2c09 | 英語 (トリニダード)
0x040a | スペイン語 (トラディショナル ソート)
0x080a | スペイン語 (メキシコ)
0x0c0a | スペイン語 (現代ソート)
0x100a | スペイン語 (グアテマラ)
0x140a | スペイン語 (コスタリカ)
0x180a | スペイン語 (パナマ)
0x1c0a | スペイン語 (ドミニカ共和国)
0x200a | スペイン語 (ベネズエラ)
0x240a | スペイン語 (コロンビア)
0x280a | スペイン語 (ペルー)
0x2c0a | スペイン語 (アルゼンチン)
0x300a | スペイン語 (エクアドル)
0x340a | スペイン語 (チリ)
0x380a | スペイン語 (ウルグアイ)
0x3c0a | スペイン語 (パラグアイ)
0x400a | スペイン語 (ボリビア)
0x440a | スペイン語 (エルサルバドル)
0x480a | スペイン語 (ホンジュラス)
0x4c0a | スペイン語 (ニカラグア)
0x500a | スペイン語 (プエルトリコ)
0x040b | フィンランド語
0x040c | フランス語 (標準)
0x080c | フランス語 (ベルギー)
0x0c0c | フランス語 (カナダ)
0x100c | フランス語 (スイス)
0x140c | フランス語 (ルクセンブルグ)
0x040d | ヘブライ語
0x040e | ハンガリー語
0x040f | アイスランド語
0x0410 | イタリア語 (標準)
0x0810 | イタリア語 (スイス)
0x0411 | 日本語
0x0412 | 韓国語
0x0812 | 韓国語 (JoHab)
0x0413 | オランダ語 (標準)
0x0813 | オランダ語 (ベルギー)
0x0414 | ノルウェー語 (ブークモール)
0x0814 | ノルウェー語 (ニーノシク)
0x0415 | ポーランド語
0x0416 | ポルトガル語 (ブラジル)
0x0816 | ポルトガル語 (標準)
0x0418 | ルーマニア語
0x0419 | ロシア語
0x041a | クロアチア語
0x081a | セルビア語 (ラテン)
0x0c1a | セルビア語 (キリル)
0x041b | スロバキア語
0x041c | アルバニア語
0x041d | スウェーデン語
0x081d | スウェーデン語 (フィンランド)
0x041e | タイ語
0x041f | トルコ語
0x0421 | インドネシア語
0x0422 | ウクライナ語
0x0423 | ベラルーシ語
0x0424 | スロベニア語
0x0425 | エストニア語
0x0426 | ラトビア語
0x0427 | リトアニア語
0x0429 | ペルシア語
0x042a | ベトナム語
0x042d | バスク語
0x0436 | アフリカーンス語
0x0438 | フェロー語

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::GetLocaleList


IDataFunctions_4_0::LocalizeCurrency

このメソッドは、指定したロケールと通貨記号の書式設定に基づいて、金額値の文字列表記を取得するために使います。

定義

HRESULT IDataFunctions_4_0::LocalizeCurrency(
VARIANT cyCurrency,
VARIANT vtLocale,
VARIANT vtCurrencySymbol,
VARIANT* pvtRet
);

パラメータ

cyCurrency

[in] 文字列として書式設定する値を含む Currency Variant です。

vtLocale

[in, optional] 文字列の書式設定に使うロケールを含む Variant です。

vtCurrencySymbol

[in, optional] 文字列を書式設定するときに使う通貨記号を含む Variant です。

pvtRet

[out, retval] 金額値の文字列表記を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertStringToCurrency


IDataFunctions_4_0::Money

このメソッドは、既定のロケールまたは指定したロケールに基づいて、金額値の long を同等の文字列表記に変換するために使います。

定義

HRESULT IDataFunctions_4_0::Money(
long lMoney,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

lMoney

[in] 変換を実行するために使うロケールの基本通貨単位で指定した、文字列に変換する金額値を含む long です。この値は OLE Currency 型ではありません。

vtLocale

[in] 金額値を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 結果の文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertMoneyStringToNumber


IDataFunctions_4_0::Number

このメソッドは、既定のロケールまたは指定したロケールに基づいて、long 整数を同等の文字列表記に変換するために使います。

定義

HRESULT IDataFunctions_4_0::Number(
long lNumber,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

lNumber

[in] 文字列に変換する数字を含む long です。

vtLocale

[in] 数字を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 指定した数字の文字列表記を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertNumberString


IDataFunctions_4_0::Time

このメソッドは、Date を時刻の文字列表記に変換するために使います。

定義

HRESULT IDataFunctions_4_0::Time(
DATE dtDate,
VARIANT vtLocale,
VARIANT* pvtRet
);

パラメータ

dtDate

[in] 変換する時刻値を含む Date 型です。

vtLocale

[in] 時刻値を文字列に変換するために使うロケールを指定する Variant です。このパラメータが指定されなかった場合、DataFunctions オブジェクトの Locale プロパティが使われます。

pvtRet

[out, retval] 指定した時刻値の文字列表記を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertTimeString


IDataFunctions_4_0::ValidateDateTime

このメソッドは、文字列に有効な日付または時刻、あるいはその両方が含まれているかどうかを確認するため、および、指定した範囲に当てはまるかどうかを必要に応じて確認するために使います。

定義

HRESULT IDataFunctions_4_0::ValidateDateTime(
VARIANT vtDate,
VARIANT vtMin,
VARIANT vtMax,
VARIANT* pvtValid
);

パラメータ

vtDate

[in] 検証する値を含む Variant です。この値には、日付または時刻、あるいはその両方を指定できます。

vtMin

[in] 範囲の下限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMin パラメータは範囲の検証では無視されます。

vtMax

[in] 範囲の上限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMax パラメータは範囲の検証では無視されます。

pvtValid

[out, retval] vtDate パラメータが有効かどうかを示すブール値を返すときに使われる Variant へのポインタです。値が True の場合、vtDate パラメータは有効な日付または時刻、あるいは日付/時刻であり、範囲が指定されているときは、その範囲内にあることを示します。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtValid パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::Date

IDataFunctions_4_0::DateTime

IDataFunctions_4_0::Time

IDataFunctions_4_0::ConvertDateString

IDataFunctions_4_0::ConvertDateTimeString

IDataFunctions_4_0::ConvertTimeString


IDataFunctions_4_0::ValidateFloat

このメソッドは、文字列に有効な浮動小数点数が含まれているかどうかを確認するため、および、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認するために使います。

定義

HRESULT IDataFunctions_4_0::ValidateFloat(
VARIANT vtNumber,
VARIANT vtMin,
VARIANT vtMax,
VARIANT* pvtValid
);

パラメータ

vtNumber

[in] 検証する浮動小数点数を含む Variant です。

vtMin

[in] 範囲の下限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMin パラメータは範囲の検証では無視されます。

vtMax

[in] 範囲の上限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMax パラメータは範囲の検証では無視されます。

pvtValid

[out, retval] vtNumber パラメータが有効かどうかを示すブール値を返すときに使われる Variant へのポインタです。値が Trueの場合は、vtNumber パラメータが有効な浮動小数点数であり、範囲が指定されているときは、その範囲内にあることを示します。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtValid パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::Float

IDataFunctions_4_0::ConvertFloatString


IDataFunctions_4_0::ValidateNumber

このメソッドは、数値の文字列表記が有効かどうかを確認するため、および、指定した範囲にその数値が当てはまるかどうかを必要に応じて確認するために使います。

定義

HRESULT IDataFunctions_4_0::ValidateNumber(
VARIANT vtNumber,
VARIANT vtMin,
VARIANT vtMax,
VARIANT* pvtValid
);

パラメータ

vtNumber

[in] 検証する数字の文字列表記を含む Variant です。

vtMin

[in] 範囲の下限を指定する値を含む Variant です。このパラメータの既定値は Null です。Null の場合、vtMin パラメータは範囲の検証では無視されます。

vtMax

[in] 範囲の上限を指定する値を含む Variant です。vtMax パラメータの既定値は Null です。Null の場合、このパラメータは範囲の検証では無視されます。

pvtValid

[out, retval] vtNumber パラメータが有効かどうかを示す Boolean を返すときに使われる Variant へのポインタです。値が True の場合、vtNumber パラメータは有効な数値であり、範囲が指定されているときは、その範囲内にあることを示します。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtValid パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DataFunctions オブジェクト

IDataFunctions_4_0::Number

IDataFunctions_4_0::ConvertNumberString


DBStorage オブジェクト

このメソッドは、主に、発注情報とレシート情報の保存のため、Dictionary オブジェクトと SimpleList オブジェクトを、データベースと相互にマップするために使います。DBStorage オブジェクトは、各ページに必要に応じて作成されます。

ProgID: | Commerce.DBStorage (外部作成可能)
COM クラス名: | MSCSDBStorage_3_0
COM インターフェイス名: | IMSCSDBStorage_3_0
インターフェイス ID 定数: | IID_IMSCSDBStorage_3_0
ヘッダー ファイル: | mspu_guids.h
タイプ ライブラリ名: | Commerce 1.0 Type Library
DLL 名: | Commerce.dll
スレッド モデル: | 両方

C++ で DBStorage オブジェクトのプロパティとメソッドにアクセスするには、IMSCSDBStorage_3_0 インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、DBStorage オブジェクトの唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Mapping | IDispatch | DBStorage オブジェクトがデータの挿入と取得に使う、OrderForm オブジェクトまたは Dictionary オブジェクトのエントリに、データベースの列をマップします。 このプロパティは読み取りと書き込みが可能です。

次の表は、DBStorage オブジェクトのメソッドを示しています。

メソッド | 説明
CommitData | データベースの記憶領域にある 1 つ以上のレコードを更新します。
DeleteData | Dictionary オブジェクトまたは OrderForm オブジェクトに格納されているデータに基づいて、データベースの記憶領域から行を削除します。
DeleteDataKey | 指定したキーに基づいて、データベースの記憶領域からデータ行を削除します。
GetData | 指定したキー値に基づいて、データベースの記憶領域からデータ行を取得します。
InitStorage | オブジェクトを初期化します。ほかの DBStorage メソッドを呼び出す前に、必ずこのメソッドを呼び出さなければなりません。
InsertData | 指定したデータをデータベースの記憶領域に挿入します。
LookupData | 指定した列の名前と値に基づいて、データベースの記憶領域からデータ行を取得します。
LookupMultipleData | データベースの記憶領域から複数の結果を取得します。
ProcessData | 指定した行の MarshalColumn 列に格納されているデータをアンパックして、Dictionary オブジェクトにその結果の行を返します。

解説

DBStorage オブジェクトは、Dictionary オブジェクトおよび OrderForm オブジェクトとサイトのデータベース間のインターフェイスの働きをします。DBStorage オブジェクトには、データベースとデータ オブジェクト間のデータ転送を行うメソッドが含まれています。

Server オブジェクトの CreateObject メソッドを使って DBStorage オブジェクトのインスタンスを作成すると、DBStorage オブジェクトの初期化されていないインスタンスが返されます。返されたオブジェクトのインスタンスを初期化するには、InitStorage メソッドを使います。InitStorage メソッドを呼び出す前に、ほかの DBStorage メソッドを呼び出そうとすると、エラーになります。

DBStorage オブジェクトは、データベースからデータを取得すると、適切な種類のデータ オブジェクト (OrderForm オブジェクトまたは Dictionary オブジェクト) を作成し、要求されたデータをそこに格納した後に、そのデータ オブジェクトを返します。データベースにデータを保存するために DBStorage オブジェクトを使う場合、保存するデータが含まれている OrderForm オブジェクトまたは Dictionary オブジェクトを DBStorage オブジェクトに渡すと、DBStorage オブジェクトは、データをこれらのデータ オブジェクトからデータベースにコピーします。

関連項目

汎用オブジェクト


IMSCSDBStorage_3_0::CommitData

このメソッドは、指定した Dictionary オブジェクトまたは OrderForm オブジェクトの内容に基づいて、データベース テーブルを更新するために使います。

定義

HRESULT IMSCSDBStorage_3_0::CommitData(
VARIANT vtReserved,
IDispatch* pdispData
);

パラメータ

vtReserved

[in] 将来の使用のために予約されている Variant です。CommitData メソッドは、このパラメータの値を無視します。

pdispData

[in] 更新されたデータを含む OrderForm または Dictionary オブジェクトの IDispatch インターフェイス ポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CommitData メソッドは、TimeStamp 型のフィールドを含むデータベース テーブルをサポートしていません。代わりに、DBStorage.InitStorage メソッドに対して vtChanged パラメータを使うと、TimeStamp フィールドを使用した場合と同等の機能を実現できます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage

IMSCSDBStorage_3_0::InsertData


IMSCSDBStorage_3_0::DeleteData

このメソッドは、指定した Dictionary オブジェクトまたは OrderForm オブジェクトに格納されているデータに基づいて、データ ソースから行を削除するために使います。

定義

HRESULT IMSCSDBStorage_3_0::DeleteData(
VARIANT vtReserved,
IDispatch* pdispData
);

パラメータ

vtReserved

[in] 将来の使用のために予約されている Variant です。このパラメータは、DeleteData メソッドでは無視されます。

pdispData

[in] 削除するデータ オブジェクトへのポインタです。このデータ オブジェクトは、OrderForm または Dictionary のいずれかを指定できます。ただし、オブジェクトの種類は、InitStorage メソッドの最初の呼び出しのときに ProgID として指定したオブジェクトの種類に対応しなければなりません。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

DeleteDataKey メソッドは、基になるテーブルのキー列に格納された値しか要求しないという点で、DeleteData メソッドと異なります。このキー列は、InitStorage メソッドの前回の呼び出しのときに、基になるテーブルにキーとして指定した列です。

たとえば、SQL テーブルの IDENTITY フィールドをキーとしてデータ ソースに指定すると、適切なカウンタ値を与えるだけで、指定した行の列をすべて削除できます。また、1 つ以上の列に格納されている値で Dictionary オブジェクトを初期化して、それを DeleteData メソッドに渡すこともできます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage

IMSCSDBStorage_3_0::DeleteDataKey

IMSCSDBStorage_3_0::InsertData


IMSCSDBStorage_3_0::DeleteDataKey

このメソッドは、指定したキー値に基づいて、データ行を削除するために使います。

定義

HRESULT IMSCSDBStorage_3_0::DeleteDataKey(
VARIANT vtReserved,
VARIANT vtKey
);

パラメータ

vtReserved

[in] このパラメータは、将来の使用のために予約されており、現在実装されている DeleteDataKey メソッドでは無視されます。このパラメータは、Site Server 3.0 Commerce Edition との互換性のために必須ですが、現時点ではまだ使われていません。

vtKey

[in] 削除する行のキー値を含む Variant です。このキーは、InitStorage メソッドの最初の呼び出しのときにテーブル キーとして指定した列に対応しています。たとえば、InitStorage メソッドを呼び出したときに、"some_column" をテーブル キーとして指定すると、DeleteDataKey メソッドは、vtKey パラメータに格納された値を持つ "some_column" を検索して、対応するデータ行を削除します。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

DeleteDataKey メソッドは、基になるテーブルのキー列に格納された値しか要求しないという点で、DeleteData メソッドと異なります。このキー列は、InitStorage メソッドの前回の呼び出しのときに、基になるテーブルにキーとして指定した列です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage

IMSCSDBStorage_3_0::DeleteData

IMSCSDBStorage_3_0::InsertData


IMSCSDBStorage_3_0::GetData

このメソッドは、指定したキー値に基づいて、データベースからデータ行を取得するために使います。データが見つかると、このメソッドは、OrderForm オブジェクトまたは Dictionary オブジェクトを作成し、要求されたデータを格納して返します。

定義

HRESULT IMSCSDBStorage_3_0::GetData(
VARIANT vtReserved,
VARIANT vtKey,
VARIANT* pvtRet
);

パラメータ

vtReserved

[in] 将来の使用のために予約されている Variant です。GetData メソッドは、このパラメータに格納された値を無視します。

vtKey

[in] 検索条件となるキー値を含む Variant です。GetData メソッドは、InitStorage メソッドの最初の呼び出しのときにテーブル キーとして指定したテーブル列でこの値を検索します。

pvtRet

[out, retval] 取得された行を返すために使う Dictionary オブジェクトまたは OrderForm オブジェクトを返すための Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

検索対象の列がキーの場合、パフォーマンスの理由から、GetData メソッドが LookupData メソッドよりも好まれます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage

IMSCSDBStorage_3_0::LookupData


IMSCSDBStorage_3_0::InitStorage

このメソッドは、DBStorage オブジェクトを初期化するために使います。オブジェクトを作成した直後、および、ほかのオブジェクト メソッドを呼び出す直前に、必ずこのメソッドを呼び出さなければなりません。InitStorage メソッドを呼び出す前に、ほかのメソッドを呼び出そうとすると、エラーになります。

定義

HRESULT IMSCSDBStorage_3_0::InitStorage(
VARIANT vtDataSourceOrDSN,
BSTR Table,
BSTR bstrKey,
VARIANT vtProgID,
VARIANT vtMarshal,
VARIANT vtChanged
);

パラメータ

vtDataSourceOrDSN

[in] DataSource オブジェクトの有効な IDispatch ポインタを参照するか、またはデータ ソース名 (DSN) を参照する Variant です。

Table

[in] データを維持するデータ ソース内のテーブルの名前を含む BSTR です。

bstrKey

[in] DBStorage オブジェクトがデータベース テーブルへのキーとして使用する列名を含む BSTR です。この列は、一意の値が含まれるように指定する必要があります。

vtProgID

[in] DBStorage メソッドによってデータがやりとりされるオブジェクトの ProgID を含む Variant です。このパラメータには、Dictionary オブジェクトを格納するときは Commerce.Dictionary を指定し、OrderForm オブジェクトを格納するときは Commerce.OrderForm を指定します。データベースから取得したデータを返すメソッド (たとえば GetData など) は、指定されたクラスのインスタンスを作成し、要求されたデータをその中に格納します。

vtMarshal

[in] データベースの列の名前を示すテキスト文字列を含む Variant です (省略可能)。CommitData メソッドまたは InsertData メソッドは、シリアライズされたエンコード済みバイナリ形式のデータを指定されたデータ オブジェクトから取得すると、すべてこのデータベースに保存します。格納されている項目のオブジェクトがデータベース内に対応する列名を持つ場合も、オブジェクトはデータベースのこれらの列に格納されます。この引数が指定されている場合、データベースにこの名前の列が存在する必要があり、存在しない場合はエラーが発生します。この引数が指定されていない場合、オブジェクトのデータは連続的にならず、バイナリ形式でデータベースに保存されません。また、データベース内に対応する列を持たないオブジェクトの項目は破棄されます。Microsoft SQL Server データベースを使う場合、この列のデータの最大サイズは、 SQL Server のテキストまたはイメージのデータ型 (2,147,483,647 バイト) と同じです。

vtChanged

[in] データの変更時に日付を書き込むデータベースのキーまたは属性の名前を含む Variant です。データベースに存在する列名を指定しないと、変更日付はマーシャリングされたデータに入ります。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト


IMSCSDBStorage_3_0::InsertData

このメソッドは、指定された Dictionary オブジェクトのコンテンツをデータベース行に挿入するために使います。

定義

HRESULT IMSCSDBStorage_3_0::InsertData(
VARIANT vtReserved,
IDispatch* pdispData
);

パラメータ

vtReserved

[in] 将来の使用のために予約されている Variant です。このパラメータは InsertData メソッドに無視されます。

pdispData

[in] 挿入するデータを含む Dictionary オブジェクトまたは OrderForm オブジェクトの IDispatch ポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage

IMSCSDBStorage_3_0::CommitData


IMSCSDBStorage_3_0::LookupData

このメソッドは、指定した列名と値に基づいて、データ ソースから単一行を取得するために使います。データが見つかると、このメソッドは、要求されたデータが含まれる OrderForm オブジェクトまたは Dictionary オブジェクト (InitStorage メソッドに渡される vtProgID パラメータによって異なる) を作成して返します。

定義

HRESULT IMSCSDBStorage_3_0::LookupData(
VARIANT vtReserved,
VARIANT* pvtKeys,
VARIANT* pvtValues,
VARIANT* pvtRet
);

パラメータ

vtReserved

[in] 将来の使用のために予約されている Variant です。LookupData メソッドは、このパラメータに格納されている値を無視します。

pvtKeys

[in] データを検索する列を識別する Variant へのポインタです。この Variant は、SimpleList オブジェクトまたは SAFEARRAY のどちらかです。

pvtValues

[in] 検索する値を識別する Variant へのポインタです。このパラメータは、SimpleList オブジェクトまたは SAFEARRAY のどちらかです。

pvtRet

[out, retval] 検索結果を返すために使う Variant へのポインタです。この Variant は、行データを含む Dictionary オブジェクトの IDispatch インターフェイス ポインタを参照します。メソッド呼び出しが失敗すると、このパラメータは Null と評価されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

pvtKeys パラメータと pvtValues パラメータは、インデックス間の関連付けにおける LookupData メソッドの共有に渡す配列です。これは、これらに同一数のメンバが含まれていることが必要で、pvtValues (N) パラメータに格納されている値が pvtKeys (N) パラメータで指定されている列で検索されることを意味します。

配列に複数の要素が含まれている場合、 LookupData メソッドは、列と値の組み合わせがすべて一致する行を検索します。

LookupData メソッドは単一行のデータしか返さないため、列と値の情報を指定して複数行を取得しようとすると、エラーが発生します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage

IMSCSDBStorage_3_0::GetData

IMSCSDBStorage_3_0::LookupMultipleData


IMSCSDBStorage_3_0::LookupMultipleData

このメソッドは、データベース テーブルから複数の結果を取得するために使います。データが見つかると、このメソッドは SimpleList オブジェクトを作成します。これには、OrderForm オブジェクトまたは Dictionary オブジェクトが含まれます (InitStorage メソッドに渡される vtProgID パラメータによって異なります)。

定義

HRESULT IMSCSDBStorage_3_0::LookupMultipleData(
VARIANT vtReserved,
VARIANT* pvtKeys,
VARIANT* pvtValues,
VARIANT* pvtRet
);

パラメータ

vtReserved

[in] 将来の使用のために予約されている Variant です。LookupData メソッドは、このパラメータに格納されている値を無視します。

pvtKeys

[in] データを検索する列を識別する Variant へのポインタです。この Variant は、SimpleList オブジェクトまたは SAFEARRAY のどちらかです。

pvtValues

[in] 検索する値を識別する Variant へのポインタです。このパラメータは、SimpleList オブジェクトまたは SAFEARRAY のどちらかです。

pvtRet

[out, retval] 検索結果を返すために使う Variant へのポインタです。この Variant は、1 つまたは複数の Dictionary オブジェクト (返されるデータ行ごとに 1 つのオブジェクト) からなる SimpleList オブジェクトの IDispatch インターフェイスを参照します。このメソッドが失敗すると、このパラメータは Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage

IMSCSDBStorage_3_0::GetData

IMSCSDBStorage_3_0::LookupData


IMSCSDBStorage_3_0::get_Mapping/put_Mapping

Mapping プロパティは、データベース列を OrderForm オブジェクトまたは Dictionary オブジェクトのエントリにマップします。これらのオブジェクトは、DBStorage オブジェクトによってデータを挿入および取得するために使われます。

定義

Get メソッド :

HRESULT IMSCSDBStorage_3_0::get_Mapping(
IDispatch** Mapping
);

Put メソッド :

HRESULT IMSCSDBStorage_3_0::put_Mapping(
IDispatch* Mapping
);

パラメータ

Mapping

[in] プロパティを入力する場合は、この DBStorage オブジェクト インスタンスに設定されたマッピング Dictionary を含む IDispatch インターフェイスです。
[out, retval] プロパティを取得する場合は、この DBStorage オブジェクト インスタンスのマッピング Dictionary を返すために使う IDispatch インターフェイスです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

マッピング Dictionary オブジェクトを使うと、データベース テーブルの列名をユーザーが選択した 1 つ以上の名前にマップできます。通常は、サイト ユーザーに表示するために使います。たとえば、データベース テーブルに "shopper_name" という名前の列があるが、この列の内容をよりわかりやすく "Shopper Name" と表示するとします。この場合は、Dictionary オブジェクトの "shopper_name" キーを "Shopper Name" に初期化し、この Dictionary オブジェクトを put_Mapping メソッドに渡します。GetData など、DBStorage オブジェクトのデータを取得するメソッドを呼び出して Dictionary オブジェクトにデータ行を読み込むと、"shopper_name" 列の Dictionary キーは "Shopper Name" になっています。これは、値をサイト ユーザーに表示する前に、ユーザーが列名をよりわかりやすい名前に変換する必要がないことを意味します。単純に、GetData メソッドによって返された Dictionary オブジェクトに表示されているとおりに、キーや値を表示することもできます。

Mapping パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage


IMSCSDBStorage_3_0::ProcessData

このメソッドは、指定した行に対するデータベース中の MarshalColumn 行に格納されているデータをアンパックし、その結果の行を Dictionary オブジェクトに返すために使います。

定義

HRESULT IMSCSDBStorage_3_0::ProcessData(
IDispatch* pdispData,
IDispatch** ppdispRet
);

パラメータ

pdispData

[in] マーシャリングされたされたデータを含む Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。

ppdispRet

[out, retval] マーシャリングを解除されたデータを返すために使う Dictionary オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppdispRet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DBStorage オブジェクト

IMSCSDBStorage_3_0::InitStorage


Dictionary オブジェクト

このオブジェクトは、メモリ内の名前と値の組み合わせの作成、格納、取得をサポートするために使います。Dictionary オブジェクト内の値はすべて Variant です。これは、大概の値から Dictionary オブジェクトを作成でき (ほかの Dictionary オブジェクトを含む)、どんな組み合わせの Variant でも同じ Dictionary オブジェクトに格納できることを意味します。

ProgID: | Commerce.Dictionary (外部作成可能)
COM クラス名: | CDictionary
COM インターフェイス名: | IDictionary
インターフェイス ID 定数: | IID_IDictionary
ヘッダー ファイル: | commerce.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Core Components Type Library
DLL 名: | MscsCore.dll
スレッド モデル: | 両方

C++ で Dictionary オブジェクトのプロパティとメソッドにアクセスするには、IDictionary インターフェイスを使います。

次の表は、Dictionary オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Count | long | Dictionary オブジェクトにある要素の数を返します。 このプロパティは読み取り専用です。
Prefix | BSTR | Dictionary オブジェクトのコンテンツが保存されるときに (通常はデータベースに)、フィルタとして機能する文字列を格納します。名前と値の組み合わせの名前が特定のプレフィックスで始まる場合、その名前と値の組み合わせは保存されません。 このプロパティは読み取りと書き込みが可能です。
Value | Variant | 指定された Dictionary キーの値を格納します。 このプロパティは読み取りと書き込みが可能です。

解説

Dictionary オブジェクトは汎用コレクションとなるように設計されているので、その内部構造でサポートされていれば、ほとんどのものに使えます。

Dictionary オブジェクトを明示的に作成する必要がある場合 (つまり、ほかの Commerce Server 2000 のオブジェクトでオブジェクトが作成されない場合)、次のように Active Server Pages (ASP) Server オブジェクトの CreateObject メソッドを使います。

Set dictUser = Server.CreateObject("Commerce.Dictionary")

オブジェクトを作成した後、次のようにオブジェクトに要素を追加します。

dictUser.first_name = "Steve"

この例では、first_name が Dictionary キーで、Steve はこのキーに割り当てられた値になります。各ステートメントは、Dictionary キーを宣言し、そのキーを Dictionary オブジェクトに追加し、キーを値に設定するという 3 つの処理を実行します。

Dictionary オブジェクトから値を抽出する方法はいくつかあります。object.key 識別子を単純に代入ステートメントの右辺に配置することができます。こうした代入によって、参照先のキーの値が返されます。

my_first_name = dictUser.first_name

または、Value メソッドを使って、指定されたキーの値を取得することができます。

my_first_name = dictUser.Value("first_name")

Microsoft Visual Basic Scripting Edition (VBScript) の For Each ステートメントを使って、Dictionary オブジェクトのキーまたは値を次のように列挙することもできます (この例では、ディクショナリのすべての値にテキストが含まれているものと仮定しています)。

' Get the key names
For Each element In dictUser
    Response.Write element
Next

' Get the values
For Each element In dictUser
    Response.Write dictUser.Value(element)
Next

Dictionary オブジェクト内のデータは、DBStorage オブジェクトを使ってデータベース テーブルに保存することができます。

Commerce Server 2000 サイトは、Dictionary オブジェクトの実装を使って、ほかのさまざまなオブジェクトやパイプライン コンポーネントで必要となる一連のデータを格納します。

以前のバージョンのディクショナリとは異なり、Commerce Server 2000 のディクショナリは名前と値の組み合わせのハッシュとして実装されています。これによって、ディクショナリは、大量のキーと値の組み合わせが格納されている場合でも速く検索を実行できます。また、ディクショナリ キーの列挙が格納されたときと同じ順番では返されない場合があるという副次的な作用もあります。

ディクショナリ オブジェクトは、パフォーマンス上の理由から Free Threaded Marshaller (FTM) を集計します (ディクショナリがどの COM アパートメントから呼び出されていても、その呼び出しがプロキシを通過しないようにするため) 。このため、ディクショナリにはアパートメント スレッド オブジェクトへの参照を格納できません。これを行うと、オブジェクトのポインタが取得、使用されたときに、RPC_E_WRONGTHREAD などのエラーが発生する可能性があります。

Dictionary オブジェクトは、ICloneable インターフェイスおよび IPersistXML インターフェイスをサポートしています。ICloneable インターフェイスは、すべての名前と値の組み合わせを新しいディクショナリにディープ コピーするために使います。IPersistXML インターフェイスは、Dictionary エントリを XML 文字列に変換し、再び戻すために使います。

関連項目

汎用オブジェクト

IPersistXML インターフェイス

SimpleList オブジェクト


IDictionary::get_Count

Count プロパティは読み取り専用の long で、Dictionary オブジェクトのインスタンス内にある要素の数を含んでいます。

定義

HRESULT IDictionary::get_Count(
long* Count
);

パラメータ

Count

[out, retval] get_Count メソッドが Dictionary オブジェクト内の要素の数を格納する long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Count パラメータが有効なデータをポイントするのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Dictionary オブジェクト


IDictionary::get_Prefix, put_Prefix

Prefix プロパティは読み取りと書き込みが可能な文字列で、Dictionary オブジェクト内のコンテンツがデータベースなどに保存されるときに、フィルタとして作用します。名前と値の組み合わせの名前が特定のプレフィックスで始まる場合、その名前と値の組み合わせは保存されません。既定のプレフィックスはアンダースコア (_) です。アンダースコア文字で始まるキーワードは、すべて対象から外れます。

定義

Get メソッド :

HRESULT IDictionary::get_Prefix(
BSTR* Prefix
);

Put メソッド :

HRESULT IDictionary::put_Prefix(
BSTR Prefix
);

パラメータ

Prefix

[in] プロパティを入力する場合は、プレフィックスを含む BSTR です。
[out, retval] プロパティを取得する場合は、プレフィックスを含む BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Prefix パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

既定のプレフィックスはアンダースコア (_) です。アンダースコア文字で始まるキーワードは、すべて対象から外れます。

パイプライン コンポーネントは、通常はレシートに "_cc_" というプレフィックスを設定して保存します。したがって、クレジット カードの情報は、データベースにはまったく保存されません。パイプライン コンポーネントによって使われる実際の文字列は、ほかのものに変更することもできます。

関連項目

Dictionary オブジェクト


IDictionary::get_Value, put_Value

Value プロパティを使うと、Dictionary オブジェクト内にある名前と値の対を取得したり、設定したりできます。

定義

Get メソッド :

HRESULT IDictionary::get_Value(
BSTR bstrName,
VARIANT* Value
);

Put メソッド :

HRESULT IDictionary::put_Value(
BSTR bstrName,
VARIANT Value
);

Putref メソッド :

HRESULT IDictionary::putref_Value(
BSTR bstrName,
VARIANT Value
);

パラメータ

bstrName

[in] 値を取得または入力する Dictionary キーの名前を含む BSTR です。

Value

[in] プロパティを入力する場合は、bstrName キーによって指定された要素を初期化したときの値を含む Variant です。[out, retval] プロパティを取得する場合、bstrName パラメータによって指定されたキーの値を返すために使われる Variant へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。このメソッドが正常に終了すると、S_OK が返されます。正常に終了しない場合は、失敗を示す HRESULT が返され、Value out-value パラメータは Null に設定されます。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

get_Value メソッドを使ってValue プロパティを読み取る場合、ディクショナリでアクセスされるキーが存在しないと、VT_NULL 型の Variant が返されます。したがって、ディクショナリから論理的にキーを削除するには、キーの値を VT_NULL に設定し、それをディクショナリのクライアントに渡します。しかしながら、論理的に削除されたキー/値の対と存在しないキー/値の対との区別をつけることはできません。Value パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

値を入力する場合、オブジェクト参照を設定するときは putref メソッドを使い、スカラ値を設定するときは put メソッドを使います。

関連項目

Dictionary オブジェクト


DictionaryXMLTransforms オブジェクト

このオブジェクトは、指定した XML Data-Reduced (XDR) スキーマを使って、データを Dictionary オブジェクトから拡張マークアップ言語 (XML) に、またはその逆方向に変換するために使います。

ProgID: | Commerce.DictionaryXMLTransforms (外部作成可能)
COM クラス名: | DictionaryXMLTransforms
COM インターフェイス名: | _DictionaryXMLTransforms
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 DictionaryXMLTransform Type Library
DLL 名: | DictionaryXMLTransforms.dll
スレッド モデル: | アパートメント

重要

  • DictionaryXMLTransforms オブジェクトによって処理できるディクショナリ キーは、XML ノード名として有効な名前を持つものに限られます。使用できる文字は、A ～ Z およびアンダースコア (_) です。*、\、および英語以外の言語の文字などは使用できません。

  • ディクショナリ キーの値は、すべて URL エンコードされている必要があります。

C++ で DictionaryXMLTransforms オブジェクトのプロパティとメソッドにアクセスするには、_DictionaryXMLTransforms インターフェイスを使います。

次の表は、DictionaryXMLTransforms オブジェクトのメソッドを示しています。

メソッド | 説明
GenerateSampleXMLInstanceFromDictionary | 指定された Dictionary オブジェクトを基にして、XML インスタンスを作成します。
GenerateXMLForDictionaryUsingSchema | Dictionary オブジェクトから、指定されたスキーマに準拠した XML インスタンスを抽出します。
GetXMLFromFile | 指定されたファイルを基にして、XML Document Object Model (DOM) ドキュメントを生成します。
ReconstructDictionaryFromXML | 指定された XML インスタンスを変換して、Dictionary オブジェクトにします。変換するインスタンスは、指定されたスキーマに準拠している必要があります。

解説

payment.asp ファイルと _recvpo.asp ファイルの中に、このメソッドを呼び出すサンプル コードが記述されています。XML スキーマの使用例は、ソリューション サイトの POSchema.xml ファイルにあります。

関連項目

汎用オブジェクト

Dictionary オブジェクト


_DictionaryXMLTransforms::GenerateSampleXMLInstanceFromDictionary

このメソッドは、XML Data-Reduced (XDR) スキーマを生成するために使います。このメソッドは、指定された Dictionary オブジェクトを基にして、XML インスタンスを作成します。この XML インスタンスは、BizTalk エディタなどのツールにインポートされ、それらツールは、その与えられたインスタンスに基づいてスキーマを構築します。

定義

HRESULT _DictionaryXMLTransforms::GenerateSampleXMLInstanceFromDictionary(
IDictionary* Dictionary,
BSTR ElementName,
VARIANT_BOOL bIgnoreUnderScore,
IXMLDOMNode** RetValue
);

パラメータ

Dictionary

[in] XML に変換するデータを含む Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

ElementName

[in] 要素名を含む BSTR です。

bIgnoreUnderScore

[in] ディクショナリの先頭がアンダースコアで始まるディクショナリ キーを無視するかどうかを指定する VARIANT_BOOL です。この値は、通常は True に設定してください。

RetValue

[out, retval] 新しく作成された XML を含むXMLDOMNode オブジェクトのIXMLDOMNode インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RetValue パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DictionaryXMLTransforms オブジェクト


_DictionaryXMLTransforms::GenerateXMLForDictionaryUsingSchema

このメソッドは、指定されたスキーマに準拠した XML インスタンスを Dictionary オブジェクトから抽出するために使います。

定義

HRESULT _DictionaryXMLTransforms::GenerateXMLForDictionaryUsingSchema(
IDictionary* Dictionary,
IXMLDOMDocument* xmlSchema,
IXMLDOMNode** RetValue
);

パラメータ

Dictionary

[in] 変換対象の Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

xmlSchema

[in] XML スキーマを含む XMLDOMDocument オブジェクトの IXMLDOMDocument インターフェイスへの参照です。

RetValue

[out, retval] 返される XMLDOMNode オブジェクトの IXMLDOMNode インターフェイスへの参照を保持するポインタです。このオブジェクトには、XML インスタンスが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RetValue パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DictionaryXMLTransforms オブジェクト


_DictionaryXMLTransforms::GetXMLFromFile

このメソッドは、指定したファイルを基に XML の Document Object Model (DOM) ドキュメントを生成するために使います。

定義

HRESULT _DictionaryXMLTransforms::GetXMLFromFile(
BSTR sFileName,
IXMLDOMDocument** RetValue
);

パラメータ

sFileName

[in] 変換するファイル名を含む BSTR です。

RetValue

[out, retval] 返される XMLDOMDocument オブジェクトの IXMLDOMDocument インターフェイスへの参照を保持するポインタです。このオブジェクトには、変換されたファイル データが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RetValue パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DictionaryXMLTransforms オブジェクト


_DictionaryXMLTransforms::ReconstructDictionaryFromXML

このメソッドは、指定した XML インスタンスを Dictionary オブジェクトに変換するために使います。変換するインスタンスは、指定したスキーマに準拠している必要があります。このメソッドは、GenerateXMLForDictionaryUsingSchema メソッドと逆の処理を行います。

定義

HRESULT _DictionaryXMLTransforms::ReconstructDictionaryFromXML(
BSTR szDictionaryXML,
IXMLDOMDocument* xmlSchema,
IDictionary** RetValue
);

パラメータ

szDictionaryXML

[in] XML インスタンスを含む BSTR です。

xmlSchema

[in] 変換に使われる XML スキーマを含む XMLDOMDocument オブジェクトの IXMLDOMDocument インターフェイスへの参照です。

RetValue

[out, retval] 再構築された Dictionary オブジェクトの IDictionary インターフェイスを受け取るためのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RetValue パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

DictionaryXMLTransforms オブジェクト


EuroDisplay オブジェクト

このオブジェクトは、複数の通貨を表示しなければならない場合に、通貨値を変換して書式設定するために使います。

ProgID: | Commerce.EuroDisplay (外部作成可能)
COM クラス名: | EuroDisplay
COM インターフェイス名: | IEuroDisplay
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Euro Display Component Type Library
DLL 名: | EuroDisp.dll
スレッド モデル: | 両方

C++ で EuroDisplay オブジェクトのプロパティとメソッドにアクセスするには、IEuroDisplay インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、EuroDisplay オブジェクトのメソッドを示しています。

メソッド | 説明
ConvertAltStringToCurr | 代替ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にします。
ConvertBaseStringToCurr | 基本ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にします。
ConvertMoney | 初期化済みの変換レートを使って、指定された Currency Variant (基本通貨を単位とする金額値を表現しているもの) を変換し、代替通貨を単位とする Currency Variant にします。
FormatAltMoney | 代替ロケール識別子と代替通貨記号文字列に基づいて、Currency Variant の文字列表記を作成します。
FormatBaseMoney | 基本ロケール識別子と基本通貨記号文字列に基づいて、Currency Variant の文字列表記を作成します。
Initialize | 指定された代替通貨記号、基本通貨記号、代替ロケール ID、基本ロケール ID、および変換レートを使ってオブジェクトを初期化します。

関連項目

表示オブジェクト


IEuroDisplay::ConvertAltStringToCurr

このメソッドは、代替ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にするために使います。

定義

HRESULT IEuroDisplay::ConvertAltStringToCurr(
VARIANT vtMoneyString,
VARIANT* pvarNumber
);

パラメータ

vtMoneyString

[in] 変換する通貨の文字列を含む Variant です。

pvarNumber

[out, retval] 変換済みの通貨情報を返すために使われる、Currency Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvarNumber パラメータが有効なデータをポイントするのは、メソッドが正常に値を戻した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

EuroDisplay オブジェクト

IEuroDisplay::ConvertBaseStringToCurr

IEuroDisplay::FormatAltMoney


IEuroDisplay::ConvertBaseStringToCurr

このメソッドは、基本ロケール識別子で指定された通貨を単位としている金額値の文字列表記を変換して、Currency Variant にするために使います。

定義

HRESULT IEuroDisplay::ConvertBaseStringToCurr(
VARIANT vtMoneyString,
VARIANT* pvarNumber
);

パラメータ

vtMoneyString

[in] 変換する通貨の文字列を含む Variant です。

pvarNumber

[out, retval] 変換済みの通貨情報を返すために使われる、Currency Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvarNumber パラメータが有効なデータをポイントするのは、メソッドが正常に値を戻した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

EuroDisplay オブジェクト

IEuroDisplay::ConvertAltStringToCurr

IEuroDisplay::FormatBaseMoney


IEuroDisplay::ConvertMoney

このメソッドは、初期化済みの変換レートを使って、指定された Currency Variant (基本通貨を単位とする金額値を表記しているもの) を変換し、代替通貨を単位とする Currency Variant にするために使います。

定義

HRESULT IEuroDisplay::ConvertMoney(
VARIANT vtCurrVal,
VARIANT* pvarConvVal
);

パラメータ

vtCurrVal

[in] 基本通貨による金額値を表す Currency Variant です。

pvarConvVal

[out, retval] 代替通貨による金額値を表す Currency Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvarConvVal パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

EuroDisplay オブジェクト


IEuroDisplay::FormatAltMoney

このメソッドは、代替ロケール識別子および代替通貨記号文字列に基づいて、Currency Variant の文字列表記を作成するために使います。

定義

HRESULT IEuroDisplay::FormatAltMoney(
VARIANT vtConvMoney,
BSTR* szAltMoney
);

パラメータ

vtConvMoney

[in] 変換対象となる金額値を含む Currency Variant です。

szAltMoney

[out, retval] 指定した Currency Variant の文字列表記を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

szAltMoney パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

EuroDisplay オブジェクト

IEuroDisplay::ConvertAltStringToCurr

IEuroDisplay::FormatBaseMoney


IEuroDisplay::FormatBaseMoney

このメソッドは、基本ロケール識別子および基本通貨記号文字列に基づいて、Currency Variant の文字列表記を作成するために使います。

定義

HRESULT IEuroDisplay::FormatBaseMoney(
VARIANT vtConvMoney,
BSTR* szBaseMoney
);

パラメータ

vtConvMoney

[in] 変換対象となる金額値を含む Currency Variant です。

szBaseMoney

[out, retval] 指定した Currency Variant の文字列表記を返すために使う BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

szBaseMoney パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

EuroDisplay オブジェクト

IEuroDisplay::ConvertBaseStringToCurr

IEuroDisplay::FormatAltMoney


IEuroDisplay::Initialize

このメソッドは、指定した代替通貨記号、基本通貨記号、代替ロケール ID、基本ロケール ID、および変換レートを使ってオブジェクトを初期化するために使います。

定義

HRESULT IEuroDisplay::Initialize(
BSTR szBaseCurr,
long lBaseLCID,
BSTR szAltCurr,
long lAltLCID,
double flEuroConvRate
);

パラメータ

szBaseCurr

[in] 基本通貨記号文字列を含む BSTR です。

lBaseLCID

[in] 基本ロケール識別子を含む long です。

szAltCurr

[in] 代替通貨記号文字列を含む BSTR です。

lAltLCID

[in] 代替ロケール識別子を含む long です。

flEuroConvRate

[in] 基本通貨を代替通貨に換算するためのレートを含む、Double (8 バイト浮動小数点数) です。たとえば、基本通貨が 1 SF = 0,63 Euros のレートで換算されるスイス フランで、代替通貨が Euro の場合、このパラメータの値は 0,63 になります。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

EuroDisplay オブジェクト


ExpressionEval オブジェクト

このオブジェクトは、指定したコンテキストを 1 つ以上の式に対して評価するために使います。また、拡張マークアップ言語 (XML) フラグメントとして記述したユーザー定義の式を解析し、評価する場合にも使います。

ProgID: | Commerce.ExpressionEvaluator (外部作成可能)
COM クラス名: | ExpressionEval
COM インターフェイス名: | IExpressionEval
インターフェイス ID 定数: | IID_IExpressionEval
ヘッダー ファイル: | ExprArchDLL.h, exprarch.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Expression System Type Library
DLL 名: | exprarch.dll
スレッド モデル: | 両方

C++ では、ExpressionEval オブジェクトのプロパティとメソッドは、IExpressionEval インターフェイスを介してアクセスされます。

次の表は、ExpressionEval オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ExprCount | long | 式キャッシュに読み込まれた式の数を取得します。 このプロパティは読み取り専用です。

次の表は、ExpressionEval オブジェクトのメソッドを示しています。

メソッド | 説明
Connect | ExpressionEval オブジェクトと式ストアとの通信を確立します。
CreateEvalContext | コンテキスト キャッシュ内に新しい ExprEvalContext オブジェクトを作成します。
Eval | 式を評価します。
EvalInContext | 以前にコンテキスト キャッシュ内に読み込まれた、コンテキスト内の式を評価します。
EvalXML | 指定された XML テキストを、式として評価します。
FlushAll | 式キャッシュからすべての式を削除します。
FlushExpr | 指定された式を式キャッシュから削除します。
LoadAll | 式ストアにある式をすべて読み取って、式キャッシュに読み込みます。
LoadExpr | 指定された式を式ストアから読み取って、式キャッシュに読み込みます。
ParseXML | 指定された XML テキストを解析して、有効な式を表しているかどうかを判定します。

解説

式は "式ストア" というデータベースに格納され、ExpressionStore オブジェクトを介してアクセスされます。ExpressionStore オブジェクトが作成されると、ExpressionEval オブジェクトによって式キャッシュとコンテキスト キャッシュが初期化されます。式は、評価前にコンパイルして式キャッシュに読み込んでおく必要があります。評価の実行速度を高めるには、LoadExpr メソッドまたは LoadAll メソッドを使って、式をあらかじめ式キャッシュに読み込んでおきます。

式は、一連のプロファイルに含まれたデータに対して評価されます。プロファイルは、ProfileObject オブジェクト、Dictionary オブジェクト、または IDispatch インターフェイスを介したプロパティへのアクセスをサポートする、そのほかのオブジェクトのいずれかです。一連のプロファイルは、式コンテキストとして参照されます。1 つの評価コンテキストを複数の式で使う予定がある場合、効率を高めるには、CreateEvalContext メソッドを使って、コンテキスト キャッシュ内に格納済みコンテキストを作成します。

式の読み込みや評価を行う前に、Connect メソッドを呼び出す必要があります。

関連項目

式に関するオブジェクト

式レコードセット

式の XML 構造

ExpressionStore オブジェクト

ProfileObject オブジェクト


IExpressionEval::Connect

このメソッドは、式ストアとの通信を確立するために使います。

定義

HRESULT IExpressionEval::Connect(
VARIANT vConnectInfo
);

パラメータ

vConnectInfo

[in] 式ストア接続データを記述する Variant です。これは、接続情報、または既存の ExpressionStore オブジェクトへのポインタを含む BSTR の場合があります。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRSTORE | 0x8110001E | 指定されたデータベースには、有効な式ストアがありません。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_STOREPERMISSIONS | 0x8110000F | 式ストア データベースに対するアクセス権が不十分です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

接続文字列が入力パラメータに渡されると、その接続文字列を使って式ストアにアクセスする ExpressionStore オブジェクトが ExpressionEval オブジェクトにより作成されます。破棄する際には、ExpressionEval オブジェクトが ExpressionStore オブジェクトを破棄します。

式ストアへの接続文字列は、SiteConfigReadOnly オブジェクトを介して、または Commerce Server マネージャ コンソールの Commerce Server マネージャ\グローバル リソース\プロファイル というキーの下にある s_BizDataStoreConnectionString プロパティを介して取得できます。

式の読み込みや評価を行う前に、Connect メソッドを使う必要があります。

ParseXML メソッドおよびフラッシュ メソッドは、式ストアに接続しなくても使うことができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExpressionEval オブジェクト

ExpressionStore オブジェクト

IExpressionStore::Connect

SiteConfigReadOnly オブジェクト


IExpressionEval::CreateEvalContext

このメソッドは、新しい ExprEvalContext オブジェクトを作成してコンテキスト キャッシュに入れるために使います。キャッシュに入れておくことによって、一連のプロファイル オブジェクトを複数の式に対して評価する場合に、評価効率を可能な限り高めることができます。

定義

HRESULT IExpressionEval::CreateEvalContext(
IDictionary* pDictObjs,
IExprEvalContext** ppContext
);

パラメータ

pDictObjs

[in] キャッシュするプロファイルのセットを含む Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

ppContext

[out, retval] 新しく作成された ExprEvalContext オブジェクトの IExprEvalContext インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CreateEvalContext メソッドは、新しい評価コンテキストを一意に識別するための ExprEvalContext オブジェクトを作成し、作成したオブジェクトをコンテキスト キャッシュに格納します。ExprEvalContext オブジェクトによって定義されたコンテキスト内に複数の式がある場合、それらの式を評価するには EvalInContext メソッドを使います。この方法は、Eval メソッドを使う方法よりも効率的です。Eval メソッドでは、評価する式ごとに新しいコンテキストが生成され、破棄されるためです。

コンテキストは、式に対して評価するデータが含まれた一連のプロファイルです。プロファイルは、ProfileObject オブジェクト、Dictionary オブジェクト、または IDispatch インターフェイスを介したプロパティへのアクセスをサポートする、そのほかのオブジェクトのいずれかです。初期状態では、コンテキスト キャッシュに保持されているのはプロファイル オブジェクトへの参照のみです。評価の過程で、プロファイルからプロパティ値が読み取られ、以後の評価でのアクセス速度を向上させるためにキャッシュ中に保持されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppContext パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

注意

  • プロファイル オブジェクトの状態は、ExprEvalContext オブジェクトが有効な間は外部から変更しないでください。変更すると、評価結果が決定されません。

関連項目

ExpressionEval オブジェクト

IExpressionEval::EvalInContext


IExpressionEval::Eval

このメソッドは、式を評価するために使います。

定義

HRESULT IExpressionEval::Eval(
long nExprID,
IDictionary* pDictObjs,
VARIANT* pvResult
);

パラメータ

nExprID

[in] 式ストア内の式を示す一意の識別子を含む long です。

pDictObjs

[in] 一連のプロファイルが含まれる Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

pvResult

[out, retval] 特定のコンテキストで式を評価した結果を示す Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。式の評価結果は pvResult パラメータに格納されます。結果には、True、False、または Null があります。Null は式が評価されなかったことを示します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRID | 0x8110000A | 無効な式 ID が指定されました。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_NOTFOUND | 0x81100012 | 指定された式 ID (nExprID) を式ストアの中から見つけられませんでした。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

式は、評価前にプリコンパイルして式キャッシュに読み込んでおく必要があります。Eval メソッドは、式キャッシュに式があるかどうかをまず確認し、式が見つからない場合には、式ストアにある式を読み込みます。評価の実行速度を向上させるために、式キャッシュに式をあらかじめ読み込んでおくには、LoadExpr メソッドまたは LoadAll メソッドを使います。

式は、一連のプロファイルに含まれたデータに対して評価されます。この一連のプロファイルは評価コンテキストと呼ばれます。新しい評価コンテキスは Dictionary オブジェクトを使った Eval メソッドで生成されます。Eval メソッドでは評価が完了すると新しいコンテキストが破棄されます。同じコンテキストに対して多くの式を評価する必要がある場合、この処理は効率的ではありません。

評価コンテキストが複数の式で使われる場合は、CreateEvalContext メソッドを使ってコンテキスト キャッシュにコンテキストを作成します。EvalInContext メソッドは、この新しい一般的なコンテキストで式を評価するために使います。

Connect メソッドは Eval メソッドを使う前に呼び出す必要があります。

pvResult パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExpressionEval オブジェクト

IExpressionEval::Connect

IExpressionEval::CreateEvalContext

IExpressionEval::EvalInContext

IExpressionEval::LoadExpr


IExpressionEval::EvalInContext

このメソッドは、あらかじめ設定された状態でコンテキスト キャッシュに保存されているコンテキストに対して、式を評価するために使います。

定義

HRESULT IExpressionEval::EvalInContext(
long nExprID,
IExprEvalContext* pContext,
VARIANT* pvResult
);

パラメータ

nExprID

[in] 式ストア内の式を示す一意の識別子を含む long です。

pContext

[in] 評価のために特定のコンテキストを識別する ExprEvalContext オブジェクトの IExprEvalContext インターフェイスへのポインタです。

pvResult

[out, retval] 指定のコンテキストで評価された式の結果を示す Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。式の評価結果は pvResult パラメータに格納されます。結果には、True、False、または Null があります。Null は式が評価されなかったことを示します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRID | 0x8110000A | 無効な式 ID が指定されました。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_MISSINGPROP | 0x8110001D | 無効な ExprEvalContext オブジェクト
E_EXPR_NOTFOUND | 0x81100012 | 指定された式 ID (nExprID) を式ストアの中から見つけられませんでした。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Eval メソッドは、各評価の評価コンテキストを作成および破棄します。保存されているコンテキストに対して評価を行うと、同じコンテキストで複数の式を評価する必要がある場合にパフォーマンスが最適化されます。CreateEvalContext メソッドを使って、評価するコンテキストを作成します。

式の結果もコンテキスト キャッシュに保存されます。特定の式の結果が EvalInContext メソッドを使った同じ ExprEvalContext オブジェクトから何度も要求される場合、結果は式を再評価するのではなく、キャッシュから取得されます。キャッシュから取得した方が効率的です。

注意

  • コンテキストを構成するプロファイル オブジェクトの状態は、ExprEvalContext オブジェクトが有効な間は外部から変更しないでください。変更すると、評価結果が決定されません。

Connect メソッドは EvalInContext メソッドを使う前に呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pvResult パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

ExpressionEval オブジェクト

IExpressionEval::Connect

IExpressionEval::CreateEvalContext

IExpressionEval::Eval

IExpressionEval::LoadExpr


IExpressionEval::EvalXML

このメソッドは、拡張マークアップ言語 (XML) フラグメントで表される式を評価するために使います。

定義

HRESULT IExpressionEval::EvalXML(
BSTR bstrXMLExpr,
IDictionary* pDictObjs,
VARIANT* pvResult
);

パラメータ

bstrXMLExpr

[in] 評価される XML フラグメントを含む BSTR です。

pDictObjs

[in] 一連のプロファイルが含まれる Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

pvResult

[out, retval] 指定したコンテキスト内の式を評価した結果を示す Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。式の評価結果は pvResult パラメータに格納されます。結果には、True、False、または Null があります。Null は式が評価されなかったことを示します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | 0x81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | 0x81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | 0x81100016 | 無効な句が見つかりました。
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADOPER | 0x81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | 0x81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | 0x81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_XMLPARSE | 0x81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

XML は評価の前に解析されます。XML 形式の詳細については、「式の XML 構造」を参照してください。

EvalXML メソッドで評価される式は固定されていません。つまり、式ストアに格納されていない、または式キャッシュに読み込まれていません。Eval メソッドは固定式を評価するために使います。

新しい ExprEvalContext オブジェクトが作成された後、評価が終わった各 XML フラグメントが破棄されます。

Connect メソッドは EvalXML メソッドを使う前に呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pvResult パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

式レコードセット

式の XML 構造

ExpressionEval オブジェクト

IExpressionEval::Connect

IExpressionEval::Eval

IExpressionEval::ParseXML


IExpressionEval::get_ExprCount

ExprCount プロパティは読み取り専用の整数で、正常にプリコンパイルされ、式キャッシュに読み込まれた式の数を示します。構文エラーが含まれている式は正常にプリコンパイルされません。

定義

HRESULT IExpressionEval::get_ExprCount(
long* pExprCount);

パラメータ

pExprCount

[out, retval] 式ストアにロードされた式の数を返すために使う long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ExpressionEval オブジェクト

IExpressionEval::FlushAll

IExpressionEval::FlushExpr

IExpressionEval::LoadAll

IExpressionEval::LoadExpr


IExpressionEval::FlushAll

このメソッドは、式キャッシュからすべての式を削除するために使います。

定義

HRESULT IExpressionEval::FlushAll(
);

パラメータ

なし。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

FlushAll メソッドは、式キャッシュからすべての式を削除し、読み取り専用の ExprCount プロパティをゼロ (0) にリセットします。

FlushExpr メソッドは、式キャッシュから特定の式を削除するために使います。

関連項目

ExpressionEval オブジェクト

IExpressionEval::get_ExprCount

IExpressionEval::FlushExpr

IExpressionEval::LoadAll

IExpressionEval::LoadExpr


IExpressionEval::FlushExpr

このメソッドは、式キャッシュから特定の式を削除するために使います。

定義

HRESULT IExpressionEval::FlushExpr(
long nExprID
);

パラメータ

nExprID

[in] 式キャッシュから削除される式の識別子を含む long です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADEXPRID | 0x8110000A | 無効な式 ID が指定されました。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

FlushExpr メソッドは、式キャッシュから特定の式を削除し、読み取り専用の ExprCount プロパティを 1 つ減分します。

FlushAll メソッドは、式キャッシュからすべての式を削除するために使います。

関連項目

ExpressionEval オブジェクト

IExpressionEval::get_ExprCount

IExpressionEval::FlushAll

IExpressionEval::LoadAll

IExpressionEval::LoadExpr


IExpressionEval::LoadAll

このメソッドは、式ストアのすべての式をプリコンパイルするために使います。正常にプリコンパイルされた式は、式キャッシュに読み込まれます。

定義

HRESULT IExpressionEval::LoadAll(
);

パラメータ

なし。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | 0x81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | 0x81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | 0x81100016 | 無効な句が見つかりました。
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADOPER | 0x81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | 0x81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | 0x81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_XMLPARSE | 0x81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

呼び出し時にある式キャッシュ内の式はすべて再読み込みされます。

式ストア内に多くの式がある場合は、LoadAll メソッドの速度が落ちる場合があります。LoadExpr メソッドは、特定の式だけを式キャッシュに読み込むために使います。

式キャッシュに読み込まれた式ごとに、LoadAll メソッドが読み取り専用の ExprCount プロパティを 1 つ増分します。

FlushAll メソッドは、式キャッシュからすべての式を削除するために使います。

Connect メソッドは LoadAll メソッドを使う前に呼び出す必要があります。

関連項目

ExpressionEval オブジェクト

IExpressionEval::Connect

IExpressionEval::get_ExprCount

IExpressionEval::FlushAll

IExpressionEval::FlushExpr

IExpressionEval::LoadExpr


IExpressionEval::LoadExpr

このメソッドは、式をプリコンパイルするために使い、プリコンパイルが成功した場合は式キャッシュに式を読み込みます。

定義

HRESULT IExpressionEval::LoadExpr(
long nExprID
);

パラメータ

nExprID

[in] 式キャッシュにロードする式の識別子を含む正の long です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | 0x81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | 0x81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | 0x81100016 | 無効な句が見つかりました。
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRID | 0x8110000A | 無効な式 ID が指定されました。
E_EXPR_BADOPER | 0x81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | 0x81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | 0x81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_NOTFOUND | 0x81100012 | 指定された式 ID (nExprID) を式ストアの中から見つけられませんでした。
E_EXPR_XMLPARSE | 0x81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

指定された式が呼び出し時に既に式キャッシュに読み込まれている場合でも、再度読み込まれます。

LoadExpr メソッドは、式キャッシュに式を読み込んだときに、読み取り専用の ExprCount プロパティを 1 つ増分します。

XML フラグメントを除き、式キャッシュ内にある式だけが評価されます。Eval メソッドは、式キャッシュにあらかじめ読み込まれていない式ストアから式を読み込みます。

LoadAll メソッドは、すべての式を式キャッシュに読み込むために使います。FlushExpr メソッドは、式キャッシュから式を削除するために使います。

Connect メソッドは LoadExpr メソッドを使う前に呼び出す必要があります。

関連項目

ExpressionEval オブジェクト

IExpressionEval::Connect

IExpressionEval::get_ExprCount

IExpressionEval::FlushAll

IExpressionEval::FlushExpr

IExpressionEval::LoadAll


IExpressionEval::ParseXML

このメソッドは、拡張マークアップ言語 (XML) フラグメントの構文が正しいかどうかをチェックするために使います。

定義

HRESULT IExpressionEval::ParseXML(
BSTR bstrXMLExpr,
VARIANT_BOOL* pbValid
);

パラメータ

bstrXMLExpr

[in] 式を定義する XML テキストを含む BSTR です。

pbValid

[out, retval] 式の有効性を示す VARIANT_BOOL へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADARGTYPE | 0x81100018 | 式に引数のデータ型情報が存在しないか、または式内に認識できないデータ型の引数が見つかりました。
E_EXPR_BADARGVALUE | 0x81100022 | 式の引数の値が無効か、値を変換できません。
E_EXPR_BADCLAUSE | 0x81100016 | 無効な句が見つかりました。
E_EXPR_BADOPER | 0x81100017 | 演算子が存在しないか、認識できない演算子が見つかったか、または入力が一致しません。
E_EXPR_BADTERM | 0x81100015 | 条件の型が存在しないか、または認識できない型の条件が見つかりました。
E_EXPR_BADXML | 0x81100014 | 認識できない XML 要素が見つかりました。
E_EXPR_XMLPARSE | 0x81100013 | XML DOM オブジェクト解析エラーです。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは構文だけしかチェックしないので、メソッドが成功しても式は無効な場合があります。

式ストアは XML フラグメントには使えません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbValid パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

式レコードセット

式の XML 構造

ExpressionEval オブジェクト

IExpressionEval::Eval

IExpressionEval::EvalXML


ExpressionStore オブジェクト

このオブジェクトは、式ストアに含まれている式を操作するために使います。式ストアは、式に関する情報を集めた式のデータベースです。それぞれの Commerce サイトには式ストアが 1 つずつあります。

ProgID: | Commerce.ExpressionStore (外部作成可能)
COM クラス名: | ExpressionStore
COM インターフェイス名: | IExpressionStore
インターフェイス ID 定数: | IID_IExpressionStore
ヘッダー ファイル: | ExprArchDLL.h, exprarch.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Expression System Type Library
DLL 名: | exprarch.dll
スレッド モデル: | 両方

IC++ で ExpressionStore オブジェクトのメソッドにアクセスするには、IExpressionStore インターフェイスを使います。

次の表は、OrderForm オブジェクトのメソッドを示しています。

メソッド | 説明
Connect | 接続文字列を評価し、指定の式ストアに格納します。
DeleteExpression | 式ストアから式を削除します。
Disconnect | 接続文字列を空文字列に設定します。
Export | 式ストアの式をファイルにエクスポートします。
GetAllExprs | 式ストアからすべての式を取得します。
GetExpression | 式ストアから 1 つの式を取得します。
GetExprID | 式名を対応する式 ID に変換します。
GetExprName | 式 ID を対応する式名に変換します。
Import | 式ストアの一連の式をファイルからインポートします。
NewExpression | 空の式を含む新しい ADO Recordset オブジェクトを作成します。
Query | 1 つまたは複数の条件に基づいて式の一覧のクエリを実行します。
RenameExpression | 既存の式の名前を変更します。
SaveExpression | 新しいまたは変更された式を式ストアに保存します。

解説

有効な式ストアへの接続文字列は、ExpressionStore オブジェクトのほかのメソッドを呼び出す前に、Connect メソッドを使って格納しておく必要があります。

ExpressionEval オブジェクトの Connect メソッドが呼び出されると、ExpressionStore オブジェクトが内部的に作成されます。

関連項目

式に関するオブジェクト

式レコードセット

式の XML 構造

ExpressionEval オブジェクト


IExpressionStore::Connect

このメソッドは、接続文字列を式ストアに格納するために使います。

定義

HRESULT IExpressionStore::Connect(
BSTR strConnStr
);

パラメータ

strConnStr

[in] 式ストアのデータベース接続情報を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRSTORE | 0x8110001E | 指定されたデータベースには、有効な式ストアがありません。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_STOREPERMISSIONS | 0x8110000F | 式ストア データベースに対するアクセス権が不十分です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ExpressionStore オブジェクトは固定 ADO 接続を維持しません。このメソッドは、接続文字列が実際の式ストアを指していることを確認した後、接続文字列を格納します。Disconnect メソッドは、接続文字列を空文字列に設定します。

ExpressionStore オブジェクトの各メソッドは、必要に応じて接続を作成し、作成が終わるとその接続を閉じます。これは ADO 接続プーリングを利用しており、可用性を高めます。

式ストアへの接続文字列は、SiteConfigReadOnly オブジェクトを介して、または Commerce Server マネージャ コンソールの Commerce Server マネージャ\グローバル リソース\プロファイル というキーの下にある s_BizDataStoreConnectionString プロパティを介して取得できます。

Connect メソッドは、外部的に作成された ExpressionStore オブジェクトのほかのメソッドを呼び出す前に、正常に実行される必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Disconnect

SiteConfigReadOnly オブジェクト


IExpressionStore::DeleteExpression

このメソッドは、式ストアから既存の式を削除するために使います。

定義

HRESULT IExpressionStore::DeleteExpression(
long nExprID,
long flags
);

パラメータ

nExprID

[in] 削除する式を指定する long です。

flags

[in] 省略可能な制御フラグを含む long です。このパラメータは現在使われていないため、ゼロ (0) に設定する必要があります。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRID | 0x8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_EXPRDELFAILED | 0x81100010 | 削除操作が失敗しました。この式に依存関係を持つ別の式がある可能性があります。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

指定された式がゼロ以外の参照カウントを持つ場合、指定された式に依存関係を持つ別の式があることを意味します。この式は削除されません。

DeleteExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::NewExpression


IExpressionStore::Disconnect

このメソッドは、式ストアへの接続文字列を空文字列に設定するために使います。

定義

HRESULT IExpressionStore::Disconnect(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

式ストアへの接続と切断の詳細については、「IExpressionStore::Connect」を参照してください。

関連項目

ExpressionStore オブジェクト


IExpressionStore::Export

このメソッドは、式ストアに格納されている式をファイルにエクスポートするために使います。

定義

HRESULT IExpressionStore::Export(
BSTR bstrFileName
);

パラメータ

bstrFileName

[in] 式を格納するために使うファイルの名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

エクスポート先のファイルは、呼び出す前に作成しないでください。もし作成してある場合は、メソッドは失敗します。絶対パスが指定されていない場合、\WINNT\system32 フォルダにファイルが作成されます。

メソッドが正常に完了すると、式ストア内の各式レコードセットを XML で表現したものに続いて、式レコードセットの XML スキーマがファイルに格納されます。

Import メソッドは、ファイル内の式を式ストアにコピーするために使います。

Export メソッドを呼び出す前に、Connect メソッドを呼び出します。

関連項目

式レコードセット

式の XML 構造

ExpressionStore オブジェクト

IExpressionStore::Import


IExpressionStore::GetAllExprs

このメソッドは、式ストアに存在するすべての式を含む階層化された ADO Recordset オブジェクトを取得するために使います。

定義

HRESULT IExpressionStore::GetAllExprs(
_Recordset** ppRSExprs
);

パラメータ

ppRSExprs

[out, retval] 式ストアに存在するすべての式を含む階層化された ADO Recordset オブジェクトへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Recordset オブジェクトには、式ストア内の各式ごとにレコードが 1 つずつ含まれます。この Recordset オブジェクトのフィールドの詳細については、「式レコードセット」を参照してください。

GetExpression メソッドは、式ストアから 1 つの式を取得するために使います。

GetAllExprs メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppRSExprs パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::GetExpression


IExpressionStore::GetExpression

このメソッドは、指定された式を含む階層化された ADO Recordset オブジェクトを取得するために使います。

定義

HRESULT IExpressionStore::GetExpression(
long nExprID,
_Recordset** ppRSExpr
);

パラメータ

nExprID

[in] 式の一意な識別子を含む long です。

ppRSExpr

[out, retval] 式を含む階層化された ADO Recordset オブジェクトへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。このメソッドが正常に終了しない場合は、Recordset オブジェクトへのポインタのアドレスは Null に設定されます。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRID | 0x8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

接続された式ストア内のすべての式にアクセスするには、GetAllExprs メソッドを使います。

GetExpression メソッドを呼び出す前に、Connect を呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppRSExps パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

式レコードセット

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::GetAllExprs

IExpressionStore::NewExpression


IExpressionStore::GetExprID

このメソッドは、式の名前を対応する式 ID に変換するために使います。

定義

HRESULT IExpressionStore::GetExprID(
BSTR strExprName,
long* pnExprID
);

パラメータ

strExprName

[in] 式の名前を含む BSTR です。

pnExprID

[out, retval] 式 ID を含む long へのポインタです。失敗した場合、式 ID は、EXPRID_INVALID (-1 と定義) に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRNAME | 0x81100003 | 式名が無効であるか、またはストア内に式名が見つかりません。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetExprName メソッドは、式の ID を対応する式名に変換します。

GetExprID メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppExprID パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::GetExpression

IExpressionStore::GetExprName

IExpressionStore::RenameExpression


IExpressionStore::GetExprName

このメソッドは、式の ID を対応する式名に変換するために使います。

定義

HRESULT IExpressionStore::GetExprName(
long nExprID,
BSTR* pstrExprName
);

パラメータ

nExprID

[in] 一意の式 ID を含む long です。

pstrExprName

[out, retval] 式の名前を含む BSTR へのポインタです。失敗した場合、式名は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRID | 0x8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetExprID メソッドは、式の名前を対応する式 ID に変換するために使います。

GerExprName メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pstrExprName パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::GetExprID


IExpressionStore::Import

このメソッドは、ファイル内の式を式ストアにインポートするために使います。

定義

HRESULT IExpressionStore::Import(
BSTR bstrFileName
);

パラメータ

bstrFileName

[in] 式のインポート元ファイルのパスと名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_NONEMPTYSTORE | 0x8110000C | 空でないストアにはインポートできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

式をインポートするには、式ストアが空である必要があります。

インポート ファイルには、各式レコードセットを XML で表現したものに続いて、式レコードセットの XML スキーマが含まれる必要があります。無効な式を含む式レコードセットはインポートされますが、評価の際にエラーの原因となります。

Export メソッドは、式レコードセットの XML スキーマおよび式ストア内のすべての式をファイルにコピーするために使います。

Import メソッドを呼び出す前に、Connect メソッドを呼び出します。

関連項目

式レコードセット

式の XML 構造

ExpressionStore オブジェクト

IExpressionStore::Export


IExpressionStore::NewExpression

このメソッドは、空の式を含む階層化された ADO Recordset オブジェクトを返すために使います。

定義

HRESULT IExpressionStore::NewExpression(
_Recordset** ppRSExpr
);

パラメータ

ppRSExpr

[out, retval] 空の式を含む階層化された ADO Recordset オブジェクトへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

解説

返された Recordset オブジェクトを、新しい式を記述するデータを使って生成します。Recordset オブジェクトの形式と必要なフィールドについては、「式レコードセット」を参照してください。

SaveExpression メソッド使って、新しく定義された式を式ストアに格納します。SaveExpression メソッドは、自動的に新しい一意な式 ID を生成し、新しい式と一緒に格納します。

NewExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::SaveExpression


IExpressionStore::Query

このメソッドは、指定したクエリ条件に一致する式を含む Recordset オブジェクトを取得するために使います。省略可能な引数のうち、少なくとも 1 つは指定する必要があります。

定義

HRESULT IExpressionStore::Query(
VARIANT vName,
VARIANT vCategory,
VARIANT vProfiles,
_Recordset** ppRSExprs
);

パラメータ

vName

[in, optional] 指定されている場合は、式を照合するための BSTR の名前です。これは、ワイルドカードを使用できる SQL の LIKE 句で使われます。

vCategory

[in, optional] 指定されている場合は、式を照合するためのカテゴリを含む文字列またはその文字列の SAFEARRAY です。これは、ワイルドカードを使用できる SQL の LIKE 句で使われます。

vProfiles

[in, optional] 指定されている場合は、式を照合するためのプロファイル名を含む文字列またはその文字列の SAFEARRAY です。プロファイル名はワイルドカードを使わずに指定する必要があります。

ppRSExprs

[out, retval] 式の結果セットを含む Recordset オブジェクトへのポインタのアドレスです。失敗した場合、Recordset オブジェクトへのポインタは Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

解説

省略可能なパラメータを組み合わせて指定すると、すべての条件を満たす式が取得されます (黙示的に AND が適用されます)。たとえば、名前が "Robert%" でカテゴリが "General" の場合、"Robert" という名前で始まり "General" というカテゴリを持つ式だけが返されます。

複数のプロファイル名が指定されている場合、クエリの結果には、リストされたプロファイル名のいずれかのプロファイル要件 (依存関係) を満たす式が含まれます (黙示的に OR が適用されます)。たとえば、名前が "Robert%" でプロファイルに "User" および "Context" が指定されている場合、Query メソッドは、"Robert" という名前で始まり、"User" のみ、"Context" のみ、または "User" と "Context" の両方を必要とするプロファイルを持つ式を返します。

式を表す ADO Recordset オブジェクトの詳細については、「式レコードセット」を参照してください。

Query メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppRSExprs パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect


IExpressionStore::RenameExpression

このメソッドは、式ストア内の既存の式の名前を変更するために使います。新しい式名は一意である必要があります。一意でない場合、操作は失敗します。

定義

HRESULT IExpressionStore::RenameExpression(
long nExprID,
BSTR strNewName
);

パラメータ

nExprID

[in] 式 ID を含む long です。

strNewName

[in] 新しい名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRID | 0x8110000A | 式 ID が無効であるか、またはストア内に式 ID が見つかりません。
E_EXPR_BADEXPRNAME | 0x81100003 | 式名が無効です。
E_EXPR_DUPEXPRNAME | 0x81100007 | 式名が重複しています。
E_EXPR_INVALIDFIELDSIZE | 0x81100005 | 新しい名前が最大の 30 文字を超えています。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetExprID メソッドは、式名を対応する式 ID に変換するために使います。

RenameExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::GetExprID


IExpressionStore::SaveExpression

このメソッドは、新しいまたは変更された式を式ストアに保存するために使います。新しい式には、SaveExpression メソッドが自動的に一意な式 ID を生成し、式と一緒に格納します。

定義

HRESULT IExpressionStore::SaveExpression(
_Recordset* pRSExpr
);

パラメータ

pRSExpr

[in] 式を含む階層化された ADO Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_EXPR_BADCONNECTION | 0x8110001F | 無効な接続です。
E_EXPR_BADEXPRBODY | 0x81100004 | 式が無効であるか、または存在しません。
E_EXPR_BADEXPRCATEGORY | 0x8110000A | 無効な式カテゴリが指定されました。
E_EXPR_BADEXPRNAME | 0x81100003 | 式名が無効です。
E_EXPR_CYCLEDETECTED | 0x81100006 | この式とほかの式が互いに参照しています。
E_EXPR_DUPEXPRDEPS | 0x81100009 | 式の依存関係が重複しています。
E_EXPR_DUPEXPRNAME | 0x81100007 | 式名が重複しています。
E_EXPR_DUPPROFDEPS | 0x81100008 | プロファイルの依存関係が重複しています。
E_EXPR_INVALIDEXPRDEPS | 0x8110000B | 1 つ以上の式の依存関係が、存在しない式 ID を参照しています。
E_EXPR_INVALIDFIELDSIZE | 0x81100005 | 新しい名前が最大の 30 文字を超えています。
E_EXPR_NOCONNECTIONSTRING | 0x8110000D | 接続文字列が指定されていません。
E_EXPR_NOPROFDEPS | 0x81100002 | 式を保存するには 1 つ以上のプロファイル依存関係を定義する必要があります。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

保存する式が式ストアにない場合、SaveExpression メソッドは一意な識別子を生成し、Recordset オブジェクトの ExprID フィールドを作成します。識別子は正の整数です。Recordset オブジェクトの形式とフィールドの詳細については、「式レコードセット」を参照してください。

ExpressionStore オブジェクトは、式が保存または削除されたときに、式の依存関係の基本的なチェックを実行します。これには、直接参照、相互参照のテスト、および存在しない式への参照が含まれます。

SaveExpression メソッドを呼び出す前に、Connect メソッドを呼び出します。

関連項目

ExpressionStore オブジェクト

IExpressionStore::Connect

IExpressionStore::GetExpression

IExpressionStore::NewExpression


式レコードセット オブジェクト

ExpressionStore オブジェクトは、階層化された ADO Recordset オブジェクトを使って、式とその依存関係を表します。この Recordset オブジェクトの構造は、親 Recordset オブジェクトと 2 つの子 Recordset オブジェクトへのポインタから成っています。

決められた構造の空の Recordset オブジェクトは、ExpressionStore オブジェクトの NewExpression メソッドを呼び出して作成します。Recordset オブジェクトのフィールドに入力すると、SaveExpression メソッドによって式ストアに格納される式がコミットされます。同様に、ExpressionStore オブジェクトの GetExpression および GetAllExprs などのメソッドは、式ストアから階層型 Recordset オブジェクトとして構造化された式データを返します。

親レコードセット

次の表は、親 Recordset オブジェクトのフィールドを示しています。

フィールド | 種類 | 必要条件 | 説明
ExprID | Integer | 新しい式が保存されたときに、ExpressionStore オブジェクトの SaveExpression メソッドによって生成されます。 | 式の一意識別子です。これは正の整数です。
ExprName | 文字列 | ユーザーの入力が必要なフィールドです。 | 式の一意名です。'、"、&、\、/、<、および ＞ は使えません。', ", &, \, /, <, >
Category | 文字列 | ユーザーの入力が省略可能なフィールドです。 | 式のカテゴリです。フィルタとして使用できます。'、"、&、\、/、<、および ＞ は使えません。', ", &, \, /, <, >
ExprDesc | 文字列 | ユーザーの入力が省略可能なフィールドです。 | 式の説明です最大長は 200 文字です。'、"、&、\、/、<、および ＞ は使えません。&, <, >
ExprBody | 文字列 | ユーザーの入力が必要なフィールドです。 | レコードセットの拡張マークアップ言語 (XML) 部分です。評価可能な式です。最大長は 3400 文字です。詳細については、「式の XML 構造」を参照してください。
DateCreated | Date | システムにより生成します。 | レコードセットが作成された日付です。
DateModified | Date | システムにより生成します。 | レコードセットが最後に変更された日付です。
rsExprDeps | Recordset ポインタ | システムにより生成します。 | この式について式の依存関係をリストする子 Recordset オブジェクトへのポインタです。
rsProfDeps | Recordset ポインタ | システムにより生成します。 | この式についてプロファイルの種類の依存関係をリストする子 Recordset オブジェクトへのポインタです。

式の子レコードセットへの依存

この Recordset のオブジェクトには、親式が直接的に依存する式のレコードが含まれています。この情報にはネストされた依存関係は含まれません。親式がどの式にも依存していない場合、このレコードセットは空である可能性があります。

次の表は、式の子 Recordset オブジェクトへの依存に関するフィールドを示しています。

フィールド | 種類 | 説明
ExprID | Integer | 親式の識別子です。
ExprDep | Integer | 依存式の識別子です。

プロファイルの子レコードセットへの依存

この Recordset オブジェクトには、この式が依存するプロファイルのレコードが含まれています。ユーザーは、新しい式を作成するときに、少なくとも 1 つはレコードを生成する必要があります。

次の表は、プロファイルの子 Recordset オブジェクトへの依存に関するフィールドを示しています。

フィールド | 種類 | 説明
ExprID | Integer | 親式の識別子です。
ProfDep | 文字列 | 依存プロファイルの名前です。

解説

2 つの子 Recordset オブジェクトの ExprId フィールドには、新しい式の保存時に生成される親 Recordset オブジェクトの ExprID と同じ値が含まれています。


式レコードセットの例

次の例は、式を含む 2 つのRecordset オブジェクトです。最初の例では、式 (ID = 7) がプロファイル (User) に依存し、式はありません。次の例では、式 (ID = 24) がほかの 1 つの式 (ID=7) と 2 つの仮想プロファイル (Product および User) に依存しています。DateCreated、DateModified、rsExprDeps、および rsProfDeps の各フィールドは示されていません。

Expression7 の親レコードセット

ExprID | ExprName | カテゴリ | ExprDesc | ExprBody
7 | "Expression7" | "Hair" | "Bald_people" | String7

Expression7 に関する式の子レコードセットへの依存

ExprID | ExprDep

Expression7 に関するプロファイルの子レコードセットへの依存

ExprID | ProfDep
7 | "User"

String7 = "<CLAUSE OPER="is-true">
             <PROPERTY ID="User.GeneralInfo.hair" TYPE="string"/>
             <IMMED-VAL TYPE="string">bald</IMMED-VAL>
           </CLAUSE>"

Expression24 の親レコードセット

ExprID | ExprName | カテゴリ | ExprDesc | ExprBody
24 | "Expression24" | "FeralOctogenarians" | "Bald_ginseng_users_over_80" | String24

Expression24 に関する式の子レコードセットへの依存

ExprID | ExprDep
24 | 7

Expression24 に関するプロファイルの子レコードセットへの依存

ExprID | ProfDep
24 | "Product"
24 | "User"

String24 = "<TERM TYPE="and">
              <CLAUSE OPER="is-true">
                <EXPR-REF ID=7/>
              </CLAUSE>
              <CLAUSE OPER="equal">
                <PROPERTY ID="Product.name" TYPE="string"/>
                <IMMED-VAL TYPE="string">ginseng</IMMED-VAL>
              </CLAUSE>
              <CLAUSE OPER="at-least">
                <PROPERTY ID="User.GeneralInfo.age" TYPE="number"/>
                <IMMED-VAL TYPE="number">80</IMMED-VAL>
              </CLAUSE>
            </TERM>"


ExprFltrQueryBldr オブジェクト

このオブジェクトは、拡張マークアップ言語 (XML) 形式の式を SQL フィルタのクエリ文字列に変換するために使います。フィルタのクエリは、属性値の組み合わせを基にしたデータベースから、項目のサブセットを返します。

ProgID: | Commerce.ExprFltrQueryBldr (外部作成可能)
COM クラス名: | ExprFltrQueryBldr
COM インターフェイス名: | IExprFltrQueryBldr
インターフェイス ID 定数: | IID_IExprFltrQueryBldr
ヘッダー ファイル: | exprfltrbldr.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Expression Builder Type Library
DLL 名: | exprfltrbldr.dll
スレッド モデル: | アパートメント

C++ で ExprFltrQueryBldr オブジェクトのプロパティとメソッドにアクセスするには、IExprFltrQueryBldr インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、ExprFltrQueryBldr オブジェクトのメソッドを示しています。

メソッド | 説明
ConvertExprToSqlFltrStr | XML 形式の式を SQL フィルタ文字列に変換します。
ConvertExprUsingDict | Dictionary オブジェクトを参照する XML 形式の式を SQL フィルタ文字列に変換します。

解説

XML 形式の式に Dictionary オブジェクトへの参照が含まれている可能性があります。

関連項目

式の XML 構造


IExprFltrQueryBldr::ConvertExprToSqlFltrStr

このメソッドは、拡張マークアップ言語 (XML) 形式の式を SQL フィルタのクエリ文字列に変換するために使います。

定義

HRESULT IExprFltrQueryBldr::ConvertExprToSqlFltrStr(
BSTR pExpression,
BSTR* pFilter
);

パラメータ

pExpression

[in] XML 形式の式を含む BSTR です。

pFilter

[out, retval] SQL フィルタ文字列を返すために使われる BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pFilter パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExprFltrQueryBldr オブジェクト


IExprFltrQueryBldr::ConvertExprUsingDict

このメソッドは、Dictionary オブジェクトへの参照を含む拡張マークアップ言語 (XML) 形式の式を、SQL フィルタ文字列に変換するために使います。

定義

HRESULT IExprFltrQueryBldr::ConvertExprUsingDict(
BSTR pExpr,
IDispatch* pDict,
BSTR* pDest
);

パラメータ

pExpr

[in] XML 形式の式を含む BSTR です。

pDict

[in] 式によって参照される値が含まれている Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。

pDest

[out, retval] SQL フィルタ文字列を返すために使われる BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

XML 式では、Dictionary オブジェクトへの参照を、キーワード 'context' を持つ IMMED-VAL タグ内の値より前に配置することによって作成します。式の変換中にこのような参照が見つかった場合、その参照は Dictionary オブジェクトから読み取られた値に置き換わります。

pDest パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ExprFltrQueryBldr オブジェクト


GenID オブジェクト

このオブジェクトは、グローバル一意識別子 (GUID) を生成するため、またはデータベースに保存されている複数のグローバルなシーケンシャル カウンタを作成および維持するために使います。グローバル カウンタは複数のコンピュータ間で機能します。

ProgID: | Commerce.GenID (外部作成可能)
COM クラス名: | GenID
COM インターフェイス名: | IGenID
インターフェイス ID 定数: | IID_IGenID
ヘッダー ファイル: | genid.h
タイプ ライブラリ名: | Microsoft Commerce 2000 GenID Type Library
DLL 名: | GenID.dll
スレッド モデル: | 両方

C++ で GenID オブジェクトのメソッドにアクセスするには、IGenID インターフェイスを使います。

次の表は、GenID オブジェクトのメソッドを示しています。

メソッド | 説明
GenBase5GUIDString | base5 の GUID 文字列を生成します。
GenGUIDString | GUID 文字列を生成します。
GetCounterValue | 指定されたカウンタの値を取得し、カウンタを増分します。
Initialize | カウンタの表が保存されているデータベースの GenID オブジェクトに接続します。
InitializeCounter | 新しいカウンタを初期化するか、既存のカウンタをリセットします。


IGenID::GenBase5GUIDString

このメソッドは、base5 のグローバル一意識別子 (GUID) 文字列を生成するために使います。

定義

HRESULT IGenID::GenBase5GUIDString(
BSTR* pbstrBase5GuidString
);

パラメータ

pbstrBase5GuidString

[out, retval] base5 GUID 文字列を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

base5 の GUID は、従来の GUID よりもコンパクトなものを保存するために使います。128 バイナリ文字は、4 グループではなく 5 グループに分割されます。各グループは　0-9 の数字と 22 文字のアルファベットで表されます。これにより、GUID を通例の32 文字ではなく、26 文字で表せます。

pbstrBase5GuidString パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GenID オブジェクト


IGenID::GenGUIDString

このメソッドは、グローバル一意識別子 (GUID) 文字列を生成するために使います。

定義

HRESULT IGenID::GenGUIDString(
BSTR* pbstrGUID
);

パラメータ

pbstrGUID

[out, retval] GUID を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrGUID パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GenID オブジェクト


IGenID::GetCounterValue

このメソッドは、指定のカウンタに保存されている値を取得および増分するために使います。

定義

HRESULT IGenID::GetCounterValue(
BSTR bstrCounterName,
long cDigits,
BSTR* pbstrCounterValue
);

パラメータ

bstrCounterName

[in] カウンタ名を含む BSTR です。

cDigits

[in] 返す桁数を含む long です。

pbstrCounterValue

[out, retval] カウンタの値を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

カウンタの現在の値が返されると、カウンタが 1 つ増分されます。InitializeCounter は、カウンタをリセットするために使います。

カウンタの値が要求された桁数よりも小さい場合、値はゼロを左詰めすることで補充されます。

GetCounterValue メソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

pbstrCounterValue パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GenID オブジェクト


IGenID::Initialize

このメソッドは、カウンタの表が保存されているデータベースの GenID オブジェクトに接続するために使います。

定義

HRESULT IGenID::Initialize(
BSTR bstrDBConnectionString,
long cBlockSizeHint
);

パラメータ

bstrDBConnectionString

[in] データベースへの接続情報を含む BSTR です。

cBlockSizeHint

[in, optional, defaultvalue (1)] 実装されていません。空白のままにしてください。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetCounterValue メソッドと InitializeCounter メソッドを呼び出す前に、このメソッドを呼び出す必要があります。

接続文字列は、SiteConfigReadOnly オブジェクトまたは Commerce Server マネージャのコンソールで、Commerce Server マネージャ\Commerce サイト\<サイト名>\サイト リソース\トランザクションの下の connstr_db_Transactions プロパティから取得できます。

関連項目

GenID オブジェクト


IGenID::InitializeCounter

このメソッドは、グローバルなシーケンシャル カウンタを作成またはリセットするために使います。

定義

HRESULT IGenID::InitializeCounter(
BSTR bstrCounterName,
long dwInitialValue
);

パラメータ

bstrCounterName

[in] カウンタ名を含む BSTR です。

dwInitialValue

[in] カウンタの初期値を含む Integer です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

カウンタは、いくつでも作成することができます。カウンタが既に存在する場合、その値は指定された初期値にリセットされます。

グローバル カウンタは複数のコンピュータ間で機能します。

InitializeCounter メソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

dwInitialValue パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

GenID オブジェクト


GlobalConfig オブジェクト

このオブジェクトは、次のことを行うために使います。

  • リソース構成情報を作成または削除します。

  • 更新されたグローバル構成情報を管理データベースに保存します。

  • サイトを追加します。

ユーザー独自のカスタム リソースの追加方法によっては、このオブジェクトを使って管理データベースから構成設定にアクセスできるようにする必要があります。

ProgID: | Commerce.GlobalConfig (外部作成可能)
COM クラス名: | GlobalConfig
COM インターフェイス名: | _GlobalConfig
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Configuration Type Library
DLL 名: | MSCSCfg.dll
スレッド モデル: | アパートメント

C++ で GlobalConfig オブジェクトのプロパティとメソッドにアクセスするには、_GlobalConfig インターフェイスを使います。

次の表は、GlobalConfig オブジェクトの 1 つのプロパティを示しています。

プロパティ | 種類 | 説明
Fields | Fields | グループレベルの構成データを返します。 このプロパティは読み取り専用です。

次の表は、GlobalConfig オブジェクトのメソッドを示しています。

メソッド | 説明
CreateServiceConfig | 指定されたリソースの構成情報を管理データベースに作成し、書き込みます。
CreateSiteConfig | サイトを作成します。
DeleteServiceConfig | 指定されたリソースの構成情報を削除します。
DeleteSiteConfig | サイトの指定された構成、および関連するリソースのすべての構成を削除します。
GetIfCollection | Fields プロパティから読み取られた値を、SimpleList オブジェクトまたは Variant Array といった適切なオブジェクトに変換します。
GetResourcePropAttrib | 指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせが格納されているディクショナリを取得します。
Initialize | グローバル構成データを管理データベースから読み込みます。
MakeArrayFromSimpleList | 指定された SimpleList オブジェクトを Array に変換します。
MakeArrayFromString | Fields プロパティから読み取られた値を Array に変換します。
MakeSimpleListFromArray | Array を SimpleList オブジェクトに変換します。
MakeStringFromArray | Array をエンコードされた文字列に変換します。これは Fields プロパティに書き込めます。
MakeStringFromSimpleList | SimpleList オブジェクトをエンコードされた文字列に変換します。これは Fields プロパティに書き込めます。
SaveConfig | グローバル構成設定を管理データベースに保存します。
Sites | 利用可能なすべてのサイトのリストを管理データ ストアに返します。

関連項目

カスタム リソースを統合する

構成オブジェクト

SiteConfig オブジェクト

SiteConfigReadOnly オブジェクト


_GlobalConfig::CreateServiceConfig

このメソッドは、bstrConfigSchemaClass パラメータで指定されたクラスのインスタンスを作成するため、インスタンスの Name プロパティを bstrServiceName パラメータで指定された名前に設定するため、およびインスタンスをサイトのレコードセットに読み込むために使います。このメソッドは SaveConfig メソッドを呼び出します。

定義

HRESULT _GlobalConfig::CreateServiceConfig(
BSTR bstrServiceName,
BSTR bstrConfigSchemaClass
);

パラメータ

bstrServiceName

[in] リソース構成オブジェクト インスタンスの新しい名前を含む BSTR です。

bstrConfigSchemaClass

[in] リソース構成スキーマのクラス名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

次の表は、このメソッドのスキーマ クラスのリストです。

管理データベースのクラス名 | リソース名
MSCS_AuthManager | CS 認証のサイト
MSCS_DirectMailer | ダイレクト メーラー
MSCS_Predictor | 予測
MSCS_Datawarehouse_Group | グローバル データ ウェアハウス
MSCS_BizDataStore | プロファイル

関連項目

GlobalConfig オブジェクト

_GlobalConfig::DeleteServiceConfig


_GlobalConfig::CreateSiteConfig

このメソッドは、bstrSiteName パラメータで指定された名前を使ってサイトを作成するために使います。このメソッドは SaveConfig メソッドを呼び出します。このメソッドは、主に Commerce Server マネージャまたは Commerce Server サイト パッケージャから使います。Commerce Server サイト パッケージャで正しい ACL を IIS メタベースのエントリに設定し、管理オブジェクトをサイト管理者だけが操作できるようにします。

定義

HRESULT _GlobalConfig::CreateSiteConfig(
BSTR bstrSiteName,
IMSCSSiteConfigAdmin** ppsca
);

パラメータ

bstrSiteName

[in] 新しいサイト名を含む BSTR です。

ppsca

[out] サイト構成設定を返すために使う SiteConfig オブジェクトへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

ppsca パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト

_GlobalConfig::DeleteSiteConfig


_GlobalConfig::DeleteServiceConfig

このメソッドは、指定されたリソースと、このリソースとサイトのインスタンスをリンクする管理データベースの関連付けを削除するために使います。

定義

HRESULT _GlobalConfig::DeleteServiceConfig(
BSTR bstrServiceName
);

パラメータ

bstrServiceName

[in] 削除するリソース構成オブジェクトの名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト

_GlobalConfig::CreateServiceConfig


_GlobalConfig::DeleteSiteConfig

このメソッドは、現在のサイトのサイト構成オブジェクト インスタンスを管理データベースから削除するために使います。このメソッドは、主に Commerce Server マネージャまたは Commerce Server サイト パッケージャによって使われます。

定義

HRESULT _GlobalConfig::DeleteSiteConfig(
BSTR bstrSiteName
);

パラメータ

bstrSiteName

[in] サイトの名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト

_GlobalConfig::CreateSiteConfig


_GlobalConfig::get_Fields

Fields プロパティは読み取り専用の Fields オブジェクトです。Fields プロパティの内容には、リソースの構成設定を保持するレコードセットが含まれます。Fields オブジェクトは、ADO の切断されたレコードセットです。

定義

HRESULT _GlobalConfig::get_Fields(
Fields** pFields
);

パラメータ

pFields

[out] リソース構成情報を返すために使う Fields オブジェクトへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

pFields パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::GetIfCollection

このメソッドは、Fields プロパティから読み取られた値を SimpleList オブジェクトまたは Variant Array といった適切なオブジェクトに変換するために使います。Fields プロパティに含まれる文字列のエンコードが SimpleList オブジェクトを示す場合、SimpleList オブジェクトが返されます。エンコードが Variant Array を示す場合、Variant Array が返されます。コレクション オブジェクトが示されていない場合、メソッドは元のエンコードされた入力文字列を返します。

定義

HRESULT _GlobalConfig::GetIfCollection(
VARIANT* strList,
VARIANT* retVal
);

パラメータ

strList

[in] 変換対象のエンコードされた文字列を含む Variant へのポインタです。

retVal

[out, retval] 適切なデータ型に変換されたデータを返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

retVal パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::GetResourcePropAttrib

このメソッドは、指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせが格納されているディクショナリを取得するために使います。

定義

HRESULT _GlobalConfig::GetResourcePropAttrib(
BSTR strResourceName,
BSTR strPropName,
IDictionary** idictResPropAttrib
);

パラメータ

strResourceName

[in] リソース名を含む BSTR です。

strPropName

[in] リソースのプロパティ名を含む BSTR です。

idictResPropAttrib

[out, retval] IDictionary インターフェイスを受け取るためのポインタのアドレスです。このインターフェイスは、指定したリソースの指定したプロパティの属性を表す、キーと値の対を返すために使われます｡

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

idictResPropAttrib パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::Initialize

このメソッドは、管理データベースからグローバル構成を読み込むために使います。

定義

HRESULT _GlobalConfig::Initialize(
BSTR bstrGroupName
);

パラメータ

bstrGroupName

[in, optional] 将来の使用のために予約されている BSTR です。このメソッドは、このパラメータに指定された値を無視します。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::MakeArrayFromSimpleList

このメソッドは、指定された SimpleList オブジェクトを Array に変換するために使います。

定義

HRESULT _GlobalConfig::MakeArrayFromSimpleList(
IDispatch** list,
VARIANT* vtArray
);

パラメータ

list

[in] Array に変換する SimpleList オブジェクトへの IDispatch インターフェイス ポインタです。

vtArray

[out, retval] 変換済みのArray を含む Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtArray パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::MakeArrayFromString

このメソッドは、Fields プロパティから読み取ったエンコードされた文字列を、Array に変換するために使います。エンコードされた文字列が Array プロパティを示していない場合、メソッドに渡された元の文字列が返されます。

定義

HRESULT _GlobalConfig::MakeArrayFromString(
VARIANT strList,
VARIANT* vtArray
);

パラメータ

strList

[in] エンコードされた文字列を含む Variant です。

vtArray

[out, retval] 変換された Array または変換されていない文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtArray パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトが表示する値にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields としてのオブジェクトをサポートしません。したがって、GlobalConfig オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::MakeSimpleListFromArray

このメソッドは、Array を SimpleList オブジェクトに変換するために使います。

定義

HRESULT _GlobalConfig::MakeSimpleListFromArray(
VARIANT* varArray,
IDispatch** iSimpleList
);

パラメータ

varArray

[in] 変換対象の Array を含む Variant へのポインタです。

iSimpleList

[out, retval] 変換済みの SimpleList オブジェクトを返すために使う IDispatch ポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

iSimpleList パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::MakeStringFromArray

このメソッドは、Array オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列はFields プロパティに書き込めます。

定義

HRESULT _GlobalConfig::MakeStringFromArray(
VARIANT* varArray,
VARIANT* vtEncodedString
);

パラメータ

varArray

[in] エンコード対象の Array を含む Variant へのポインタです。

vtEncodedString

[out, retval] エンコードされた文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

vtEncodedString パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields としてのオブジェクトをサポートしません。したがって、GlobalConfig オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::MakeStringFromSimpleList

このメソッドは、SimpleList オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列はFields プロパティに書き込めます。

定義

HRESULT _GlobalConfig::MakeStringFromSimpleList(
IDispatch** slist,
BSTR* strEncodedString
);

パラメータ

slist

[in] エンコードされた文字列に変換される SimpleList オブジェクトへの IDispatch インターフェイスのポインタです。

strEncodedString

[out, retval] エンコードされた文字列を返すために使う文字列へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

strEncodedString パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、SimpleList、またはFields 列としてのオブジェクトをサポートしません。したがって、GlobalConfig オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::SaveConfig

このメソッドは、グローバル構成設定を管理データベースに保存するために使います。

定義

HRESULT _GlobalConfig::SaveConfig(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

関連項目

GlobalConfig オブジェクト


_GlobalConfig::Sites

このメソッドは、管理データベース内のすべての利用可能なサイトのリストを取得するために使います。このメソッドはレコードを 1 つ含む Recordset オブジェクトを返します。Fields コレクション内のフィールド数は、Commerce Server 2000 のインストール環境のサイト数と同じです。それぞれの Fields コレクションには、いずれかのサイトの名前が含まれています。

定義

HRESULT _GlobalConfig::Sites (

_Recordset** rsRecordSet
);

パラメータ

rsRecordSet

[out, retval] 管理データ ストア内にある、利用可能なすべてのサイトの一覧を返すために使う Recordset オブジェクトへのポインタのアドレスです｡

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを呼び出す前に、Initialize メソッドを呼び出す必要があります。

rsRecordSet パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

GlobalConfig オブジェクト


ListManager オブジェクト

このオブジェクトは、User Profile Management システムのユーザーのリスト、ダイレクト メーラーの電子メールアドレスのリスト、予測リソースのセグメント メンバのリスト、分析レポートから生成されたリスト、ファイルおよび SQL クエリから作成されたリストを作成、管理するために使います。

ProgID: | Commerce.ListManager (外部作成可能)
COM クラス名: | ListManager
COM インターフェイス名: | IListManager
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 ListManager Type Library
EXE 名: | listmanager.exe
スレッド モデル: | 両方

次の表は、ListManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
ConnectionString | BSTR | リストを格納するために ListManager オブジェクトが使うデータベースへの接続文字列が含まれます。 この値は、Initialize メソッドに ConnectionString パラメータを渡すときに設定されます。 このプロパティは読み取り専用です。
Status | long | ListManager オブジェクトの現在の状態が含まれます。 このプロパティは読み取り専用です。

次の表は、ListManager オブジェクトのメソッドを示しています。

メソッド | 説明
AddUserToMailingList | メーリング リストにユーザーを追加します。
CancelOperation | 現在実行している非同期操作をキャンセルします。
Copy | リストのコピーを作成します。
CreateEmpty | 後続の操作のために空のリストを作成します。
CreateFromDWCalc | 分析レポートからリストを作成します。
CreateFromFile | ファイルからリストを作成します。
CreateFromSegment | 予測リソース セグメントからリストを作成します。
CreateFromSql | SQL クエリからリストを作成します。
Delete | リストを削除します。
ExportToFile | ファイルにリストをエクスポートします。
ExportToSql | リストをデータベース テーブルにエクスポートします。
ExtractMailingList | rcp_email 列が含まれる汎用リストから新しいメーリング リストを作成します。
GetListFlags | リストの Flags ビットマスクを取得します。
GetListId | リスト ID を取得します。
GetListName | リスト名を取得します。
GetListProperty | リスト プロパティを取得します。
GetLists | 呼び出しの時点で既知となっているすべてのリストを列挙します。
GetListUserFlags | リストの UserFlags ビットマスクを取得します。
GetOperationInfo | リスト操作に関する情報を取得します。
GetOperations | 呼び出しの時点で実行されているすべての操作を列挙します。
Initialize | ListManager オブジェクトを初期化します。
RemoveUserFromMailingList | メーリング リストからユーザーを削除します。
Rename | リストの名前を変更します。
SetDesc | リストに説明を割り当てます。
SetListProperty | リスト プロパティを設定します。
Subtract | あるリストを別のリストから削除し、結果を第 3 のリストに保存します。
Union | 2 つのリストの和集合 (リストを結合して重複をなくす) を作成し、結果を第 3 のリストに保存します。
WaitOnOperation | 操作の完了またはタイムアウトを待ってから戻ります。

解説

リスト マネージャには、2 種類のリスト (汎用リストとメーリング リスト) を操作する機能があります。それぞれのリストには、ユーザー属性とメールが利用可能な属性があります。リストは、データをいつインポートするかによって静的または動的と指定されます。

汎用リストには、列名と列型のセットを含めることができます。汎用リストは、必ず SQL テーブルにマップされます。

メーリング リストは、ダイレクト メーラーで使うリストです。これには、メールを受け取る受信者のリストまたはメーリングから脱退する必要のある受信者のリストが含まれます。各メーリング リストには、専用のテーブルがあります。

次の表は、メーリング リスト テーブルの列を示します。

フィールド | 種類 | 説明
rcp_email | NVARCHAR [256] | 受信者の電子メールアドレス。
rcp_guid | NVARCHAR [64] | (省略可能) ユーザー ID。通常はユーザー プロファイルのキーとなる GUID。
rcp_fmt | smallint | (省略可能) メッセージ形式のフラグ。有効な値は次のとおりです。 1 - TEXT 2 - MIME 3 - MHTML
rcp_locale | NVARCHAR[20] | (省略可能) 受信者の優先文字セット。詳細については、ダイレクト メーラーの仕様を参照してください。
rcp_url | NVARCHAR[2084] | (省略可能) ユーザー用にパーソナライズされたコンテンツの取得に使う URL。

メールが利用可能なリストは、rcp_email 列を含む任意のリストです。

ユーザー リストは、rcp_guid 列を含む任意のリストです。

静的リストでは、リストの作成時にレコードがインポートされます。

動的リストでは、別の操作によって参照されたときに、必要に応じてレコードがインポートされます。

リスト マネージャでは、次のソースからリストをインポートできます。

  • ODBC データ ソースに対して実行する SQL クエリ

  • ビジネス デスクから実行する分析レポート

  • 予測リソースのセグメント

  • テキスト ファイル (CSV 形式)

リスト マネージャでは、次の形式にリストをエクスポートできます。

  • 外部データベースにある SQL Server 2000 のテーブル

  • テキスト ファイル (CSV 形式)

リスト マネージャでは、時間のかかる操作を非同期で実行することが可能です。非同期方式では、操作は処理が開始された後に戻され、操作をするために使う操作 ID を割り当てます。

リスト マネージャでは、リストに関する情報は lm_master テーブルに、操作に関する情報は lm_master_operations テーブルに保存されます。

関連項目

リスト管理オブジェクト


IListManager::AddUserToMailingList

このメソッドは、ユーザー レコードをメーリング リストに追加するために使います。

定義

HRESULT IListManager::AddUserToMailingList(
VARIANT listID,
VARIANT UserEmail,
VARIANT UserGUID,
VARIANT UserFmt,
VARIANT UserLocale,
VARIANT UserUrl
);

パラメータ

listID

[in] リストの ID または名前を含むVariant です。

UserEmail

[in] ユーザーの電子メール アドレスを含む Variant です。

UserGUID

[in, optional] ユーザーの ID (通常は GUID) を含む Variant です。

UserFmt

[in, optional] メッセージ形式のフラグを含む Variant です。詳細については、"解説" を参照してください。

UserLocale

[in, optional] ユーザーの優先文字セットを含む Variant です。

UserUrl

[in, optional] ユーザー用にパーソナライズされたコンテンツの取得に使う URL を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_LIST_NO_EMAILS | 0x8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_MUST_BE_STATIC | 0x8C400019 | この操作には静的リストが必要ですが、指定されたリストは動的です。
E_LM_NOT_MAILING_LIST | 0x8C400018 | この操作にはメーリング リストが必要ですが、指定されたリストはメーリング リストではありません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | 0x8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

UserFmt パラメータには、ダイレクト メーラーで使うメッセージの形式を指定します。次の値を指定できます。text (1)、MIME (2)、および MHTML (3)。

1 つまたは複数のフィールドに Null が挿入されるように指定するには、VT_NULL、 VT_EMPTY、または VT_ERROR を省略可能なパラメータとして指定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::CancelOperation

このメソッドは、指定された ListManager 操作をキャンセルするために使います。

定義

HRESULT IListManager::CancelOperation(
VARIANT varOpID
);

パラメータ

varOpID

[in] キャンセルする操作の操作 ID を指定する Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_LM_OPERATION_NOT_FOUND | 0x8C400004 | この操作 ID は、現在実行している操作の ID ではありません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

varOpID パラメータ内のこのメソッドに渡された操作 ID は、呼び出しが非同期的に実行されたときに、次のいずれからでも取得できます。

  • Copy

  • CreateFromDWCalc

  • CreateFromFile

  • CreateFromSql

  • ExportToFile

  • ExportToSql

  • Subtract

  • Union

また、現在アクティブな操作の操作 IDはすべて、GetOperations メソッドを使って取得されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::get_ConnectionString

ConnectionString プロパティは、読み取り専用の文字列です。リスト マネージャがリストを保存するために使うデータベース接続文字列が含まれます。このプロパティは Initialize メソッドで設定します。

定義

Get メソッド :

HRESULT IListManager::get_ConnectionString(
BSTR* ConnectionString
);

パラメータ

ConnectionString

[out, retval] 接続文字列を返すために使われる BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ListManager オブジェクト


IListManager::Copy

このメソッドは、既存のリストに別の既存のリストをコピーするために使います。

定義

HRESULT IListManager::Copy(
VARIANT srcList,
VARIANT resList,
BOOL bAsync,
VARIANT* pvarOpID
);

パラメータ

srcList

[in] ソース リストの ID または名前を含む Variant です。

resList

[in] 結果リストの ID または名前を含む Variant です。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_COPY_LIST_OVER_SELF | 0x8C40001C | リストはリスト自身にはコピーできません。
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

メソッドを呼び出す前に結果リストが作成されている必要がありますが、リスト内のデータは上書きされます。

宛先リストの flags 属性は、ソース リストの flags 属性に置き換えられます。UserFlags 属性が変更されていません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::CreateEmpty

このメソッドは、後続の操作用に空のリストを作成するために使います。

定義

HRESULT IListManager::CreateEmpty(
BSTR listName,
BSTR listDesc,
long flags,
long userFlags,
VARIANT* pvarID
);

パラメータ

listName

[in] 新しいリストの名前を指定する BSTR です。

listDesc

[in] 新しいリストの説明を指定する BSTR です。

flags

[in] 作成するリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

[in] アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

pvarID

[out, retval] 新しいリストの ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_INVALID_FLAGS | 0x8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | 0x8C400007 | 指定されたリストは既に作成されています。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、コピー、削除、または結合操作の結果リストとして使う空のリストを作成する場合に役立ちます。

flags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::CreateFromDWCalc

このメソッドは、分析レポートからリストを作成するために使います。

定義

HRESULT IListManager::CreateFromDWCalc(
BSTR listName,
BSTR listDesc,
long lFlags,
long userFlags,
BSTR DWConnStr,
BSTR OLAPConnStr,
BSTR ReportStatusId,
BOOL bAsync,
VARIANT* pvarOpID,
VARIANT* pvarID
);

パラメータ

listName

[in] 新しいリストの名前を指定する BSTR です。

listDesc

[in] 新しいリストの説明を指定する BSTR です。

lFlags

[in] 作成するリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

[in] アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

DWConnStr

[in] データ ウェアハウスの接続文字列を含む BSTR です。

OLAPConnStr

[in] OLAP 接続文字列を含む BSTR です。

ReportStatusId

[in] インポートするレポートの ReportStatusID を含む BSTR です。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。

pvarID

[out, retval] 新しいリストの ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | 0x8C400001 | データベースに接続できませんでした。
E_LM_CREATE_OBJECT | 0x8C400017 | オブジェクトを作成できません。
E_LM_INVALID_FLAGS | 0x8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | 0x8C400007 | 指定されたリストは既に作成されています。
E_LM_MAILABLE_LIST_NO_EMAILS | 0x8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_REPORTRENDERERFAILED | 0x8C40001A | ListManager へのエクスポートを行う分析レポートの実行中に、オブジェクトを実行するレポートが失敗しました。問題を説明するオブジェクトによって記録されるアプリケーションのイベント ログ メッセージを参照してください。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | 0x8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは ReportRender オブジェクトを呼び出し、DWConnStr、OLAPConnStr、ReportStatusId パラメータと ListManager オブジェクトが使うデータベースへの接続文字列、および ReportRender オブジェクトが作成するテーブル名を渡します。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::CreateFromFile

このメソッドは、テキスト ファイルからリストを作成するために使います。

定義

HRESULT IListManager::CreateFromFile(
BSTR listName,
BSTR listDesc,
long lFlags,
long userFlags,
BSTR fileName,
long errLimit,
BOOL bAsync,
VARIANT* pvarOpID,
VARIANT* pvarID
);

パラメータ

listName

[in] 新しいリストの名前を指定する BSTR です。

listDesc

[in] 新しいリストの説明を指定する BSTR です。

lFlags

[in] 作成するリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

[in] アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

fileName

[in] 新しいリストを作成するための基になるファイル名を含む BSTR です。

errLimit

[in] 操作が終了するまでに許容される最大エラー回数を指定する long です。制限をなくすには、errLimit パラメータをゼロ (0) に設定します。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。

pvarID

[out, retval] 新しいリストの ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
E_LM_BAD_FILE_PATH | 0x8C40000A | 指定されたファイル パスは有効ではありません。
E_LM_FILE_ACCESS_DENIED | 0x8C400009 | ListManager サービスは指定されたファイルを開く権限がありません。ListManager サービスのアカウントがそのファイルへのアクセス権を持っていることを確認してください。
E_LM_FILE_NOT_FOUND | 0x8C400015 | 指定されたファイルは存在しません。
E_LM_FILESHARE_NOT_FOUND | 0x8C400016 | 共有ネットワークが存在せず、ファイルのフル パスが指定されていません。
E_LM_INVALID_FLAGS | 0x8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | 0x8C400007 | 指定されたリストは既に作成されています。
E_LM_LISTPARSE_NO_GOOD_ROWS | 0x8C40001B | ファイルのすべての行に解析エラーがありました。リストのインポートに失敗しました。
E_LM_NO_GENERIC_FROM_FILE | 0x8C400014 | 汎用リストはファイルからインポートされない可能性があります。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

listName パラメータと同じ名前のリストが既に存在する場合、メソッドは失敗します。テキスト ファイルからインポートするリストは、汎用リストであってはなりません。必ずメーリング リストになります。

List Manager を実行するように構成されているユーザー アカウントには、ファイルへのアクセス権が必要です。たとえば、ファイルが共有ネットワークにある場合、サービスはドメイン アカウントの下で実行するか、もしくはその共有へのアクセス権が必要です。

絶対ファイル パスとファイル名が指定されていない場合、リスト マネージャは、List Manager サービスを実行しているローカル コンピュータ上の CommerceLists というルート フォルダに対して相対的なファイルを探します。フォルダが存在しない場合、エラーが返されます。

List Manager では、次の入力テキスト ファイル形式が認識されます。

   <Mail-to address>,<User ID>,<Message Format>,<Locale>,
   <Source URL><cr><lf>

必要なフィールドは送信先アドレスだけです。メッセージ形式フィールドには次のいずれかを指定します。1 = text、2 = mime、または 3 = mhtml。メッセージ形式、ロケール、およびソースの各フィールドはダイレクト メーラーで使うために提供されています。

フィールドは二重引用符で囲まれている場合があります。これは、フィールド内の値にカンマまたは二重引用符が含まれている場合に必要です。引用されているフィールド内に同時に 2 つの二重引用符を使うと、1 つの二重引用符を示します。末尾にカンマがあるとエラーの原因になります。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

ファイル内の重複する電子メールアドレスを持つ行は無視されます。

pvarOpID パラメータに有効なデータが含まれるのは、作成操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト

IListManager::GetListFlags


IListManager::CreateFromSegment

このメソッドは、予測リソースのセグメントからリストを作成するために使います。

定義

HRESULT IListManager::CreateFromSegment(
BSTR listName,
BSTR listDesc,
long lFlags,
long userFlags,
BSTR modelName,
BSTR segmentName,
BSTR predHostName,
BSTR DWConnStr,
double fpMinProbability,
BOOL bAsync,
VARIANT* pvarOpID,
VARIANT* pvarID
);

パラメータ

listName

[in] リストの名前を指定する BSTR です。

listDesc

[in] リストの説明を含む BSTR です。

lFlags

[in] 作成するリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

[in] アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

modelName

[in] 使用する予測セグメント モデルの名前を含む BSTR です。

segmentName

[in] インポートするセグメントの名前を含む BSTR です。

predHostName

[in] 予測ホスト サーバーの名前を含む BSTR です。

DWConnStr

[in] データ ウェアハウスの接続文字列を含む BSTR です。

fpMinProbability

[in] 指定のセグメント メンバに関連付けられる最小確率を含む Double です。このメンバはリストに含まれます。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。

pvarID

[out, retval] 新しいリストの ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | 0x8C400001 | データベースに接続できませんでした。
E_LM_CREATE_OBJECT | 0x8C400017 | オブジェクトを作成できません。
E_LM_INVALID_FLAGS | 0x8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | 0x8C400007 | 指定されたリストは既に作成されています。
E_LM_MAILABLE_LIST_NO_EMAILS | 0x8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | 0x8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは PredictorServiceSiteAdmin オブジェクトを呼び出し、modelName、segmentName、fpMinProbability パラメータと ListManager オブジェクトが使うデータベースへの接続文字列、および PredictorServiceSiteAdmin オブジェクトが作成するテーブル名を渡します。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト

IListManager::GetListFlags


IListManager::CreateFromSql

このメソッドは、SQL クエリからリストを作成するために使います。

定義

HRESULT IListManager::CreateFromSql(
BSTR listName,
BSTR listDesc,
long lFlags,
long userFlags,
BSTR connStr,
BSTR queryStr,
long errLimit,
BOOL bAsync,
VARIANT* pvarOpID,
VARIANT* pvarID
);

パラメータ

listName

[in] リストの名前を指定する BSTR です。

listDesc

[in] 新しいリストの説明を指定する BSTR です。

lFlags

[in] 作成するリストの種類を制御するためのビットマスク フラグを指定する long です。

userFlags

[in] アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

connStr

[in] SQL Server データベースの接続文字列を含む BSTR です。

queryStr

[in] 新しいリストの内容を取得する SQL クエリを含む BSTR です。

errLimit

[in] 使われていない long です。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。

pvarID

[out, retval] 新しいリストの ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | 0x8C400001 | データベースに接続できませんでした。
E_LM_INVALID_FLAGS | 0x8C400005 | フラグの値が無効です。
E_LM_LIST_ALREADY_EXISTS | 0x8C400007 | 指定されたリストは既に作成されています。
E_LM_MAILABLE_LIST_NO_EMAILS | 0x8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | 0x8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドには MSDASQL (ODBC) OLEDB プロバイダを使うことをお勧めします。

CreateFromSQL メソッドは、T-SQL OpenRowset コマンドを使い、データベースに対してクエリを実行します。したがって、ODBC データ ソースの指定には次の制限が付く場合があります。

SQLOLEDB プロバイダを使う場合、クエリで使われるオブジェクト名は完全修飾されている必要があります。たとえば SQL Server 7.0 のデータベースでは、"SELECT * FROM tablename" ではなく "SELECT * FROM database.dbo.tablename" を使います。

lflags パラメータに指定できる値のリストについては、GetListFlags メソッドを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト

IListManager::GetListFlags


IListManager::Delete

このメソッドは、リストを削除するために使います。

定義

HRESULT IListManager::Delete(
VARIANT listID
);

パラメータ

listID

[in] 削除するリストの ID または名前を指定する Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

削除するには、何らかの操作でリストを使っていてはなりません。

リスト データも削除されます。

関連項目

ListManager オブジェクト


IListManager::ExportToFile

このメソッドは、メーリング リストをテキスト ファイルにエクスポートするために使います。

定義

HRESULT IListManager::ExportToFile(
VARIANT listID,
BSTR fileName,
BOOL bUnicode,
BOOL bOverwrite,
BOOL bAsync,
VARIANT* pvarOpID
);

パラメータ

listID

[in] エクスポートするリストの ID または名前を含む Variant です。

fileName

[in] ファイルの名前を含む BSTR です。

bUnicode

[in] エクスポート ファイルの文字形式を指定する Boolean です。値が True の場合、Unicode 文字を使う必要があることを示します。値が False の場合、現在のシステムのコードページ文字セットを使う必要があることを示します。

bOverwrite

[in] エクスポート ファイルがある場合にそのファイルのデータに上書きするかどうかを指定する Boolean です。値が True の場合、データが上書きされることを示します。値が False の場合、ファイルが存在するとメソッドが失敗する原因となります。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_BAD_FILE_PATH | 0x8C40000A | 指定されたファイル パスは有効ではありません。
E_LM_FILE_ACCESS_DENIED | 0x8C400009 | ListManager サービスは指定されたファイルを開く権限がありません。ListManager サービスのアカウントがそのファイルへのアクセス権を持っていることを確認してください。
E_LM_FILE_ALREADY_EXISTS | 0x8C400010 | 指定されたファイルは既に存在するため作成できません。
E_LM_FILESHARE_NOT_FOUND | 0x8C400016 | 共有ネットワークが存在せず、ファイルのフル パスが指定されていません。
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_REQUIRED | 0x8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

リストが、メールが利用可能なリストでありメーリング リストではない場合、一時的にメーリング リストが作成され、その後エクスポートされます。

絶対ファイル パスとファイル名が指定されていない場合、List Manager は、List Manager リソースを実行しているローカル コンピュータ上の CommerceLists というルート フォルダに対して相対的なファイルをエクスポートします。フォルダが存在しない場合、エラーが返されます。

ListManager では、次の形式でファイルがエクスポートされます。メッセージ形式フィールドは整数です。ほかのフィールドはすべて文字列で、二重引用符で囲まれています。

   <Mail-to address>,<User ID>,<Message Format>,<Locale>,
   <Source URL><cr><lf>

pvarOpID パラメータに有効なデータが含まれるのは、エクスポート操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::ExportToSql

このメソッドは、Microsoft SQL Server データベースの指定されたテーブルにリストをエクスポートするために使います。この操作は、同期的または非同期的に実行されます。

定義

HRESULT IListManager::ExportToSql(
VARIANT listID,
BSTR connStr,
BSTR resTable,
BOOL bOverwrite,
long lOptions,
BOOL bAsync,
VARIANT* pvarOpID
);

パラメータ

listID

[in] エクスポートするリストの ID または名前を含む Variant です。

connStr

[in] SQL Server データベースの接続文字列を含む BSTR です。

resTable

[in] リストのエクスポート先のテーブルの名前を含む BSTR です。

bOverwrite

[in] テーブル既にがある場合にデータを上書きするかどうかを指定する Boolean です。値が True の場合、データが上書きされることを示します。テーブルが既に存在する場合に False を指定するとエラーになります。

lOptions

[in] ダイレクト メール リソースが使用するエクスポート オプションを指定する long です。ほかのアプリケーションは一般的に値 0 を渡します。値 1 は、特別なアクションを実行します。下記の "解説" を参照してください。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。値が False の場合、同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。この操作 ID は、この操作に関連する後続の処理で使われます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_CONNECTIONFAILED | 0x8C400001 | データベースに接続できませんでした。
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_TABLE_ALREADY_EXISTS | 0x8C40000F | 指定されたテーブルは既に存在するため作成できません。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

既存のテーブルは、エクスポートされたリストと同じ形式であることが必要とされます。テーブルが存在しない場合は作成されます。

ExportToSQL メソッドは、接続先の SQL Server データベースに接続し、T-SQL OpenRowset コマンドを実行して List Manager データベースからデータを選択すると機能します。このため、いくつかの特別な警告が適用されます。

  • 接続先のデータベースに Bulk Copy または Select Into オプションが選択されている必要があります。

  • リスト マネージャが DSN を含む接続文字列を使って初期化された場合、接続先のデータベースを運用している SQL Server コンピュータの DSN も構成する必要があります。

  • CreateFromSQL コマンドとは異なり、SQL Server 7.0 以上の ODBC データ ソース以外はサポートされていません。

pvarOpID パラメータに有効なデータが含まれるのは、エクスポート操作が非同期的に実行された場合だけです。

lOptions パラメータは、エクスポートされたリストがダイレクト メーラーでの使用を目的とするかどうかを指定し、エクスポート中のリストの処理方法を制御します。次の表は、IOptions パラメータの有効な値を示します。

lOptions の値 | 説明
0 | ダイレクト メーラーに対して特別な処理は何も行わないでください。
1 | ダイレクト メーラーで使うリストをエクスポートします。リストは、メールが利用可能なリストである必要があります。そうでない場合、エラーが返されます。リストがメーリング リストでない場合、メーリング リストに変換されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト

IListManager::ExtractMailingList


IListManager::ExtractMailingList

このメソッドは、汎用リストから新しいメーリング リストを作成するために使います。

定義

HRESULT IListManager::ExtractMailingList(
VARIANT srcList,
BSTR reslistName,
BSTR reslistDesc,
long userFlags,
BOOL bAsync,
VARIANT* pvarOpID,
VARIANT* pvarID
);

パラメータ

srcList

[in] 汎用ソース リストの ID または名前を含む Variant です。

reslistName

[in] 新しいメーリング リストの名前を含む BSTR です。

reslistDesc

[in] 新しいメーリング リストの説明を含む BSTR です。

userFlags

[in] アプリケーション固有のユーザー フラグを含む long です。ListManager オブジェクトでは使いません。

bAsync

[in] エクスポート操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。

pvarID

[out, retval] 新しいリストの ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_ALREADY_EXISTS | 0x8C400007 | 指定されたリストは既に作成されています。
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_LIST_NO_EMAILS | 0x8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_MAILABLE_REQUIRED | 0x8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | 0x8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ソース リストはメールが利用可能なリストである必要があります (rcp_email 列が含まれている)。結果リストの重複する電子メール アドレスは削除されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::GetListFlags

このメソッドは、リストの flags 属性を取得するために使います。

定義

HRESULT IListManager::GetListFlags(
VARIANT listID,
long* plFlags
);

パラメータ

listID

[in] リストの ID または名前を含む Variant です。

plFlags

[out, retval] flags 属性を返すために使われる long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

次の表は、作成されるリストの種類を決定するフラグ パラメータの値を示します。値は、1 つ以上のフラグを指定するために OR 演算されます。

種類 | 値 | 説明
既定 | 0x0 | メーリング リスト
非表示 | 0x1 | リストはユーザー インターフェイスにエクスポートしないでください。
動的 | 0x2 | 動的リスト
ユーザー | 0x4 | ユーザー リスト (rcp_guid 列が含まれている)
汎用 | 0x8 | 汎用リスト
メールが利用可能 | 0x10 | メールが利用可能なリスト (rcp_email 列が含まれている)

関連項目

ListManager オブジェクト


IListManager::GetListId

このメソッドは、リスト名が指定されているリストの ID を取得するために使います。

定義

HRESULT IListManager::GetListId(
BSTR listName,
VARIANT* pvarID
);

パラメータ

listName

[in] リストの名前を含む BSTR です。

pvarID

[out, retval] リストの ID (GUID) を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::GetListName

このメソッドは、リスト ID が指定されているリストの名前を取得するために使います。

定義

HRESULT IListManager::GetListName(
VARIANT listID,
BSTR* plistName
);

パラメータ

listID

[in] リスト ID を含む Variant です。

plistName

[out, retval] リストの名前を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::GetListProperty

このメソッドは、リストのプロパティを取得するために使います。

定義

HRESULT IListManager::GetListProperty(
VARIANT listID,
BSTR listPropertyName,
VARIANT* pvarListProp
);

パラメータ

listID

[in] リストの ID または名前を含む Variant です。

listPropertyName

[in] プロパティ名 (lm_master テーブルの列) を含む BSTR です。

pvarListProp

[out, retval] プロパティの値を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

使用できるリスト プロパティについては、「IListManager::GetLists」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::GetLists

このメソッドは、ListManager オブジェクトが認識するすべてのリストを列挙するために使います。

定義

HRESULT IListManager::GetLists(
IDispatch** ppRecSet
);

パラメータ

ppRecSet

[out, retval] ListManager オブジェクトのこのインスタンスが認識するリストの詳細を返すために使う、ADO Recordset オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、読み取り専用の ADO Recordset オブジェクトのインスタンスを返します。これには、ListManager オブジェクトのデータベースにある各リストのレコードが含まれています。Recordset オブジェクトには、このメソッドが呼び出された時点で作成が完了していないリストは含まれません。

このメソッドが呼び出された時点で作成が完了しているリストがない場合、メソッドは正常に値を返しますが、Recordset オブジェクトは空です。

次の表は、Recordset オブジェクトに返されるフィールドを示します。

フィールド | 種類 | 説明
list_id | uniqueidentifier | リストの ID 番号。
list_name | NVARCHAR [64] | リストの名前。
list_created | Date/Time | リストのレコードが作成された日付と時刻。
list_creation_type | smallint | リストの作成に使うメソッド。有効な値は次のとおりです。 1 - CreateFromFile 2 - CreateFromSQL 3 - CreateFromDWCalc 4 - CreateFromSegment 5 - その他 (subtraction、union、extraction など)
list_description | NVARCHAR [256] | リストの説明。
list_err_limit | long | リストのエラーのしきい値。
list_flags | int | リストのビット フラグ。1 つ以上のフラグを指定するために、ビットごとに OR 演算できます。有効な値は次のとおりです。 0x0 - 既定 0x1 - 非表示 0x2 - 動的 0x4 - ユーザー 0x8 - 汎用 0x10 - メールが利用可能
list_location | NVARCHAR [256] | リストのデータを格納する場所 (テーブル名)。
list_query | NVARCHAR [1024] | リストの作成に使うクエリ。
list_recent_operid | NVARCHAR [128] | 最新のリスト操作の ID。リストが CreateEmpty メソッドによって新しく作成されている場合、Null になる場合があります。
list_size | int | リストの行数 (動的リストの場合は -1)。
list_source | NVARCHAR [512] | ファイルの名前、接続文字列、またはリストの作成に使うファイル名。
list_status | int | リストの状態。有効な値は次のとおりです。 1 - 処理可能 2 - 処理中、ほかの操作は禁止 3 - 失敗
list_unique_emails | int | リスト内で一意の rcp_email 値の数 (動的リストの場合は -1)。
list_unique_guids | int | リスト内で一意の rcp_guid 値の数 (動的リストの場合は -1)。
list_userflags | int | アプリケーション固有。ListManager オブジェクトでは使いません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::GetListUserFlags

このメソッドは、リストの UserFlags 属性を取得するために使います。

定義

HRESULT IListManager::GetListUserFlags(
VARIANT listID,
long* plUserFlags
);

パラメータ

listID

[in] リストの ID または名前を含む Variant です。

plUserFlags

[out, retval] flags 属性を返すために使われる long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

UserFlags 属性は、リスト マネージャの外部のアプリケーションによって使われます。リスト マネージャは、リストが作成された時点で渡されたフラグを単に保存するだけで、UserFlags 属性の値を認識しません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::GetOperationInfo

このメソッドは、指定されたリスト操作を説明する列が含まれる Recordset オブジェクトを取得するために使います。

定義

HRESULT IListManager::GetOperationInfo(
VARIANT varOpID,
IDispatch** ppRecSet
);

パラメータ

varOpID

[in] 操作 ID を含む Variant です。

ppRecSet

[out, retval] 操作情報を返すために使う、Recordset オブジェクトの IDispatch インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

返される Recordset オブジェクトの詳細については、「IListManager::GetOperations」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::GetOperations

このオブジェクトは、ListManager オブジェクトが認識するすべてのリストを列挙するために使います。

定義

HRESULT IListManager::GetOperations(
IDispatch** ppRecSet
);

パラメータ

ppRecSet

[out, retval] ListManager オブジェクトのこのインスタンスが認識する操作に関する情報が返される ADO Recordset オブジェクトの IDispatch インターフェイスを返すために使われるポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、読み取り専用の ADO Recordset オブジェクトのインスタンスを返します。これには、ListManager オブジェクトのデータベースにある各リストのレコードが含まれています。現在データベースにあるリストで実行されたことのあるすべての操作には、レコードがあります。リストが削除されると、そのリストに関連付けられている操作もすべて削除されます。

次の表は、Recordset オブジェクトに返されるフィールドを示します。

フィールド | 種類 | 説明
op_id | NVARCHAR[128] | 操作を識別し、CancelOperation メソッドに渡されて操作を終了させる "トークン" です。
op_desc | NVCHAR[256] | ユーザーにわかりやすいように操作を説明しています。
op_error_code | int | リストに関連付けられている最後に起こった失敗の HRESULT です。
op_error_desc | NVARCHAR[1024] | リストに関連付けられている最後に起こった失敗の説明です。
op_list_destination | Nvarchar(256) | リストの説明です (Export タイプの操作のみ)。
op_list_id | uniqueidentifier | この操作が行われるリスト ID です。
op_list_id_a | uniqueidentifier | 操作に複数のリストが含まれている場合は列が追加されます。
op_list_id_b | uniqueidentifier | 操作に複数のリストが含まれている場合は列が追加されます。
op_list_param1 | int | 操作に含まれている余分なパラメータを格納するための列を追加します。
op_list_param2 | int | 操作に含まれている余分なパラメータを格納するための列を追加します。
op_list_table | nvarchar(256) | テーブル名 (ExportToSql タイプの操作のみ)。
op_progress | int | 使われていません。
op_status | smallint | 操作の状態。有効な値は次のとおりです。 0 - 完了 1 - 実行中 -1 - 失敗
op_time_end | Date/Time | 操作が完了または中断された日付/時刻です。
op_time_start | Date/Time | 操作が開始された日付/時刻です。
op_type | int | 操作のタイプ。有効な値は次のとおりです。 1 - CreateFromFile 2 - CreateFromSQL 3 - ExportToFile 4 - ExportToSQL 5 - Copy 6 - Subtract 7 - Union 8 - CreateFromDWCalc. 9 - CreateFromSegment 10 - ExtractMailingList 11 - その他 (分類なしまたは一時的)

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト

IListManager::CancelOperation


IListManager::Initialize

このメソッドは、ListManager オブジェクトを初期化するために使います。

定義

HRESULT IListManager::Initialize(
BSTR bstrConnStr,
);

パラメータ

bstrConnStr

[in] List Manager の接続先のデータベースの接続文字列を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_ALREADYINITIALIZED | 0x8C400002 | ListManager オブジェクトは既に初期化されているため、再度初期化できない可能性があります。
E_LM_CONNECTIONFAILED | 0x8C400001 | データベースに接続できませんでした。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ListManager オブジェクトを初期化してから、ほかの ListManager オブジェクト メソッドまたはプロパティを呼び出します。

初期化により、ListManager オブジェクトがデータベースに接続されます。データベースに ListManager で必要なテーブルおよびプロシージャが含まれていない場合は、それらが作成されます。

ListManager は 1 つのデータベースにしか接続できません。別のデータベースに接続するには、新たに ListManager オブジェクトのインスタンスを作成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト

IListManager::ExportToSQL


IListManager::RemoveUserFromMailingList

このメソッドは、メーリング リストからユーザーを削除するために使います。

定義

HRESULT IListManager::RemoveUserFromMailingList(
VARIANT listID,
BSTR UserEmail
);

パラメータ

listID

[in] リストの ID または名前を含む Variant です。

UserEmail

[in] ユーザーの電子メール アドレスを含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_LIST_NO_EMAILS | 0x8C40000D | このリストはメールが利用可能なリストとして指定されていますが、rcp_email 列を含みません。
E_LM_MUST_BE_STATIC | 0x8C400019 | この操作には静的リストが必要ですが、指定されたリストは動的です。
E_LM_NOT_MAILING_LIST | 0x8C400018 | この操作にはメーリング リストが必要ですが、指定されたリストはメーリング リストではありません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
E_LM_USER_LIST_NO_GUIDS | 0x8C40000E | このリストはユーザー リストとして指定されていますが、rcp_guid 列を含みません。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::Rename

このメソッドは、リストの名前を変更するために使います。

定義

HRESULT IListManager::Rename(
VARIANT listID,
BSTR newListName
);

パラメータ

listID

[in] 名前を変更するリストの ID または名前を指定する Variant です。

newListName

[in] リストの新しい名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_ALREADY_EXISTS | 0x8C400007 | 指定されたリストは既に作成されています。
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

新しい名前は既存のリスト名と同じにしないでください。

関連項目

ListManager オブジェクト


IListManager::SetDesc

このメソッドは、リストに新しく説明を付けるために使います。

定義

HRESULT IListManager::SetDesc(
VARIANT listID,
BSTR newListDesc
);

パラメータ

listID

[in] リストの ID または名前を指定する Variant です。

newListDesc

[in] リストに関連付けられている説明を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

ListManager オブジェクト


IListManager::SetListProperty

このメソッドは、リストのプロパティを設定するために使います。

定義

HRESULT IListManager::SetListProperty(
VARIANT listID,
BSTR listPropertyName,
VARIANT ListProp
);

パラメータ

listID

[in] リストの ID または名前を含む Variant です。

listPropertyName

[in] プロパティ名 (lm_master テーブルの列) を含む BSTR です。

ListProp

[in] プロパティを設定するための値を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_MUST_BE_DYNAMIC | 0x8C400012 | この操作には動的リストが必要ですが、指定されたリストは動的リストではありません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_LISTPROP_NOT_UPDATEABLE | 0x8C400013 | 指定されたリスト プロパティは、リストの作成後は変更できません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは通常、テーブル名、接続文字列、SQL クエリなどの動的リストのプロパティを変更するために使います。これを基に動的リストが作成されます。

次のプロパティはこのメソッドで設定します。

  • list_name

  • list_description

  • list_userflags

  • list_err_limit (動的リストのみ)

  • list_query (動的リストのみ)

  • list_source (動的リストのみ)

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::get_Status

Status プロパティは、ListManager オブジェクトの状態を含む読み取り専用の long です。

定義

Get メソッド :

HRESULT IListManager::get_Status(
long* Status
);

パラメータ

Status

[out, retval] ListManager オブジェクトの状態を返すために使われる long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

次の表は、有効な状態コードとその説明を示します。

状態 | 値 | 説明
LMSTATUS_NEW | 0 | ListManager オブジェクトは作成されていますが、まだ初期化されていません。
LMSTATUS_READY | 1 | ListManager オブジェクトが作成され、正常に初期化されています。
LMSTATUS_ERROR | -1 | ListManager オブジェクトの初期化に失敗しました。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::Subtract

このメソッドは、あるメーリング リストを別のメーリング リストから削除するために使います。結果は第 3 のリストに配置します。

定義

HRESULT IListManager::Subtract(
VARIANT srcList,
VARIANT lessList,
VARIANT resList,
long errLimit,
BOOL bAsync,
VARIANT* pvarOpID
);

パラメータ

srcList

[in] 要素を削除するリストの ID または名前を含む Variant です。

lessList

[in] 簡略リストの ID または名前を含む Variant です。

resList

[in] 削除操作の結果を入れるリストの ID または名前を含む Variant です。

errLimit

[in] 使われていない long です。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。値が False の場合、同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。この操作 ID は、この操作に関連する後続の処理で使われます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_REQUIRED | 0x8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

メソッドを呼び出す前に結果リストが作成されている必要がありますが、リスト内のデータは上書きされます。

このメソッドは rcp_email 列にキーがあるため、ソース リスト (srcList パラメータ) と簡略リスト (lessList パラメータ) の両方がメールが利用可能なリスト (LISTFLAG_MAILABLE が True に設定されている) である必要があります。簡略リスト中に重複する電子メールアドレス (rcp_email) を持たないソース リストのレコードは、結果リスト (resList パラメータ) にコピーされます。結果リスト中の既存のデータはすべて削除されます。

pvarOpID パラメータに有効なデータが含まれるのは、削除操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::Union

このメソッドは、2 つのメーリング リストの和集合を作成し、結果を第 3 のリストに配置するために使います。和集合とは、2 つのリストを結合して重複をなくしたものです。

定義

HRESULT IListManager::Union(
VARIANT srcList,
VARIANT addList,
VARIANT resList,
long errLimit,
BOOL bAsync,
VARIANT* pvarOpID
);

パラメータ

srcList

[in] ソース リストの ID または名前を含む Variant です。

addList

[in] 追加リストの ID または名前を含む Variant です。

resList

[in] 結合操作の結果を入れるリストの ID または名前を含む Variant です。

errLimit

[in] 使われていない long です。

bAsync

[in] コピー操作を同期的に実行するか、非同期的に実行するかを指定する Boolean です。値が True の場合、非同期処理が行われることを示します。値が False の場合、同期処理が行われることを示します。

pvarOpID

[out, optional] 操作 ID を返すために使う Variant へのポインタです。この操作 ID は、この操作に関連する後続の処理で使われます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_LIST_BUSY | 0x8C400008 | 指定されたリストは、現在ほかの操作で使われています。
E_LM_LIST_IN_FAILED_STATE | 0x8C40001D | 指定されたリストは FAILED の状態であり、この操作には使えません。
E_LM_LIST_NOT_FOUND | 0x8C400006 | 指定されたリストは存在しません。
E_LM_MAILABLE_REQUIRED | 0x8C400011 | この操作にはメールが利用可能なリストが必要ですが、指定されたリストはメールが利用可能なリストではありません。
E_LM_OPER_CANCELED | 0x8C40000B | 操作がキャンセルされました。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

メソッドを呼び出す前に結果リストが作成されている必要がありますが、リスト内のデータは上書きされます。

このメソッドは rcp_email 列にキーがあるため、ソース リスト (srcList パラメータ) と追加リスト (addList パラメータ) の両方がメールが利用可能なリスト (LISTFLAG_MAILABLE が True に設定されている) である必要があります。ソース リストのレコードはすべて結果リスト (resList パラメータ) にコピーされます。ソース リスト中に重複する電子メールアドレス (rcp_email) を持たない追加リストのレコードも、結果リストにコピーされます。結果リスト中の既存のデータはすべて削除されます。

pvarOpID パラメータに有効なデータが含まれるのは、結合操作が非同期的に実行された場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


IListManager::WaitOnOperation

このメソッドは、操作が完了するまで、または指定の時間が経過するまで待機するために使います。

定義

HRESULT IListManager::WaitOnOperation(
VARIANT varOpID,
unsigned long timeout
);

パラメータ

varOpID

[in] 待機する操作の ID を指定する Variant です。操作 ID をどこで取得するかの詳細については、"解説" を参照してください。

timeout

[in, optional] 符号なし long でタイムアウトを指定します。このメソッドが制御を戻すのは、指定された操作が終了するか、timeout で指定された秒数が経過するかの、いずれか先に起こった時点です。値がゼロの場合 (既定)、操作の完了を待機する時間は無制限です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_LM_OPERATION_NOT_FOUND | 0x8C400004 | この操作 ID は、現在実行している操作の ID ではありません。
E_LM_SQLERROR | 0x8C400003 | SQL/ADO 操作の実行中にエラーが発生しました。
OLE_E_BLANK | 0x80040007 | ListManager オブジェクトは正しく初期化されていません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、ASP ページの VBScript や JScript などのスクリプト言語からは呼び出せません。ASP ページで非同期操作を扱う場合にはほかの技術を用いる必要があり、またこれらの処理を明示的に待機してはいけません。

varOpID パラメータ内のこのメソッドに渡された操作 ID は、呼び出しが非同期的に実行されたときに、次のいずれからでも取得できます。

  • Copy

  • CreateFromDWCalc

  • CreateFromFile

  • CreateFromSql

  • ExportToFile

  • ExportToSql

  • Subtract

  • Union

また、既知の操作の操作 IDはすべて、GetOperations メソッドを使って取得されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ListManager オブジェクト


LRUCache オブジェクト

このオブジェクトは、要素として参照されるメモリ内の名前と値の組み合わせを、メモリ内のキャッシュから作成、格納、および取得するために使います。LRUCache オブジェクトには Dictionary オブジェクトと同様の機能があります。ただし、LRUCache オブジェクトは限られた数の要素しか保存せず、要素を使用頻度に応じて内部的にランク付けします。満杯のキャッシュに新しい要素を追加する必要がある場合、最近使う頻度の少ない要素がキャッシュから削除され、新しい要素のための場所が確保されます。

ProgID: | Commerce.LRUCache (外部作成可能)
COM クラス名: | LRUCache
COM インターフェイス名: | ILRUCache
インターフェイス ID 定数: | IID_ILRUCache
ヘッダー ファイル: | cacheint.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

C++ で LRUCache オブジェクトのメソッドにアクセスするには、ILRUCache インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、LRUCache オブジェクトのメソッドを示しています。

メソッド | 説明
Flush | キャッシュから 1 つの要素を削除します。
FlushAll | キャッシュからすべての要素を削除します。
Insert | 要素をキャッシュに挿入します。
Lookup | 要素の名前が指定されたときに、その要素の値をキャッシュに返します。
LookupObject | オブジェクトの名前が指定されたときに、そのオブジェクトをキャッシュに返します。
SetSize | キャッシュの最大サイズを設定します。


ILRUCache::Flush

このメソッドは、キャッシュから指定された要素を削除するために使います。

定義

HRESULT ILRUCache::Flush(
BSTR bstrKey
);

パラメータ

bstrKey

[in, optional] キャッシュから削除する要素の名前を含む、省略可能な BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

要素が指定されていない場合、すべての要素が削除されます。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


ILRUCache::FlushAll

このメソッドは、キャッシュからすべての要素を削除するために使います。

定義

HRESULT ILRUCache::FlushAll(
);

パラメータ

なし。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


ILRUCache::Insert

このメソッドは、キャッシュに要素を追加するために使います。

定義

HRESULT ILRUCache::Insert(
BSTR bstrKey,
VARIANT* pvarValue
);

パラメータ

bstrKey

[in] キャッシュに追加する要素の名前を含む BSTR です。

pvarValue

[in] 要素の値を含む Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


ILRUCache::Lookup

このメソッドは、キャッシュから要素の値を取得するために使います。

定義

HRESULT ILRUCache::Lookup(
BSTR bstrKey,
VARIANT* pvarValue
);

パラメータ

bstrKey

[in] 取得する要素の名前を含む BSTR です。

pvarValue

[out,retval] 値を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvarValue パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


ILRUCache::LookupObject

このメソッドは、キャッシュからオブジェクトを取得するために使います。

定義

HRESULT ILRUCache::LookupObject(
BSTR bstrKey,
IDispatch** ppLRUCache
);

パラメータ

bstrKey

[in] 取得するオブジェクトの名前を含む BSTR です。

ppLRUCache

[out,retval] オブジェクトの IDispatch インターフェイスを参照するポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppLRUCache パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


ILRUCache::SetSize

このメソッドは、キャッシュの最大サイズを設定するために使います。

定義

HRESULT ILRUCache::SetSize(
long lSize
);

パラメータ

lSize

[in] キャッシュのサイズを指定する long です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

CacheManager オブジェクト

LRUCache オブジェクト


MessageManager オブジェクト

このオブジェクトは、注文処理パイプライン (OPP) コンポーネントが注文処理中に生成したエラー状況を説明するために使うエラー メッセージを、複数の言語で保存するために使います。

ProgID: | Commerce.MessageManager (外部作成可能)
COM クラス名: | MSCSMessageManager_3_0
COM インターフェイス名: | IMSCSMessageManager_3_0
インターフェイス ID 定数: | IID_IMSCSMessageManager_3_0
ヘッダー ファイル: | commerce.h, mspu_guids.h
タイプ ライブラリ名: | Commerce -- MSCSAspHelp Type Library
DLL 名: | MSCSAspHelp.dll
スレッド モデル: | 両方

C++ で MessageManager オブジェクトのプロパティとメソッドにアクセスするには、IMSCSMessageManager_3_0 インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、MessageManager オブジェクトの 1 つのプロパティを示しています。

プロパティ | 種類 | 説明
defaultLanguage | BSTR | MessageManager オブジェクトの既定のメッセージ セットを指定します。 このプロパティは読み取りと書き込みが可能です。

次の表は、MessageManager オブジェクトのメソッドを示しています。

メソッド | 説明
AddLanguage | MessageManager オブジェクトに新しいメッセージ セットを追加し、そのメッセージ セットをロケールに関連付けます。
AddMessage | MessageManager オブジェクトに新しいメッセージを追加します。
GetLocale | 指定されたメッセージ セットのロケールを返します。
GetMessage | 指定されたメッセージ名定数に関連付けられたメッセージを返します。

関連項目

表示オブジェクト


IMSCSMessageManager_3_0::AddLanguage

このメソッドは、MessageManager にメッセージ セットを追加し、そのメッセージ セットをロケールに関連付けるために使います。MessageManager オブジェクトのメソッドにおける後続の呼び出しでは、呼び出し元はロケールではなくメッセージ名を識別する必要があります

1 つのロケールにいくつでもメッセージ セットを関連付けられます。

定義

HRESULT IMSCSMessageManager_3_0::AddLanguage(
BSTR bstrLanguage,
long Locale
);

パラメータ

bstrLanguage

[in] MessageManager オブジェクトに追加するメッセージ セットの名前を含む BSTR です。

Locale

[in] 追加するメッセージ セットに関連付けられているロケールを一意に識別するための long です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MessageManager オブジェクト

IMSCSMessageManager_3_0::get_DefaultLanguage/put_DefaultLanguage

IDataFunctions_4_0::get_Locale/put_Locale

IMSCSMessageManager_3_0::GetMessage


IMSCSMessageManager_3_0::AddMessage

このメソッドは、MessageManager オブジェクトにメッセージを追加するために使います。

定義

HRESULT IMSCSMessageManager_3_0::AddMessage(
BSTR bstrName,
BSTR bstrMessage,
VARIANT vtLanguage
);

パラメータ

bstrName

[in] メッセージ名定数を含む BSTR です。追加するメッセージは、この文字列によって識別されます。よく使われるメッセージおよびそれらの定数名の一覧については、"解説" を参照してください。

bstrMessage

[in] 追加するメッセージのテキストを含む BSTR です。

vtLanguage

[in] メッセージに関連付ける言語の名前を含む Variant です。この値が指定されている場合、AddLanguage メソッドの以前の呼び出しで追加された言語名である必要があります。このパラメータが指定されていなかった場合や、パラメータの値が Null である場合には、MessageManager オブジェクトの DefaultLanguage プロパティで指定された言語が使われます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

次の表は、これらのメッセージを使う注文処理パイプライン (OPP) コンポーネントで必要なメッセージ名定数を示すことにより、OPP の既定の実装で使われるメッセージを一覧表示します。

メッセージ名定数 | OPP コンポーネントで使用 | この状態でこのコレクションに追加
pur_badplacedprice | RequiredItemAdjustPrice | _Basket_Errors: 品物の価格が注文フォームに含まれている価格と一致しません
pur_badhandling | RequiredHandling | _Purchase_Errors: 注文の処理コストを計算できません
pur_badpayment | RequiredPayment | _Purchase_Errors: 認証コード (_payment_auth_code) が設定されていません
pur_badshipping | RequiredShipping | _Purchase_Errors: 注文の送料を計算できません
pur_badsku | RequiredProdInfo | _Basket_Errors: 注文フォームの在庫保管単位 (SKU) がサイトの在庫に含まれていない品物を参照しています
pur_badtax | RequiredTax | _Purchase_Errors: 購入に対する税を計算できません
pur_badverify | RequiredTotal | _Purchase_Errors: ProcessVerifyWith メソッドによって保存されたデータが注文フォームの元のデータと一致しません
pur_noitems | RequiredOrderCheck | _Purchase_Errors: 注文フォームに品物がありません
pur_out_of_stock | FlagInventory、LocalInventory | _Purchase_Errors: 注文フォームで参照されている品物は在庫切れです

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MessageManager オブジェクト

IMSCSMessageManager_3_0::get_DefaultLanguage/put_DefaultLanguage

IMSCSMessageManager_3_0::GetMessage


IMSCSMessageManager_3_0::get_DefaultLanguage/put_DefaultLanguage

DefaultLanguage プロパティは、MessageManager の既定のメッセージ セットを指定するために使います。メッセージ セットを指定せずに、GetMessage メソッドや AddMessage メソッドを使って MessageManager にメッセージを追加する場合、メッセージはこのプロパティで指定されたメッセージ セットに関連付けられます。

定義

Get メソッド :

HRESULT IMSCSMessageManager_3_0::get_defaultLanguage(
BSTR* defaultLanguage
);

Put メソッド :

HRESULT IMSCSMessageManager_3_0::put_defaultLanguage(
BSTR defaultLanguage
);

パラメータ

defaultLanguage

[in] プロパティを入力する場合は、既定の言語を含む BSTR です。
[out, retval] プロパティを取得する場合は、既定の言語を返すために使う BSTR です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

defaultLanguage パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MessageManager オブジェクト

IMSCSMessageManager_3_0::GetLocale


IMSCSMessageManager_3_0::GetLocale

このメソッドは、指定されたメッセージ セットのロケールを識別する番号を返すために使います。

定義

HRESULT IMSCSMessageManager_3_0::GetLocale(
VARIANT vtLanguage,
long* pLocale
);

パラメータ

vtLanguage

[in] ロケールを取得するメッセージ セットの名前を含む Variant です。このメッセージ セットは、AddLanguage メソッドの以前の呼び出しを経由してMessageManager オブジェクトに追加されている必要があります。

pLocale

[out, retval] 指定したメッセージ セットのロケールを識別するために使う long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pLocale パラメータが有効なデータをポイントするのは、メソッドが正常に値を戻した場合だけです。

GetMessage メソッドと同様に、GetLocale メソッドは通常、サイト内からは呼び出されません。代わりに、パイプライン コンポーネントによって使われ、コンポーネントに発生したエラーを説明するメッセージのロケールを取得します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MessageManager オブジェクト

IMSCSMessageManager_3_0::GetMessage

IMSCSMessageManager_3_0::AddLanguage


IMSCSMessageManager_3_0::GetMessage

このメソッドは、指定されたメッセージのテキストを返すために使います。

定義

HRESULT IMSCSMessageManager_3_0::GetMessage(
BSTR bstrName,
VARIANT vtLanguage,
BSTR* Message
);

パラメータ

bstrName

[in] 返されるメッセージのメッセージ定数名を含む BSTR です。これは、AddMessage メソッドの呼び出しを経由して MessageManager オブジェクトに追加されたときに、このメッセージに関連付けられた名前です。

vtLanguage

[in] メッセージ テキストが属しているメッセージ セットの名前を含む Variant です。この文字列は、AddLanguage メソッドの以前の呼び出しを経由して MessageManager オブジェクトに追加されたメッセージ セットを指定します。このパラメータが指定されていないか、Null の場合、メッセージは MessageManager オブジェクトのDefaultLanguage プロパティで識別されるメッセージ セットに返されます。

Message

[out, retval] 指定したメッセージのテキストを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Message パラメータが有効なデータをポイントするのは、メソッドが正常に値を返した場合だけです。

GetMessage メソッドは、サイト内からはめったに呼び出されません。代わりに、パイプライン コンポーネントによって使われ、発生したエラーを説明するメッセージを取得します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MessageManager オブジェクト

IMSCSMessageManager_3_0::AddLanguage

IMSCSMessageManager_3_0::GetLocale


MicroPipe オブジェクト

このオブジェクトは、パイプライン構成ファイル (.pcf) を使って Active Server Page (ASP) ファイルから 1 つのパイプライン コンポーネントを実行するために使います。

ProgID: | Commerce.MicroPipe (外部作成可能)
COM クラス名: | CMicroPipeline
COM インターフェイス名: | IMicroPipeline
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 MicroPipe Type Library
DLL 名: | micropipe.dll
スレッド モデル: | 両方

C++ で MicroPipe オブジェクトのプロパティとメソッドにアクセスするには、IMicroPipeline インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、MicroPipe オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | SetComponent メソッドに示されるコンポーネントを実行します。
SetComponent | 読み込みおよび実行を行うパイプライン コンポーネントを示します。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

MicroPipe オブジェクトは Microsoft Transaction Server (MTS) を明示的には使いません。トランザクションを使うには、ページをトランザクションとしてマークするか、標準の MtsTxPipline オブジェクトを使います。MicroPipe オブジェクトにはコンポーネントが 1 つしか含まれていないため、このオブジェクトでの分散トランザクションは意味がありません。

多くのパイプライン コンポーネントが、Context および Order ディクショナリのほかにも構成情報を使います。この情報をコンポーネントに渡す方法は、次の 2 つが一般的です。

  • ディクショナリを作成し、コンポーネントにそのディクショナリを渡します。

  • 個々のプロパティまたは複数のプロパティを直接設定します。

最初の方法は、IPipelineComponentAdmin インターフェイスを実装しているパイプライン コンポーネントにのみ適用されます。2 番目の方法は、通常は IPipelineComponentAdmin インターフェイスが実装されていない Microsoft Visual Basic で記述されたコンポーネントに一般的です。

関連項目

パイプライン オブジェクト


IMicroPipeline::Execute

このメソッドは、SetComponent メソッドで指定されたパイプライン コンポーネントを実行するために使います。

定義

HRESULT IMicroPipeline::Execute(
IDispatch* pdispOrder,
IDispatch* pdispContext,
long lFlags,
long* pErrorLevel
);

パラメータ

pdispOrder

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。Dictionary オブジェクトは、パイプライン コンポーネントが実行する Order ディクショナリです。

pdispContext

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。Dictionary オブジェクトは、パイプライン コンポーネントが実行される Context ディクショナリです。

lFlags

[in] long です。予約されて、ゼロ (0) に設定する必要があります。

pErrorLevel

[out,retval] エラー レベルを返す long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

また、pErrorLevel パラメータは次の 3 つの値のうちいずれに設定されます。

値 | 説明
1 | パイプライン コンポーネントは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

pErrorLevel パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

終了後は必ず IMicroPipeline インターフェイスを解放してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MicroPipe オブジェクト

IMicroPipeline::SetComponent

IMicroPipeline::SetLogFile


IMicroPipeline::SetComponent

このメソッドは、実行するパイプライン コンポーネントを指定するために使います。

定義

HRESULT IMicroPipeline::SetComponent(
IDispatch* pdispComponent
);

パラメータ

pdispComponent

[in] 実行されるパイプライン コンポーネントの IDispatch インターフェイスへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

1 つの MicroPipe オブジェクトを使って、複数のコンポーネントを実行できます。先にコンポーネントを設定および実行してから、MicroPipe オブジェクトの SetComponent メソッドを呼び出すことが許可されています。この場合、MicroPipe オブジェクトは以前からあるコンポーネントを解放し、この場所に新しいコンポーネントを設定します。

パイプライン オブジェクトを使ったプログラミングの詳細については、「パイプライン オブジェクト」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MicroPipe オブジェクト

IMicroPipeline::Execute

IMicroPipeline::SetLogFile


IMicroPipeline::SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

定義

HRESULT IMicroPipeline::SetLogFile(
BSTR bstrFileName
);

パラメータ

bstrFileName

[in] ログ記録用のファイル名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ログを使って、MicroPipe オブジェクトは Dictionary および SimpleList オブジェクトへのすべての読み取りおよび書き込み操作を記録します。エラーもログに記録されます。オーバーヘッドが含まれているため、ログはデバッグのためだけに使い、運用サイトでは使わないでください。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。SetLogFile メソッドが OrderGroup オブジェクトの LogFile プロパティとして表示されます。このメソッドは、RunPipe メソッドを呼び出す前に再度呼び出す必要があります。

パイプライン オブジェクトを使ったプログラミングの詳細については、「パイプライン オブジェクト」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MicroPipe オブジェクト

IMicroPipeline::Execute

IMicroPipeline::SetComponent


MtsPipeline オブジェクト

このオブジェクトは、非トランザクション Microsoft Commerce Server 2000 パイプラインを実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。

ProgID: | Commerce.MtsPipeline (外部作成可能)
COM クラス名: | CMtsPipeline
COM インターフェイス名: | IPipeline
インターフェイス ID 定数: | IID_IPipeline
ヘッダー ファイル: | pipeline.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | アパートメント

C++ で MtsPipeline オブジェクトのプロパティとメソッドにアクセスするには、IPipeline インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、MtsPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | パイプラインでコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

MtsPipeline オブジェクトは、Microsoft Transaction Server (MTS) に "サポートされていないトランザクション" として登録されます。このパイプラインは、トランザクションが必要ない場所で使います。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。

MtsPipeline は通常、それが使われるページ上に作成されます。

MtsPipeline はプールされたパイプラインではありません。プールされたパイプラインの詳細については、「プールされたパイプラインについて」を参照してください。


IPipeline::Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

HRESULT IPipeline::Execute(
long lMode,
IDispatch* pdispOrder,
IDispatch* pdispContext,
long lFlags,
long* pErrorLevel
);

パラメータ

lMode

[in] パイプラインを実行するモードを示す long 整数です。このパラメータは、Site Server 2.0 Commerce Edition サイトとの下位互換性を維持する目的でのみ用意されています。Site Server 3.0 Commerce Edition 以降では、モードは LoadPipe メソッドを使って適切に構成されたパイプラインを読み込むことによって設定されます。値は 1 を使います。値を 0 にすると、ステージを実行しません。

pdispOrder

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。通常は、OrderForm オブジェクトです。パイプラインが使う Order ディクショナリです。

pdispContext

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。パイプラインが使う Context ディクショナリです。

lFlags

[in] 使われていないlong 整数パラメータです。ゼロ (0) に設定する必要があります。

pErrorLevel

[out,retval] エラー レベルを返すlong へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

また、pErrorLevel パラメータは次の 3 つの値のうちいずれに設定されます。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

pErrorLevel パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MtsPipeline オブジェクト

IPipeline::LoadPipe

IPipeline::SetLogFile

PooledPipeline オブジェクト


IPipeline::LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

HRESULT IPipeline::LoadPipe(
BSTR pszFileName
);

パラメータ

pszFileName

[in] パイプライン構成ファイル名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションに指定されているパイプライン構成ファイルを (MtsTxPipeline オブジェクトで使うために) 読み込もうとすると、 LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MtsPipeline オブジェクト

IPipeline::Execute

IPipeline::SetLogFile

PooledPipeline オブジェクト


IPipeline::SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。ログ機能は、運用環境では絶対に使わないでください。ログ機能は、パフォーマンスの低下を招いたり、クレジット カードの番号に対するセキュリティの問題を発生させる可能性があります。

定義

HRESULT IPipeline::SetLogFile(
BSTR pszFileName
);

パラメータ

pszFileName

[in] イベントのログを記録するファイル名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でメソッドを呼び出すと、ログ機能は停止します。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。SetLogFile メソッドが OrderGroup オブジェクトに LogFile プロパティとして表示されます。このメソッドは、RunPipe メソッドを呼び出す前に設定する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MtsPipeline オブジェクト

IPipeline::Execute

IPipeline::LoadPipe

PooledPipeline オブジェクト


MtsTxPipeline オブジェクト

このオブジェクトは、トランザクション Microsoft Commerce Server 2000 パイプライン構成を実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。

ProgID: | Commerce.MtsTxPipeline (外部作成可能)
COM クラス名: | CTxPipeline
COM インターフェイス名: | IPipeline
インターフェイス ID 定数: | IID_IPipeline
ヘッダー ファイル: | pipeline.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | アパートメント

C++ で MtsTxPipeline オブジェクトのプロパティとメソッドにアクセスするには、IPipeline インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、MtsTxPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | パイプラインでコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

MtsTxPipeline は通常、それが使われるページ上に作成されます。

MtsTxPipeline オブジェクトは、Microsoft Transaction Server (MTS) に "必須のトランザクション" として登録されます。このオブジェクトは、パイプライン構成のすべてのコンポーネントにまたがるトランザクションを保持しています。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。

データベースで使うときは、MtsTxPipeline オブジェクトに MTS をサポートする ODBC 準拠のデータベースが必要です。

MtsTxPipeline オブジェクトを使うためには、Microsoft 分散トランザクション コーディネータ (MSDTC) サービスが実行されている必要があります。

分散トランザクション コーディネータ サービスが実行されていることを確認するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[サービス] をクリックします。

  2. [Distributed Transaction Coordinator] をスクロールし、[状態] が [開始] になっていることを確認します。


IPipeline::Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

HRESULT IPipeline::Execute(
long lMode,
IDispatch* pdispOrder,
IDispatch* pdispContext,
long lFlags,
long* pErrorLevel
);

パラメータ

lMode

[in] パイプラインを実行するモードを示す long 整数です。このパラメータは、Site Server 2.0 Commerce Edition サイトとの下位互換性を維持する目的でのみ用意されています。Site Server 3.0 Commerce Edition 以降では、モードは LoadPipe を使って適切に構成されたパイプラインを読み込むことによって設定されます。値は 1 を使います。値を 0 にすると、ステージを実行しません。

pdispOrder

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。パイプラインが使う Order ディクショナリです。通常は、OrderForm オブジェクトです。

pdispContext

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。パイプラインが使う Context ディクショナリです。

lFlags

[in] 使われていない long 整数パラメータです。ゼロ (0) に設定する必要があります。

pErrorLevel

[out,retval] エラー レベルを返す long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

また、pErrorLevel パラメータは次の 3 つの値のうちいずれに設定されます。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

pErrorLevel パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MtsTxPipeline オブジェクト

IPipeline::LoadPipe

IPipeline::SetLogFile


IPipeline::LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

HRESULT IPipeline::LoadPipe(
BSTR pszFileName
);

パラメータ

pszFileName

[in] パイプライン構成ファイル (.pcf) の名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

非トランザクション パイプラインに指定されているパイプライン構成ファイルを読み込もうとすると、 LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MtsTxPipeline オブジェクト

IPipeline::Execute

IPipeline::SetLogFile


IPipeline::SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。ログ機能は、運用環境では絶対に使わないでください。ログ機能は、パフォーマンスの低下を招いたり、クレジット カードの番号に対するセキュリティの問題を発生させる可能性があります。

定義

HRESULT IPipeline::SetLogFile(
BSTR pszFileName
);

パラメータ

pszFileName

[in] イベントのログを記録するファイル名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。SetLogFile メソッドも OrderGroup オブジェクトに LogFile プロパティとして表示されます。このメソッドは、RunPipe メソッドの前に呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

MtsTxPipeline オブジェクト

IPipeline::LoadPipe

IPipeline::Execute


OrderForm オブジェクト

OrderForm オブジェクトでは、ユーザー情報および購入情報用にメモリ内に記憶領域を用意します。Commerce Server 2000 サイトは、OrderForm オブジェクトを使って、ユーザーが購入を決めた項目、および指定されたユーザーの購入履歴を反映するレシート情報を保存します。

ProgID: | Commerce.OrderForm (外部作成可能)
COM クラス名: | COrderForm
COM インターフェイス名: | IOrderForm
インターフェイス ID 定数: | IID_IOrderForm
ヘッダー ファイル: | commerce.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Core Components Type Library
DLL 名: | MscsCore.dll
スレッド モデル: | 両方

C++ で OrderForm オブジェクトのプロパティとメソッドにアクセスするには、IOrderForm インターフェイスを使います。

次の表は、OrderForm オブジェクトのメソッドを示しています。

メソッド | 説明
AddItem | 指定された項目をオブジェクトの items コレクションに追加します。
ClearItems | オブジェクトの items コレクションを消去します。
ClearOrderForm | OrderForm オブジェクト全体を消去します。

解説

OrderForm オブジェクトは、内部的に SimpleList オブジェクトおよび Dictionary オブジェクトが構造化されたグループとして 定義されています。このオブジェクトには、項目の追加、項目の消去、OrderForm オブジェクト全体の消去に必要なメソッドが含まれています。.

OrderForm オブジェクトの基本は Dictionary オブジェクトです。これには注文全体を説明する情報が含まれています。これには、ユーザー情報 (買物客 ID、名前、住所など)、および注文コスト情報 (購入金額の小計、税、送料、合計など) が含まれます。

OrderForm オブジェクトは、ディスクへのデータ保存を直接的にはサポートしていません。DBStorage オブジェクトおよび OrderGroupManager オブジェクトを使うと、OrderForm オブジェクトのデータを永続的に保存できます。

OrderForm オブジェクトの基本 Dictionary オブジェクト中の多くの要素には、アンダースコア (_) が含まれています。要素名の中にアンダースコアがあると、これらの項目がサイトの OrderForm 記憶領域に保存されないことを示します。これらの要素は、購入が完了したときに、サイトのレシート記憶領域に保存されます。

関連項目

ビジネス プロセス オブジェクト

OrderGroup オブジェクト

OrderGroupManager オブジェクト

SimpleFindSearchInfo オブジェクト

SimpleFindResultInfo オブジェクト


IOrderForm::AddItem

このメソッドは、指定された項目を OrderForm オブジェクトの items コレクションに追加するために使います。items コレクションは、Dictionary オブジェクトを含む SimpleList オブジェクトです。

定義

HRESULT IOrderForm::AddItem(
VARIANT varSKU,
long lCount,
long lPlacedPrice,
IDispatch** ppdispItem
);

パラメータ

varSKU

[in] 追加する項目の在庫保管単位 (SKU) を含む Variant です。

lCount

[in] 項目数を含む long です。

lPlacedPrice

[in] 項目の価格を含む long です。

ppdispItem

[out, retval] 追加された項目を返すために使用される Dictionary オブジェクトへの IDispatch インターフェイスを受け取るポインタのアドレスです。メソッドが正常に完了しなかった場合、このパラメータは Null になります。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppdispItem パラメータに有効な値が含まれるのは、メソッドが正常に値を返した場合だけです。それ例外の場合は Null が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderForm オブジェクト

IOrderForm::ClearItems

IOrderForm::ClearOrderForm


IOrderForm::ClearItems

このメソッドは、OrderForm オブジェクトの items コレクションを消去するために使います。

定義

HRESULT IOrderForm::ClearItems(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

サイトから購入をキャンセルしたユーザーへの応答は、ClearItems メソッドを使って返されます。このメソッドは、items コレクション中の情報にしか影響を与えません。_oadjust_subtotal や _total_total といったほかの OrderForm オブジェクトの情報は、この OrderForm オブジェクトで注文処理パイプライン (OPP) を実行したときのみ変更されます。

OrderForm オブジェクトのコンテンツすべてを空にするには、ClearOrderForm メソッドを呼び出します。

関連項目

OrderForm オブジェクト

IOrderForm::AddItem

IOrderForm::ClearOrderForm


IOrderForm::ClearOrderForm

このメソッドは、OrderForm オブジェクト全体を消去するために使います。

定義

HRESULT IOrderForm::ClearOrderForm(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

OrderForm オブジェクト

IOrderForm::AddItem

IOrderForm::ClearItems


OrderGroup オブジェクト

OrderGroup オブジェクトは、Commerce Server 2000 でサイトのバスケットおよび注文情報の格納、参照、および計算を行うために使います。OrderGroupManager オブジェクトは、OrderGroup オブジェクトと連携して機能するもので、注文に対する検索操作およびそのほかの管理操作を提供します。

ProgID: | Commerce.OrderGroup (外部作成可能)
COM クラス名: | OrderGroup
COM インターフェイス名: | _OrderGroup
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

次の表は、OrderGroup オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
LogFile | BSTR | パイプラインのログ ファイルが実行されます。空でない文字列に設定されたときにパイプラインのログ機能を有効にします。 このプロパティは読み取りと書き込みが可能です。
SavePrefix | BSTR | ディクショナリ エントリがデータベースに保存されないように、キーとなるプレフィックスを指定します。
Value | Variant | OrderGroup オブジェクトの属性を返します。このプロパティは読み取り専用です。

次の表は、OrderGroup オブジェクトのメソッドを示しています。

メソッド | 説明
AddItem | 指定された OrderForm オブジェクトに項目を追加します。
AddItemsFromTemplate | ディスク上の OrderGroup テンプレートに関連付けられた項目を現在の OrderGroup オブジェクトに追加します。
AddOrderform | OrderForm オブジェクトとそのコンテンツすべてを OrderGroup オブジェクトに追加します。
AddXMLAsOrderForm | XML 文字列を OrderForm オブジェクトに変換し、そこに OrderGroup オブジェクトを追加します。
AggregateOrderFormValues | すべての OrderForm オブジェクトを繰り返し処理し、指定されたキーの合計を計算してから、合計を OrderGroup レベルに保存します。.
Clear | OrderGroup オブジェクトのすべての OrderForm オブジェクトを消去します。
GetAddress | 指定されたアドレス ディクショナリ オブジェクトを取得します。
GetItemInfo | 指定されたインデックスにある指定の OrderForm から項目ディクショナリへの参照を取得します。
GetOrderFormAsXML | OrderForm オブジェクトを XML 文字列に変換します。
GetOrderFormValue | 提供された OrderForm キーで指定されている OrderForm 値を取得します。
Initialize | OrderGroup オブジェクトを初期化します。
LoadBasket | データベースから現在のユーザーのバスケットを読み込みます。
LoadOrder | データベースから指定の OrderGroup を読み込みます。
LoadTemplate | データベースから指定のテンプレートを読み込みます。
PurgeUnreferencedAddresses | どの項目の送付先住所からも参照されていない OrderGroup オブジェクト内のすべての住所を削除します。
PutItemValue | 指定された値を項目の指定のキーに入れます。
PutOrderFormValue | 指定された値を OrderForm オブジェクトの指定のキーに入れます。
RemoveItem | 指定された OrderForm オブジェクトから項目を削除します。指定された項目インデックスは、削除対象の項目を示します。
RemoveOrderForm | OrderGroup オブジェクトから指定の OrderForm オブジェクトを削除します。
RunPipe | OrderGroup オブジェクトの各 OrderForm オブジェクトごとにパイプライン コンポーネント ファイルを実行します。
SaveAsBasket | OrderGroup オブジェクトをバスケットの状態でデータベースに保存します。
SaveAsOrder | OrderGroup オブジェクトを注文の状態でデータベースに保存します。
SaveAsTemplate | OrderGroup オブジェクトをテンプレートの状態でデータベースに保存します。
SetAddress | OrderGroup オブジェクトのアドレス ディクショナリの値を、提供されているアドレス ディクショナリ オブジェクトで指定されているように設定します。
SetAddressFromFields | OrderGroup オブジェクトのアドレス ディクショナリの値を、提供されているフィールド オブジェクトで指定されているように設定します。
SetShippingAddress | 送付先住所を、提供されているデータベース アドレスの ID で参照されているものに設定します。

関連項目

ビジネス プロセス オブジェクト

OrderGroupManager オブジェクト

OrderForm オブジェクト

SimpleFindSearchInfo オブジェクト

SimpleFindResultInfo オブジェクト


_OrderGroup::AddItem

このメソッドは、指定された OrderForm オブジェクトに項目を追加するために使います。

このメソッドは、項目ディクショナリを指定された OrderForm (strOrderFormName パラメータ) に追加します。strOrderFormName が指定されていない場合、strOrderFormName パラメータは "既定" になります。"既定" がない場合は作成されます。また、このメソッドは、集計数量の合計を OrderGroup レベルおよび OrderForm レベルで増分します。

Definition

HRESULT _OrderGroup::AddItem(
IDictionary* dictItem,
VARIANT strOrderFormName,
long* lpRetVal
);

パラメータ

dictItem

[in] 項目情報を含む IDictionary インターフェイスへのポインタです。

strOrderFormName

[in, optional] 項目を追加する OrderForm の名前を指定する Variant です。サイトの構成方法によっては、strOrderFormName として項目の製造元名を指定することもできます。こうすると、ベンダーが異なる項目は別の OrderForm に追加されます。

lpRetVal

[out, retval] 項目が追加された場所のインデックスを返すために使う long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

lpRetVal パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

注

  • 追加された各項目には、数量が含まれている必要があります。

  • QueryCatalogInfo コンポーネントをパイプランで使う場合、次のものも必要です。
    • product_catalog

    • product_id

    • product_variant_id (商品バリエーションである場合)

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::RemoveItem


_OrderGroup::AddItemsFromTemplate

このメソッドは、ディスク上の OrderGroup に関連付けられている項目を現在の OrderGroup オブジェクトに追加するために使います。

このメソッドは、指定されたテンプレート中のすべての OrderForm を繰り返し処理し、それらを現在の OrderGroup に追加します。OrderForm が既に存在する場合、OrderGroup テンプレート上の項目が単純に追加されます。存在しない OrderForm が見つかった場合、OrderForm レベルのディクショナリ値を含めたその OrderForm 自体が OrderGroup に追加されます。

OrderGroup は、OrderForm レベルおよび OrderGroup レベルで全項目のカウンタを保持します。OrderGroup レベルでは、すべての OrderForm 中の項目数が追跡されています。この値は、"total_lineitems" キーの下で保持されています。

定義

HRESULT _OrderGroup::AddItemsFromTemplate(
BSTR OrderGroupID
);

パラメータ

OrderGroupID

[in] テンプレートの OrderGroup ID を指定する BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

注

  • セキュリティの実装はアプリケーションが行います。このメソッドでは、テンプレートのユーザー ID が、初期化の呼び出しで指定されたユーザー ID と同じであるかがチェックされません。

このメソッドは、以前に送信された注文やバスケット、テンプレート (保存されている注文) の状態の OrderGroups でも機能します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::AddOrderform

このメソッドは、OrderForm とそのすべてのコンテンツを OrderGroup オブジェクトに追加するために使います。

strOrderFormName が指定されていない場合は、"既定" になります。

定義

HRESULT _OrderGroup::AddOrderform(
IDictionary* orderform,
VARIANT strOrderFormName
);

パラメータ

orderform

[in] 加算される OrderForm オブジェクトを含む IDictionary インターフェイスへのポインタです。

strOrderFormName

[in, optional] OrderForm オブジェクトの名前を指定する Variant です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::AddXMLAsOrderForm

このメソッドは、以前に XML として保存された項目 (GetOrderformAsXML メソッドを使って) を OrderGroup に追加するために使います。

定義

HRESULT _OrderGroup::AddXMLAsOrderForm(
BSTR strXML,
long nXMLLocale,
VARIANT strOrderFormName
);

パラメータ

strXML

[in] 追加する項目を含む XML 文字列を指定する BSTR です。

nXMLLocale

[in] XML 文字列変換に使うロケールを指定する long です。

strOrderFormName

[in, optional] 追加する OrderForm 名を指定する Variant です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

注

  • BizTalk Server を介して XML を交換するときは、DictionaryXMLTransforms オブジェクトを使うことをお勧めします。DictionaryXMLTransforms を使うと、XML を適切に定義されたスキーマに書き出せます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::GetOrderFormAsXML


_OrderGroup::AggregateOrderFormValues

このメソッドは、すべての OrderForm の繰り返し処理、指定されたキーの合計の計算、OrderGroup レベルでの合計の保存を行うために使います。

定義

HRESULT _OrderGroup::AggregateOrderFormValues(
BSTR strOrderFormKey,
BSTR strOrderGroupKey
);

パラメータ

strOrderFormKey

[in] 集計される値の OrderForm キーを指定する BSTR です。

strOrderGroupKey

[in] 集計値を書き込む値の OrderGroup キーを指定する BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::Clear

このメソッドは、OrderGroup オブジェクトのすべての OrderForm オブジェクトとアドレス ディクショナリを消去するために使います。

定義

HRESULT _OrderGroup::Clear(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

OrderGroup オブジェクト


_OrderGroup::GetAddress

このメソッドは、指定されたアドレスの Dictionary オブジェクトを取得するために使います。

定義

HRESULT _OrderGroup::GetAddress(
BSTR strAddressId,
IDictionary** ppRetVal
);

パラメータ

strAddressId

[in] アドレス ID を指定する BSTR です。

ppRetVal

[out, retval] アドレス ディクショナリを返すために使う IDictionary インターフェイスを受け取るポインタのアドレスです。指定された strAddressId が見つからない場合、戻り値は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

指定されたアドレスが見つかった場合、このメソッドはそのディクショナリへの参照を返します。見つからなかった場合は、Nothing オブジェクトを返します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRetVal に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::GetItemInfo

このメソッドは、指定されたインデックスにある指定の OrderForm から項目ディクショナリへの参照を取得するために使います。strOrderFormName パラメータが指定されていない場合は、"既定" になります。

定義

HRESULT _OrderGroup::GetItemInfo(
long nItemIndex,
VARIANT strOrderFormName,
IDictionary** ppRetVal
);

パラメータ

nItemIndex

[in] 項目インデックスを指定する long です。

strOrderFormName

[in, optional] OrderForm オブジェクトの名前を指定する Variant です。

ppRetVal

[out, retval] 項目情報を返すために使う IDictionary インターフェイスを受け取るポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRetVal に有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::GetOrderFormAsXML

このメソッドは、OrderForm オブジェクトを XML 文字列に変換するために使います。

定義

HRESULT _OrderGroup::GetOrderFormAsXML(
BSTR nXMLLocale,
VARIANT strOrderFormName,
BSTR* pbstrRetVal
);

パラメータ

nXMLLocale

[in] XML 文字列変換に使うロケールを指定する BSTR です。

strOrderFormName

[in, optional] OrderForm を指定する Variant です。

pbstrRetVal

[out, retval] XML 文字列を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRetVal パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

注 : BizTalk Server を介して XML を交換するときは、DictionaryXMLTransforms オブジェクトを使うことをお勧めします。DictionaryXMLTransforms オブジェクトを使うと、XML を適切に定義されたスキーマに書き出せます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::AddXMLAsOrderForm


_OrderGroup::GetOrderFormValue

このメソッドは、指定されたキーに基づいて OrderForm から属性を取得するために使います。

定義

HRESULT _OrderGroup::GetOrderFormValue(
BSTR strKey,
VARIANT strOrderFormName,
VARIANT* pvtRetVal
);

パラメータ

strKey

[in] 取得する属性の定義を含む BSTR です。

strOrderFormName

[in, optional] OrderForm オブジェクトの名前を指定する Variant です。

pvtRetVal

[out, retval] 属性を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRetVal パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

strOrderformName パラメータが指定されていない場合は、strOrderFormName パラメータは "既定" になります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::Initialize

このメソッドは、OrderGroup オブジェクトを初期化するために使います。

定義

HRESULT _OrderGroup::Initialize(
BSTR strConnectionString,
BSTR strUser ID
);

パラメータ

strConnectionString

[in] データベース接続文字列を含む BSTR です。

strUser ID

[in] ユーザー ID を指定する BSTR です。Commerce Server 2000 のユーザー ID の値はすべて GUID です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、OrderGroup がデータベース操作に使う接続文字列を指定するために使います。また、バスケット操作を実行するときに、オブジェクトが OrderGroup_id として使う user_id を指定します。この user_id の値が g_User IDChangedBy フィールドに格納されます。

注

  • ほかのユーザーに代わって OrderGroup を読み込む場合 (たとえば管理者として)、 管理者ユーザー ID (または管理権限を意味するプレースホルダ ユーザー ID である GUID) を指定し、OrderGroup がデータベースに保存されたときに、適切な値で g_UserIDChangedBy が更新されるようにする必要があります。管理者ロールでバスケットの状態に関する OrderGroup を読み込む場合、読み込み対象のバスケットを持つユーザーのユーザー ID を strUser ID に指定する必要があります。この場合、g_User IDChangedBy は管理者ユーザー ID では更新されません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::LoadBasket

このメソッドは、データベースから現在のユーザーのバスケットを読み込むために使います。Initialize メソッドで指定されたユーザー ID のバスケットが見つからない場合、このメソッドはメモリ内の空のバスケットを初期化します。

定義

HRESULT _OrderGroup::LoadBasket(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

OrderGroup オブジェクト

_OrderGroup::LoadOrder

_OrderGroup::LoadTemplate

_OrderGroup::SaveAsBasket


_OrderGroup::LoadOrder

このメソッドは、ディスクから OrderGroup を読み込むために使います。このメソッドは、OrderGroup が見つからなかった場合にエラーを返します。

定義

HRESULT _OrderGroup::LoadOrder(
BSTR strOrderGroupID
);

パラメータ

strOrderGroupID

[in] 読み込む OrderGroup の OrderGroupID を指定する BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

LoadOrder メソッドは、状態がバスケットまたはテンプレートではない OrderGroup を読み込むために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::LoadBasket

_OrderGroup::LoadTemplate

_OrderGroup::Initialize

_OrderGroup::SaveAsOrder


_OrderGroup::LoadTemplate

このメソッドは、データベースから指定されたテンプレートを読み込むために使います。

定義

HRESULT _OrderGroup::LoadTemplate(
BSTR strOrderGroupID
);

パラメータ

strOrderGroupID

[in] 読み込むテンプレートの OrderGroupID を指定する BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

OrderGroup オブジェクト

_OrderGroup::LoadOrder

_OrderGroup::LoadBasket

_OrderGroup::SaveAsTemplate


_OrderGroup::get_LogFile/put_LogFile

LogFile プロパティは、RunPipe メソッドの実行中に、パイプラインのログ機能に使われるファイル名を指定する読み取りまたは書き込み文字列です。

定義

Get メソッド :

HRESULT _OrderGroup::get_LogFile(
BSTR* LogFile
);

Put メソッド :

HRESULT _OrderGroup::put_LogFile(
BSTR LogFile
);

パラメータ

LogFile

[in] プロパティを入力する場合は、ログ ファイルを含む BSTR です。
[out, retval] プロパティを取得する場合は、ログ ファイルを返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

LogFile パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

LogFile パラメータを空の文字列 ("") に設定してログ機能を無効にします。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::PurgeUnreferencedAddresses

このメソッドは、項目の shipping_address_id または OrderForm の billing_address_id. に参照されていない OrderGroup オブジェクト内のすべてのアドレスを削除するために使います。

定義

HRESULT _OrderGroup::PurgeUnreferencedAddresses(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

OrderGroup オブジェクト


_OrderGroup::PutItemValue

このメソッドは、指定された値を項目の指定のキーに入れるために使います。

定義

HRESULT _OrderGroup::PutItemValue(
BSTR strKey,
VARIANT vtValue,
VARIANT_BOOL bOverWrite,
VARIANT nItemIndex,
VARIANT strOrderFormName
);

パラメータ

strKey

[in] キーを指定する BSTR です。指定するキーは、vtValue パラメータによって指定された値を属性として格納しています。

vtValue

[in] キーの属性に格納する値を指定する Variant です。キーは、strKey パラメータによって指定されたものです。

bOverWrite

[in, optional, defaultvalue (-1)] strKey パラメータで指定されたキーの既存の属性を上書きするかどうかを示す VARIANT_BOOL です。値が True の場合、属性が上書きされることを示します。値が False の場合は、既存の属性があってもそれが上書きされないことを示します。

nItemIndex

[in, optional] 項目インデックスを指定する Variant です。

strOrderFormName

[in, optional] OrderForm オブジェクトの名前を指定する Variant です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

項目インデックスが指定されている場合、このメソッドは、strOrderFormName パラメータに指定されている OrderForm 上で、指定された項目の名前と値の組み合わせを設定します。(指定されていない場合、strOrderFormName パラメータは "既定" になります)。

項目インデックスが指定されていない場合、このメソッドは、指定された OrderForm のすべての項目に対して名前と値の組み合わせを設定します。OrderForm の名前が指定されていない場合、このメソッドは、OrderGroup のすべての項目に対して名前と値の組み合わせを設定します。

strOrderFormName の OrderForm が strOrderFormName パラメータに指定されていない場合は、これが作成されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::PutOrderFormValue

このメソッドは、OrderForm 上に属性を設定するために使います。strOrderFormName パラメータが指定されていて、OrderForm が OrderGroup にない場合、指定された名前で新しく OrderForm が作成されます。

strOrderFormName が指定されていない場合、パラメータは "既定" になります。

定義

HRESULT _OrderGroup::PutOrderFormValue(
BSTR strKey,
VARIANT vtValue,
VARIANT strOrderFormName
);

パラメータ

strKey

[in] キーを指定する BSTR です。指定するキーは、vtValue パラメータによって指定された値を属性として格納しています。

vtValue

[in] キーの属性に格納する値を指定する Variant です。キーは、strKey パラメータによって指定されたものです。

strOrderFormName

[in, optional] OrderForm オブジェクトの名前を指定する Variant です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::RemoveItem

このメソッドは、指定された OrderForm オブジェクトから項目を削除するために使います。指定された項目インデックスは、削除対象の項目を示します。

strOrderFormName パラメータが指定されていない場合、strOrderFormName パラメータは "既定" になります。

定義

HRESULT _OrderGroup::RemoveItem(
VARIANT nItemIndex,
VARIANT strOrderFormName
);

パラメータ

nItemIndex

[in, optional] 項目インデックスを指定する Variant です。

strOrderFormName

[in, optional] OrderForm オブジェクトの名前を指定する Variant です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::AddItem


_OrderGroup::RemoveOrderForm

このメソッドは、OrderGroup オブジェクトから指定された OrderForm を削除するために使います。

定義

HRESULT _OrderGroup::RemoveOrderForm(
BSTR strOrderFormName
);

パラメータ

strOrderFormName

[in] 削除する OrderForm を指定する BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::AddOrderform


_OrderGroup::RunPipe

このメソッドは、OrderGroup オブジェクトの各 OrderForm にパイプライン コンポーネント ファイルを実行するために使います。

定義

HRESULT _OrderGroup::RunPipe(
BSTR strPCF,
BSTR strPipelineProgID,
IDispatch* oContext,
long* lpRetVal
);

パラメータ

strPCF

[in] パイプライン コンポーネント ファイルのファイル パス (たとえば c:\SampleDir\SampleFile.pcf) を指定する BSTR です。

strPipelineProgID

[in] パイプラインの ProgID を指定する BSTR です。

oContext

[in] パイプライン コンテキストを指定する IDispatch インターフェイスへのポインタです。

lpRetVal

[out, retval] パイプラインの実行で発生した最大のエラー レベルを返すために使う long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

OrderGroup.RunPipe が呼び出されると、OrderGroup オブジェクトのインスタンスが作成され、そこに含まれている各 OrderForm に対してパイプラインを実行します。パイプライン コンポーネント自体には、スタンドアロン パイプラインで実行されているかのように、OrderForm が引き続き渡されます。実際には、パイプライン コンポーネントが OrderGroup 内の OrderForm に対して実行されているのか、スタンドアロンの OrderForm に対して実行されているのかを、パイプライン コンポーネントが知る方法はありません。

OrderGroup 内の項目が異なる製造元のもの (たとえば、割引コンポーネント) であるかどうかにかかわらず、パイプライン コンポーネントにすべての項目について認識させたい場合があります。この場合、OrderGroup オブジェクトが複数の OrderForm を保持する機能を使わないでください (この場合は、すべての項目を同じ OrderForm に追加します)。こうした場合、Splitter パイプライン コンポーネントを使って OrderForm 上に異なる製造元の項目を表示できます。

OrderGroup.RunPipe を呼び出す際に、OrderGroup の集計機能を利用して、すべての OrderForm の合計を算出できます。OrderGroup.RunPipe は、自動的に複数の共通のフィールドを集計します。集計するフィールドを追加して集計する場合は、OrderGroup.AggregateOrderformValues を使います。

また、このメソッドは、次に挙げるプロパティそれぞれの各 OrderForm の合計を計算します。

Orderform の値 | OrderGroup の合計
_cy_oadjust_subtotal | saved_cy_oadjust_subtotal
_cy_total_total | saved_cy_total_total
_cy_shipping_total | saved_cy_shipping_total
_cy_handling_total | saved_cy_handling_total
_cy_tax_total | saved_cy_tax_total
_cy_tax_included | saved_cy_tax_included

多くのパイプラインのキーには、プレフィックス "_" が付きます。これは、既定ではパイプラインのキーがデータベースに保存されないことを意味します。時には、これらのキーのスナップショットをとる必要があります。この場合には、プレフィックス "saved_" が使われる規則になっています。"saved_" プレフィックスを使うと、これらを後で参照でき、 SQL ステートメントまたは OrderGroupManager オブジェクトを使って検索できます。コピーされたキーは、必ずしも最新であるとは限りません。また、パイプライン コンポーネントで直接、使わないでください。

OrderGroup オブジェクトには、RunPipe メソッドのログ ファイルの設定に使う LogFile プロパティがあります。

lpRetVal パラメータが有効なデータをポイントするのは、メソッドが正常に終了する場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

パイプラインの基礎

OrderGroup オブジェクト

_OrderGroup::get_LogFile/put_LogFile


_OrderGroup::SaveAsBasket

このメソッドは、OrderGroup オブジェクトをバスケットの状態でデータベースに保存するために使います。

定義

HRESULT _OrderGroup::SaveAsBasket(
VARIANT* pvtRetVal
);

パラメータ

pvtRetVal

[out, retval] OrderGroupID を返すために使われる Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRetVal パラメータが有効なデータを参照するのは、メソッドが正常に終了した場合だけです。

このメソッドは、OrderGroup の状態を "バスケット" に設定し、OrderGroupID を ユーザー ID と同じにします。

OrderGroup オブジェクトがバスケットから読み込まれなかった場合、このメソッドは、データ記憶域への挿入を行う前にディスク上の既存のバスケットを削除します。

OrderGroup オブジェクトがバスケットから読み込まれた場合、このメソッドは、読み込みの呼び出しの際に OrderGroup がディスク上に見つかったかによって更新または挿入を実行します。テンプレートまたは注文を読み込んで SaveAsBasket メソッドを呼び出した場合、最初に読み込まれたテンプレートまたは注文は、変更されないままディスクに残ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::LoadBasket

_OrderGroup::SaveAsOrder

_OrderGroup::SaveAsTemplate


_OrderGroup::SaveAsOrder

このメソッドは、OrderGroup を注文の状態でデータベースに保存するために使います。

定義

HRESULT _OrderGroup::SaveAsOrder(
VARIANT* vtOutTrackingNumber,
VARIANT* pvtRetVal
);

パラメータ

vtOutTrackingNumber

[in] お問い合わせ番号を返すために使う Variantへのポインタです。指定されている場合、この Variant にはメソッドが戻るときにお問い合わせ番号が入ります。

pvtRetval

[out, retval] OrderGroupID を返すために使われる Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRetVal パラメータが有効なデータを参照するのは、メソッドが正常に終了した場合だけです。

このメソッドは、現在の状態がテンプレート、バスケット、または未定義の場合に、 OrderGroup の状態を "注文" に設定します。(ほかの状態はすべてそのまま残ります。その結果、注文は承認の保留、拒否などのさまざまな状態になります)SaveAsOrder メソッドを呼び出す前は、状態をバスケットまたはテンプレート以外の値に設定できます。このメソッドでは状態は上書きされません。

注文を初めて保存する場合、注文の作成日付を記録するための特別なフィールドが書き込まれます。保存する前に OrderForm (order_number キーの下) に OrderTrackingNumber が既に存在する場合、新しい OrderTrackingNumber フィールドは生成されません。この機能では、ERP ベースのお問い合わせ番号を使えます。

OrderGroup がテンプレートまたはバスケットから読み込まれた場合、このメソッドは新しい OrderGroupID とお問い合わせ番号を生成し、データベースに挿入します。OrderGroup がディスク上に存在しない場合、このメソッドは OrderGroupID とお問い合わせ番号を生成し、データベースに挿入します。OrderGroup がそのほかの状態から読み込まれた場合、このメソッドはデータベースを更新します。

バスケットまたテンプレートを読み込んで SaveAsOrder メソッドを呼び出すと、そのバスケットまたはテンプレートは、変更されないままディスク上に残ります。このため、通常の場合には、SaveAsOrder メソッドは OrderGroupManager.DeleteOrderGroupFromDisk 呼び出しの後で呼び出します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::SaveAsBasket

_OrderGroup::SaveAsTemplate


_OrderGroup::SaveAsTemplate

このメソッドは、テンプレートの状態で OrderGroup をデータベースに保存するために使います。

定義

HRESULT _OrderGroup::SaveAsTemplate(
VARIANT strTemplateName,
VARIANT* pvtRetVal
);

パラメータ

strTemplateName

[in, optional] テンプレート名を指定する Variant です。

pvtRetVal

[out, retval] テンプレートの OrderGroupID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRetVal パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

このメソッドは、strTemplateName パラメータが指定されている場合に、OrderGroup テンプレート名のフィールドを更新します。

バスケットなど、元々は別の状態にある OrderGroup を読み込んでいた場合に SaveAsTemplate メソッドを呼び出したときは、元の OrderGroup は変更されないままディスク上に残ります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::SaveAsBasket

_OrderGroup::SaveAsOrder


_OrderGroup::get_SavePrefix, put_SavePrefix

ディクショナリ エントリがデータベースに保存されないように、キーとなるプレフィックスを指定します。

定義

Get メソッド :

HRESULT _OrderGroup::get_SavePrefix(
BSTR* SavePrefix
);

Put メソッド :

HRESULT _OrderGroup::put_SavePrefix(
BSTR SavePrefix
);

パラメータ

SavePrefix

[in] プロパティを設定する場合は、保存プレフィックスを含む BSTR です。
[out, retval] プロパティを取得する場合は、保存プレフィックスを返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Value パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

SavePrefix プロパティの値で始まるキー名を持ったディクショナリ エントリは、データベースにはまったく保存されません。SavePrefix プロパティが、アンダスコア (_) に設定されているとします。_adjusted_price の値が 200 ドルで、total_price の値が 400 ドルである場合、200 ドルは保存されませんが、400 ドルは保存されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::SetAddress

このメソッドは、OrderGroup の OrderGroup Addresses コレクションに、指定したアドレス ディクショナリを追加するために使います。

定義

HRESULT _OrderGroup::SetAddress(
BSTR strAddressId,
IDictionary* oAddressDict
);

パラメータ

strAddressId

[in] 追加するアドレスのアドレス ID を指定する BSTR です。

oAddressDict

[in] 追加するアドレス ディクショナリを含む IDictionary インターフェイスへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::SetAddressFromFields


_OrderGroup::SetAddressFromFields

このメソッドは、OrderGroup のアドレス ディクショナリ値を設定するために使います。設定値は Fields オブジェクトによって指定されたものです。フィールド オブジェクト内の列名は、アドレス ディクショナリ内のディクショナリ キー名にマップされます。

定義

HRESULT _OrderGroup::SetAddressFromFields(
BSTR strAddressId,
Fields* flds
);

パラメータ

strAddressId

[in] 追加するアドレス ディクショナリのアドレス ID を指定する BSTR です。

flds

[in] 追加するアドレス情報を含む Fields オブジェクトへの参照です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト

_OrderGroup::SetAddress


_OrderGroup::SetShippingAddress

このメソッドは、指定した項目について送付先アドレス ID を設定するために使います。

定義

HRESULT _OrderGroup::SetShippingAddress(
BSTR address_id,
VARIANT_BOOL bOverWrite,
VARIANT nItemIndex,
VARIANT strOrderFormName
);

パラメータ

address_id

[in] 送付先のアドレス ID を指定する BSTR です。

bOverWrite

[in, optional, defaultvalue (-1)] shipping_address_id が既に存在する場合、それを上書きするかどうかを示す VARIANT_BOOL です。値が VT_True の場合、上書きされることを示します。値が VT_False の場合、上書きされないことを示します。

nItemIndex

[in, optional] shipping_address_id が設定される項目インデックスを指定する Variant です。指定されていない場合は、すべての項目ついて設定されます。

strOrderFormName

[in, optional] 操作を行う OrderForm を指定する Variant です。これが指定されておらず、nItemIndex も指定されていない場合、すべての OrderForm が使われます。そのほかの場合は、"既定" の OrderForm が使われます。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

bOverWrite、nItemIndex、および strOrderFormName の各パラメータの作用は、PutItemValue メソッドがとる同じパラメータの作用と似ています。このメソッドは、設定操作を実行する前に、まずアドレス ID が存在するかどうかを確認します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


_OrderGroup::get_Value

Value プロパティは読み取り専用の Variantで、OrderGroup レベルの属性をディクショナリとして含んでいます。

定義

HRESULT _OrderGroup::get_Value(
VARIANT* Value
);

パラメータ

Value

[out, retval] Value ディクショナリを返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Value パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroup オブジェクト


OrderGroupManager オブジェクト

このオブジェクトは、OrderGroup オブジェクトおよびそのコンテンツを管理するために使います。このオブジェクトを使うと、SQL クエリを使用しなくても注文やバスケットを検索できるようになります。また、OrderGroup を削除することもできます。

ProgID: | Commerce.OrderGroupManager (外部作成可能)
COM クラス名: | OrderGroupManager
COM インターフェイス名: | _OrderGroupManager
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

C++ で OrderGroupManager オブジェクトのプロパティとメソッドにアクセスするには、_OrderGroupManager インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、OrderGroupManager オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
OrderFormHeaderColumns | Variant | OrderFormHeader テーブルの列名を、カンマ区切り形式の文字列で返します。 このプロパティは読み取り専用です。
OrderFormLineItemsColumns | Variant | OrderFormLineItems テーブルの列名を、カンマ区切り形式の文字列で返します。 このプロパティは読み取り専用です。
OrderGroupColumns | Variant | OrderGroup テーブルの列名を、カンマ区切り形式の文字列で返します。 このプロパティは読み取り専用です。

次の表は、OrderGroupManager オブジェクトのメソッドを示しています。

メソッド | 説明
DeleteOrderGroupFromDisk | 指定された OrderGroup オブジェクトについて、データベースとの接続が確立されているかどうかを確認した後、その OrderGroup オブジェクトおよびそれに含まれるすべてのオブジェクトをデータベースから削除します。
Find | 指定された SQL 句フラグメントに基づいて、SQL 検索を実行します。
FindTemplatesForUser | 指定されたユーザーについて、OrderGroup テンプレートの ADO レコードセットを作成して返します。
Initialize | 指定されたデータベースへの接続を作成します。
SimpleDelete | SimpleFindSearchInfo オブジェクトと SimpleFindResultInfo オブジェクトによって指定された検索条件を満たすエントリを、すべて削除します。
SimpleFind | 指定された SimpleFindSearchInfo と SimpleFindResultInfo の値に基づいて、OrderGroup 項目の ADO レコードセットを返します。これらのオブジェクトの値には、検索条件が含まれています。

関連項目

ビジネス プロセス オブジェクト

OrderGroup オブジェクト

OrderForm オブジェクト

SimpleFindSearchInfo オブジェクト

SimpleFindResultInfo オブジェクト


_OrderGroupManager::DeleteOrderGroupFromDisk

このメソッドは、指定した OrderGroup オブジェクトについて、データベースとの接続が確立されているかどうかを確認した後、その OrderGroup オブジェクトおよびそれに含まれるすべてのオブジェクトをデータベースから削除するために使います。

定義

HRESULT _OrderGroupManager::DeleteOrderGroupFromDisk(
BSTR OrderGroupID
);

パラメータ

OrderGroupID

[in] OrderGroup ID を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト


_OrderGroupManager::Find

このメソッドは、指定した SQL 句フラグメントに基づいて、SQL 検索を実行するために使います。

定義

HRESULT _OrderGroupManager::Find(
VARIANT OrderGroupCriteriaArray,
VARIANT OrderFormCriteriaArray,
VARIANT LineItemCriteriaArray,
VARIANT SearchDateTimeColumn,
VARIANT SearchDateTimeStart,
VARIANT SearchDateTimeEnd,
long StatusFilter,
VARIANT_BOOL JoinOrderFormInfo,
VARIANT_BOOL JoinLineItemInfo,
VARIANT Columns,
VARIANT OrderGroupSortColumn,
VARIANT SortDirection,
long PageSize,
long PageNumber,
VARIANT* outTotalRecordsFound,
VARIANT* vtResults
);

パラメータ

OrderGroupCriteriaArray

[in] 特定の OrderGroup のセットを検索するために使う SQL 句を含む Variant です。

OrderFormCriteriaArray

[in] 特定の orderform のセットを検索するために使う SQL 句を含む Variant です。

LineItemCriteriaArray

[in] 特定の項目のセットを検索するために使う SQL 句を含む Variant です。

SearchDateTimeColumn

[in, optional] 検索する DateTime 列の名前を指定する Variant です。Null のままにしておくと、DateTime 列の名前は検索条件の一部に含まれません。

SearchDateTimeStart

[in, optional] 検索する DateTime の開始値を指定する Variant です。Null のままにしておくと、DateTime の開始値は検索条件の一部に含まれません。

SearchDateTimeEnd

[in, optional] 検索する DateTime の終了値を指定する Variant です。Null のままにしておくと、DateTime の終了値は検索条件の一部に含まれません。

StatusFilter

[in, optional, defaultvalue (0)] OrderGroup の状態を格納する long です。

JoinOrderFormInfo

[in, optional, defaultvalue (0)] 結果に OrderFormHeader テーブルを含めるかどうかを示す VARIANT_BOOL です。

JoinLineItemInfo

[in, optional, defaultvalue (0)] 結果に OrderFormLineItems テーブルを含めるかどうかを示す VARIANT_BOOL です。

Columns

[in, optional] 既定の列のほかに返す列の名前を含む Variant です。

OrderGroupSortColumn

[in, optional] 並べ替えに使用する OrderGroup 列の名前を含む Variant です。

SortDirection

[in, optional] 並べ替え順序を含む Variant です。このパラメータは省略可能です。指定できる値は、SQL 文字列の "ASC" または "DESC" です。

PageSize

[in, optional, defaultvalue (20)] このメソッドを使うと、注文を複数のページに分けて表示できるようにする、ページング機能を実装できます。これらは、たとえば一覧シートで見ることができます。PageSize パラメータは、1 ページあたりの項目の数を含む long です。このパラメータの設定は、PageNumber パラメータと調整する必要があります。

PageNumber

[in, optional, defaultvalue (1)] このメソッドを使うと、注文を複数のページに分けて表示できるようにする、ページング機能を実装できます。これらは、たとえば一覧シートで見ることができます。PageNumber パラメータはジャンプ先のページ番号を含む long です。このパラメータの設定は、PageSize パラメータと調整する必要があります。

outTotalRecordsFound

[out] 見つかったレコードの総数を指定する Variant へのポインタです。

vtResults

[out, retval] Variant へのポインタです。検索条件を満たす結果セットを含んだレコードセットを返すために使います。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

vtResults パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト

_OrderGroupManager::SimpleFind


_OrderGroupManager::FindTemplatesForUser

このメソッドは、指定したユーザーのために使われる OrderGroup テンプレートの ADO レコードセットを作成し、返すために使います。

定義

HRESULT _OrderGroupManager::FindTemplatesForUser(
BSTR UserId,
VARIANT SearchDateTimeColumn,
VARIANT SearchDateTimeStart,
VARIANT SearchDateTimeEnd,
VARIANT_BOOL JoinOrderFormInfo,
VARIANT_BOOL JoinLineItemInfo,
VARIANT Columns,
VARIANT OrderGroupSortColumn,
VARIANT SortDirection,
long PageSize,
long PageNumber,
VARIANT* outTotalRecordsFound,
VARIANT* pvtRetVal
);

パラメータ

UserId

[in] User ID (GUID) を含む BSTR です。

SearchDateTimeColumn

[in, optional] 検索で使う DateTime 列の名前を含む Variant です。

SearchDateTimeStart

[in, optional] 検索で使う DateTime の開始値を含む Variant です。

SearchDateTimeEnd

[in, optional] 検索で使う DateTime の終了値を含む Variant です。

JoinOrderFormInfo

[in, optional, defaultvalue (0)] 検索対象に OrderFormHeader テーブルを含めるかどうかを示す VARIANT_BOOL です。値が True の場合、テーブルが含まれることを示します。値が False の場合、テーブルは含まれないことを示します。

JoinLineItemInfo

[in, optional, defaultvalue (0)] 検索対象に OrderFormLineItem テーブルを含めるかどうかを示す VARIANT_BOOL です。値が True の場合、テーブルが含まれることを示します。値が False の場合、テーブルは含まれないことを示します。

Columns

[in, optional] 既定の列のほかに返す列の名前を含む Variant です。

OrderGroupSortColumn

[in, optional] OrderGroup の並べ替え列を含む Variant です。

SortDirection

[in, optional] 並べ替え順序を含む Variant です。

PageSize

[in, optional, defaultvalue (20)] ページ サイズを含む long です。

PageNumber

[in, optional, defaultvalue (1)] ページ番号を含む long です。

outTotalRecordsFound

[out, optional] 見つかったレコードの総数を含む Variant へのポインタです。

pvtRetVal

[out, retval] 検索結果の ADO レコードセットを返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRetVal パラメータと outTotalRecordsFound パラメータが有効な値をポイントするのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト

ビジネス プロセス オブジェクト


_OrderGroupManager::Initialize

このメソッドは、指定したデータベースへの接続を作成するために使います。

定義

HRESULT _OrderGroupManager::Initialize(
VARIANT* ConnectionString
);

パラメータ

ConnectionString

[in] データベース接続文字列を含む Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ConnectionString パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト


_OrderGroupManager::get_OrderFormHeaderColumns

OrderFormHeaderColumns プロパティは読み取り専用の Variant で、OrderFormHeader テーブルの列名のコレクションを含んでいます。

定義

HRESULT _OrderGroupManager::get_OrderFormHeaderColumns(
VARIANT* OrderFormHeaderColumns
);

パラメータ

OrderFormHeaderColumns

[out, retval] OrderForm Header テーブルの列名のコレクションを返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

OrderFormHeaderColumns パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト


_OrderGroupManager::get_OrderFormLineItemsColumns

OrderFormLineItemsColumns プロパティは読み取り専用の Variant で、OrderFormLineItems テーブルの列名のコレクションを含んでいます。

定義

HRESULT _OrderGroupManager::get_OrderFormLineItemsColumns(
VARIANT* OrderFormLineItemsColumns
);

パラメータ

OrderFormLineItemsColumns

[out, retval] LineItem テーブルの列名のコレクションを返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

OrderFormLineItemsColumns パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト


_OrderGroupManager::get_OrderGroupColumns

OrderGroupColumns プロパティは読み取り専用の Variant で、OrderGroup テーブルの列名のコレクションを含んでいます。

定義

HRESULT _OrderGroupManager::get_OrderGroupColumns(
VARIANT* OrderGroupColumns
);

パラメータ

OrderGroupColumns

[out, retval] OrderGroup の列名のコレクションを返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

OrderGroupColumns パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト


_OrderGroupManager::SimpleDelete

このメソッドは、SimpleFindSearchInfo オブジェクトと SimpleFindResultInfo オブジェクトによって指定された検索条件を満たすエントリを、すべて削除するために使います。

定義

HRESULT _OrderGroupManager::SimpleDelete(
_SimpleFindSearchInfo* sfSearchInfo,
_SimpleFindResultInfo* sfResultInfo,
);

パラメータ

sfSearchInfo

[in] 検索条件を含む _SimpleFindSearchInfo オブジェクトへの参照です。

sfResultInfo

[in] 検索条件を含む _SimpleFindResultInfo オブジェクトへの参照です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRetVal パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderGroupManager オブジェクト


_OrderGroupManager::SimpleFind

このメソッドは、指定された SimpleFindSearchInfo オブジェクトと SimpleFindResultInfo オブジェクトの値に基づいて、OrderGroup 項目のADO レコードセットを取得するために使います。これらのオブジェクトの値には、検索条件が含まれています。

定義

HRESULT _OrderGroupManager::SimpleFind(
_SimpleFindSearchInfo* sfSearchInfo,
_SimpleFindResultInfo* sfResultInfo,
VARIANT* outTotalRecordsFound,
VARIANT* pvtRetVal
);

パラメータ

sfSearchInfo

[in] 検索条件を含む SimpleFindSearchInfo オブジェクトの _SimpleFindSearchInfo インターフェイスへのポインタです。

sfResultInfo

[in] 検索条件を含む SimpleFindResultInfo オブジェクトの _SimpleFindResultInfo インターフェイスへのポインタです。

outTotalRecordsFound

[out] 見つかったレコードの総数を含む Variant へのポインタです。

pvtRetVal

[out, retval] OrderGroup 項目の検索結果レコードセットを返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRetVal パラメータと outTotalRecordsFound パラメータが有効な値をポイントするのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ビジネス プロセス オブジェクト

OrderGroupManager オブジェクト


OrderPipeline オブジェクト

このオブジェクトは、Microsoft Commerce Server 2000 コンテンツ選択パイプラインを実行するために使います。注文処理パイプライン (OPP) では通常、PooledPipeline、PooledTxPipeline、MtsPipeline、MtsTxPipeline のいずれかのオブジェクトを使います。

ProgID: | Commerce.OrderPipeline (外部作成可能)
COM クラス名: | COrderPipeline
COM インターフェイス名: | IOrderPipeline
インターフェイス ID 定数: | IID_IOrderPipeline
ヘッダー ファイル: | pipeline.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | 両方

注

  • OrderPipeline オブジェクトは、コンテンツ選択パイプラインで使います。これは、コンテンツ選択パイプラインがトランザクションを必要としないこと、OrderPipeline が複数のスレッドで完全に再利用されることが理由です。そのほかの MtsPipeline や MtsTxPipeline などのオブジェクトは、COM+ トランザクションのルールに従って、一回の使用ごとに破棄され、新しいスレッドによって再作成されなければなりません。

C++ で OrderPipeline オブジェクトのプロパティとメソッドにアクセスするには、IOrderPipeline インターフェイスを使います。

次の表は、OrderPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
OrderExecute | パイプラインでコンポーネントを実行します。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

OrderPipeline オブジェクトは、注文処理パイプライン (OPP) を作成し、実行します。OrderPipeline オブジェクトは、Microsoft Transaction Server (MTS) には登録されません。

OrderPipeline は通常、Global.asa 内で作成され、アプリケーションの集合に格納されます。


IOrderPipeline::LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

HRESULT IOrderPipeline::LoadPipe(
BSTR pszFileName
);

パラメータ

pszFileName

[in] パイプライン構成ファイル名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションで使うために (MtsTxPipeline オブジェクトまたは PooledTxPipeline オブジェクトで使うために) 作成されたパイプライン構成ファイルを読み込もうとすると、LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderPipeline オブジェクト

IOrderPipeline::OrderExecute

IOrderPipeline::SetLogFile


IOrderPipeline::OrderExecute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

HRESULT IOrderPipeline::OrderExecute(
long lMode,
IDispatch* pdispOrder,
IDispatch* pdispContext,
long lFlags,
long* pErrorLevel
);

パラメータ

lMode

[in] パイプラインを実行するモードを示す long integer です。このパラメータは、Site Server 2.0 Commerce Edition サイトとの下位互換性を維持する目的でのみ用意されています。Commerce Server 2000 のサイトでは、このパラメータを 1 に設定する必要があります。

pdispOrder

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。通常は、OrderForm オブジェクトです。パイプラインが使う Order ディクショナリです。

pdispContext

[in] Dictionary オブジェクトの IDispatch インターフェイスへのポインタです。パイプラインが使う Context ディクショナリです。

lFlags

[in] 使われていない long integer パラメータです。ゼロ (0) に設定する必要があります。

pErrorLevel

[out,retval] エラー レベルを返す Integer へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

また、pErrorLevel パラメータは次の 3 つの値のうちいずれに設定されます。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

pErrorLevel パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

lMode パラメータは、Site Server 2.0 で作成されるサイトとの下位互換性を維持する目的でのみ用意されています。Site Server 3.0 Commerce Edition およびそれ以降では、LoadPipe メソッドを使って適切なパイプライン構成ファイルを読み込むことによって、パイプライン ステージを選択します。Commerce Server 2000 のアプリケーションでは、このパラメータには値 1 を指定する必要があります。ゼロ (0) を指定すると、ステージが実行されません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderPipeline オブジェクト

IOrderPipeline::LoadPipe

IOrderPipeline::SetLogFile


IOrderPipeline::SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。ログ機能は、運用環境では絶対に使わないでください。ログ機能は、パフォーマンスの低下を招いたり、クレジット カードの番号に対するセキュリティの問題を発生させる可能性があります。

定義

HRESULT IOrderPipeline::SetLogFile(
BSTR pszFileName
);

パラメータ

pszFileName

[in] イベントのログを記録するファイル名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

OrderPipeline オブジェクト

IOrderPipeline::LoadPipe

IOrderPipeline::OrderExecute


Page オブジェクト

このオブジェクトは、Active Server Pages (ASP) のフォームでの処理を簡素化するために使います。

ProgID: | Commerce.Page (外部作成可能)
COM クラス名: | MSCSPage_3_0
COM インターフェイス名: | IMSCSPage_3_0
インターフェイス ID 定数: | IID_IMSCSPage_3_0
ヘッダー ファイル: | commerce.h, mspu_guids.h
タイプ ライブラリ名: | Commerce -- MSCSAspHelp Type Library
DLL 名: | MSCSAspHelp.dll
スレッド モデル: | 両方

重要

  • このオブジェクトは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。詳細については、このオブジェクトのメソッドの大部分に類似した機能を持つ AuthManager オブジェクトと AppFrameWork オブジェクトに関する説明を参照してください。

Page オブジェクトのメソッドは、次のカテゴリに分けられます。

  • 書式設定に関するメソッド : Encode、Option、Check などです。これらのメソッドを使うと、HTML ページの項目の書式を簡単に設定できるほか、可能な場合にはページ内のほかの変数を実行時に評価して、HTML 項目の値を決定することができます。

  • 検証に関するメソッド : Request の処理以降に開始されます。これらのメソッドは、URL クエリ文字列から値を取得し、その値のデータ型をロケール値に基づいて変換し、それらの値が指定された範囲内にあるかどうかを検証するために使います。

C++ で Page オブジェクトのプロパティとメソッドにアクセスするには、IMSCSPage_3_0 インターフェイスを使います。

次の表は、Page オブジェクトの 1 つのプロパティを示しています。

プロパティ | 種類 | 説明
Context | IDispatch | Microsoft インターネット インフォメーション サービス (IIS) のスクリプト コンテキストを含む値です。 このプロパティは読み取り専用です。

次の表は、Page オブジェクトのメソッドを示しています。

メソッド | 説明
Check | 入力値に基づいて HTML ページで使うために CHECKED という語を生成します。
Encode | HTML のテキストをエンコードします。
GetShopperId | 現在の買物客に対して、一意の買物客 ID を返します。
HTMLEncode | HTML のテキストをエンコードします。
Option | ページにオプション ボタンを生成します。
ProcessVerifyWith | VerifyWith メソッドを使って作成された非表示のフィールドのコンテンツを、OrderForm オブジェクトの _verify_with Dictionary オブジェクトにコピーします。
PutShopperId | URL またはセキュリティ保護された URL で (または cookie として) 使うために、特定の買物客 ID を書き込みます。
RequestDate | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付値 (Date Variant) に変換します。
RequestDateTime | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付/時刻値 (Date Variant) に変換します。
RequestDefault | URL クエリ文字列またはフォーム送信変数から値を取得し、その値を文字列として返します。
RequestFloat | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを浮動小数点値に変換します。次に、指定したロケールに基づいて、その値が指定範囲に収まっているかどうかを確認して値を検証します。
RequestMoneyAsNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、それを、指定したロケールまたは既定のロケールの基本通貨単位で表現された数値に変換します。
RequestNumber | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを数値に変換します。
RequestString | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールに基づいて、その値に対して文字列処理を実行します。
RequestTime | URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、文字列を Date Variant に変換します。
SiteRoot | Commerce Server サイトの物理ディレクトリを返します。
SURL | ファイルへのローカル パスに基づいて、セキュリティ保護された URL を生成します。この URL には、可能な場合、買物客 ID が含まれます。
SURLPrefix | 完全な URL のプレフィックスとして使用される、セキュリティ保護されたルート ドメインを返します。
URL | ファイルへのローカル パスに基づいて、完全な URL を生成します。この URL には、可能な場合、引数と買物客 ID が含まれます。
URLArgs | URL に渡すために使う一連のクエリ文字列引数を生成します。
URLEncode | 指定した文字列に URL エンコード ルールを適用します。
URLPrefix | 完全な URL のプレフィックスとして使用される、セキュリティ保護されていないルート ドメインを返します。
URLShopperArgs | URL に渡すために使う一連のクエリ文字列引数を生成します。StandardSManager が URL モードに初期化された場合は、引数には買物客 ID も含まれます。
VerifyWith | 検証値を含むページの非表示フィールドに、出力を送信します。
VirtualDirectory | サイトの仮想ディレクトリ名を返します。

関連項目

下位互換性オブジェクト

AppFrameWork オブジェクト

AuthManager オブジェクト


IMSCSPage_3_0::Check

このメソッドは、vtCheck パラメータがゼロ以外の値に指定されている場合に、ページに CHECKED という語を生成するために使います。CHECKED は HTML の <INPUT> タグに対するパラメータで、フォームで最初に読み込まれたときに、チェック ボックスがオンの状態に、オプション ボタンがクリックされた状態になっているように設定するものです。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

HRESULT IMSCSPage_3_0::Check(
VARIANT vtCheck,
BSTR* pbstrRet
);

パラメータ

vtCheck

[in] ページ上の Check の呼び出しが表示される場所に、"CHECKED" という語を挿入するかどうかを判定するための評価式を含む Variant です。

pbstrRet

[out, retval] 文字列 "CHECKED" または "" を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効な値を指すのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::Option


IMSCSPage_3_0::get_Context

Context プロパティは読み取り専用のプロパティで、ASP スクリプト コンテキストを含んでいます。

通常は、Context プロパティのコンテンツを取得する必要はありません。Context プロパティは、ASP スクリプト コンテキストへのアクセスが必要な Commerce Server のほかのメソッドへのパラメータとしてのみ使われます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

HRESULT IMSCSPage_3_0::get_Context(
IDispatch** Context
);

パラメータ

Context

[out, retval] ASP スクリプト コンテキストを返すために使う IDispatch インターフェイスです。

戻り値

このプロパティは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Context パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト


IMSCSPage_3_0::Encode

このメソッドは、指定されたテキスト文字列に HTML エンコードを適用するために使います。

このメソッドは HTMLEncode メソッドと同等です。この機能に関しては、HTMLEncode の名前の方が一般的です。Encode メソッドは、指定されたテキスト文字列に HTML エンコードを適用します。文字列中の "<" や "&" など、HTML で特別な意味を持つ文字は、HTML において等価である &lt; や &amp; に変換されます。この結果、これらの文字はクライアントのブラウザで正しく表示されるようになります。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

HRESULT IMSCSPage_3_0::Encode(
VARIANT vtValue,
BSTR* pbstrRet
);

パラメータ

vtValue

[in] エンコード対象のテキスト文字列を含む Variant です。

pbstrRet

[out, retval] エンコードされた HTML テキストを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::HTMLEncode


IMSCSPage_3_0::GetShopperId

このメソッドは、現在のユーザーに対して一意の買物客 ID を返します。買物客 ID が URL クエリ文字列または cookie のどちらから返されるかは、サイトの StandardSManager の初期化モードによって異なります。

現在の顧客が買物客 ID を持っていない場合、GetShopperID は Null を返します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は GetShopperID メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::GetShopperId(
VARIANT* pvarShopperID
);

パラメータ

pvarShopperID

[out, retval] 買物客 ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvarShopperID パラメータが有効なデータを参照するのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::PutShopperId


IMSCSPage_3_0::HTMLEncode

このメソッドは、指定されたテキスト文字列に HTML エンコードを適用するために使います。これは通常、データベースに含まれるテキスト フィールドのコンテンツを HTML で表示するために使います。文字列中の "<" や "&" など、HTML で特別な意味を持つ文字は、HTML において等価である &lt; や &amp; に変換されます。この結果、これらの文字はクライアントのブラウザで正しく表示されるようになります。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

HRESULT IMSCSPage_3_0::HTMLEncode(
VARIANT vtValue,
BSTR* pbstrRet
);

パラメータ

vtValue

[in] エンコード対象のテキスト文字列を含む Variant です。

pbstrRet

[out, retval] エンコードされた HTML テキストを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

表示するテキスト フィールドに既に HTML エンコードが含まれている場合は、HTMLEncode メソッドを使わないでください。たとえば、product_description フィールドに "The <I>Classic Diner Clock</I> brings the age of the &quot;Golden Oldies&quot; to your kitchen." という HTML でエンコードされたテキストがあるとします。この文字列では、クライアントのブラウザでテキストを斜体に表示させるために <I> タグを、引用符を表示させるために &quot; シーケンスを使っています。文字列が既に HTML でエンコードされているので、エンコードし直す必要はありません。文字列を重複してエンコードすると、正しい表示結果が得られません。

Page.HTMLEncode メソッドは Page.Encode メソッドと同等ですが、HTMLEncode メソッドの名前の方が一般的です。このメソッドは、Server.HTMLEncode と類似しています。異なるのは、Page.HTMLEncode メソッドは空の文字列を返して Null 値を処理するのに対し、Server.HTMLEncode メソッドは vtValue パラメータが Null の場合に失敗するという点です。データベース クエリは Null を返すことができるため、この違いは重要です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::URLEncode


IMSCSPage_3_0::Option

このメソッドは、HTML フォームの選択肢リストに表示される OPTION (選択肢) 項目を生成し、それに対して指定された値と選択状態を割り当てるために使います。この機能は Option メソッドを使わなくても作成することができますが、このメソッドを使うと、サイトの開発を早く行うことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::Option(
VARIANT vtVal1,
VARIANT vtVal2,
BSTR* pbstrRet
);

パラメータ

vtVal1

[in] 選択肢リストで使われる選択肢の値を含む Variant です。

vtVal2

[in] 選択肢が選択された状態であるかどうかを示す値を含む Variant です。vtVal2 が vtVal1 と同値の場合、選択肢リストの定義に HTML キーワードの SELECTED が挿入されます。

pbstrRet

[out, retval] OPTION (選択肢) 項目を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::Check


IMSCSPage_3_0::ProcessVerifyWith

このメソッドは、買物客が注文を HTML フォームで送信するとアクティブになる ASP ファイルで使います。ProcessVerifyWith メソッドは、VerifyWith メソッドで作成された HTML 形式の非表示フィールドの送信コンテンツを読み取り、これらの値を Dictionary オブジェクトに書き込みます。この Dictionary オブジェクトは _verify_with と呼ばれ、OrderForm オブジェクトに格納されています。

パイプラインが OrderForm を処理すると、_verify_with Dictionary オブジェクトのコンテンツが OrderForm オブジェクトのフィールドの元の値と比較され、ページが表示されてから最終的な購入までの間に変更されていないことが確認されます。

フィールドが一致しない場合、RequiredTotal パイプライン コンポーネントは、MessageManager メッセージ名定数の pur_badverify を使ってエラーを返します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::ProcessVerifyWith(
IDispatch* pdispOrder
);

パラメータ

pdispOrder

[in] 現在の買物客のバスケットを含む OrderForm オブジェクトを取得するために使う、IDispatch インターフェイスへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::VerifyWith

MessageManager オブジェクト

OrderForm オブジェクト


IMSCSPage_3_0::PutShopperId

このメソッドは、指定された買物客 ID を cookie に書き込み、それを URL またはセキュリティ保護された URL に格納します。また、そのどちらかの処理だけを行うこともあります。どちらの URL に格納されるかは、サイトの StandardSManager の初期化モードによって異なります。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は PutShopperID メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::PutShopperId(
BSTR bstrShopperID
);

パラメータ

bstrShopperID

[in] 買物客 ID を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

PutShopperID メソッドが指定された買物客 ID を格納する場所は、StandardSManager の初期化モードによって異なります。URL モードの場合、このメソッドは買物客 ID を要求に書き込みます。すると URL メソッドと SURL メソッドは、このページの URL のクエリ文字列に買物客 ID を追加します。

買物客 ID が URL クエリ文字列に格納されている場合は、アプリケーション レベルの MSCSSIDURLKey に設定した値を IIS の Request オブジェクトに渡すことにより、この ID を取得できます。

StandardSManager を URL モードで初期化した場合は、買物客 ID をクライアント システムに格納するために StandardSManager のPutShopperID 実装を使うことができません。その代わりに、Page オブジェクトの実装を使う必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::GetShopperId

IMSCSPage_3_0::SURL

IMSCSPage_3_0::URL


IMSCSPage_3_0::RequestDate

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付値 (Date Variant) に変換するために使います。

必要に応じて、RequestDate もまた、日付の値が指定範囲に収まっているかどうかを確認します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::RequestDate(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocal,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合に返される日付を含む Variant です。この既定値には、Date/Time 値や Time 値を格納することはできません。

vtMin

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための日付値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換された日付値が vtMin に満たない場合、メソッドは Null を返します。

vtMax

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための日付値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換された値が vtMax 以上の場合、メソッドは Null を返します。

vtLocale

[in, optional] 日付を変換するときに使われる、ロケールを指定するための数値を含む Variant です。この値が指定されていない場合、RequestDate メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 処理済みの日付値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IMSCSPage_3_0::RequestDateTime

IDataFunctions_4_0_::ConvertDateString

IDataFunctions_4_0::Date


IMSCSPage_3_0::RequestDateTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを日付/時刻値 (Date Variant) に変換するために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::RequestDateTime(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocal,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合や、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Time 値を格納することはできません。

vtMin

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための Date/Time 値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換後の値が vtMin よりも小さい場合は、Null が返されます。

vtMax

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための Date/Time 値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換された値が vtMax 以上の場合、メソッドは Null を返します。

vtLocale

[in, optional] 日付/時刻文字列を変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが指定されていない場合、RequestDateTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] Date/Time 値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IMSCSPage_3_0::RequestDate

IDataFunctions_4_0::ConvertDateTimeString

IMSCSPage_3_0::RequestTime


IMSCSPage_3_0::RequestDefault

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、その値を文字列として返すために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

HRESULT IMSCSPage_3_0::RequestDefault(
BSTR bstrName,
VARIANT vtDefault,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得される URL クエリ文字列変数の名前を含む BSTR です。

vtDefault

[in] 要求した URL クエリ文字列またはフォーム送信変数が空であったり Null 値である場合、または要求した文字列に存在しない場合に返される値が含まれている Variant です。このパラメータが指定されていない場合は、Null が返されます。

pvtRet

[out, retval] 処理済みの値を文字列として返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

このメソッドは、フォームにあるフィールドが空白であるか、フォームにフィールドが含まれていない場合を想定して作成されているもので、既定値として Null を返します。値が存在しない場合、一般的に、データベースには Null を格納します。値が欠落していて、結果として空の文字列が必要な場合は、Default パラメータに空の文字列を指定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト


IMSCSPage_3_0::RequestFloat

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを浮動小数点数値に変換するために使います。

RequestFloat メソッドでも、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::RequestFloat(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocal,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む BSTR です。

vtDefault

[in, optional] 要求したクエリ文字列またはフォーム送信変数が存在しない場合、存在しても値を持たない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。

vtMin

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための数値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換された値が vtMin に満たない場合、メソッドは Null を返します。

vtMax

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換された値が vtMax 以上の場合、メソッドは Null を返します。

変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。既定値は Null です。Null の場合、このパラメータは無視されます。変換された値が vtMax 以上の場合、メソッドは Null を返します。このパラメータは省略可能です。

vtLocale

[in, optional] 値を変換するときに使われる、ロケールを示す数値を含む Variant です。この値が指定されていない場合、RequestFloat メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 浮動小数点値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IMSCSPage_3_0::RequestNumber

IDataFunctions_4_0::ConvertFloatString

IDataFunctions_4_0::Float

IDataFunctions_4_0::ValidateFloat

IMSCSPage_3_0::RequestNumber


IMSCSPage_3_0::RequestMoneyAsNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、それを、指定したロケールまたは既定のロケールの基本通貨単位で表現された数値に変換するために使います。

このメソッドは、Site Server 3.0 Commerce Edition のサイトとの下位互換性を維持するために使うもので、Site Server 3.0 Commerce Edition の通貨書式に依存します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::RequestMoneyAsNumber(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocal,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む BSTR です。

vtDefault

[in, optional] 要求した URL クエリ文字列またはフォーム送信変数が存在しない場合、存在しても値を含まない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。既定値が文字列値である場合、文字列値は基本通貨単位の値に変換されます。そのほかのデータ型である場合、値は基本通貨単位で表現されていると仮定されます。

vtMin

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための金額値を含む Variant です。vtMin パラメータでは、値が基本通貨単位で表現されている必要があります。変換された値が vtMin に満たない場合、メソッドは Null を返します。このパラメータは省略可能です。

vtMax

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための金額値を含む Variant です。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。vtMax パラメータでは、値が基本通貨単位で表現されている必要があります。変換された値が vtMax 以上の場合、メソッドは Null を返します。

vtLocale

[in, optional] bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestMoneyAsNumber は DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 指定したロケールまたは既定のロケールの基本通貨単位で表現された数値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、Site Server 3.0 Commerce Edition のサイトとの下位互換性を維持するために使うもので、Site Server 3.0 Commerce Edition の通貨書式に依存します。

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertMoneyStringToNumber

IDataFunctions_4_0::Money

IMSCSPage_3_0::RequestFloat

IMSCSPage_3_0::RequestNumber


IMSCSPage_3_0::RequestNumber

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを数値に変換するために使います。

RequestNumber メソッドでも、指定したロケールに基づいて、変換後の数値が指定範囲内に収まっているかどうかを確認することができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::RequestNumber(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocal,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む BSTR です。

vtDefault

[in, optional] 要求した URL クエリ文字列またはフォーム送信変数が存在しない場合、存在しても値を含まない場合の、戻り値を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。

vtMin

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための数値を含む Variant です。変換後の値が vtMin より小さい場合は、Null が返されます。Variant の種類が VT_NULL である場合、検証プロセスでは vtMin パラメータの値が考慮されません。

vtMax

[in, optional] 変換後の値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための数値を含む Variant です。変換後の値が vtMax より大きい場合は、Null が返されます。Variant の種類が VT_NULL である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換された値が vtMax 以上の場合、メソッドは Null を返します。

vtLocale

[in, optional] bstrName パラメータを変換するときに使われる、ロケールを指定するための数値を含む Variant です。このパラメータが使われていない場合、RequestNumber メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 変換後の数値を返すために使う Variant へのポインタです。検証に失敗した場合、戻り値は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IMSCSPage_3_0::RequestFloat

IDataFunctions_4_0::ConvertNumberString

IDataFunctions_4_0::Number

IDataFunctions_4_0::ValidateNumber


IMSCSPage_3_0::RequestString

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールに基づいて、その値に対して文字列処理を実行するために使います。

この処理によって、先頭と末尾の空白、および改行文字が除去され、文字列が指定範囲に収まっているかどうかが確認され、指定したロケールまたは既定のロケールに基づいて文字列が検証されます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::RequestString(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtStripWhite,
VARIANT vtStripReturn,
VARIANT vtCase,
VARIANT vtLocal,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む BSTR です。

vtDefault

[in, optional] 指定した URL クエリ文字列またはフォーム送信変数が存在しない場合、存在しても値を含まない場合の、返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。

vtMin

[in, optional] bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最短の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMin パラメータの値が考慮されません。この値が無効である場合、または bstrName/vtDefault パラメータの長さが指定範囲に収まっていない場合に、メソッドは Null を返します。

vtMax

[in, optional] bstrName パラメータの長さが特定の範囲に収まっているかどうかを検証するときに使われる、最長の長さを示すための数値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMax パラメータの値が考慮されません。この値が無効である場合、または bstrName/vtDefault パラメータの長さが指定範囲に収まっていない場合に、メソッドは Null を返します。

vtStripWhite

[in, optional] 文字列から先頭と末尾の空白を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。

vtStripReturn

[in, optional] 文字列から改行文字を削除するかどうかを示す Boolean 値を含む Variant です。既定値は True です。

vtCase

[in, optional] 文字列を大文字/小文字のどちらに変換するかを示す数値を含む Variant です。既定値は 0 です。この場合、文字列の大文字/小文字変換は実行されません。vtCase パラメータが 1 の場合、文字列は大文字に変換されます。vtCase パラメータが 2 の場合、文字列は小文字に変換されます。

vtLocal

[in, optional] ロケールを指定する数値を含む Variant です。変換はこのロケールに基づいて行われます。この値が指定されていない場合、RequestString メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 処理済みの文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale


IMSCSPage_3_0::RequestTime

このメソッドは、URL クエリ文字列またはフォーム送信変数から値を取得し、指定したロケールまたは既定のロケールに基づいて、それを Date Variant に変換するために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::RequestTime(
BSTR bstrName,
VARIANT vtDefault,
VARIANT vtMin,
VARIANT vtMax,
VARIANT vtLocal,
VARIANT* pvtRet
);

パラメータ

bstrName

[in] 取得対象の URL クエリ文字列またはフォーム送信変数の名前を含む BSTR です。

vtDefault

[in, optional] 指定した URL クエリ文字列またはフォーム送信変数が存在しない場合、存在しても値を含まない場合の、返される文字列を含む Variant です。このパラメータが指定されていない場合は、Null が返されます。この既定値には、Date/Time 値や Date 値を格納することはできません。

vtMin

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の下限を指定するための時刻値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMin パラメータの値が考慮されません。変換後の値が vtMin よりも小さい場合は、Null が返されます。

vtMax

[in, optional] bstrName パラメータの値が特定の範囲に収まっているかどうかを検証するときに使われる、範囲の上限を指定するための時刻値を含む Variant です。Variant の種類が vtMissing である場合、検証プロセスでは vtMax パラメータの値が考慮されません。変換された値が vtMax 以上の場合、メソッドは Null を返します。

vtLocale

[in, optional] Date/Time 値を変換するときに使われる、ロケールを指定する数値を含む Variant です。この値が指定されていない場合、RequestTime メソッドは DataFunctions オブジェクトの Locale プロパティの値を使います。

pvtRet

[out, retval] 日付を返すために使う Variant へのポインタです。検証に失敗した場合、値は Null に設定されます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IDataFunctions_4_0::get_Locale/put_Locale

IDataFunctions_4_0::ConvertTimeStringf

IMSCSPage_3_0::RequestDate


IMSCSPage_3_0::SiteRoot

このメソッドは、Commerce Server のサイトの物理ディレクトリを返すために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。

定義

HRESULT IMSCSPage_3_0::SiteRoot(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] 物理ディレクトリのパスを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::VirtualDirectory


IMSCSPage_3_0::SURL

このメソッドは、提供されたファイル名、および名前/値の引数のオプションのリストに基づいて、正しく書式設定されセキュリティ保護された HTTP URL (SURL) を生成するために使います。書式設定された URL には、サーバー名、(Web サイトが実行しているコンテキストから取得した) ファイルの格納先である仮想ディレクトリ、およびファイルの名前が含まれます。

さらに、アプリケーションの StandardSManager が URL モードで初期化されている場合、SURL メソッドは MSCSSIDUrlKey Application オブジェクト変数に格納されている値を、名前/値の組み合わせにおける名前として使います。この値が、現在の顧客の買物客 ID です。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は SURL メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::SURL(
BSTR bstrPath,
BSTR* pbstrRet
);

パラメータ

bstrPath

[in] SURL が参照するファイルの名前を含む BSTR です。

pbstrRet

[out, retval] 適切な形式のセキュリティ保護付き HTTP URL を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

アプリケーションの開発中は、Site.DisableHTTPS プロパティを 1 に指定できます。これにより、SURL メソッドでホスト名として InsecureHostName 値を使うようになります。SURL メソッドがセキュリティ保護された URL を生成するのは、Site.DisableHTTPS がゼロ (0) に指定されている場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::URL


IMSCSPage_3_0::SURLPrefix

このメソッドは、MSCSSecureHostName 値で決定されているとおりにセキュリティ保護されたルート ドメインを返すために使います。返された文字列は、完全な URL のプレフィックスとして使うことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は SURLPrefix メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::SURLPrefix(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] セキュリティ保護されたルート ドメインを表す文字列を返すために使う、BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

アプリケーションの開発中は、サイト ディクショナリの DisableHTTPS プロパティを 1 に指定できます。これにより、SURLPrefix メソッドでホスト名として InsecureHostName 値を使うようになります。SURLPrefix メソッドがセキュリティ保護された URL を生成するのは、Site.DisableHTTPS がゼロ (0) に指定されている場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

StandardSManager オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::URLPrefix

IMSCSPage_3_0::URLShopperArgs

IMSCSPage_3_0::SURL

IMSCSPage_3_0::URLArgs

IMSCSPage_3_0::VirtualDirectory


IMSCSPage_3_0::URL

このメソッドは、指定したファイル名および名前/値の引数のオプション リストに基づいて、URL を生成するために使います。この URL には、サーバー名、ファイルの格納先である仮想ディレクトリ、およびそのファイルの名前が含まれます。

さらに、アプリケーションの StandardSManager が URL モードで初期化されている場合、URL メソッドは、Application オブジェクトの MSCSSIDUrlKey 変数を、名前/値の組み合わせにおける名前として使います。この値が、現在の顧客の買物客 ID です。

メソッドは、渡される値に URL エンコードを適用します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URL メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::URL(
BSTR bstrPath,
BSTR* pbstrRet
);

パラメータ

bstrPath

[in] URL で参照するファイルの名前を含む BSTR です。

pbstrRet

[out, retval] エンコード済みの値を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::SURL


IMSCSPage_3_0::URLArgs

このメソッドは、一連のクエリ文字列引数を、URL に渡すために適切なフォームで生成する場合に使います。メソッドは、渡される値に URL エンコードを適用します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLArgs メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::URLArgs(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] 一連のクエリ文字列引数を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::VirtualDirectory

IMSCSPage_3_0::SURL

IMSCSPage_3_0::SURLPrefix

IMSCSPage_3_0::URL

IMSCSPage_3_0::URLShopperArgs


IMSCSPage_3_0::URLEncode

このメソッドは、エスケープ文字などの URL エンコード ルールを、指定した文字列に適用するために使います。エンコードされた URL 文字列は、クエリ文字列引数として URL に渡すことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLEncode メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::URLEncode(
VARIANT vtValue,
BSTR* pbstrRet
);

パラメータ

vtValue

[in] エンコードする文字列を含む Variant です。

pbstrRet

[out, retval] URL にエンコードされた文字列を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

スペース、スラッシュ (/)、パーセント記号 (%) などの特定の文字を含む文字列は、URL クエリ引数として渡すことができません。URL エンコードでは、これらの文字をエスケープ テキストとしてエンコードするので、URL に渡すことができるようになります。

Page.URLEncode メソッドは Server.URLEncode メソッドとほぼ同等です。異なるのは、Page.URLEncode メソッドは空の文字列を返して Null 値を処理するという点です (Server.URLEncode メソッドは、String パラメータが Null の場合に失敗します)。データベース クエリは Null を返すことができるため、この違いは重要です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::HTMLEncode


IMSCSPage_3_0::URLPrefix

このメソッドは、InsecureHostName 値で決定されるルート ドメインを返すために使います。返された文字列は、完全な URL のプレフィックスとして使うことができます。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLPrefix メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::URLPrefix(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] ルート ドメインを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

セキュリティ保護されたホストのドメインを生成するには、Page.SURLPrefix メソッドを使います。

関連項目

Page オブジェクト

AuthManager オブジェクト

IMSCSPage_3_0::SURLPrefix

IMSCSPage_3_0::VirtualDirectory

IMSCSPage_3_0::SURL

IMSCSPage_3_0::SURLPrefix

IMSCSPage_3_0::URL

IMSCSPage_3_0::URLShopperArgs

IMSCSPage_3_0::URLArgs


IMSCSPage_3_0::URLShopperArgs

このメソッドは、URL に渡すために一連のクエリ文字列引数を適切なフォームで生成し、StandardSManager が URL モードに初期化されている場合には、その引数に買物客 ID を含めるために使います。URLShopperArgs メソッドは、渡される値を URL エンコード処理します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AuthManager オブジェクトに関する説明を参照してください。このオブジェクトの機能は URLShopperArgs メソッドのものと類似しています。この種類の機能をサイトに追加するには、AuthManager メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::URLShopperArgs(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] 一連のクエリ文字列引数を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

URLShopperArgs メソッドは、現在の顧客の買物客 ID を、URL 引数リストに追加します。URL に渡される引数名は、Application オブジェクトの MSCSSIDUrlKey 変数に格納されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

AuthManager オブジェクト


IMSCSPage_3_0::VerifyWith

このメソッドは、HTML フォーム内に <INPUT TYPE="HIDDEN"> という形式の HTML タグを出力するために使います。これらの非表示フィールドには、OrderForm オブジェクトの指定された値が含まれ、OrderForm オブジェクトが表示されてから最終的な購入までの間に注文が変更されていないことを確認するために使われます。注文フォームが送信されると、対象ページの ProcessVerifyWith メソッドが、Dictionary オブジェクトのこれらのフィールドを OrderForm に格納し、OrderForm オブジェクトは次に注文処理パイプライン (OPP) に渡されます。パイプラインのオブジェクトのうちの 1 つが、元の値と、非表示フィールドの値とを比較します。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::VerifyWith(
IDispatch* pdispOrder,
BSTR* pbstrArguments
BSTR* pbstrRet
);

パラメータ

pdispOrder

[in] 検証対象となるフィールドを含む OrderForm オブジェクトを取得するために使う、IDispatch インターフェイスへのポインタです。

pbstrArguments

[in] 提供された OrderForm オブジェクトの確認の対象となるフィールド名のカンマ区切りリストが含まれた BSTR のポインタです。このパラメータは省略可能です。

pbstrRet

[out, retval] HTML タグを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::ProcessVerifyWith

OrderForm オブジェクト


IMSCSPage_3_0::VirtualDirectory

このメソッドは、サイトの仮想ディレクトリ名を返すために使います。

重要

  • このメソッドは、Site Server 3.0 Commerce Edition との下位互換性を維持するために用意されています。AppFrameWork オブジェクトに関する説明を参照してください。このオブジェクトの機能は、このメソッドのものと類似しています。この種類の機能をサイトに追加するには、AppFrameWork メソッドを使うことをお勧めします。今後リリースされるバージョンの Microsoft Commerce Server とも高い互換性を維持することができます。

定義

HRESULT IMSCSPage_3_0::VirtualDirectory(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] サイトの仮想ディレクトリを返すために使う BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Page オブジェクト

IMSCSPage_3_0::SiteRoot

IMSCSPage_3_0::SURL

IMSCSPage_3_0::URL

IMSCSPage_3_0::SURLPrefix

IMSCSPage_3_0::URLArgs

IMSCSPage_3_0::URLPrefix

IMSCSPage_3_0::URLShopperArgs

StandardSManager オブジェクト


PooledPipeline オブジェクト

このオブジェクトは、Microsoft Commerce Server 2000 のパイプライン構成ファイルを実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。

PooledPipeline オブジェクトが COM+ オブジェクト プーリングを利用することにより、オブジェクト プーリングをサポートするパイプライン コンポーネントを含むパイプラインの読み込み速度は大幅に強化されています。プールされたパイプラインの詳細については、「プールされたパイプライン」を参照してください。

ProgID: | Commerce.PooledPipeline (外部作成可能)
COM クラス名: | CPooledPipeline
COM インターフェイス名: | IPipeline
インターフェイス ID 定数: | IID_IPipeline
ヘッダー ファイル: | pipeline.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | 両方

C++ で PooledPipeline オブジェクトのプロパティとメソッドにアクセスするには、IPipeline インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、PooledPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | LoadPipe メソッドによって構成されたとおり、パイプラインのコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

PooledPipeline は、アプリケーションやセッションのスコープ内で保持するのではなく、それを使用する各 Active Server Pages (ASP) ページに作成する必要があります。

通常、PooledPipeline オブジェクトは運用 Web サイトだけで使います。サイトの開発時には MtsPipeline オブジェクトを使います。開発段階で PooledPipeline オブジェクトを使う場合は、インターネット インフォメーション サービス (IIS) をいったん停止して再開する必要があります。

カスタムのプール可能なパイプライン コンポーネントを作成するには、Component Object Model (COM) カテゴリである CATID_POOLABLE をコンポーネントに追加することで、プールされるように設定します。

PooledPipeline オブジェクトは、COM+ に "サポートされていないトランザクション" として登録されます。このパイプラインは、トランザクションが必要ない場所で使います。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。


IPipeline::Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

HRESULT IPipeline::Execute(
long lMode,
IDispatch* pdispOrder,
IDispatch* pdispContext,
long lFlags,
long* pErrorLevel
);

パラメータ

lMode

[in] パイプラインを実行するモードを示す long integer です。このパラメータは、Commerce Server の以前のバージョン (Site Server 2.0 Commerce Edition) との下位互換性を維持する目的でのみ用意されています。Commerce Server 2000 のサイトでは、このパラメータを 1 に指定します。

pdispOrder

[in] ビジネス オブジェクト (一般的にはディクショナリ オブジェクトまたは注文フォーム オブジェクト) の IDispatch インターフェイスへのポインタです。

pdispContext

[in] セカンダリ ビジネス オブジェクト (通常はコンテキスト ディクショナリ) の IDispatch インターフェイスへのポインタです。

lFlags

[in] 使われていない long integer パラメータです。ゼロ (0) に設定する必要があります。

pErrorLevel

[out,retval] 警告レベルを返す long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

また、pErrorLevel パラメータは次の 3 つの値のうちいずれに設定されます。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

pErrorLevel パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PooledPipeline オブジェクト

IPipeline::LoadPipe

IPipeline::SetLogFile


IPipeline::LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

HRESULT IPipeline::LoadPipe(
BSTR pszFileName
);

パラメータ

pszFileName

[in] パイプライン構成ファイル (.pcf) の名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションで使うために (MtsTxPipeline または PooledTxPipeline で使うために) 作成されたパイプライン構成ファイルを読み込もうとすると、LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PooledPipeline オブジェクト

IPipeline::Execute

IPipeline::SetLogFile


IPipeline::SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。運用環境では、ログ機能を有効にしないでください。ログ機能を有効にすると、パフォーマンスが低下し、クレジット カードの番号に対するセキュリティの問題が発生します。パイプラインを実行するプロセスに指定のパスへの書き込みアクセスを許可するように、ファイル システムを構成する必要があります。

定義

HRESULT IPipeline::SetLogFile(
BSTR pszFileName
);

パラメータ

pszFileName

[in] イベントのログを記録するファイル名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

パイプラインを実行する直前に、SetLogFile メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PooledPipeline オブジェクト

IPipeline::Execute

IPipeline::LoadPipe


PooledTxPipeline オブジェクト

このオブジェクトは、Microsoft Commerce Server 2000 のパイプラインを実行するために使います。このパイプラインは注文処理パイプライン (OPP) にできます。トランザクションが必要な場合に、PooledPipeline オブジェクトの代わりに使います。

PooledTxPipeline オブジェクトが COM+ オブジェクト プーリングを利用することにより、パイプラインの読み込み速度は大幅に強化されています。プールされたパイプラインの詳細については、「プールされたパイプライン」を参照してください。

ProgID: | Commerce.PooledTxPipeline (外部作成可能)
COM クラス名: | CPooledTxPipeline
COM インターフェイス名: | IPipeline
インターフェイス ID 定数: | IID_IPipeline
ヘッダー ファイル: | pipeline.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Order Pipeline Type Library
DLL 名: | pipeline.dll
スレッド モデル: | 両方

C++ で PooledTxPipeline オブジェクトのプロパティとメソッドにアクセスするには、IPipeline インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、PooledTxPipeline オブジェクトのメソッドを示しています。

メソッド | 説明
Execute | LoadPipe メソッドによって構成されたとおり、パイプラインのコンポーネントを実行します。
LoadPipe | パイプライン構成ファイル (.pcf) をパイプラインに読み込みます。
SetLogFile | パイプライン イベントのログを記録するファイルを識別します。

解説

PooledTxPipeline オブジェクトは、COM+ に "必須のトランザクション" として登録されます。このパイプラインは、トランザクションが必要な場合に使います。トランザクションとパイプラインの詳細については、「パイプラインの基礎」を参照してください。

PooledTxPipeline オブジェクトを使うためには、Microsoft 分散トランザクション コーディネータ (MSDTC) サービスが実行されている必要があります。

分散トランザクション コーディネータ サービスが実行されていることを確認するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[サービス] をクリックします。

  2. [Distributed Transaction Coordinator] をスクロールし、[状態] が [開始] になっていることを確認します。

通常、PooledTxPipeline オブジェクトは運用 Web サイトだけで使います。サイトの開発時には MtsPipeline オブジェクトを使います。開発段階で PooledTxPipeline オブジェクトを使う場合は、インターネット インフォメーション サービス (IIS) をいったん停止して再開し、.pcf ファイルが変更後に再度読み込まれるようにする必要があります。

PooledPipeline オブジェクトは、アプリケーションやセッションのスコープ内で保持するのではなく、それを使用する各 ASP ページに作成する必要があります。

カスタムのプール可能なパイプライン コンポーネントを作成するには、Component Object Model (COM) カテゴリである CATID_POOLABLE をコンポーネントに追加することで、プールされるように設定します。


IPipeline::Execute

このメソッドは、LoadPipe メソッドで以前に指定されたパイプライン構成ファイルの各ステージを実行するために使います。

定義

HRESULT IPipeline::Execute(
long lMode,
IDispatch* pdispOrder,
IDispatch* pdispContext,
long lFlags,
long* pErrorLevel
);

パラメータ

lMode

[in] パイプラインを実行するモードを示す long integer です。このパラメータは、Commerce Server の以前のバージョン (Site Server 2.0 Commerce Edition) との下位互換性を維持する目的でのみ用意されています。Commerce Server 2000 のサイトでは、このパラメータを 1 に指定します。

pdispOrder

[in] ビジネス オブジェクト (一般的にはディクショナリ オブジェクトまたは注文フォーム オブジェクト) の IDispatch インターフェイスへのポインタです。

pdispContext

[in] セカンダリ ビジネス オブジェクト (通常はコンテキスト ディクショナリ オブジェクト) の IDispatch インターフェイスへのポインタです。

lFlags

[in] 使われていない long integer パラメータです。ゼロ (0) に設定する必要があります。

pErrorLevel

[out,retval] 警告レベルを返す long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

また、pErrorLevel パラメータは次の 3 つの値のうちいずれに設定されます。

値 | 説明
1 | パイプラインは正常に実行されました。
2 | パイプライン コンポーネントが警告を発しました。一般的には、ASP ページを介してユーザーに報告されるバスケット エラーまたはユーザー エラーがあります。
3 | パイプライン コンポーネントの実行に失敗しました。

解説

pErrorLevel パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PooledTxPipeline オブジェクト

IPipeline::LoadPipe

IPipeline::SetLogFile


IPipeline::LoadPipe

このメソッドは、パイプライン構成ファイル (.pcf) をパイプラインに読み込むために使います。

定義

HRESULT IPipeline::LoadPipe(
BSTR pszFileName
);

パラメータ

pszFileName

[in] パイプライン構成ファイル (.pcf) の名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示すために HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

すべてのパイプラインを初期化するには、LoadPipe メソッドを呼び出す必要があります。

トランザクションで使うために作成されていないパイプライン構成ファイル (MtsPipeline または PooledPipeline で使うために作成されたパイプライン構成ファイル) を読み込もうとすると、LoadPipe メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PooledTxPipeline オブジェクト

IPipeline::Execute

IPipeline::SetLogFile


IPipeline::SetLogFile

このメソッドは、パイプライン コンポーネントの操作を記録するファイルを識別するために使います。

注

  • このメソッドは、パイプライン構成ファイルの情報を分析する開発者向けです。運用環境では、ログ機能を有効にしないでください。ログ機能を有効にすると、パフォーマンスが低下し、クレジット カードの番号に対するセキュリティの問題が発生する可能性があります。パイプラインを実行するプロセスに指定のパスへの書き込みアクセスを許可するように、ファイル システムを構成する必要があります。

定義

HRESULT IPipeline::SetLogFile(
BSTR pszFileName
);

パラメータ

pszFileName

[in] イベントのログを記録するファイル名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ログ機能を設定すると、パイプラインは、呼び出されたパイプライン コンポーネントと各コンポーネントが返すエラー値のログを記録します。パイプラインは、Dictionary オブジェクトと SimpleList オブジェクトの読み取りおよび書き込み操作もすべて記録します。

SetLogFile メソッドは、パイプラインの実行の直前に呼び出す必要があります。

空の文字列でこのメソッドを呼び出すと、ログ機能は停止します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PooledTxPipeline オブジェクト

IPipeline::Execute

IPipeline::LoadPipe


PredictorClient オブジェクト

このオブジェクトは、分析モデルの読み込み、予測コンテキストを制御するプロパティの設定、予測アルゴリズムの実行のために使います。サポートされているモデルは、予測モデルとセグメント モデルの 2 種類です。予測モデルの結果は、商品を推奨し、欠落したプロファイル データを提供するために使われます。セグメント モデルの結果は、ユーザーを分類するために使われます。予測モデルは、セグメント モデルよりも的確な推奨を提示します。予測にセグメント モデルを使うことはあまりお勧めできません。

ProgID: | Commerce.PredictorClient (外部作成可能)
COM クラス名: | PredictorClient
COM インターフェイス名: | IPredictorClient
インターフェイス ID 定数: | IID_IPredictorClient
ヘッダー ファイル: | PredictorClient.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Client Type Library
DLL 名: | PredictorClient.dll
スレッド モデル: | 両方

C++ で PredictorClient オブジェクトのプロパティとメソッドにアクセスするには、IPredictorClient インターフェイスを使います。

次の表は、PredictorClient オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
fpDataFitScore | Float | データ フィット スコアを格納します。 このプロパティは読み取り専用です。
fpDefaultConfidence | Float | 予測の信頼性のしきい値を格納します。 このプロパティは読み取りと書き込みが可能です。
bFailOnUnknownInputAttributes | VARIANT_BOOL | 入力属性が不明の場合に Predict メソッドの動作を制御します。 このプロパティは読み取りと書き込みが可能です。
fpPopularityPenalty | Float | 人気のある項目を推奨するように選択した場合に適用されるペナルティを格納します。 このプロパティは読み取りと書き込みが可能です。
fpRecommendScore | Float | 推奨スコアを格納します。 このプロパティは読み取り専用です。
sSiteName | BSTR | PredictorClient オブジェクトが実行されるサイトの名前を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、PredictorClient オブジェクトのメソッドを示しています。

メソッド | 説明
Explain | 予測モデルへの入力として使われる、関連プロパティ/値の組み合わせに関して、プロパティの予測を説明します。
LoadModelFromDB | データベースからモデルを読み込みます。
LoadModelFromFile | 指定したファイルからモデルを読み込みます。
Predict | 推奨された商品または欠落したプロファイル データを予測します。
PredictAllSegments | ユーザーが、過去のユーザーのそれぞれのセグメントに属している確率を算出します。
PredictMostLikelySegment | ユーザーが属している可能性が最も高そうなセグメントを算出します。
SaveModelToFile | 指定したファイルにモデルを保存します。

解説

ユーザーの行動を予想する必要があるアプリケーションでは、PredictorClient オブジェクトを使って、分析モデルを読み込み、予測を生成します。これらのモデルは、一部のケースの特定の集合を、予測の基盤として使います。ケースは、過去のユーザーに関する既知の情報がすべて集められたもので、そこには統計情報やトランザクションの履歴が含まれている可能性があります。

PredModelBuilder オブジェクトは、新しいモデルを生成するために使います。PredictorServiceAdmin オブジェクトは、モデルとモデル構成のリストを取得するために使います。PredictorServiceSiteAdmin オブジェクトは、モデルとモデル構成の削除、名前の変更のために使います。

fpDataFitScore プロパティと fpRecommendScore プロパティを使って、予測モデルの効果を測定してください。これにより、モデルを構築するときに、SampleSize、InputAttributeFraction、OutputAttributeFraction などの入力パラメータの調整を行うことができます。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってモデルを読み込んでから、ほかの PredictorClient メソッドを使うようにしてください。

予測モデルを使うときのパフォーマンスを最適化するには、fpDefaultConfidence プロパティと fpPopularityPenalty プロパティの既定値を global.asa ファイルの Application_OnStart メソッドで設定し、各 Predict メソッド呼び出しでは値を明示的に設定する必要はありません。

関連項目

予測オブジェクト

予測スキーマ

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


IPredictorClient::get_fpDataFitScore

読み取り専用の fpDataFitScore プロパティはデータ フィット スコアを返します。これにより予測モデルの効果が測定され、プロファイル データに欠けている値が入力されます。

定義

Get メソッド :

HRESULT IPredictorClient::get_fpDataFitScore(
float* pVal
);

パラメータ

pVal

[out, retval] データ フィット スコアを返すために使う Float です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の「エラー値」を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

データ フィット スコアは、モデルが構築されると、データの一部をテスト データとして自動計算されます。テストのためにサンプリングするデータの量は、[測定精度サンプル比率] として指定されます。詳細については、「新しい分析モデルを構築する」および「PredictorModels テーブル」を参照してください。

データ フィット スコアを使って、予測モデルの入力パラメータのテストと調整を行います。モデルの構築に使った入力ケースから取得された既知のケースは、予測モデルと "当て馬" モデルの両方に対してテストされます。"当て馬" モデルとは、すべてのプロパティが独立しているという前提で処理を行う周辺分析モデルです。中間値は、予測モデルがテスト データ内のケースに割り当てる確率を、"当て馬" モデルが同じケースに割り当てる確率で除算して算出されます。スコアは、各出力プロパティに関するこれらの値の幾何平均の対数です。たとえば、0 より大きいスコアは、構築されたモデルが "当て馬" モデルより正確な予測を立てていることを意味します。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict


IPredictorClient::get_fpDefaultConfidence/put_fpDefaultConfidence

読み取りと書き込みが可能な fpDefaultConfidence プロパティは、下回ると PredictorClient オブジェクトから予測が返されなくなるしきい値を決定します。

定義

Get メソッド :

HRESULT IPredictorClient::get_fpDefaultConfidence(
float* pVal
);

Put メソッド :

HRESULT IPredictorClient::put_fpDefaultConfidence(
float pVal
);

パラメータ

pVal

[in] プロパティを入力する場合は、予測の確実性に関するしきい値を含む Float です。有効な範囲は 0 ～ 100 です。
[out, retval] プロパティを取得する場合は、予測の確実性に関するカットオフ値を返すために使う Float へのポインタです。

戻り値

これらのメソッドは、正しく終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

次の標準 COM エラー値は、このプロパティのコンテキストでは特定の意味を持っています。

E_INVALIDARG

このプロパティの値は、有効な 0 ～ 100 の範囲外にあります。

解説

fpDefaultConfidence プロパティは、どの属性が推奨リストに表示されるかを決定するしきい値です。予測が作成されると、各属性に "欠落していない" 確率が割り当てられ、これが多くの場合、商品が購入される確率に対応することになります。この "欠落していない" 確率 (パーセント単位の値) が、fpDefaultConfidence の値を下回る場合、その確率がほかの属性の "欠落していない" 確率より大きくても、その属性は推奨リストに表示されません。プロパティは 0 ～ 100 の範囲内にある必要がありますが、値 0 が推奨されるのは、fpPopularityPenalty プロパティが 0 に設定されている場合だけです。

global.asa ファイルで、このプロパティに既定値を設定し、各 Predict メソッド呼び出しでは値を設定しません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict


IPredictorClient::Explain

このメソッドは、指定された不明のプロパティの予測に関連する現在のケースから、プロパティと値を返すために使います。返されたプロパティ/値のそれぞれの組み合わせに対応するスコアは、予測に対するプロパティ/値の組み合わせそれぞれの重要性を説明するものです。

定義

HRESULT IPredictorClient::Explain(
IDictionary* dCurrentCase,
BSTR sPropToExplain,
VARIANT* pvsavRelevantProps,
VARIANT* pvsavRelevantValues,
VARIANT* pvsavRelevantScores,
long lMaxExplanations
);

パラメータ

dCurrentCase

[in] 現在のケースを含む Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

sPropToExplain

[in, string] 説明するプロパティの名前を含む BSTR です。

pvsavRelevantProps

[out] 予測に関連する現在のケースから、プロパティの一覧を含む SAFEARRAY を取得して返す場合に使われる Variant のポインタです。

pvsavRelevantValues

[out] 関連するプロパティに対応する値のリストを含んだ SAFEARRAY を返すために使う Variant へのポインタです。

pvsavRelevantScores

[out] SAFEARRAY を返すために使われる Variant へのポインタです。SAFEARRAY には、予測に対する各プロパティの重要度に対応したスコアのリストが含まれています。

lMaxExplanations

[in, optional, default value (-1)] 返されるプロパティの最大数を含む long です。既定値は、すべてのプロパティが返されることを示します。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、プロパティ/値/スコアの組み合わせを返します。この組み合わせはスコアによって降順に並べられています。スコアが高くなるほど、不明なプロパティが、対応するプロパティ/値の組み合わせによって正確に予測される確率も高くなります。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このメソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pvsavReleventProps、pvsavRelevantValues、および pvsavRelevantScores パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

PredictorClient オブジェクト


IPredictorClient::get_bFailOnUnknownInputAttributes/put_bFailOnUnknownInputAttributes

読み取りと書き込みが可能な bFailOnUnknownInputAttributes プロパティは、Predict メソッドが不明な入力属性を見つけたときに続行されるか失敗するかを制御します。

定義

Get メソッド :

HRESULT IPredictorClient::get_bFailOnUnknownInputAttributes(
VARIANT_BOOL* pbVal
);

Put メソッド :

HRESULT IPredictorClient::put_bFailOnUnknownInputAttributes(
VARIANT_BOOL pbval
);

パラメータ

pbVal

[in] プロパティを入力する場合は、未知の属性が入力されたときに Predict メソッドを失敗させるかどうかを示す VARIANT_BOOL です。既定値は False です。
[out, retval] プロパティを取得する場合は、未知の属性が入力されたときに Predict メソッドを失敗させるかどうかを示す VARIANT_BOOL へのポインタです。

戻り値

これらのメソッドは、正しく終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、デバッグ フラグとして使われます。既定では、Predict メソッドは不明な入力属性を無視します。このプロパティを True に設定すると、Predict メソッドは不明な入力属性を見つけたときに失敗します。

デバッグ時には、global.asa ファイルでこのプロパティに既定値を設定し、各 Predict メソッド呼び出しでは値を設定しません。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict


IPredictorClient::LoadModelFromDB

このメソッドは、データベースに格納されたモデルを読み込むために使います。

定義

HRESULT IPredictorClient::LoadModelFromDB(
BSTR sModelName,
BSTR sDWConnStr
);

パラメータ

sModelName

[in] モデルの名前を含む BSTR です。

sDWConnStr

[in] データ ウェアハウスへの接続情報を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

有効なモデルを読み込んでから、PredictorClient オブジェクトのほかのメソッドを呼び出すようにしてください。このモデルは、サイズが通常 100 KB ～ 10 MB の範囲にあり、ローカル Web サーバーに読み込んで予測要求に対して適時に応答する必要があります。

モデルに関する情報は、PredictorModels テーブルから読み込まれます。このテーブルの詳細については、「予測スキーマ」を参照してください。

sDWConnStr パラメータは SQL OLE DB 接続文字列である必要があります。

モデルをファイルから読み込むには、LoadModelFromFile メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict

IPredictorClient::LoadModeFromFile


IPredictorClient::LoadModelFromFile

このメソッドは、ファイルに格納されたモデルを読み込むために使います。

定義

HRESULT IPredictorClient::LoadModelFromFile(
BSTR sFilePath
);

パラメータ

sFilePath

[in] パス、ファイル名、および拡張子を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

有効なモデルを読み込んでから、PredictorClient オブジェクトのほかのメソッドを呼び出すようにしてください。モデルは最初はデータベースに格納されているので、読み込みには LoadModelFromDB メソッドを使います。いったん読み込んだモデルは、SaveModelToFile メソッドを使ってファイルに保存できます。

ファイル パスは、呼び出しプロセスの現在の作業ディレクトリへの相対パスです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict

IPredictorClient::LoadModelFromDB


IPredictorClient::get_fpPopularityPenalty/put_fpPopularityPenalty

読み取りと書き込みが可能な fpPopularityPenalty プロパティは、Predict メソッドが人気のある項目を推奨する可能性に影響を与えます。

定義

Get メソッド :

HRESULT IPredictorClient::get_fpPopularityPenalty(
float* pbVal
);

Put メソッド :

HRESULT IPredictorClient::put_fpPopularityPenalty(
float pbVal
);

パラメータ

pbVal

[in] プロパティを入力する場合は、以後の予測に適用される人気ペナルティ値を含む Float です。有効な範囲は 0.0 ～ 1 未満で、デフォルトは 0 です。
[out, retval] プロパティを取得する場合は、予測で使用される人気度ペナルティ値を返すために使う Float へのポインタです。

戻り値

これらのメソッドは、正しく終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

次の標準 COM エラー値は、このプロパティのコンテキストでは特定の意味を持っています。

E_INVALIDARG

パラメータ pbVal は1 です。有効な範囲は 0 から 1 未満です。

解説

人気のある項目とは、よく知られていてユーザーに推奨する必要のない、頻繁に購入される項目です。ペナルティの値を高く設定すると、人気のある項目が推奨商品として予測結果に含まれる確率が低くなります。値の範囲は 0.0 から 1.0 未満です。最も人気のある項目の売り上げを最大にするには、人気ペナルティの既定値を 0 にしてください。ほとんどのユーザーが人気のある商品について知っているアプリケーションでは、適切な値は 0.9 です。

global.asa ファイルの Application_OnStart メソッドで、このプロパティに既定値を設定し、各 Predict メソッド呼び出しでは値を設定しません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict


IPredictorClient::Predict

このメソッドは、関連する商品をユーザー (現在のケース) に推奨するための予測の生成、またはユーザーに関連するプロファイル データの欠落している値の入力に使います。

定義

HRESULT IPredictorClient::Predict(
IDictionary* dCurrentCase,
ISimpleList* slPropsToPredict,
VARIANT* pvsavPredictedProps
VARIANT* pvsavPredictedVals
long lMaxPredictions,
VARIANT* pvsavDetails
);

パラメータ

dCurrentCase

[in] 現在のケースを含む Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

slPropsToPredict

[in] 予測するプロパティの名前を含む、SimpleList オブジェクトの ISimpleList インターフェイスへのポインタです。

pvsavPredictedProps

[out] 予測されたプロパティの名前を含む SAFEARRAY を返すために使う Variant へのポインタです。

pvsavPredictedVals

[out] 予測されたプロパティの値を含む SAFEARRAY を返すために使う Variant へのポインタです。

lMaxPredictions

[in, optional, defaultvalue (-1)] 返される予測の最大数を指定する long です。既定値は、すべての予測が返されることを示します。

pvsavDetails

[out, optional] 将来の使用のために予約されています。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

予測は、現在読み込まれている予測モデルを使って作成されます。その予測モデルは、現在のケースに含まれるユーザー プロファイルと選択情報に基づいています。予測されたプロパティ/値の組み合わせは、可能性の高い順に並べられて返されます。

fpDefaultConfidence プロパティと fpPopularityPenalty プロパティを設定し、LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、Predict メソッドを使うようにしてください。

fpDefaultConfidence プロパティと fpPopularityPenalty プロパティの既定値は global.asa ファイルの Application_OnStart メソッドで設定します。そのため、各 Predict メソッド呼び出しの値を明示的に設定する必要はありません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

IPredictorClient::LoadModelFromFile

IPredictorClient::LoadModelFromDB

IPredictorClient::get_fpDefaultConfidence/put_fpDefaultConfidence


IPredictorClient::PredictAllSegments

このメソッドは、特定のユーザー (現在のケース) が、各ユーザー セグメントに属している確率を予測するために使います。

定義

HRESULT IPredictorClient::PredictAllSegments(
IDictionary* dCurrentCase,
VARIANT* pvsavSegmentNames,
VARIANT* pvsavProbabilities
);

パラメータ

dCurrentCase

[in] 現在のケースを含む IDictionary インターフェイスへのポインタです。

pvsavSegmentNames

[out] セグメント名を含む SAFEARRAY を返すために使う Variant です。

pvsavProbabilities

[out] セグメント名にユーザーが関連付けられている確率を含む SAFEARRAY を返すために使う、Variant です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Microsoft Research Cluster Engine Data Modeler は、類似したユーザーをセグメントにグループ化します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化されます。こうして階層が作成され、傾向の分析、隠れた相関関係の発見が行われます。各セグメント名に関連付けられて返された確率は、現在のユーザーがそのセグメントに属している確率を示すものです。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってセグメント モデルを読み込んでから、このメソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pvsavSegmentNames パラメータおよび pvsavProbabilities パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

PredictorClient オブジェクト


IPredictorClient::PredictMostLikelySegment

このメソッドは、ユーザー (現在のケース) が属している可能性が最も高いセグメントを予測するために使います。

定義

HRESULT IPredictorClient::PredictMostLikelySegment(
IDictionary* dCurrentCase,
VARIANT* pvarProbability,
BSTR* pbstrSegment
);

パラメータ

dCurrentCase

[in] 現在のケースを含む IDictionary インターフェイスへのポインタです。

pvarProbability

[out, optional] セグメント名にユーザーが関連付けられている確率を返すために使う Variant へのポインタです。

pbstrSegment

[out, retval] 指定されたケースを含んでいる可能性が最も高いセグメントの名前を返すために使う、BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Microsoft Research Cluster Engine Data Modeler は、類似したユーザーをセグメントにグループ化します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化されます。こうして階層が作成され、傾向の分析、隠れた相関関係の発見が行われます。

このメソッドは、指定したケースを含んでいる可能性が最も高いセグメントの名前を返します。ユーザーがこのセグメントに属している確率を返すように設定することもできます。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってセグメント モデルを読み込んでから、このメソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pvarProbability パラメータおよび pbstrSegment パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

PredictorClient オブジェクト


IPredictorClient::get_fpRecommendScore

読み取り専用の fpRecommendScore プロパティは推奨スコアを返します。この推奨スコアは、予測モデルから返されたランク付き推奨リストの品質を測定するものです。

定義

Get メソッド :

HRESULT IPredictorClient::get_fpRecommendScore(
float* pVal
);

パラメータ

pVal

[out, retval] 推奨スコアを返すために使う Floatへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

推奨スコアを使って、予測モデルへの入力属性のテストと調整を行います。モデルの構築に使った入力ケースから取得された既知のケースは、トランザクションを無作為に 1 つ選んで削除した予測モデルに対してテストされます。削除されたトランザクションがリストにあると、推奨リストが返され、予測が成功したと見なされます。スコアは、モデルが正しいケースである確率をパーセンテージで表しています。

推奨スコアは、モデルが構築されると、データの一部をテスト データとして自動計算されます。テストのためにサンプリングするデータの量は、[測定精度サンプル比率] として指定されます。詳細については、「新しい分析モデルを構築する」および「PredictorModels テーブル」を参照してください。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使って予測モデルを読み込んでから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict


IPredictorClient::SaveModelToFile

このメソッドは、現在読み込まれているモデルをファイルに保存するために使います。

定義

HRESULT IPredictorClient::SaveModelToFile(
BSTR sFilePath
);

パラメータ

sFilePath

[in] 呼び出しプロセスの作業ディレクトリからの相対パス、ファイル名、および拡張子が含まれた BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ファイルの保存先であるディレクトリは、呼び出しを行う前に既に存在している必要があります。

LoadModelFromDB メソッドまたは LoadModelFromFile メソッドを使ってモデルを読み込んでから、SaveModelToFile メソッドを使うようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

IPredictorClient::LoadModelFromFile

IPredictorClient::LoadModelFromDB


IPredictorClient::get_sSiteName/put_sSiteName

読み取りと書き込みが可能な sSiteName プロパティには、PredictorClient オブジェクトが実行されるサイトの名前が含まれています。

定義

Get メソッド :

HRESULT IPredictorClient::get_sSiteName(
BSTR* psSiteName
);

Put メソッド :

HRESULT IPredictorClient::put_ sSiteName(
BSTR psSiteName
);

パラメータ

psSiteName

[in] プロパティを入力する場合は、PredictorClient オブジェクトが実行されるサイトの名前を含む BSTR です。
[out, retval] プロパティを取得する場合は、PredictorClient オブジェクトが実行されているサイトの名前を返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、正しく終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティを global.asa ファイルの On_Start メソッドで設定し、サイトで集計されるパフォーマンス監視カウンタをログに記録するようにします。パフォーマンス カウンタは、指定したコンピュータに固有です。複数のサイトが同じ Web サーバー上で実行されている場合、カウンタはすべてのサイトにおける合計値を示します。サイト名を指定すると、ほかのサイトと区別され、そのサイトだけのカウンタが示されます。

次のカウンタが利用できます。

  • サイトが初期化されてから作成された予測の総数

  • 予測 1 つあたりの平均時間

  • ファイルからのモデル読み込みの総数

  • データベースからのモデル読み込みの総数

Microsoft Windows 2000 でカウンタにアクセスするには、[コントロール パネル] の [管理ツール] をダブルクリックし、[パフォーマンス] をダブルクリックします。カウンタには、「Windows 2000 Platform SDK」で説明しているパフォーマンス API を使ってプログラムによるアクセスを行うこともできます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

psSiteName パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorClient オブジェクト

IPredictorClient::Predict


PredictorServiceAdmin オブジェクト

このオブジェクトは、利用できる分析モデルとモデル構成のリスト、および前回予測リソースが開始された日付を取得するために使います。

ProgID: | Commerce.PredictorServiceAdmin (外部作成可能)
COM クラス名: | PredictorServiceAdmin
COM インターフェイス名: | IPredictorServiceAdmin
インターフェイス ID 定数: | IID_IPredictorServiceAdmin
ヘッダー ファイル: | PredictorService.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Service Type Library
EXE 名: | PredServ.exe
スレッド モデル: | 両方

C++ でオブジェクトのプロパティにアクセスするには、IPredictorServiceAdmin インターフェイスを使います。

次の表は、PredictorServiceAdmin オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
dateLastStarted | Date | 前回予測リソースが開始された日付を取得します。 このプロパティは読み取り専用です。
slModelConfigs | ISimpleList | 現在利用できるモデル構成のリストを取得します。 このプロパティは読み取り専用です。
slModels | ISimpleList | 現在利用できるモデルのリストを取得します。 このプロパティは読み取り専用です。

解説

PredictorServiceSiteAdmin オブジェクトには、モデルとモデル構成を維持するためのメソッドが用意されています。PredictorClient オブジェクトは、適切なモデルを読み込み、実際の予測を作成します。新しいモデルを生成するには、PredModelBuilder オブジェクトを使います。

関連項目

予測オブジェクト

予測スキーマ

PredictorClient オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


IPredictorServiceAdmin::get_dateLastStarted

dateLastStarted プロパティは読み取り専用の Date で、前回予測リソースが開始された日付を示します。

定義

HRESULT IPredictorServiceAdmin::get_dateLastStarted(
DATE* pdateVal
);

パラメータ

pdateVal

[out, retval] 前回予測リソースが開始された日付を指定する Date へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pDateVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceAdmin::get_slModelConfigs

slModelConfigs プロパティは読み取り専用の SimpleList オブジェクトで、利用できるモデル構成に関する情報を含んでいます。

定義

HRESULT IPredictorServiceAdmin::get_slModelConfigs(
ISimpleList** ppslVal
);

パラメータ

ppslVal

[out, retval] モデル構成のリストを返すために使う、SimpleList オブジェクトの ISimpleList インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SimpleList オブジェクトである slModelConfigs には、各モデル構成の Dictionary オブジェクトが含まれています。モデル構成には、モデルの構築に使われる情報が含まれています。次の表は、モデル構成プロパティの名前である Dictionary オブジェクトのキーを示しています。

キー名 | 種類 | 説明
DWResourceName | BSTR | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | BSTR | モデル構成の名前です。
SiteName | BSTR | 予約されています。ディクショナリに表示されない可能性があります。

モデル構成を削除するには、PredictorServiceSiteAdmin オブジェクトの DeleteModelConfig メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppslVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceAdmin::get_slModels

slModels プロパティは読み取り専用の SimpleList オブジェクトで、利用できるモデルに関する情報を含んでいます。

定義

HRESULT IPredictorServiceAdmin::get_slModels(
ISimpleList** ppslVal
);

パラメータ

ppslVal

[out, retval] モデルに関する情報を返すために使う、SimpleList オブジェクトの ISimpleList インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SimpleList オブジェクトである slModels には、利用できる各モデルの Dictionary オブジェクトが含まれています。モデルは、そのコピーが存在し、現在構築中でない場合に利用できます。Dictionary オブジェクトのキーはモデル プロパティの名前で、これらは PredictorModels テーブルに一覧表示されています。次の表は、これらのキーのうちの一部を示しています。残りのキーについては、「PredictorModels テーブル」を参照してください。

キー名 | 種類 | 説明
DWResourceName | BSTR | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | BSTR | モデルを構築するために使われるモデル構成の名前です。
ModelName | BSTR | モデルの名前です。

新しいモデルを作成するには、PredModelBuilder オブジェクトの Start メソッドを使います。

モデルを削除するには、PredictorServiceSiteAdmin オブジェクトの DeleteModel メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppslVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredictorServiceSiteAdmin オブジェクト

このオブジェクトは、分析モデルとモデル構成を管理するために使います。

ProgID: | Commerce.PredictorSiteAdmin (外部作成可能)
COM クラス名: | PredictorServiceSiteAdmin
COM インターフェイス名: | IPredictorServiceSiteAdmin
インターフェイス ID 定数: | IID_IPredictorServiceSiteAdmin
ヘッダー ファイル: | PredictorService.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Service Type Library
EXE 名: | PredServ.exe
スレッド モデル: | 両方

C++ で PredictorServiceSiteAdmin オブジェクトのプロパティとメソッドにアクセスするには、IPredictorServiceSiteAdmin インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、PredictorServiceSiteAdmin オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
lCaseCount | long | モデル構成によって使われるケースの数を取得します。 このプロパティは読み取り専用です。
dModelInfo | IDictionary | 指定したモデルに関する情報を取得します。 このプロパティは読み取り専用です。
SegmentLabels | Variant | セグメント モデルのセグメント ラベルを格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、PredictorServiceSiteAdmin オブジェクトのメソッドを示しています。

メソッド | 説明
DeleteModel | 指定した予測モデルを削除します。
DeleteModelConfig | 指定したモデル構成を削除します。
GenerateSegmentList | セグメントのメンバのリストを生成します。
Init | サーバーを初期化します。
RenameModel | 予測モデルの名前を変更します。
RenameModelConfig | モデル構成の名前を変更します。

解説

分析モデルは、データ内の属性における依存関係を要約します。モデル構成には、分析モデルを構築するために使われる情報が含まれています。

利用できる分析モデルには 2 種類あります。予測モデルは、ランク付き推奨リストの作成、および欠落しているユーザー プロファイル属性の入力のために使います。セグメント モデルは、類似したユーザーをユーザー セグメントにグループ化するために使います。

PredictorServiceAdmin オブジェクトには、利用できるモデルとモデル構成のリストが含まれています。PredictorClient オブジェクトは、適切なモデルを読み込み、実際の予測を作成します。新しいモデルの生成は、PredModelBuilder オブジェクトによって制御されます。

関連項目

予測オブジェクト

予測スキーマ

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


IPredictorServiceSiteAdmin::get_lCaseCount

lCaseCount プロパティは読み取り専用の long で、モデル構成によって使われるケースの数を含んでいます。

定義

HRESULT IPredictorServiceSiteAdmin::get_lCaseCount(
BSTR sConfigName,
long* plCaseCount
);

パラメータ

sConfigName

[in] モデル構成の名前を含む BSTR です。

plCaseCount

[out, retval] 指定したモデル構成のケースの数を含む long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ケースは、特定のユーザーに関する既知の情報です。この情報には、ユーザー プロファイル データ、購入履歴、URL クリック履歴、およびユーザーに関連するそのほかのデータがあります。モデルの構築に使われたケースの数は、そのモデルの精度に影響します。通常、モデルで使用できるケースが多いほど、予測の精度は上がります。ただし、構成で使うケースが多いほど、モデルの構築にはより多くの時間が必要になり、また、ケースの数が多くなりすぎる (一般的には 50,000 ケース以上) と、精度がそれほど上がらなくなります。

利用できるモデル構成のリストを取得するには、PredictorServiceAdmin オブジェクトの slModelConfigs プロパティを使います。

Init メソッドを使ってデータ ウェアハウスに接続してから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

plCaseCount パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceSiteAdmin::DeleteModel

このメソッドは、指定したモデルを削除するために使います。

定義

HRESULT IPredictorServiceSiteAdmin::DeleteModel(
BSTR sModelName
);

パラメータ

sModelName

[in] 削除するモデルの名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

利用できるモデルのリストを取得するには、PredictorServiceAdmin オブジェクトの slModels プロパティを使います。

モデルを削除すると、データ ウェアハウスの PredictorModels テーブルにあるそのエントリも削除されます。

モデル名として空の文字列を渡すと、引数無効のエラーが返されます。

Init メソッドを使ってデータ ウェアハウスに接続してから、DeleteModel メソッドを呼び出すようにしてください。

新しいモデルを作成するには、PredModelBuilder オブジェクトの Start メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceSiteAdmin::DeleteModelConfig

このメソッドは、指定したモデル構成を削除するために使います。

定義

HRESULT IPredictorServiceSiteAdmin::DeleteModelConfig(
BSTR sModelConfigName
);

パラメータ

sModelConfigName

[in] 削除するモデル構成の名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

利用できるモデル構成のリストを取得するには、PredictorServiceAdmin オブジェクトの slModelConfigs プロパティを使います。

モデル構成名として空の文字列を渡すと、引数無効のエラーが返されます。

モデル構成を削除すると、データ ウェアハウスの PredictorModelCfgs テーブルおよび PredictorDataTables テーブルにあるそのエントリも削除されます。そのモデル構成が参照する Attributes テーブルも同様に削除されますが、ケース データは削除されません。

注意

  • Microsoft Commerce Server 2000 のこのリリースでは、新しいモデル構成を作成するには、データ ウェアハウスのテーブルを直接変更します。API 関数は提供されていません。

Init メソッドを使ってデータ ウェアハウスに接続してから、DeleteModelConfig メソッドを呼び出すようにしてください。COM プロパティとメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceSiteAdmin::get_dModelInfo

dModelInfo プロパティは読み取り専用の Dictionary オブジェクトで、指定したモデルに関する情報を含んでいます。

定義

HRESULT IPredModelBuilder::get_dModelInfo(
BSTR sModelName,
IDictionary** ppdictInfo
);

パラメータ

sModelName

[in] モデルの名前を含む BSTR です。

ppdictInfo

[out, retval] 指定したモデルの情報を取得するために使う Dictionary オブジェクトの IDictionary インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。IErrorInfo インターフェイスは、より詳細なエラー情報を提供します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

返された Dictionary オブジェクトのキーはモデル プロパティの名前で、これらはPredictorModels テーブルに一覧表示されています。次の表は、これらのキーのうちの一部を示しています。残りのキーについては、「PredictorModels テーブル」を参照してください。

キー名 | 種類 | 説明
DWResourceName | BSTR | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | BSTR | モデルを構築するために使われるモデル構成の名前です。
ModelName | BSTR | モデルの名前です。

Init メソッドを使ってデータ ウェアハウスに接続してから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppdictInfo パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceSiteAdmin::GenerateSegmentList

このメソッドは、セグメントのメンバのリストを生成するために使います。

定義

HRESULT IPredictorServiceSiteAdmin::GenerateSegmentList(
 BSTR sLMConn,
BSTR sTableName,
BSTR sModelName,
BSTR sSegmentName
double fpMinProbability

);

パラメータ

sLMConn

[in] ListManager オブジェクトに対する接続情報を指定する BSTR です。

sTableName

[in] セグメント メンバのリストを格納するテーブルの名前を指定する BSTR です。

sModelName

[in] 使用するセグメント モデルの名前を指定する BSTR です。

sSegmentName

[in] エクスポートするセグメントの名前を指定する BSTR です。

fpMinProbability

[in] セグメント メンバに関連付けられた、そのセグメント メンバがエクスポートされる最小の確率を指定する Double です。有効な範囲は 0 ～ 1 です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは ListManager オブジェクトで使うために用意されているものなので、独立して呼び出すことはできません。ListManager オブジェクトの CreateFromSegment メソッドがこのメソッドを呼び出し、リストを作成します。詳細については、「IListManager::CreateFromSegment」を参照してください。

モデル名として空の文字列を渡すと、空のリストが返されます。

セグメント名である sSegmentName が存在しない場合、またはそのセグメント名がセグメント グループの名前である場合は、空のリストが生成されます。この場合、エラーは返されません。

Init メソッドを使ってデータ ウェアハウスに接続してから、GenerateSegmentList メソッドを呼び出すようにしてください。

セグメント モデルは、ユーザーのグループを、類似したユーザー プロパティを持つユーザー セグメントに分類します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化されます。

各ユーザーには、各セグメントへのメンバシップの確率が割り当てられます。ユーザーに割り当てられた、すべてのセグメントへの確率の合計は 1 です。ユーザーの特定のセグメントへのメンバシップの確率が fpMinProbability を超える場合、そのユーザーはエクスポート リストに含められます。

fpMinProbability 属性で指定される値より大きい確率が割り当てられているセグメント レベルにいるすべてのメンバ (個々のケース) は、指定したテーブルに格納され、その後リスト マネージャにエクスポートされます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceSiteAdmin::Init

このメソッドは、データ ウェアハウスへの接続を初期化するために使います。

定義

HRESULT IPredictorServiceSiteAdmin::Init(
BSTR sSiteName,
BSTR sDWConnStr
);

パラメータ

sSiteName

[in] 使われていない BSTR です。空の文字列を渡します。

sDWConnStr

[in] データ ウェアハウスの接続文字列を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

モデルとモデル構成は、データ ウェアハウスのテーブルに格納されています。

データ ウェアハウスへの接続を初期化してから、PredictorServiceSiteAdmin オブジェクトのほかのプロパティやメソッドを呼び出すようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

PredictorClient オブジェクト


IPredictorServiceSiteAdmin::RenameModel

このメソッドは、モデルの名前を変更するために使います。

定義

HRESULT IPredictorServiceSiteAdmin::RenameModel(
BSTR sOldModelName,
BSTR sNewModelName
);

パラメータ

sOldModelName

[in] 古いモデル名を含む BSTR です。

sNewModelName

[in] 新しいモデル名を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

古い名前を持つモデルが見つからないか、新しい名前を持つモデルが既に存在します。

解説

モデルの名前を変更するときは、PredictorClient オブジェクトの LoadModelFromDB メソッドを使ってそのモデルを読み込んでいるサイトを、すべて更新してください。

名前の変更は、データ ウェアハウスの PredictorModels テーブル内のモデル エントリに対して行われます。

利用できるモデルのリストを取得するには、PredictorServiceAdmin オブジェクトの slModels プロパティを使います。モデル構成の名前を変更するには、RenameModelConfig メソッドを使います。

モデル名として空の文字列を渡すと、引数無効のエラーが返されます。

Init メソッドを使ってデータ ウェアハウスに接続してから、RenameModel メソッドを呼び出すようにしてください。COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceSiteAdmin::RenameModelConfig

このメソッドは、モデル構成の名前を変更するために使います。

定義

HRESULT IPredictorServiceSiteAdmin::RenameModelConfig(
BSTR sOldModelConfigName,
BSTR sNewModelConfigName
);

パラメータ

sOldModelConfigName

[in] 古いモデル構成の名前を含む BSTR です。

sNewModelConfigName

[in] 新しいモデル構成の名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

古い名前を持つモデル構成が見つからないか、新しい名前を持つモデル構成が既に存在します。

解説

名前の変更は、データ ウェアハウスの PredictorModelCfgs テーブル内のモデル構成エントリに対して行われます。

モデル構成のリストを取得するには、PredictorServiceAdmin オブジェクトの slModelsConfigs プロパティを使います。モデルの名前を変更するには、RenameModel メソッドを使います。

モデル構成名として空の文字列を渡すと、引数無効のエラーが返されます。

Init メソッドを使ってデータ ウェアハウスに接続してから、RenameModelConfig メソッドを呼び出すようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


IPredictorServiceSiteAdmin::get_SegmentLabels, put_SegmentLabels

SegmentLabels プロパティは読み取りと書き込みが可能な Variant で、指定したセグメント モデルのラベルを含んでいます。

定義

Get メソッド :

HRESULT IPredictorServiceSiteAdmin::get_SegmentLabels(
BSTR sModelName,
long lDepth,
VARIANT* pvarsaLabels
);

Put メソッド :

HRESULT IPredictorServiceSiteAdmin::put_SegmentLabels(
BSTR sModelName,
long lDepth,
VARIANT pvarsaLabels
);

パラメータ

sModelName

[in] セグメント モデルの名前を含む BSTR です。

lDepth

[in] ラベルを割り当てるまたは取得するセグメント階層の深さを指定する long です。

pvarsaLabels

[in] プロパティを入力する場合は、セグメント ラベルを含む Variant です。
[out, retval] プロパティを取得する場合は、セグメント ラベルを返すために使う Variant へのポインタです。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

セグメント モデルは、ユーザーのグループを、類似したユーザー プロパティを持つユーザー セグメントに分類します。類似したセグメントは、さらに上のレベルでセグメントの集合にグループ化され、それによって階層が作成されます。最初に作成されたとき、セグメントには Segment4 や Group2 などの汎用的なラベルが付けられています。異なるグループを区別しやすいように、このラベルの名前を変更します。

lDepth パラメータの有効な値は -1 (すべてのセグメントを返す) と 2 以上です。

Init メソッドを使ってデータ ウェアハウスに接続してから、このプロパティにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pvarsaLabels パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト


PredModelBuilder オブジェクト

このオブジェクトは、複数の優先された構築スレッドによって、分析モデルの作成を制御するために使います。

ProgID: | Commerce.PredictorModelBuilder (外部作成可能)
COM クラス名: | PredModelBuilder
COM インターフェイス名: | IPredModelBuilder
インターフェイス ID 定数: | IID_IPredModelBuilder
ヘッダー ファイル: | PredictorService.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Predictor Service Type Library
EXE 名: | PredServ.exe
スレッド モデル: | 両方

C++ で PredModelBuilder オブジェクトのプロパティとメソッドにアクセスするには、IPredModelBuilder インターフェイスを使います。

次の表は、PredModelBuilder オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
dModelInfo | IDictionary | 指定した実行中のモデルに関する情報を取得します。 このプロパティは読み取り専用です。
Priority | Enum | 構築スレッドの優先度を格納します。 このプロパティは読み取りと書き込みが可能です。
slRunningModels | ISimpleList | 実行中のモデルのリストを取得します。 このプロパティは読み取り専用です。
Status | Enum | 構築スレッドの状態を示します。 このプロパティは読み取り専用です。

次の表は、PredModelBuilder オブジェクトのメソッドを示しています。

メソッド | 説明
Pause | 実行中の構築スレッドを一時停止します。
Resume | 一時停止した構築スレッドを再開します。
Start | 構築のためのスレッド識別子を設定し、新しい構築スレッドを開始します。
Stop | 実行中の構築スレッドを停止します。
StopAllBuilds | 現在実行中の構築スレッドをすべて停止します。

解説

Microsoft Commerce Server 2000 で利用できる分析モデルには、2 種類あります。1 つは分析モデルで、これは判断ツリー (従属関係ネットワークといいます) の集合であり、宣伝対象商品などのランク付き推奨リストを作成したり、年齢などの欠落したユーザー プロファイル情報を入力するために使います。もう 1 つはセグメント モデルで、これはクラスタリング (セグメント化) の処理に基づくものであり、類似したユーザーをユーザー セグメントにグループ化するために使います。

分析モデルは、モデル構成に関連付けられています。1 つのモデル構成に複数の分析モデルを関連付けることができます。モデル構成には、分析モデルを構築するために使われる属性とケースの情報が含まれています。ケースは、ユーザーに関する既知の情報の集合です。たとえばプロファイル データやトランザクション データなどがあります。一般的なモデルでは 10,000 から 20,000 のケースを使い、その結果、サイズは 100 KB から 10 MB になります。

PredictorServiceAdmin オブジェクトには、利用できる分析モデルとモデル構成のリストが含まれています。PredictorServiceSiteAdmin オブジェクトには、分析モデルとモデル構成を維持するためのメソッドが用意されています。PredictorClient オブジェクトは、適切な分析モデルを読み込み、実際の予測を作成します。

分析モデルの生成は、個々の構築スレッドで行われます。PredModelBuilder オブジェクトの単一のインスタンスで、複数の同時構築スレッドを制御します。構築スレッドで問題が発生すると、そのスレッドは一時停止するか、停止します。

関連項目

予測オブジェクト

予測スキーマ

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

予測リソースの実行


IPredModelBuilder::get_dModelInfo

dModelInfo プロパティは読み取り専用の Dictionary オブジェクトで、指定した実行中のモデルに関する情報を含んでいます。

定義

HRESULT IPredModelBuilder::get_dModelInfo(
long lBuildID,
IDictionary** ppdictVal
);

パラメータ

lBuildID

[in] 特定の構築スレッドを選択するために使う構築識別子を含む long です。

ppdictVal

[out, retval] Dictionary オブジェクトの IDictionary インターフェイスへのポインタのアドレスです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。IErrorInfo インターフェイスは、より詳細なエラー情報を提供します。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このディクショナリのキーは、実行中のモデルの構築パラメータです。構築パラメータの詳細については、「PredictorModels テーブル」を参照してください。

Start メソッドを使って構築スレッドを初期化してから、dModelInfo プロパティを使ってスレッドにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppdictVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::Stop


IPredModelBuilder::Pause

このメソッドは、モデル構築スレッドを中断するために使います。

定義

HRESULT IPredModelBuilder::Pause(
long lBuildID
);

パラメータ

lBuildID

[in] 構築スレッド識別子を含む long です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

構築されたモデルが初期化されると、構築スレッド識別子が Start メソッドによって返されます。

一時停止した構築スレッドを再開するには、Resume メソッドを使います。

構築スレッドの実行を停止するには、Stop メソッドを使います。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

構築されたモデルの現在の状態を確認するには、Status プロパティを使います。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::Resume

IPredModelBuilder::Stop

IPredModelBuilder::get_Status

IPredModelBuilder::get_Priority/put_Priority


IPredModelBuilder::get_Priority/put_Priority

Priority プロパティは読み取りと書き込みが可能な ePredBuildPriority 列挙型です。このプロパティには、構築スレッドの優先度が格納されます。

定義

Get メソッド:

HRESULT IPredModelBuilder::get_Priority(
long lBuildID,
ePredBuildPriority* pePriority
);

Put メソッド :

HRESULT IPredModelBuilder::put_Priority(
long lBuildID,
ePredBuildPriority pePriority
);

パラメータ

lBuildID

[in] 構築識別子を含む long です。

pePriority

[in] プロパティを入力する場合は、ePredBuildPriority で列挙された優先度レベルです。
[out, retval] プロパティを取得する場合は、ePredBuildPriority で列挙された構築の優先度レベルへのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

構築が要求されるタイミングに応じて、このプロパティを変更して構築スレッドの優先度を高くしたり低くしたりします。

次の表は、ePredBuildPriority で列挙された優先度レベルの値を定義しています。スレッドの絶対優先度はサポートされていません。これらのプロパティ値は、起動されているスレッドにおける相対的な値です。

名前 | 値 | 説明
PriLowest | -2 | 最も低い優先度です。
PriBelowNormal | -1 | 低めの優先度です。
PriNormal | 0 | 標準の優先度です。
PriAboveNormal | 1 | 高めの優先度です。
PriHighest | 2 | 最も高い優先度です。

Start メソッドを使って構築スレッドを初期化してから、Priority プロパティにアクセスするようにしてください。

特定の構築スレッドを早く実行する必要がある場合は、Pause メソッドを使って、同等以上の優先度を持つスレッドの実行を一時的に中断します。スレッドは、それぞれの優先度レベルにおいて、ラウンド ロビン方式で実行されます。優先度が低いスレッドの実行は、より高い優先度を持つスレッドの実行が完了してから開始されます。

スレッドのスケジュール設定の詳細については、Microsoft Developer Network (MSDN) を "SetThreadPriority" で検索し、SetThreadPriority メソッドに関する説明を参照してください。

Priority メソッドでは、THREAD_PRIORITY_REALTIME 優先度をサポートしていません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pePriority パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::Pause


IPredModelBuilder::Resume

このメソッドは、Pause メソッドで一時停止した構築スレッドの実行を再開するために使います。

定義

HRESULT IPredModelBuilder::Resume(
long lBuildID
);

パラメータ

lBuildID

[in] 一時停止した構築スレッドの識別子を含む long です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

構築されたモデルが初期化されると、構築スレッド識別子が Start メソッドによって返されます。

構築スレッドが実行中か一時停止しているかを確認するには、Status プロパティを使います。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::Pause

IPredModelBuilder::Stop

IPredModelBuilder::get_Status


IPredModelBuilder::get_slRunningModels

slRunningModels プロパティは読み取り専用の SimpleList オブジェクトで、アクティブな (実行中または一時停止の) モデル構築スレッドに関する情報を含んでいます。

定義

HRESULT IPredModelBuilder::get_slRunningModels(
ISimpleList** ppslVal
);

パラメータ

ppslVal

[out, retval] アクティブなモデル構築スレッドに関する情報を返すために使う、SimpleList オブジェクトの ISimpleList インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SimpleList オブジェクトである slRunningModels には、実行中の各モデルの Dictionary オブジェクトが含まれています。Dictionary オブジェクトのキーはモデル プロパティの名前で、これらは PredictorModels テーブルに一覧表示されています。ただし、構築の正常終了に依存するプロパティはこのテーブルに含まれていません。使用できないプロパティは、DateCreated、DataFitScore、RecommendScore、および BuildTime です。構築が正常に終了すると、これらのプロパティは、PredictorServiceAdmin オブジェクトの slModels プロパティまたは PredictorServiceSiteAdmin オブジェクトの dModelInfo プロパティで使えるようになります。次の表は、Dictionary オブジェクトに含まれるキーの一部を示しています。残りのキーについては、「PredictorModels テーブル」を参照してください。

キー名 | 種類 | 説明
DWResourceName | BSTR | モデル構成を定義するデータ ウェアハウス リソースの名前です。
ModelCfgName | BSTR | モデルを構築するために使われるモデル構成の名前です。
BuildID | long | 構築スレッドの ID です。
ModelName | BSTR | モデルの名前です。

特定のモデル構築スレッドの状態を確認するには、Status プロパティを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppslVal パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

IPredictorServiceAdmin::get_slModels

IPredictorServiceSiteAdmin::get_dModelInfo

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::Stop

IPredModelBuilder::StopAllBuilds

IPredModelBuilder::get_Status


IPredModelBuilder::Start

このメソッドは、新しいモデル構築スレッドを作成するために使います。

定義

HRESULT IPredModelBuilder::Start(
BSTR sDWConnStr,
BSTR sSiteName,
BSTR sConfigName,
BSTR sModelName,
BSTR sXMLBuildParams,
VARIANT_BOOL bOverWrite,
long* plBuildID
);

パラメータ

sDWConnStr

[in] データ ウェアハウスへの接続情報を含む BSTR です。

sSiteName

[in] 使われていない BSTR です。空の文字列を渡します。

sConfigName

[in] モデル構成の名前を含む BSTR です。

sModelName

[in] モデルの名前を含む BSTR です。

sXMLBuildParams

[in] XML 形式でモデルのランタイム構築パラメータを含む BSTR です。

bOverWrite

[in] モデルが既に存在する場合、それを上書きするかどうかを示す VARIANT_BOOL です。

plBuildID

[out, retval] 新しい構築スレッドの識別子を含む long へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

上書きフラグが False に設定され、かつ指定したモデルが既に存在しているか、スレッドの構築に失敗しました。

解説

sXMLBuildParams パラメータに含まれているランタイム構築パラメータの詳細については、「PredictorModels テーブル」を参照してください。sXMLBuildParams パラメータは、構築パラメータを含んでいる Dictionary オブジェクトの IPersistXML インターフェイスの SaveXML メソッドの戻り値として渡される必要があります。この方法の例については、「新しいモデルを構築するためのコード」を参照してください。

データ ウェアハウスに接続し、モデル構成にアクセスします。

サイト名を PredModelBuilder オブジェクトに関連付けると、パフォーマンス監視カウンタのログをそのサイトで集計できるようになります。詳細については、PredictorClient オブジェクトに関する説明を参照してください。

構築スレッドへのその後のアクセスにはすべて、返された識別子を使います。

同じ名前を持つモデルが既に存在していて、上書きパラメータが False の場合、Start メソッドは失敗します。

構築スレッドの優先度は、Priority プロパティを使って設定します。

構築スレッドの状態を確認するには、Status プロパティを使います。

現在実行中の構築スレッドを停止するには、Stop メソッドを使います。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

構築スレッドの実行を一時的に中断するには、Pause メソッドを使います。中断したスレッドの実行を再開するには、Resume メソッドを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

plBuildID パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Pause

IPredModelBuilder::Resume

IPredModelBuilder::Stop

IPredModelBuilder::get_Status

IPredModelBuilder::get_Priority/put_Priority

PredictorClient オブジェクト


IPredModelBuilder::get_Status

Status プロパティは読み取り専用の ePredBuildStatus 列挙型です。このプロパティは、モデル構築スレッドの現在の状態を示します。

定義

HRESULT IPredModelBuilder::get_Status(
long lBuildID,
ePredBuildStatus* peStatus
);

パラメータ

lBuildID

[in] 特定の構築スレッドを選択するために使う構築識別子を含む long です。

peStatus

[out, retval] 指定したスレッドの状態を示す ePredBuildStatus 列挙型へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。IErrorInfo インターフェイスは、より詳細なエラー情報を提供します。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

次の表は、ePredBuildStatus で列挙された構築状態の値を定義しています。

名前 | 値 | 説明
PredBldRunning | 0 | 現在実行中です。
PredBldPaused | 1 | 一時停止しています。
PredBldShuttingDown | 2 | Stop メソッドに応答して、終了中です。

構築が正常に終了してもしなくても、BuildID は無効になります。終了した構築の状態の情報については、イベント ログで確認してください。

Start メソッドを使って構築スレッドを初期化してから、Status プロパティを使ってスレッドにアクセスするようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

peStatus パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::Stop


IPredModelBuilder::Stop

このメソッドは、特定のモデル構築スレッドの実行を停止するために使います。

定義

HRESULT IPredModelBuilder::Stop(
long lBuildID
);

パラメータ

lBuildID

[in] モデル構築スレッドを識別する long です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

E_FAIL

構築 ID が無効、または構築スレッドの状態がアクティブ (実行中と一時停止中のどちらか) ではありません。

解説

構築されたモデルが初期化されると、構築スレッド識別子が Start メソッドによって返されます。

Stop メソッドは、データ モデラに対して、指定した構築スレッドが終了可能になった時に、そのスレッドを停止する旨を通知するフラグを設定します。データ モデラは、進捗の情報が更新されるたびにフラグを確認します。フラグが設定されていると、データ モデラはスレッドの実行を終了し、必要なクリーンアップ操作を行います。

構築スレッドの現在の状態にアクセスするには、Status プロパティを使います。データ モデラによるスレッドの終了がまだ完了していない場合、その構築スレッドの状態は PredBldShuttingDown です。

スレッドが終了すると、構築識別子は有効な構築スレッドを示さなくなります。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

PredModelBuilder オブジェクトに関連付けられているすべての構築スレッドの実行を停止するには、StopAllBuilds メソッドを使います。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::get_Status

IPredModelBuilder::StopAllBuilds


IPredModelBuilder::StopAllBuilds

このメソッドは、PredModelBuilder オブジェクトに関連付けられているすべてのモデル構築スレッドの実行を停止するために使います。

定義

HRESULT IPredModelBuilder::StopAllBuilds(
);

パラメータ

なし。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

StopAllBuilds メソッドは、各構築スレッドの実行が終了可能になった時に、それを停止する旨を通知するフラグを設定します。構築スレッドに対してフラグが設定されていると、そのスレッドのデータ モデラはスレッドの実行を終了し、必要なクリーンアップ操作を行います。

構築スレッドの現在の状態にアクセスするには、Status プロパティを使います。データ モデラによるスレッドの終了がまだ完了していない場合、モデラに対するそのスレッドの状態は PredBldShuttingDown です。スレッドが終了すると、構築識別子は有効な構築スレッドを示さなくなります。停止したスレッドを再開することはできません。再開するには、Start メソッドを使ってスレッドを再起動します。

特定の構築スレッドを停止するには、Stop メソッドを使います。

関連項目

PredModelBuilder オブジェクト

IPredModelBuilder::Start

IPredModelBuilder::get_Status

IPredModelBuilder::Stop


Product オブジェクト

このオブジェクトは、カタログ内の商品やバリエーションを処理するために使います。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | Product
COM インターフェイス名: | IProduct
インターフェイス ID 定数: | IID_IProduct
ヘッダー ファイル: | Catalog.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

C++ で Product オブジェクトのプロパティとメソッドにアクセスするには、IProduct インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、Product オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
AncestorCategories | _Recordset | この商品の上に存在し、また直接間接を問わず、階層内にこの商品を持つカテゴリ名のレコードセットを含みます。 このプロパティは読み取り専用です。
CatalogName | BSTR | この Product オブジェクトがメンバになっているカタログの名前を含みます。 このプロパティは読み取り専用です。
GetProductProperties | _Recordset | この商品のプロパティ値を格納するレコードセットを含みます。 このプロパティは読み取り専用です。
ParentCategories | _Recordset | この商品が直接属するカテゴリのレコードセットを含みます。 このプロパティは読み取り専用です。
PricingCategory | BSTR | この商品の価格カテゴリの名前を含みます。 このプロパティは読み取りと書き込みが可能です。
ProductID | BSTR | この商品の一意の ID を含みます。 このプロパティは読み取り専用です。
RelatedCategories | _Recordset | この商品に関連するカテゴリすべてを記述するレコードセットを含みます。 このプロパティは読み取り専用です。
RelatedProducts | _Recordset | この商品に関連する商品すべてを記述するレコードセットを含みます。 このプロパティは読み取り専用です。
Variants | _Recordset | この商品のバリエーションすべてを記述するレコードセットを含みます (存在する場合)。 このプロパティは読み取り専用です。

次の表は、Product オブジェクトのメソッドを示しています。

メソッド | 説明
AddRelationshipToCategory | この商品から指定したカテゴリへの関連付けを追加します。
AddRelationshipToProduct | この商品から指定した別の商品への関連付けを追加します。
CreateVariant | 新しい商品バリエーションを作成します。
DeleteVariant | 商品バリエーションを削除します。
GetVariantProperties | 指定した商品バリエーションのプロパティを返します。
RemoveRelationshipToCategory | この商品と指定したカテゴリとの指定した関連付けを削除します。
RemoveRelationshipToProduct | この商品と指定した商品との指定した関連付けを削除します。
SetProductProperties | この商品とそのすべてのバリエーションにプロパティを設定します。
SetVariantProperties | この商品のバリエーションにプロパティを設定します。

解説

Product オブジェクトは従属オブジェクトです。IProduct インターフェイスへのポインタを取得するには、次のいずれかのメソッドを呼び出します。

  • IProductCatalog::CreateProduct

  • IProductCatalog::GetProduct


IProduct::AddRelationshipToCategory

このメソッドは、この商品から指定したカテゴリへの関連付けを追加するために使います。

定義

HRESULT IProduct::AddRelationshipToCategory(
BSTR strRelatedCategoryName,
BSTR strRelationshipName,
VARIANT strRelationshipDescription
);

パラメータ

strRelatedCategoryName

[in] 関連付けの追加先のカテゴリの名前を含む BSTR です。

strRelationshipName

[in] 関連付けの名前を含む BSTR です。

strRelationshipDescription

[in, optional] 指定すると、関連付けの記述を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。
E_CAT_INVALID_RELATION | 0x88980039 | 指定した関連付けは無効です。たとえば、カテゴリまたは商品をそれ自体に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | 0x88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | 0x88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_RELATIONSHIP_EXISTS | 0x88980033 | 指定した関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

新しい関連付けには名前が必要です。これは strRelationshipName パラメータで指定します。また、記述を含むように指定することもできます。これは strRelationshipDescription パラメータで指定します。

同じ商品とカテゴリの間に複数の関連付けを作成することができます。ただし、この場合、作成したそれぞれの関連付けには一意の名前を指定する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::AddRelationshipToProduct

IProduct::RemoveRelationshipToCategory


IProduct::AddRelationshipToProduct

このメソッドは、この商品から指定した商品への関連付けを追加するために使います。

定義

HRESULT IProduct::AddRelationshipToProduct(
VARIANT varRelatedProductID,
BSTR strRelationshipName,
VARIANT strRelationshipDescription
);

パラメータ

varRelatedProductID

[in] 関連付けられた商品の ID を含む Variant です。

strRelationshipName

[in] 関連付けの名前を含む BSTR です。

strRelationshipDescription

[in, optional] 指定すると、関連付けの記述を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_INVALID_RELATION | 0x88980039 | 指定した関連付けは無効です。たとえば、商品をそれ自体に関連付けることはできません。
E_CAT_INVALID_RELATION_DESC | 0x88980055 | 関連付けの説明が 256 文字を超えています。
E_CAT_INVALID_RELATION_NAME | 0x88980054 | 関連付けの名前が 128 文字を超えています。
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | 指定した商品 ID が存在しません。
E_CAT_RELATIONSHIP_EXISTS | 0x88980033 | 指定した関連付けは既に存在します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

新しい関連付けには名前が必要です。これは strRelationshipName パラメータで指定します。また、記述を含むように指定することもできます。これは strRelationshipDescription パラメータで指定します。

同じ 2 つの商品の間に複数の関連付けを作成することができます。ただし、この場合、それぞれの関連付けには一意の名前を指定する必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::AddRelationshipToCategory

IProduct::RemoveRelationshipToProduct


IProduct::get_AncestorCategories

AncestorCategories プロパティは読み取り専用の Recordset オブジェクトで、階層内でこの商品の上に存在するカテゴリの名前を含んでいます。

定義

HRESULT IProduct::get_AncestorCategories(
_Recordset** AncestorCategories
);

パラメータ

AncestorCategories

[out, retval] 先祖カテゴリを返すために使う a _Recordset オブジェクトへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CIRCULAR_REFERENCE | 0x88980037 | 循環参照はサポートされていません。循環参照は、カテゴリを階層内の複数の場所に配置します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

AncestorCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

AncestorCategories プロパティは、Name という 128 文字のフィールドを 1 つだけ持つ Recordset オブジェクトです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::get_ParentCategories


IProduct::get_CatalogName

CatalogName プロパティは読み取り専用の文字列で、この商品が属するカテゴリの名前を含んでいます。

定義

HRESULT IProduct::get_CatalogName(
BSTR* CatalogName
);

パラメータ

CatalogName

[out, retval] カタログ名を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CatalogName パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


IProduct::CreateVariant

このメソッドは、現在の商品の新しい商品バリエーションを作成するために使います。商品に固有の属性だけが、新しいバリエーションに設定されます。

定義

HRESULT IProduct::CreateVariant(
VARIANT varProductVariantID,
_Recordset** ppRSProductVariant
);

パラメータ

varProductVariantID

[in] 商品バリエーションの一意の ID を含む Variant です。

ppRSProductVariant

[out, retval] 商品バリエーションを返すために使う Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_BLANK_VARIANT | 0x8898004F | VariantID に空の値が指定されています。
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | 0x88980032 | このカタログは、商品バリエーションをサポートしていません。これはカタログが作成されたときに決定します。変更はできません。
E_CAT_INVALID_VARIANTID | 0x8898005C | VariantID の長さが 256 文字を超えています。
E_CAT_INVALIDVALUE_FOR_PROPERTY 0x88980038 商品プロパティのいずれかに、無効な値が指定されています。

このエラーの原因として次が考えられます。

  • レコードセットのいずれかの値が、プロパティの最低値/最高値属性の要件を満たしていません。

  • 列挙型プロパティの値が、有効な値のリストで定義されていない値です。

  • 文字列が、プロパティに定義された最大長を超えているか、または最小長を満たしていません。
E_CAT_INVALIDVALUE_FOR_VARIANTID 0x8898004D VariantID に無効な値が指定されています。

このエラーの原因として、VariantId の値が範囲外にあることが考えられます。
E_CAT_NO_VARIANTS_UNDER_PRODUCT | 0x88980051 | この商品はバリエーションをサポートしていません。レギュラー商品の下にバリエーションを作成できません。
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | この商品はカタログから削除されています。
E_CAT_VARIANT_EXISTS | 0x88980026 | 指定したバリエーションは既に存在しています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSProductVariant パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

varProductVariantID パラメータの値と種類は、商品バリエーションの一意の ID として指定されたプロパティで有効になっている必要があります。このプロパティ strProductVariantID は、カタログを作成するときに指定します。

作成済みのカタログがバリエーションをサポートしない場合、つまり strProductVariantID がカタログの作成時に指定されていない場合は、エラーが返されます。

正常に終了すると、メソッドは、ActiveX Data Object (ADO) レコードセットを返します。これには、新しい商品バリエーションに定義されたすべてのプロパティのフィールドと、oid という名前の Integer のフィールドが含まれています。oid フィールドは内部で使うもので、更新対象ではありません。返されたレコードセットは更新可能ですが、接続されていません。バリエーションのプロパティを変更するには、このレコードセットを SetVariantProperties メソッドに渡します。

商品バリエーションは、商品定義に格納されているプロパティを継承します。バリエーション固有でない商品プロパティの値は、Product オブジェクトからバリエーションに伝達されますが、バリエーション固有のプロパティは、それぞれのバリエーションに対して明示的に設定する必要があります。

バリエーション ID の値は、商品グループ内で一意である必要があります。同じカタログ内に、同じバリエーション ID を持つ商品バリエーションは 2 つ存在することができます。ただし、異なる商品グループに属していて、一意の商品識別子と一意のバリエーション識別子が異なっていることが条件です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::DeleteVariant

IProduct::SetVariantProperties


IProduct::DeleteVariant

このメソッドは、指定した商品バリエーションを削除するために使います。

定義

HRESULT IProduct::DeleteVariant(
VARIANT varVariantID
);

パラメータ

varVariantID

[in] このバリエーションの一意の ID を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | 0x88980032 | このカタログは、商品バリエーションをサポートしていません。これはカタログが作成されたときに決定します。変更はできません。
E_CAT_VARIANT_DOESNT_EXIST | 0x8898001F | バリエーションが存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::CreateVariant


IProduct::get_GetProductProperties

GetProductProperties プロパティは読み取り専用のレコードセットで、この Product オブジェクトのプロパティを含んでいます。

定義

HRESULT IProduct::get_GetProductProperties(
_Recordset** GetProductProperties
);

パラメータ

GetProductProperties

[out, retval] この商品のプロパティを返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | この商品は削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

GetProductProperties パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返される単一行レコードセットには、商品定義用に定義されたすべてのフィールドと CatalogProduct レコードセットのすべての共通フィールドが含まれます。

返されたレコードセットは更新可能ですが、接続されていません。商品プロパティを変更するには、このレコードセットを SetProductProperties メソッドに渡します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::SetProductProperties


IProduct::GetVariantProperties

このメソッドは、指定した商品バリエーションのプロパティを取得するために使います。

定義

HRESULT IProduct::GetVariantProperties(
VARIANT varProductVariantID,
_Recordset** ppRSProductVariant
);

パラメータ

varProductVariantID

[in] 商品バリエーションの一意の ID を含む Variant です。

ppRSProductVariant

[out, retval] 商品バリエーション プロパティを返すために使う Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | 0x88980032 | このカタログは、商品バリエーションをサポートしていません。
E_CAT_VARIANT_DOESNT_EXIST | 0x8898001F | この商品バリエーションはカタログから削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSProductVariant パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このメソッドは、指定した商品バリエーションのプロパティを返します。varProductVariantID パラメータで指定されている商品バリエーションが商品に存在しない場合、メソッドは失敗します。

返された単一行のレコードセットには、この商品のバリエーションに定義されているすべてのプロパティのフィールドが含まれます。これらの後には次のフィールドが含まれています。

フィールド | 種類 | 説明
TimeStamp | Timestamp | なし
cy_list_price | Currency | 標準価格
oid | Integer | なし

oid フィールドは内部で使うもので、更新対象ではありません。

返されたレコードセットは更新可能ですが、接続されていません。商品プロパティを変更するには、このレコードセットを SetVariantProperties メソッドに渡します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::SetVariantProperties


IProduct::get_ParentCategories

ParentCategories プロパティは読み取り専用のレコードセットで、この商品が直接属するカテゴリの名前を含んでいます。

定義

HRESULT IProduct::get_ParentCategories(
_Recordset** ParentCategories
);

パラメータ

ParentCategories

[out, retval] 親カテゴリを返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ParentCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

商品がいずれのカテゴリにも含まれていないと、返されるレコードセットは空になり、その EOF プロパティは VARIANT_TRUE に設定されます。

返されるレコードセットには、Name という名前の 128 文字長の文字列フィールドが 1 つ含まれます。レコードセット内の各行には、この商品が属するカテゴリの名前が含まれます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::get_AncestorCategories


IProduct::get_PricingCategory、put_PricingCategory

PricingCategory プロパティは読み取りと書き込みが可能な文字列で、この商品の価格カテゴリの名前を含んでいます。

定義

Get メソッド:

HRESULT IProduct::get_PricingCategory(
BSTR* PricingCategory
);SET

Put メソッド :

HRESULT IProduct::put_PricingCategory(
BSTR PricingCategory
);

パラメータ

PricingCategory

[in] put メソッドを使用する場合は、価格カテゴリを含む BSTR です。
[out, retval] get メソッドを使用する場合は、価格カテゴリを返すために使う BSTR へのポインタです。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準またはカスタムの COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。
E_CAT_PRICING_CAT_PRICELESS | 0x8898002F | 指定したカテゴリには標準価格がありません。 標準価格を持たないカテゴリを価格カテゴリとして使うことはできません。
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | この商品は削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

PricingCategory パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

カテゴリを Pricing カテゴリとして使うと、一度の変更操作によって複数の商品の価格を設定することができます。それぞれの商品の価格を変更する必要はありません。商品グループに Pricing カテゴリを設定すると、その商品グループのすべてのバリエーションに対しても、その Pricing カテゴリが設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


IProduct::get_ProductID

ProductID プロパティは読み取り専用の文字列で、この商品の一意の ID を含んでいます。

定義

HRESULT IProduct::get_ProductID(
BSTR* ProductID
);

パラメータ

ProductID

[out, retval] 商品 ID を返すために使う BSTR のアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ProductID パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このプロパティの値は、この商品が属するカタログの IProductCatalog::get_IdentifyingProductProperty プロパティの値のコピーです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


IProduct::get_RelatedCategories

RelatedCategories プロパティは読み取り専用の Recordset オブジェクトで、この商品に関連付けられているカテゴリの名前を含んでいます。

定義

HRESULT IProduct::get_RelatedCategories(
_Recordset** RelatedCategories
);

パラメータ

RelatedCategories

[out, retval] 関連付けられたカテゴリを返すために使う _Recordset です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RelatedCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
CategoryName | 文字列 (最大 128 文字) | カテゴリの名前です。
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前です。
RelationshipDescription | 文字列 (最大 256 文字) | 関連付けの記述です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::get_RelatedProducts

IProduct::AddRelationshipToCategory


IProduct::get_RelatedProducts

RelatedProducts プロパティは読み取り専用の Recordset オブジェクトで、この商品に関連付けられている商品の名前を含んでいます。

定義

HRESULT IProduct::get_RelatedProducts(
_Recordset** RelatedProducts
);

パラメータ

RelatedProducts

[out, retval] 関連付けられた商品を返すために使う _Recordset オブジェクトです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RelatedProducts パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットには、現在の関連付けごとに 1 つの行が含まれています。

返されるレコードセットには、次のフィールドが含まれます。

フィールド | データ型 | 説明
<定義される ProductID フィールド> | 任意のデータ型 | このカタログ内の商品を一意に定義するフィールドです。
RelationshipName | 文字列 (最大 128 文字) | 関連付けの名前です。
RelationshipDescription | 文字列 (最大 128 文字) | 関連付けの記述です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


IProduct::RemoveRelationshipToCategory

このメソッドは、指定したカテゴリとこの商品との指定した関連付けを削除するために使います。

定義

HRESULT IProduct::RemoveRelationshipToCategory(
BSTR strRelatedCategoryName,
BSTR strRelationshipName
);

パラメータ

strRelatedCategoryName

[in] この商品との関連付けを削除するカテゴリの名前を含む BSTR です。

strRelationshipName

[in] 削除する関連付けの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::get_RelatedCategories

IProduct::AddRelationshipToCategory

IProduct::RemoveRelationshipToProduct


IProduct::RemoveRelationshipToProduct

このメソッドは、指定した商品とこの商品との指定した関連付けを削除するために使います。

定義

HRESULT IProduct::RemoveRelationshipToProduct(
VARIANT varRelatedProductID,
BSTR strRelationshipName
);

パラメータ

varRelatedProductID

[in] この商品との関連付けを削除する商品の一意の ID を含む Variant です。

strRelationshipName

[in] 削除する関連付けの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::get_RelatedProducts

IProduct::AddRelationshipToProduct

IProduct::RemoveRelationshipToCategory


IProduct::SetProductProperties

このメソッドは、この商品のプロパティを設定するために使います。

定義

HRESULT IProduct::SetProductProperties(
_Recordset* pRSProduct,
VARIANT fForceUpdate
);

パラメータ

pRSProduct

[in] 新しい商品プロパティを含む Recordset オブジェクトへのポインタです。GetProductProperties メソッドによって返される更新済みレコードセットであることが必要です。

fForceUpdate

[in, optional] 商品プロパティを強制的に更新するかどうかを決定する Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_INVALID_LISTPRICE | 0x8898003C | 標準価格に指定した値が無効です。
E_CAT_INVALIDVALUE_FOR_PROPERTY 0x88980038 商品プロパティのいずれかに、無効な値が指定されています。このエラーが返されるのは次の場合です。
  • いずれかのプロパティが最小/最大条件を満たしていません。

  • 文字列データまたは列挙データのプロパティが最大長を超えています。

  • 列挙型プロパティの値が定義済みの有効な値のいずれにも当てはまりません。
E_CAT_PRODUCT_CHANGED | 0x88980027 | この商品プロパティは、前回読み取られてから変更されています。このエラーが返されるのは、fForceUpdate パラメータが False に設定されている場合だけです。
E_CAT_PRODUCT_DOESNT_EXIST | 0x8898001E | 指定した商品 ID が存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

商品プロパティを変更するには、SetProductProperties メソッドを使います。pRSProduct パラメータは、この商品の新しいプロパティ値を記述する Recordset オブジェクトを指定します。このメソッドは、ProductId や VariantID など、カタログから派生したフィールドを更新しません。このメソッドは、商品グループで呼び出されると、その商品グループに属するすべてのバリエーションのプロパティを更新します。

GetProductProperties プロパティによって返される Recordset オブジェクトを使うと、エラー検出のために、そのタイムスタンプをこのメソッドで更新されるレコードと比較することができます。

fForceUpdate パラメータが False に設定されていて、かつ pRSProduct レコードセットが読み取られた後でこの商品のプロパティ値が変更されている場合、メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::GetProductProperties


IProduct::SetVariantProperties

このメソッドは、この商品のバリエーションのプロパティを設定するために使います。

定義

HRESULT IProduct::SetVariantProperties(
_Recordset* pRSNewState,
VARIANT fForceUpdate
);

パラメータ

pRSNewState

[in] 新しい商品バリエーション プロパティを含む Recordset オブジェクトへのポインタです。GetVariantProperties プロパティまたは CreateVariant メソッドによって返されるレコードセットであることが必要です。

fForceUpdate

[in, optional] 商品バリエーション プロパティを強制的に更新するかどうかを決定する Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | 0x88980032 | カタログがバリエーションをサポートしていません。
E_CAT_INVALIDVALUE_FOR_PROPERTY 0x88980038 商品プロパティのいずれかに、無効な値が指定されています。このエラーが返されるのは次の場合です。
  • いずれかのプロパティが最小/最大条件を満たしていません。

  • 文字列データまたは列挙データのプロパティが最大長を超えています。

  • 列挙型プロパティの値が定義済みの有効な値のいずれにも当てはまりません。
E_CAT_PRODUCT_CHANGED | 0x88980027 | この商品プロパティは、前回読み取られてから変更されています。このエラーが返されるのは、fForceUpdate パラメータが False に設定されている場合だけです。
E_CAT_VARIANT_DOESNT_EXIST | 0x8898001F | この商品バリエーションはカタログから削除されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

商品バリエーションのプロパティを変更するには、SetVariantProperties メソッドを使います。pRSNewState パラメータは、この商品バリエーションの新しいプロパティ値を記述する Recordset オブジェクトを指定します。GetVariantProperties プロパティ、または CreateVariant メソッドによって返されるレコードセットを使うと、エラー検出のためにタイムスタンプを比較することができます。

fForceUpdate パラメータが False に設定されていて、かつ pRSNewState パラメータが変更されている場合、メソッドは失敗します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト

IProduct::GetVariantProperties


IProduct::get_Variants

Variants プロパティは読み取り専用のレコードセットで、この商品のすべてのバリエーションを記述します。

定義

HRESULT IProduct::get_Variants(
VARIANT strPropertyToSortOn,
_Recordset** Variants
);

パラメータ

strPropertyToSortOn

[in, optional] 返された Recordset オブジェクトを並べ替えるプロパティを含む Variant です。

Variants

[out, retval] バリエーションを返すために使う _Recordset オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Variants パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

この商品にバリエーションが存在しない場合、返されるレコードセットは空になり、その EOF プロパティは VARIANT_TRUE に設定されます。

返されるレコードセットには、この商品のバリエーションに定義されているすべてのプロパティのフィールドと、次のフィールドが含まれます。

フィールド | 種類 | 説明
TimeStamp | Timestamp | なし
cy_list_price | Currency | 標準価格
<定義されたバリエーション ID> | 任意のデータ型 | なし

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Product オブジェクト


ProductCatalog オブジェクト

このオブジェクトは、カタログの変更、およびカタログの内容の修正のために使います。ProductCatalog オブジェクトは、商品カタログ システム内のカタログを処理するためのプライマリ オブジェクトです。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | ProductCatalog
COM インターフェイス名: | IProductCatalog
インターフェイス ID 定数: | IID_IProductCatalog
ヘッダー ファイル: | Catalog.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Catalog Type Library
DLL 名: | Catalog.dll
スレッド モデル: | 両方

C++ で ProductCatalog オブジェクトのプロパティとメソッドにアクセスするには、IProductCatalog インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、ProductCatalog オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
BaseCatalogName | BSTR | カスタム カタログの基本カタログの名前を含みます。 このプロパティは読み取り専用です。
CatalogName | BSTR | このカタログの名前を含みます。 このプロパティは読み取り専用です。
IdentifyingProductProperty | BSTR | 商品と商品グループを一意に識別するために使う列の名前を含みます。 このプロパティは読み取り専用です。
IdentifyingVariantProperty | BSTR | 商品バリエーションを一意に識別するために使う列の名前を含みます。 このプロパティは読み取り専用です。
RootCategories | _Recordset | このカタログのルート カテゴリであるカテゴリの名前を含むレコードセットを返します。 このプロパティは読み取り専用です。
RootProducts | _Recordset | このカタログの一部であるが、いずれのカテゴリにも含まれていない商品を含むレコードセットを返します。 このプロパティは読み取り専用です。
SearchableCategories | _Recordset | レコードセットを返します。このレコードセットには、検索対象として定義されたカテゴリの名前を含むフィールドが 1 つあります。 このプロパティは読み取り専用です。

次の表は、ProductCatalog オブジェクトのメソッドを示しています。

メソッド | 説明
AddSpecificationSearchClause | このカタログに対して条件指定検索を実行するときに、検索コンテキストに検索条件を追加します。
BeginSpecificationSearch | このカタログに対する条件指定検索を開始します。
CreateCategory | 指定したカテゴリ定義に基づいて新しいカテゴリを作成します。
CreateCustomCatalog | 新しいカスタム カタログ テンプレートを作成します。返されるレコードセットは接続が解除されていて、更新可能です。
CreateProduct | 指定した商品定義に基づいて新しい商品または商品グループを作成します。
DeleteCategory | このカタログからカテゴリを削除します。
DeleteCustomCatalog | このカタログからカスタム カタログを削除します。
DeleteProduct | このカタログから商品を削除します。
GenerateCustomCatalog | 指定したカスタム カタログに、このカタログから派生したデータを生成します。
GetCatalogAttributes | このカタログの属性を返します。返されるレコードセットは接続が解除されていて、更新可能です。
GetCategory | 指定したカテゴリを返します。
GetCategoryCustomPrice | 指定したカテゴリの特別価格を返します。
GetCustomCatalogAttributes | 指定したカスタム カタログの属性を返します。返されるレコードセットは接続が解除されていて、更新可能です。
GetProduct | 指定した商品を返します。
GetProductVariant | 指定した商品バリエーションのすべてのプロパティを含む行を 1 つ持つレコードセットを返します。
GetSpecificationSearchClauses | レコードセットを返します。このレコードセットには、ある条件指定検索のすべての検索文字列を含むフィールドが 1 つあります。
GuaranteedSpecificationSearch | 一致が見つかるまで検索条件を削除しながら、条件指定検索を実行します。
PerformSpecificationSearch | 指定した検索コンテキストを使って、このカタログに対して条件指定検索を実行します。
RegenerateFreeTextSearchIndex | このカタログのフリー テキスト検索用インデックスを更新します。
RemoveSpecificationSearchClause | 指定した検索コンテキストから最後の検索条件を削除します。
SetCatalogAttributes | このカタログの属性を設定します。
SetCategoryCustomPrice | 指定したカテゴリに対する特別価格を定義します。
SetCustomCatalogAttributes | 指定したカスタム カタログの属性を設定します。

解説

ProductCatalog オブジェクトは従属オブジェクトです。IProductCatalog インターフェイスへのポインタを取得するには、次のいずれかのメソッドを呼び出します。

  • ICatalogManager::GetCatalog

  • ICatalogManager::CreateCatalog

注

  • 検索対象としての ProductCatalogs オブジェクトの数は制限されています。256 より多くの ProductCatalog オブジェクトを対象にフルテキスト検索を実行すると、失敗します。これは SQL Server 2000 での制限事項です。


IProductCatalog::AddSpecificationSearchClause

このメソッドは、このカタログの条件指定検索に条件を追加するために使います。

定義

HRESULT IProductCatalog::AddSpecificationSearchClause(
BSTR strClause,
VARIANT* pstrSearchHandle
);

パラメータ

strClause

[in] 指定された条件指定検索に追加する句を含む BSTR です。

pstrSearchHandle

[in] 句を追加する条件指定検索の状態を含む Variant です。
[out] 更新した条件指定検索の状態を返すのに使用する Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

正常に終了すると、pstrSearchHandle パラメータは更新済み条件指定検索の名前を含みます。

条件指定検索を実行すると、strClause パラメータに含まれている条件指定句が既存の条件指定句に追加され、そのまま変更されずに SQL Server に送られます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::BeginSpecificationSearch

IProductCatalog::GetSpecificationSearchClauses

IProductCatalog::PerformSpecificationSearch


IProductCatalog::get_BaseCatalogName

BaseCatalogName プロパティは読み取り専用の文字列で、このカタログに対する基本カタログの名前を含んでいます。これがカスタム カタログでない場合は、基本カタログがないため、BaseCatalogName プロパティには手持ちのカタログの名前が含まれます。

定義

HRESULT IProductCatalog::get_BaseCatalogName(
BSTR* BaseCatalogName
);

パラメータ

BaseCatalogName

[out, retval] 基本カタログ名を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

BaseCatalogName パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト


IProductCatalog::BeginSpecificationSearch

このメソッドは、カタログに対する条件指定検索を開始するために使われます。

定義

HRESULT IProductCatalog::BeginSpecificationSearch(
BSTR strCategoryName,
VARIANT* pRSInitialPropValuesList,
VARIANT* plTotalRecordsAvailable,
BSTR* pstrSearchHandle
);

パラメータ

strCategoryName

[in] 検索するカテゴリの名前を含む BSTR です。

pRSInitialPropValuesList

[out, optional] 初期プロパティ値のレコードセットを返すために使う Variant へのポインタです。

plTotalRecordsAvailable

[out, optional] 利用できるレコードセットの総数を返すために使う Variant へのポインタです。

pstrSearchHandle

[out, retval] 条件指定検索の状態を返すのに使用する BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x88980041 | 指定したカテゴリはカタログ内に存在していません。
E_CAT_CATEGORY_NOT_SEARCHABLE | 0x88980034 | 指定したカテゴリは条件指定検索の対象ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pRSInitialPropValuesList および pstrSearchHandle パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

省略可能な pRSInitialPropValuesList パラメータは、単一行のレコードセットです。返されるレコードセットには、指定したカテゴリの下にある商品の検索対象であるプロパティごとに、1 つのフィールドが含まれています。各フィールドには SAFEARRAY が含まれています。それぞれの SAFEARRAY には、そのカテゴリの下にあるすべての商品に存在するすべての値のセットが含まれています。検索対象として指定されているプロパティだけが、レコードセットに返されます。

検索対象であるカテゴリすべてに Null が含まれる場合、pRSInitialPropValuesList パラメータは Null に設定され、plTotalRecordsAvailable パラメータは 0 になります。

カテゴリを検索対象として指定するには、IsSearchable プロパティを True に設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::AddSpecificationSearchClause

IProductCatalog::GetSpecificationSearchClauses

IProductCatalog::PerformSpecificationSearch


IProductCatalog::get_CatalogName

CatalogName プロパティは読み取り専用の文字列で、このカタログの名前を含んでいます。

定義

HRESULT IProductCatalog::get_CatalogName(
BSTR* CatalogName
);

パラメータ

CatalogName

[out, retval] カタログ名を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

CatalogName パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト


IProductCatalog::CreateCategory

このメソッドは、新しいカテゴリを作成するために使います。

定義

HRESULT IProductCatalog::CreateCategory(
BSTR strDefinitioName,
BSTR strCategoryName,
VARIANT strParentCategoryName,
VARIANT fIsSpecificationSearchable,
ICategory** ppCategory
);

パラメータ

strDefinitioName

[in] 作成するカテゴリのカテゴリ定義の名前を含む BSTR です。

strCategoryName

[in] 作成するカテゴリの名前を含む BSTR です。

strParentCategoryName

[in, optional] 新しいカテゴリの親カテゴリ名を含む Variant です (親カテゴリが存在する場合)。

IsSpecificationSearchable

[in, optional] このカテゴリが条件指定検索かどうかを決定する Variant です。

ppCategory

[out, retval] 新しく作成したカテゴリを返すために使う ICategory オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定した親カテゴリは存在していません。
E_CAT_CATEGORY_EXISTS | 0x8898001D | 新しいカテゴリに対して指定した名前は既に使われています。 カテゴリの名前は、システム全体においてグローバルに一意である必要があります。
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した定義は存在しません。
E_CAT_INVALID_CATEG_LENGTH | 0x88980047 | カテゴリ名が 128 文字を超えています。
E_CAT_PRODUCT_DEFN_FOR_CATEGORY | 0x8898004B | 指定した定義はカテゴリ定義ではなく、商品定義です。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppCategory パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::GetCategory

IProductCatalog::DeleteCategory


IProductCatalog::CreateCustomCatalog

このメソッドは、カスタム カタログに対して新しいテンプレートを作成するために使います。

定義

HRESULT IProductCatalog::CreateCustomCatalog(
BSTR strCCName,
_Recordset** ppRSCustomCat
);

パラメータ

strCCName

[in] 作成するカスタム カタログの名前を含む BSTR です。

ppRSCustomCat

[out, retval] 新しく作成するカスタム カタログのプロパティを返すために使う Recordset です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_EXISTS | 0x88980001 | 指定した名前を持つ基本カタログが既に存在しています。 カタログ名とカスタム カタログ名は、商品カタログ システム全体で一意である必要があります。
E_CAT_CUSTOMCAT_EXISTS | 0x88980022 | 指定した名前を持つカスタム カタログが既に存在しています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSCustomCat パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

次の表は、返される単一行のレコードセットに含まれるフィールドを示しています。

フィールド | データ型 | 説明
CustomCatalogName | 文字列 (256 文字) | カスタム カタログの名前です。
CatalogName | 文字列 (256 文字) | 基本カタログの名前です。
CustomCatalogID | Integer | カスタム カタログを一意に識別するフィールド名です。
TimeStamp | Timestamp | なし。

返されるレコードセットは接続が解除されていて、更新可能です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::DeleteCustomCatalog

IProductCatalog::GenerateCustomCatalog

IProductCatalog::SetCategoryCustomPrice


IProductCatalog::CreateProduct

このメソッドは、指定したパラメータに基づいて、カタログ内に新しい商品を作成するために使います。

定義

HRESULT IProductCatalog::CreateProduct(
BSTR strDefinitionName,
VARIANT varProductID,
CURRENCY cyListPrice,
VARIANT strParentCategoryName,
IProduct** ppProduct
);

パラメータ

strDefinitionName

[in] 商品の商品定義の名前を含む BSTR です。

varProductID

[in] 作成する商品の一意な商品 ID を含む Variant です。データ型は、このカタログ内の商品を一意に識別するために使われるプロパティと一致している必要があります。

cyListPrice

[in] 作成する商品の標準価格を含む Currency オブジェクトです。

strParentCategoryName

[in, optional] 作成する商品の親カテゴリとして指定するカテゴリの名前を含む Variant です。

ppProduct

[out, retval] 新しく作成する商品のプロパティを返すために使う Product オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DEFN_FOR_PRODUCT | 0x8898004A | 指定した定義はカテゴリ定義です。商品定義ではありません。
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。
E_CAT_DEFINITION_DOESNT_EXIST | 0x8898000B | 指定した定義は存在しません。
E_CAT_PRODUCT_EXISTS | 0x8898001B | 指定した商品 ID は既に使われています。 商品 ID はカタログ内で一意である必要があります。
E_CAT_INVALID_PRODUCTID | 0x8898005B | ProductID の長さが 256 文字を超えています。
E_CAT_INVALIDVALUE_FOR_PRODUCTID | 0x8898004E | ProductID に無効な値が指定されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppProduct パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

商品グループは、バリエーションを含む商品です。

新しい商品が単一の商品として作成されるか、商品グループとして作成されるかは、その商品が基づく定義のプロパティによって決定します。商品の作成のために使われる定義にバリエーション プロパティが含まれている場合、新しく作成される商品は、商品グループになります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::DeleteProduct

IProductCatalog::GetProduct


IProductCatalog::DeleteCategory

このメソッドは、商品カタログ システムからカテゴリを削除するために使います。

定義

HRESULT IProductCatalog::DeleteCategory(
BSTR strCategoryName
);

パラメータ

strCategoryName

[in] 削除するカテゴリの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

削除したカテゴリだけに属していた商品やカテゴリは孤立します。カテゴリはルート カテゴリになり、商品はルート商品になります。次に例を示します。CategoryA と CategoryB は、CategoryX の子カテゴリです。CategoryA は、CategoryY の子カテゴリでもあります。CategoryX を削除すると、CategoryB はルート カテゴリになりますが、CategoryA はそうなりません。

このカテゴリがカスタム カタログの価格カテゴリとして指定されている場合は、価格カテゴリとして削除されます。このカテゴリを価格カテゴリとして使っている商品は、すべて元の価格に戻り、カテゴリは価格カテゴリとして削除されます。

関連項目

ProductCatalog オブジェクト

IProductCatalog::get_RootCategories

IProductCatalog::CreateCategory

IProductCatalog::GetCategory


IProductCatalog::DeleteCustomCatalog

このメソッドは、商品カタログ システムからカスタム カタログを削除するために使います。

定義

HRESULT IProductCatalog::DeleteCustomCatalog(
BSTR strCCName
);

パラメータ

strCCName

[in] 削除するカスタム カタログの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

カスタム カタログに関連付けられているデータはすべて削除されます。カスタム カタログが生成されていた場合は、生成されたカタログも削除されます。

関連項目

ProductCatalog オブジェクト

IProductCatalog::CreateCustomCatalog

IProductCatalog::GenerateCustomCatalog


IProductCatalog::DeleteProduct

このメソッドは、商品カタログ システムから商品を削除するために使います。

定義

HRESULT IProductCatalog::DeleteProduct(
VARIANT varProductID
);

パラメータ

varProductID

[in] 削除する商品の一意な識別子を含む Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_EXIST | 0x88980002 | カタログが存在していません。
E_CAT_PRODUCT_DOESNT_EXIST | 0x88980010 | 指定した商品は存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、SQL Server データベースから商品を削除します。Product オブジェクトは、パフォーマンスの向上のために情報をキャッシュします。このキャッシュがあるので、Product オブジェクトの CatalogName メソッドと ProductID メソッドは、DeleteProduct メソッドが呼び出された後も引き続き古い値を返します。Variants、ParentCategories、AncestorCategories、RelatedCategories、および RelatedProducts の各プロパティは、空のレコードセットを返しますが、エラー メッセージは返しません。

注意

  • バリエーションを含む商品を削除すると、そのバリエーションもすべて削除されます。

関連項目

ProductCatalog オブジェクト

IProductCatalog::CreateProduct

IProductCatalog::GetProduct


IProductCatalog::GenerateCustomCatalog

このメソッドは、カスタム カタログにデータを生成したり、カスタム カタログを更新して基本カタログの最新バージョンを反映するために使います。基本カタログのコピーが作成され、特別価格やルールが適用されてカスタム カタログが生成されます。

定義

HRESULT IProductCatalog::GenerateCustomCatalog(
BSTR strCustomCatalogName
);

パラメータ

strCustomCatalogName

[in] カスタム カタログ名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CUSTOMCAT_DOESNT_EXIST | 0x88980024 | 指定したカスタム カタログは存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、カスタム カタログ テンプレートにデータを生成するために使います。カスタム カタログが既に存在している場合、既存のデータは削除されます。生成されたカスタム カタログは、このメソッドによって生成された時点に存在した基本カタログのコピーです。カスタム カタログ内の商品の価格は、SetCategoryCustomPrice メソッドによって設定された特別価格ルールに基づいて決定します。このメソッドによって生成されたカスタム カタログは、その後はほかのカタログと同様に扱うことができます。

カスタム カタログは既存の基本カタログのコピーにすぎず、基本カタログに動的にリンクされていないので、基本カタログに加えた変更は、そこから派生しているカスタム カタログに自動的に反映されません。同様に、カスタム カタログに変更を加えても、その変更が自動的に基本カタログに返されることはありません。このメソッドは、カスタム カタログを更新して基本カタログの最新バージョンを反映するために使います。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドでは、フリー テキスト インデックスの作成、削除、および更新が行われます。SQL Server は、トランザクション内でこれらの操作を実行できません。

関連項目

ProductCatalog オブジェクト

IProductCatalog::CreateCustomCatalog

IProductCatalog::DeleteCustomCatalog

IProductCatalog::SetCategoryCustomPrice


IProductCatalog::GetCatalogAttributes

このメソッドは、このカタログの属性を取得するために使います。返されるレコードセットは接続が解除されていて、更新可能です。

定義

HRESULT IProductCatalog::GetCatalogAttributes(
_Recordset** ppRSCatalogAttributes
);

パラメータ

ppRSCatalogAttributes

[out, retval] このカタログの属性を返すために使う Recordset へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSCatalogAttributes パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

返されるレコードセットは接続が解除されていて、更新可能です。次の表は、返されたレコードセットに含まれるフィールドを示しています。

フィールド | データ型 | 説明
CatalogName | 文字列 (128 文字) | カタログの名前です。
Locale | Integer | なし。
StartDate | Date/Time | なし。
End Date | Date/Time | なし。
VariantID | 文字列 (128 文字) | バリエーションを一意に識別するフィールド名です。
ProductID | 文字列 (128 文字) | 商品を一意に識別するフィールド名です。
Currency | 文字列 (128 文字) | なし。
WeightMeasure | 文字列 (128 文字) | なし。
TimeStamp | Timestamp | なし。
CatalogID | Integer | なし。
CustomCatalog | Boolean | このレコードセットがカスタム カタログかどうかを示すフラグです。値が True の場合、カスタム カタログを示します。
FreeTextIndexCreated | Date/Time | なし。
ProductTableUpdated | Date/Time | なし。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::GetCustomCatalogAttributes

IProductCatalog::SetCatalogAttributes


IProductCatalog::GetCategory

このメソッドは、カタログから指定したカテゴリを取得するために使います。

定義

HRESULT IProductCatalog::GetCategory(
BSTR strCategoryName,
ICategory** ppCategory
);

パラメータ

strCategoryName

[in] 返すカテゴリの名前を含む BSTR です。

ppCategory

[out, retval] 指定したカテゴリを返すために使う ICategory オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppCategory パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::CreateCategory

IProductCatalog::DeleteCategory


IProductCatalog::GetCategoryCustomPrice

このメソッドは、指定したカスタム カタログとカテゴリから、特別価格と特別価格の型を取得するために使います。

定義

HRESULT IProductCatalog::GetCategoryCustomPrice(
BSTR strCCName,
BSTR strCategoryName,
VARIANT* peCustomPrice,
VARIANT* pfpCustomPriceAmount
);

パラメータ

strCCName

[in] カスタム カタログの名前を含む BSTR です。

strCategoryName

[in] 特別価格が返されるカテゴリ名を含む BSTR です。

peCustomPrice

[out] 特別価格の種類を返すために使う Variant へのポインタです。有効な値は CatalogCustomPriceEnum 列挙型から取得します。有効な値については、下の "解説" を参照してください。

pfpCustomPriceAmount

[out] 特別価格調整を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | 指定したカテゴリは存在しません。
E_CAT_CUSTOMCAT_DOESNT_EXIST | 0x88980024 | 指定したカスタム カタログは存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

peCustomPrice と pfpCustomPriceAmount パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

次の表は、CatalogCustomPriceEnum 列挙型の値と関連付けられた名前を示し、その使用方法を説明しています。

名前 | 値 | 説明
cscNoCustomPrice | 0 | 特別価格は基本価格と等価です。
cscPercentageMultiplier | 1 | 特別価格は、pfpCustomPriceAmount パラメータのパーセント値を基本価格に乗じた値です。
cscAddFixedAmount | 2 | 特別価格は、pfpCustomPriceAmount を基本価格に加算した値です。
cscReplacePrice | 3 | 特別価格は pfpCustomPriceAmount です。
cscInvalidCustomPrice | -1 | 予約されています。

カテゴリがカスタム カテゴリとして指定されていないと、peCustomPrice パラメータと pfpCustomPriceAmount パラメータは 0 に設定されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::SetCategoryCustomPrice


IProductCatalog::GetCustomCatalogAttributes

このメソッドは、指定したカスタム カタログの属性を取得するために使います。

定義

HRESULT IProductCatalog::GetCustomCatalogAttributes(
BSTR strCCName,
_Recordset** ppRSCustomCatalog
);

パラメータ

strCCName

[in] カスタム カタログの名前を含む BSTR です。

ppRSCustomCatalog

[out, retval] このカタログの属性を返すために使う Recordset へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSCustomCatalog パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

次の表は、返される単一行のレコードセットに含まれるフィールドを示しています。

フィールド | データ型 | 説明
CustomCatalogName | 文字列 (最大 128 文字の Unicode 文字) | カスタム カタログの名前です。
CatalogName | 文字列 (最大 128 文字の Unicode 文字) | 基本カタログの名前です。
CustomCatalogID | Integer | カスタム カタログを一意に識別するフィールド名です。
TimeStamp | Timestamp | なし。

返されるレコードセットは接続が解除されていて、更新可能です。変更できるフィールドは、CustomCatalogName パラメータだけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::CreateCustomCatalog

IProductCatalog::SetCustomCatalogAttributes


IProductCatalog::GetProduct

このメソッドは、カタログから指定した商品を取得するために使います。

定義

HRESULT IProductCatalog::GetProduct(
VARIANT varProductID,
IProduct** ppProduct
);

パラメータ

varProductID

[in] 商品の一意の識別子を含む Variant です。

ppProduct

[out, retval] 指定した商品を返すために使う IProduct オブジェクトへのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の標準 COM エラー値は、このメソッドのコンテキストでは特定の意味を持っています。

S_FALSE

指定したカタログは存在しません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppProduct パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::CreateProduct

IProductCatalog::DeleteProduct


IProductCatalog::GetProductVariant

このメソッドは、指定した商品バリエーションのプロパティを取得するために使います。

定義

HRESULT IProductCatalog::GetProductVariant(
VARIANT varProductID,
VARIANT varVariantID,
_Recordset** ppRSVariant
);

パラメータ

varProductID

[in] 商品ファミリの一意の識別子を含む Variant です。

varVariantID

[in] 商品バリエーションの一意の識別子を含む Variant です。

ppRSVariant

[out, retval] 返される Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトにはバリエーションのプロパティが含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_SUPPORT_VARIANTS | 0x88980032 | このカタログはバリエーションをサポートしていません。これはカタログが作成されたときに決定します。変更はできません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSVariant パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

バリエーションのすべてのプロパティを持つ単一行のレコードセットが返されます。返されるレコードセットのフィールドは、そのレコードセットが基づく定義に関連付けられているプロパティによって決定します。商品プロパティとバリエーション プロパティの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::get_IdentifyingVariantProperty


IProductCatalog::GetSpecificationSearchClauses

このメソッドは、指定した条件指定検索の条件を取得するために使います。

定義

HRESULT IProductCatalog::GetSpecificationSearchClauses(
BSTR strSearchHandle,
_Recordset** ppRSSearchClauses
);

パラメータ

strSearchHandle

[in] 条件指定検索ハンドルを含むBSTR です。

ppRSSearchClauses

[out, retval] 検索文字列を返すために使う Recordset へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ppRSSearchClauses パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

返されるレコードセットには、Clause という名前の可変長の文字列フィールドが 1 つ、そして存在する条件ごとに行が 1 つ含まれています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::AddSpecificationSearchClause

IProductCatalog::RemoveSpecificationSearchClause


IProductCatalog::GuaranteedSpecificationSearch

このメソッドは、カタログに対して条件指定検索を実行するときに、結果を保証するために使います。

定義

HRESULT IProductCatalog::GuaranteedSpecificationSearch(
VARIANT* pstrSearchHandle,
VARIANT eClassTypeRequired,
VARIANT lDesiredRecords,
VARIANT* plTotalRecordsAvailable,
VARIANT* pRSNewPropValuesList,
VARIANT vrPropertiesRequired,
_Recordset** ppRSSearchResults
);

パラメータ

pstrSearchHandle

[in] 条件指定検索ハンドルを含む Variant です。

eClassTypeRequired

[in, optional] 目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

lDesiredRecords

[in, optional] 目的のレコード数を含む Variant です。

plTotalRecordsAvailable

[out, optional] 利用できるレコードセットの総数を返すために使う Variant へのポインタです。

pRSNewPropValuesList

[out, optional] 新しいプロパティ値のリストを返すために使う Recordset です。

vrPropertiesRequired

[in,optional] カンマ区切り文字列に必要なプロパティを含む Variant です。

ppRSSearchResults

[out, retval] 検索結果を返すために使う Recordset です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドによって返される、カスタム COM エラーおよび特殊な意味を持つ標準 COM エラーを示しています。

定数 | 値 | 説明
S_FALSE 0x00000001 この値が返されるのは、pRSNewPropValuesList パラメータが指定されている場合と、次の場合です。
  • 条件指定検索の対象として指定したカタログにプロパティがありません。

  • 条件指定検索の対象として指定したカテゴリの下に商品がありません。
E_CAT_CATEGORY_NOT_EXISTS_NOT_SEARCHABLE | 0x88980049 | 指定したカテゴリが存在していないか、条件指定検索の対象ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pstrSearchHandle、plTotalRecordsAvailable、pRSNewPropValuesList、および ppRSSearchResults パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このメソッドは PerformSpecificationSearch メソッドに類似したものです。省略可能な出力パラメータ pRSNewPropValuesList は、単一行のレコードセットです。このレコードセットには、BeginSpecificationSearch メソッドで指定されたカテゴリの下にある商品の検索対象プロパティごとにフィールドが 1 つ含まれています。各フィールドには SAFEARRAY が含まれています。SAFEARRAY は、そのプロパティにある異なる値のセットを含んでいます。このセットは、検索ハンドル内の検索文字列に一致するすべての商品が持つ値すべてです。検索対象として指定されているプロパティだけが、レコードセットに返されます。プロパティを検索対象として指定するには、そのプロパティの IncludeInSpecSearch 属性を True に設定します。

このメソッドは、一致が見つかるまで、追加されたのと逆の順序で検索条件を削除していくことによって、カタログに対する条件指定検索で必ず結果が返されるようにします。したがって、条件指定検索には、重要度の高い順に条件を追加するようにしてください。

このメソッドによって返される Recordset オブジェクトには、vrPropertiesRequired パラメータのプロパティ名ごとにフィールドが 1 つ含まれています。パラメータを省略すると、Recordset オブジェクトには対応するフィールドがすべて含まれます。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

注

  • 先頭が数字であるフィールド名、およびスペースを含むフィールド名は、角かっこで囲む必要があります。フィールド名の書式が正しく設定されていないと、データ エラーが発生します。たとえば、"[123_Prop1],[123_ Prop2]" が正しい書式になります。vrPropertiesRequired プロパティを省略すると、すべてのフィールドのデータが正しく返されます。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::AddSpecificationSearchClause

IProductCatalog::PerformSpecificationSearch

IProductCatalog::RemoveSpecificationSearchClause


IProductCatalog::get_IdentifyingProductProperty

IdentifyingProductProperty プロパティは読み取り専用の文字列で、このカタログ内の商品の一意識別子フィールドの名前を含んでいます。

定義

HRESULT IProductCatalog::get_IdentifyingProductProperty(
BSTR* IdentifyingProductProperty
);

パラメータ

IdentifyingProductProperty

[out, retval] 商品プロパティを識別する名前を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

IdentifyingProductProperty パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

商品 ID は ProductCatalog オブジェクトにキャッシュされます。このキャッシュがあるので、このメソッドは、カタログが削除された後も引き続き古い値を返すことができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::get_IdentifyingVariantProperty


IProductCatalog::get_IdentifyingVariantProperty

IdentifyingProductVariantProperty プロパティは読み取り専用の文字列で、このカタログ内の商品バリエーションの一意識別子フィールドの名前を含んでいます。

定義

HRESULT IProductCatalog::get_IdentifyingVariantProperty(
BSTR* IdentifyingVariantProperty
);

パラメータ

IdentifyingVariantProperty

[out, retval] バリエーション プロパティを識別する名前を返すために使う BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

IdentifyingVariantProperty パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

バリエーション ID は ProductCatalog オブジェクトにキャッシュされます。このキャッシュがあるので、このメソッドは、カタログが削除された後も引き続き古い値を返すことができます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::get_IdentifyingProductProperty


IProductCatalog::PerformSpecificationSearch

このメソッドは、カタログに対して条件指定検索を実行するために使います。

定義

HRESULT IProductCatalog::PerformSpecificationSearch(
BSTR strSearchHandle,
VARIANT eClassTypeRequired,
VARIANT lDesiredRecords,
VARIANT* plTotalRecordsAvailable,
VARIANT* pRSNewPropValuesList,
VARIANT vrPropertiesRequired,
_Recordset** ppRSSearchResults
);

パラメータ

strSearchHandle

[in] 実行する検索の名前を含む BSTR です。

eClassTypeRequired

[in, optional] 目的のカタログ クラスを含む Variant です。有効な値は、CatalogClassTypeEnum 列挙から取得します。有効な値については、下記の "解説" を参照してください。

lDesiredRecords

[in, optional] 目的のレコードを含む Variant です。

plTotalRecordsAvailable

[out, optional] 利用できるレコードセットの総数を返すために使う Variant へのポインタです。

pRSNewPropValuesList

[out, optional] 新しいプロパティ値のリストの Recordset を返すために使う Variant です。

vrPropertiesRequired

[in,optional] カンマ区切り文字列に必要なプロパティを含む Variant です。

ppRSSearchResults

[out, retval] 返される Recordset オブジェクトへの参照を保持するポインタです。このオブジェクトには検索結果が含まれます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
S_FALSE 0x00000001 この値が返されるのは、pRSNewPropValuesList パラメータが指定されている場合と、次の場合です。
  • 条件指定検索の対象として指定したカタログにプロパティがありません。

  • 条件指定検索の対象として指定したカテゴリの下に商品がありません。
E_CAT_CATEGORY_NOT_EXISTS_NOT_SEARCHABLE | 0x88980049 | 指定したカテゴリが存在していないか、条件指定検索の対象ではありません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

plTotalRecordsAvailable、pRSNewPropValuesList、および ppRSSearchResults パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

PerformSpecificationSearch メソッドは、指定した条件指定検索ハンドルに追加されたすべての条件を使って、クエリを実行します。

省略可能な出力パラメータ pRSNewPropValuesList は、単一行のレコードセットです。このレコードセットには、BeginSpecificationSearch メソッドで指定されたカテゴリの下にある商品の検索対象プロパティごとにフィールドが 1 つ含まれています。各フィールドには SAFEARRAY が含まれています。SAFEARRAY は、そのプロパティにある異なる値のセットを含んでいます。このセットは、検索ハンドル内の検索文字列に一致するすべての商品が持つ値すべてです。検索対象として指定されているプロパティだけが、レコードセットに返されます。プロパティを検索対象として指定するには、そのプロパティの IncludeInSpecSearch 属性を True に設定します。

このメソッドによって返される Recordset オブジェクトには、vrPropertiesRequired パラメータのプロパティ名ごとにフィールドが 1 つ含まれています。これには常に CatalogName フィールドが含まれます。パラメータを省略すると、Recordset オブジェクトには対応するフィールドがすべて含まれます。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

注

  • 先頭が数字であるフィールド名、およびスペースを含むフィールド名は、角かっこで囲む必要があります。フィールド名の書式が正しく設定されていないと、データ エラーが発生します。たとえば、"[123_Prop1],[123_ Prop2]" が正しい書式になります。vrPropertiesRequired プロパティを省略すると、すべてのフィールドのデータが正しく返されます。

次の表は、CatalogClassTypeEnum 列挙の値と、それらに関連付けられた名前を示し、その使い方を説明しています。

名前 | 値 | 説明
cscCategoryClass | 1 | カテゴリ データを要求します。
cscProductVariantClass | 2 | 商品バリエーション データを要求します。
cscProductClass | 4 | 商品データを要求します。
cscProductFamilyClass | 8 | 商品グループ データを要求します。
cscProductFamilyForVariantsClass | 16 | バリエーション データのグループを要求します。つまり、商品バリエーションの商品グループが要求されます。
cscProductVariantsForFamily | 32 | グループ データのバリエーションを要求します。つまり、商品グループのすべての商品バリエーションが要求されます。

CatalogClassTypeEnum 値は、その値どうしを論理 OR 演算子によって結合して eClassTypeRequired パラメータに設定できるので、cscProductClass OR cscProductVariantClass と指定すると、商品データと商品バリエーション データの両方が返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::AddSpecificationSearchClause

IProductCatalog::BeginSpecificationSearch

IProductCatalog::GuaranteedSpecificationSearch

IProductCatalog::RemoveSpecificationSearchClause


IProductCatalog::RegenerateFreeTextSearchIndex

このメソッドは、カタログのフリー テキスト検索インデックスを再生成するために使います。

定義

HRESULT IProductCatalog::RegenerateFreeTextSearchIndex(
VARIANT_BOOL fGenerateIncremental
);

パラメータ

fGenerateIncremental

[in, defaultvalue(0)] フリー テキスト検索インデックスの増分再構築を行うか、完全再構築を行うかを決定する VARIANT_BOOL です。値が True の場合、増分再構築を示します。値が False の場合、完全再構築を示します。詳細については、"解説" を参照してください。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CANNOT_REFRESH | 0x8898004C | カタログのインポート処理は現在進行中です。今は更新操作を行わないでください。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドの呼び出しは、新しい商品やカテゴリをカタログに追加した後で行います。そうしないと、それらの新しい商品やカテゴリは、フリー テキスト検索結果に返されません。

fGenerateIncremental パラメータは、フリー テキスト インデックスについて実行する再構築の種類を決定します。既定値は、フリー テキスト インデックスの完全再構築です。このように指定すると完全な再構築が可能ですが、最近加えた商品やカテゴリだけをインデックスに追加する増分再構築と比較すると、動作が遅くなります。

Commerce Server がカタログ データを格納するデータベースに SQL Server 2000 のフルテキスト エンジンがインストールされていないと、このメソッドを呼び出しても何の操作も行われません。

注

  • このメソッドは、トランザクション中のオブジェクト内で呼び出すことはできません。このメソッドは、フリー テキスト インデックスの作成、削除、更新のためのものです。SQL Server は、トランザクション内でこれらの操作を実行できません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト


IProductCatalog::RemoveSpecificationSearchClause

このメソッドは、指定した条件指定検索から最後の条件を削除するために使います。

定義

HRESULT IProductCatalog::RemoveSpecificationSearchClause(
VARIANT* pstrSearchHandle,
BSTR* pstrPoppedClause
);

パラメータ

pstrSearchHandle

[in, out] 検索条件の削除対象となる条件指定検索ハンドルを含む Variant です。

pstrPoppedClause

[out, retval] 削除された文字列を返すために使われる BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pstrSearchHandle および pstrPoppedClause パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このメソッドは常に、AddSpecificationSearchClause メソッドによって検索に追加された最後の条件を削除します。返される文字列の書式は、元の条件と同じものになります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト


IProductCatalog::get_RootCategories

RootCategories プロパティは読み取り専用のレコードセットで、このカタログのルート レベルに存在するカテゴリの名前を含んでいます。

定義

HRESULT IProductCatalog::get_RootCategories(
VARIANT vrPropertiesRequired,
_Recordset** RootCategories
);

パラメータ

vrPropertiesRequired

[in,optional] 必須プロパティ名のカンマ区切りリストを含む Variant (内部処理形式は文字列) です。

RootCategories

[out, retval] ルート カテゴリを返すために使う Recordset です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RootCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

親を持たないカテゴリは、ルート カテゴリと見なされます。

このメソッドによって返される Recordset オブジェクトには、ルート カテゴリごとに行が 1 つ、vrPropertiesRequired パラメータのプロパティ名ごとにフィールドが 1 つ含まれています。パラメータを省略すると、Recordset オブジェクトには対応するフィールドがすべて含まれます。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

注

  • vrPropertiesRequired パラメータのプロパティ名の先頭にある数字は、返されるレコードセット内の対応するフィールド名から切り捨てられます。データは正常です。正しくないのはフィールド名だけです。プロパティを省略すると、フィールド名は正しいものになります。この問題を避けるため、先頭が数字であるフィールド名は角かっこで囲んでください。たとえば、oProductCatalog.RootCategories("[123_Prop1],[123_ Prop2]") が正しい書式になります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::get_RootProducts


IProductCatalog::get_RootProducts

RootProducts プロパティは読み取り専用のレコードセットで、カタログのルート レベルに存在する商品を含んでいます。

定義

HRESULT IProductCatalog::get_RootProducts(
_Recordset** RootProducts
);

パラメータ

RootProducts

[out, retval] ルート商品を返すために使う Recordset です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

RootProducts パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

カテゴリに属していない商品は、ルート商品と見なされます。

このメソッドによって返される Recordset オブジェクトには、対応するフィールドすべてが含まれています。これらのフィールドの詳細については、「CatalogProduct レコードセット」を参照してください。

カンマ区切り値 (CSV) ファイルをインポートすることによって追加した商品は、ルート商品になります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::get_RootCategories


IProductCatalog::get_SearchableCategories

SearchableCategories プロパティは読み取り専用のレコードセットで、検索対象であるすべてのカテゴリの名前を含んでいます。

定義

HRESULT IProductCatalog::get_SearchableCategories(
_Recordset** SearchableCategories
);

パラメータ

SearchableCategories

[out, retval] 検索可能なカテゴリの名前を返すために使う Recordset です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SearchableCategories パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

SearchableCategories プロパティは、条件指定検索を使ったクエリの対象になるこのカタログ内のすべてのカテゴリの名前を返します。特定のカテゴリが条件指定検索の対象であるかどうかは、IsSearchable 属性の値によって決定します。このプロパティは、カテゴリの作成時に設定できます。また、カテゴリ オブジェクトの SetCategoryProperties メソッドを使っていつでも変更できます。

このプロパティによって返される Recordset オブジェクトには、Name という名前の 128 文字長のフィールドが 1 つ含まれています。それぞれの行には、検索対象であるカテゴリの名前が含まれています。

検索対象であるカテゴリがない場合、EOF プロパティが VARIANT_TRUE に設定されたレコードセットが返されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::CreateCategory

IProductCatalog::GetCategory


IProductCatalog::SetCatalogAttributes

このメソッドは、カタログの属性を設定するために使います。

定義

HRESULT IProductCatalog::SetCatalogAttributes(
_Recordset* pRSCatalogAttributes,
VARIANT fForceUpdate
);

パラメータ

pRSCatalogAttributes

[in] 新しい属性を含む Recordset です。

fForceUpdate

[in, optional] カタログの属性を強制的に更新するための Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 値 | 説明
E_CAT_CATALOG_DOESNT_EXIST | 0x88980002 | カタログが存在していません。
E_CAT_CATALOG_CHANGED | 0x88980012 | カタログは、前回読み取られてから更新されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

現在の属性に関するレコードセットを取得するには、GetCatalogAttributes メソッドを使います。レコードセットが変更されたら、それを SetCatalogAttributes メソッドの pRSCatalogAttributes パラメータとして使って、変更をカタログに書き戻します。レコードセットのタイムスタンプは、エラー検出のために更新される属性のタイムスタンプと比較されます。

カタログの属性である Name、ProductID、CatalogID、および VariantID は、このメソッドで変更できません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::GetCatalogAttributes


IProductCatalog::SetCategoryCustomPrice

このメソッドは、カテゴリの特別価格ルールを設定するために使います。

定義

HRESULT IProductCatalog::SetCategoryCustomPrice(
BSTR strCCName,
BSTR strCategoryName,
CatalogCustomPriceEnum eCustomPrice,
DOUBLE fpCustomPriceAmount
);

パラメータ

strCCName

[in] このルールを適用するカスタム カタログ テンプレートの名前を含む BSTR です。

strCategoryName

[in] 特別価格を設定するカテゴリの名前を含む BSTR です。

eCustomPrice

[in] 価格調整の種類です。有効な値は CatalogCustomPriceEnum 列挙型から取得します。有効な値については、下の "解説" を参照してください。

fpCustomPriceAmount

[in] 特別価格の調整量を含む Double です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CATEGORY_DOESNT_EXIST | 0x8898001C | カテゴリが存在していません。
E_CAT_CUSTOMCAT_DOESNT_EXIST | 0x88980024 | 指定したカスタム カタログは存在していません。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SetCategoryCustomPrice メソッドは、カテゴリ、およびそのカテゴリに直接属する子商品に対する特別価格ルールを、指定したカスタム カタログで定義します。SetCategoryCustomPrice メソッドは、子カテゴリには影響を与えません。

異なる特別価格を持つ複数のカテゴリに属している商品がある場合、いずれのカテゴリにおいても、その商品には特別価格が適用されません。

次の表は、CatalogCustomPriceEnum 列挙型の値と関連付けられた名前を示し、その使用方法を説明しています。

名前 | 値 | 説明
cscNoCustomPrice | 0 | 特別価格は基本価格と等価です。
cscPercentageMultiplier | 1 | 特別価格は、pfpCustomPriceAmount パラメータのパーセント値を基本価格に乗じた値です。
cscAddFixedAmount | 2 | 特別価格は、pfpCustomPriceAmount を基本価格に加算した値です。
cscReplacePrice | 3 | 特別価格は pfpCustomPriceAmount です。
cscInvalidCustomPrice | -1 | 予約されています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::GetCategoryCustomPrice


IProductCatalog::SetCustomCatalogAttributes

このメソッドは、カスタム カタログの属性を設定するために使います。

定義

HRESULT IProductCatalog::SetCustomCatalogAttributes(
_Recordset* pRSNewState,
VARIANT fForceUpdate
);

パラメータ

pRSNewState

[in] 新しい属性を含む Recordset オブジェクトへのポインタです。

fForceUpdate

[in, optional] カスタム カタログの属性を強制的に更新するための Variant です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー.」を参照してください。

次の表は、このメソッドが返す可能性のあるカスタム COM エラーを示しています。

定数 | 値 | 説明
E_CAT_CANNOT_ALTER_CC | 0x88980060 | 指定した変更を行うことができません。
E_CAT_CUSTOMCATALOG_CHANGED | 0x88980035 | カスタム カタログは、前回読み取られてから変更されています。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SetCustomCatalogAttributes メソッドは、カスタム カタログの CustomCatalogName 属性を変更するために使います。ほかの属性は変更できません。pRSNewState パラメータは、このカスタム カタログの新しい属性値を記述する Recordset オブジェクトを指定します。カスタム カタログが既に公開されている場合、メソッドは失敗します。

GetCustomCatalogAttributes メソッドによって返される Recordset オブジェクトを使って、そのタイムスタンプが品質管理のために比較されるようにしてください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProductCatalog オブジェクト

IProductCatalog::GetCustomCatalogAttributes


CatalogProduct レコードセット

この Recordset オブジェクトのフィールドは、カタログ内の商品定義によって異なります。次の表は、常にこの Recordset オブジェクトに含まれる共通のフィールドを一覧表示しています。

フィールド名 | データ型
CategoryName | 文字列 (最大 128 文字)
Oid | Integer
DefinitionName | 文字列 (最大 128 文字)
IsSearchable | Small integer
cy_list_price | Money
PricingCategoryOID | Integer
TimeStamp | TimeStamp
OriginalPrice | Money
i_ClassType | Integer
ParentOID | Integer
ProductID | 文字列 (最大 256 文字)
VariantID | 文字列 (最大 256 文字)

注

  • Oid フィールドは内部で使うもので、更新対象ではありません。

関連項目

IProductCatalog::GuaranteedSpecificationSearch

IProductCatalog::PerformSpecificationSearch

IProductCatalog::get_RootCategories

IProductCatalog::get_RootProducts


ProfileObject オブジェクト

このオブジェクトは、指定したプロファイル オブジェクト インスタンスのデータの取得、およびそのプロファイル オブジェクトのプロパティ値の変更のために使います。また、プロファイル オブジェクトのプロパティ属性を確認したり、それにアクセスする場合にも ProfileObject オブジェクトを使います。

ProgID: | Commerce.ProfileObject (外部作成可能)
COM クラス名: | ProfileObject
COM インターフェイス名: | IProfileObject
インターフェイス ID 定数: | IID_IProfileObject
ヘッダー ファイル: | mscsups.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Profile Service Type Library
DLL 名: | mscsups.dll
スレッド モデル: | 両方

C++ で ProfileObject オブジェクトのプロパティとメソッドにアクセスするには、IProfileObject インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、ProfileObject オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Fields | Fields | プロファイルのプロパティ コレクションを格納します。 このプロパティは読み取り専用です。

次の表は、ProfileObject オブジェクトのメソッドを示しています。

メソッド | 説明
GetProfileXML | プロファイル オブジェクトのデータ構造を表わす XML フラグメントを取得します。
Update | 基になるデータ ストアにプロファイル データを保存します。

解説

ProfileObject オブジェクトは、IADs インターフェイスからの継承によって、AUO 1.0 オブジェクト (Microsoft Site Server 3.0 Commerce Edition でリリース) との下位互換性を維持します。IADs インターフェイスのメソッドの説明については、MSDN の ADSI に関するドキュメントを参照してください。

ProfileObject オブジェクトは、拡張ピリオド表記をサポートしています。次は、拡張ピリオド表記を使った例です。

oProfileObject.Fields("Address.Zipcode")

これは次と同じ処理を行います。

oProfileObject.Fields("Address").Value("Zipcode")

最初の方法では、Zipcode の値を Fields.Value に対する 1 回の呼び出しで取得しています。それに対して 2 番目の方法では、同じ値を取得するために 2 回の呼び出しが必要です。

ProfileObject オブジェクトは、プロファイルに対するスマート ナビゲーションを提供しています。次は、スマート ナビゲーションを使った例です。

oProfileObject.Address.ZipCode

これは次と同じ処理を行います。

oProfileObject.Fields("Address.Zipcode")

このオブジェクトをインスタンス化するには、通常 ProfileService オブジェクトの CreateProfile メソッドを使います。

関連項目

プロファイル オブジェクト

プロファイル スキーマ

プロファイルの XML 構造

ProfileService オブジェクト


IProfileObject::get_Fields

Fields プロパティは読み取り専用の Fields コレクションで、ProfileObject オブジェクトのプロファイル プロパティ データを含んでいます。読み取り専用とは、Fields コレクションに対してメンバ (プロファイル プロパティ) の追加や削除ができないということです。これは ProfileObject オブジェクトの既定のプロパティです。このプロパティは、プロファイル プロパティの値の設定と取得、プロパティの属性リストへのアクセスのために使います。

定義

HRESULT IProfileObject::get_Fields(
Fields** ppFields
);

パラメータ

ppFields

[out, retval] プロファイル オブジェクト プロパティを返すために使う Fields コレクションへのポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、次の "エラー値" を参照してください。

エラー値

ProfileService オブジェクトの Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

Fields コレクションは、ADO Fields コレクション オブジェクトに類似したものです。次の ADO Fields コレクションのメソッドおよびプロパティがサポートされています。

  • Count

  • Item

  • _NewEnum

Fields コレクションのメンバは、Field オブジェクトです。これらのオブジェクトは、ProfileObject オブジェクトの単一のプロパティまたはプロパティ グループを表しています。この Field オブジェクトは、ADO の Field オブジェクトに似ています。次の ADO Field オブジェクトのメソッドおよびプロパティがサポートされています。

  • Properties : 読み取り専用の Attributes コレクションを返します。

  • DefinedSize : データ型の定義済みサイズを取得します。

  • Name

  • Type

  • Value

Attributes コレクションは、ADO の Properties オブジェクトとして表されます。次の ADO Properties オブジェクトのメソッドおよびプロパティがサポートされています。

  • Count

  • Item

  • _NewEnum

基になるデータ ストア内で変更のあったプロファイル データを保存するには、ProfileObject オブジェクトの Update メソッドを使います。

ProfileObject オブジェクトの Fields プロパティは、パフォーマンス向上のために拡張ピリオド表記をサポートしています。次は、拡張ピリオド表記を使った例です。

oProfileObject.Fields("Address.Zipcode")

これは次と同じ処理を行います。

oProfileObject.Fields("Address").Value("Zipcode")

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題については、「COM パラメータのメモリを管理する」を参照してください。

ppFields パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

関連項目

ProfileObject オブジェクト

ProfileService オブジェクト


IProfileObject::GetProfileXML

このメソッドは、プロファイル オブジェクトの XML スキーマおよびデータを取得するために使います。

定義

HRESULT IProfileObject::GetProfileXML (
XMLRetrieveEnum eRetrieveEnum,
VARIANT_BOOL bAttributeCentric,
BSTR* pbstrXML
);

パラメータ

bAttributeCentric

[in] XML の出力形式を示す VARIANT_BOOL です。属性を中心とした形式で XML を取得するには、このパラメータを True (1) に設定します。要素を中心とした形式で XML を取得するには、False (0) に設定します。

pbstrXML

[out, retval] 結果の XML フラグメントを含む BSTR へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

ProfileService オブジェクトの Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

pbstrXML パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

次の表は、XMLRetrieveEnum で有効とされる値の定義です。

名前 | 値 | 説明
psRetrieveInvalidValue | 0 | 無効なオプションです。
psRetrieveSchemaAndData | 1 | スキーマとデータの両方が取得されます。
psRetrieveDataOnly | 2 | データのみが取得されます。
psRetrieveSchemaOnly | 3 | スキーマのみが取得されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProfileObject オブジェクト

IProfileObject::get_Fields

プロファイルの XML 構造


IProfileObject::Update

このメソッドは、基になるデータ ストアに ProfileObject オブジェクトのデータを保存するために使います。

定義

HRESULT IProfileObject::Update(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

ProfileService オブジェクトの Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

Update メソッドは、オブジェクトをデータ ストアにコミットします。

IADs インターフェイス ルーチンを使って変更された内容は、すべてデータベースにコミットされます。

ProfileObject オブジェクトのデータにアクセするには、Fields プロパティを使います。

関連項目

ProfileObject オブジェクト

IProfileObject::get_Fields


ProfileService オブジェクト

このオブジェクトは、ProfileObject オブジェクトを作成、削除、および取得するために使います。

ProgID: | Commerce.ProfileService (外部作成可能)
COM クラス名: | ProfileService
COM インターフェイス名: | IProfileService
インターフェイス ID 定数: | IID_IProfileService
ヘッダー ファイル: | mscsups.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Profile Service Type Library
DLL 名: | mscsups.dll
スレッド モデル: | 両方

C++ で ProfileService オブジェクトのプロパティとメソッドにアクセスするには、IProfileService インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、ProfileService オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Errors | エラー | 前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。 このプロパティは読み取り専用です。

次の表は、ProfileService オブジェクトのメソッドを示しています。

メソッド | 説明
BindAs | 基になるプロファイル ストアにアクセスするためのユーザー資格情報を設定します。
CreateProfile | 指定された ProfileObject オブジェクトを作成します。
DeleteProfile | プロファイル システムから、プライマリ キーの値で指定された ProfileObject オブジェクトを削除します。
DeleteProfileByKey | プロファイル システムから、キーのメンバと値の対によって指定された ProfileObject オブジェクトを削除します。
GetProfile | プロファイル システムから、プライマリ キーの値で指定された ProfileObject オブジェクトを取得します。
GetProfileByKey | プロファイル システムから、キーのメンバと値の対によって指定された ProfileObject オブジェクトを取得します。
GetProfileDefXML | 指定されたプロファイル定義の XML 説明を取得します。
Initialize | 指定されたプロファイル ストアへの接続を確立し、スキーマ キャッシュにデータを取り込みます。
UnBind | 基になるプロファイル ストアにアクセスするためのユーザー資格情報を消去します。

解説

ProfileService オブジェクトは、ProfileObject オブジェクトへの読み取り/書き込み実行時アクセス機能、およびプロファイル定義への読み取り専用アクセス機能を実装しています。

ProfileService オブジェクトは、プロファイル オブジェクトへの実行時アクセスを提供します。アクセス先のプロファイル オブジェクトは、プロファイル スキーマの特定のインスタンスです。Commerce Server ビジネス デスクのプロファイル デザイナ モジュールおよび Commerce Server マネージャのプロファイル リソースは、プロファイル スキーマに変更を加えるための設計時アクセスを提供します。

Web ベース アプリケーションのコンテキストでは、ProfileService オブジェクトはアプリケーション用の Global.asa ファイル内で作成および初期化されることを想定しています。ProfileObject オブジェクトは、ページ スコープ内で作成されることを想定しています。

ProfileService オブジェクトのそのほかのメソッドまたはプロパティを呼び出す場合は、事前に Initialize メソッドを呼び出してください。

関連項目

プロファイル オブジェクト

プロファイル スキーマ

プロファイルの XML 構造

ProfileObject オブジェクト


IProfileService::BindAs

このメソッドは、基になるプロファイル ストアの ProfileObject オブジェクトにアクセスするために使われる資格情報を設定するために使います。

定義

HRESULT IProfileService::BindAs (
BSTR sUserName,
BSTR sPassword,
);

パラメータ

sUserName

[in] ProfileObject オブジェクトにアクセスするためのユーザー名を含む BSTR です。

sPassword

[in] ProfileObject オブジェクトにアクセスするためのパスワードを含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

このメソッドは、基になるディレクトリ ストア内の ProfileObject オブジェクトにアクセスし、それに変更を加えるために使われる資格情報を設定します。新しい ProfileObject オブジェクトまたは変更された ProfileObject オブジェクトは、これらの資格情報にバインドされます。指定された資格情報は、UnBind メソッドが呼び出されるまで、以後の ProfileObject オブジェクト処理で使われるセキュリティ コンテキストを定義しています。ここで指定された資格情報は、そのまま使われ、基になるディレクトリ ストアにバインドされます。これらの資格情報を適切な形式にして渡す処理は、クライアントが行います。たとえば、Active Directory にバインドするためには、次のいずれかの形式にして渡します。

  • 完全なユーザー プリンシパル名 (UPN) (例 : joeuser@domain.com)

  • SAM アカウント名 (例 : Domain\SAMAccountName)

  • セキュリティ プリンシパルの完全修飾識別名 (例 : CN=joeuser, CN=Users, DC=Domain, DC=com)

Membership Directory の場合は、セキュリティ プリンシパルの完全修飾識別名を指定しなければなりません。

資格情報を消去するには、UnBind メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProfileService オブジェクト

IProfileService::UnBind


IProfileService::CreateProfile

このメソッドは、ProfileObject オブジェクトを作成するために使います。

定義

HRESULT IProfileService::CreateProfile(
VARIANT sValue,
BSTR bstrType,
IProfileObject** ppProfileObject
);

パラメータ

sValue

[in] 新しい ProfileObject オブジェクトのプライマリ キーの値を含む Variant です。このバリアントに使用できる変数の型は VT_BSTR または VT_I4 です。

bstrType

[in] 新しい ProfileObject オブジェクトのスキーマの種類を含む BSTR です。

ppProfileObject

[out, retval] 新しく作成する ProfileObject オブジェクトの IProfileObject インターフェイスへのポインタのアドレスです。指定されたプライマリ キーとスキーマの種類の ProfileObject オブジェクトがプロファイル ストアに既に存在する場合は、ポインタが Null に設定されます。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

CreateProfile メソッドが、複数のデータ ソースから収集されたプロファイルの作成に失敗した場合、DeleteProfile メソッドを呼び出して、データ ストア内のエントリをすべてクリーンアップする必要があります。このとき、DeleteProfile メソッドでエラーが発生することがありますが、これは無視します。

CreateProfile メソッドは、指定された属性を持つ ProfileObject オブジェクトが、データベース内にまだ存在していないことを確認します。

返された ProfileObject オブジェクトの Fields プロパティを使うと、プロファイルのプロパティにアクセスすることができます。

既存の ProfileObject インスタンスをプロファイル ストアから取得するには、GetProfile メソッドまたは GetProfileByKey メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppProfileObject パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

ProfileService オブジェクト

IProfileService::DeleteProfile

IProfileService::GetProfile

IProfileService::GetProfileByKey

IProfileService::Initialize

ProfileObject オブジェクト

IProfileObject::get_Fields


IProfileService::DeleteProfile

このメソッドは、プライマリ キーの値とスキーマの種類によって指定された ProfileObject オブジェクトを削除するために使います。プロファイルに関連付けられているプロパティは、システムからすべてパージされます。

定義

HRESULT IProfileService::DeleteProfile(
VARIANT sValue,
BSTR bstrType
);

パラメータ

sValue

[in] プライマリ キーの値を含む Variant です。

bstrType

[in] プロファイル スキーマの種類を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

新しい ProfileObject オブジェクトの作成でエラーが発生したために DeleteProfile メソッドが呼び出された場合、作成されたエラー メッセージはすべて無視してください。

キーのメンバ/値の対およびスキーマの種類によって指定されたプロファイルを削除するには、DeleteProfileByKey メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

注意

  • ProfileObject オブジェクトを削除する際は、依存関係のある式が存在することもあるため、十分に注意してください。式の詳細については、ExpressionStore オブジェクトと ExpressionEval オブジェクトを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProfileService オブジェクト

IProfileService::CreateProfile

IProfileService::DeleteProfileByKey

ExpressionEval オブジェクト

ExpressionStore オブジェクト


IProfileService::DeleteProfileByKey

このメソッドは、キーのメンバの名前/値の対およびスキーマの種類によって指定された、ProfileObject オブジェクトを削除するために使います。プロファイルに関連付けられているプロパティは、システムからすべてパージされます。

定義

HRESULT IProfileService::DeleteProfileByKey(
BSTR bstrKeyMemberName,
VARIANT sValue,
BSTR bstrType
);

パラメータ

bstrKeyMemberName

[in] キーのメンバの名前を含む BSTR です。

sValue

[in] キーの値を含む Variant です。

bstrType

[in] プロファイル スキーマの種類を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

プライマリ キーの値とスキーマの種類を指定してプロファイルを削除するには、DeleteProfile メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

注意

  • ProfileObject オブジェクトを削除する際は、依存関係のある式が存在することもあるため、十分に注意してください。式の詳細については、ExpressionStore オブジェクトと ExpressionEval オブジェクトを参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProfileService オブジェクト

IProfileService::CreateProfile

IProfileService::DeleteProfile

ExpressionEval オブジェクト

ExpressionStore オブジェクト


IProfileService::get_Errors

Errors プロパティは読み取り専用の ADO Errors オブジェクトで、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。

定義

HRESULT IProfileObject::get_Errors(
Errors** ppErrors
);

パラメータ

ppErrors

[out, retval] Errors オブジェクトへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。

解説

Errors プロパティは、基盤技術が原因となって発生したものを始めとして、ProfileService オブジェクトの処理によって生成されたエラーをすべて収集します。

OLE DB Provider for SQL Server や OLE DB Provider for Microsoft Directory Services などの、基になるデータ ストア プロバイダが原因となって発生したエラーの場合は、Error オブジェクトの Number プロパティや Source プロパティだけが設定され、渡されることがあります。

標準 COM エラーについては、「標準 COM エラー」を参照してください。

次の ADO Errors オブジェクトのメソッドおよびプロパティがサポートされています。

  • Clear

  • Count

  • Item

  • _NewEnum

次の ADO Error オブジェクトのメソッドおよびプロパティがサポートされています。

  • Description

  • HelpFile

  • Number

  • Source

Errors プロパティにアクセスする前に、Initialize メソッドを呼び出してください。

関連項目

ProfileObject オブジェクト

ProfileService オブジェクト


IProfileService::GetProfile

このメソッドは、プライマリ キーの値とスキーマの種類によって指定された、ProfileObject オブジェクトを取得するために使います。

定義

HRESULT IProfileService::GetProfile(
VARIANT sValue,
BSTR bstrType,
VARIANT_BOOL bReturnError,
IProfileObject** ppProfileObject
);

パラメータ

sValue

[in] プライマリ キーの値を含む Variant です。

bstrType

[in] プロファイル スキーマの種類を含む BSTR です。

bReturnError

[in, optional, defaultvalue (-1)] 省略可能な VARIANT_BOOL です。

ppProfileObject

[out, retval] 返された ProfileObject オブジェクトの、IProfileObject インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

省略可能な bReturnError パラメータが True (-1) に設定されている場合、指定された ProfileObject オブジェクトが見つからないときは、ProfileObject オブジェクトは返されず、エラー メッセージ E_PS_PROFILE_NOTEXISTS が返されます。

bReturnError パラメータが False (0) に設定されている場合には、指定された ProfileObject オブジェクトが見つからないときはエラー メッセージは返されず、空の ProfileObject オブジェクトが返されます。

このメソッドは、IsCached 属性が False に設定されているプロパティは読み込みません。

返された ProfileObject オブジェクトの Fields プロパティを使うと、プロファイルのプロパティにアクセスすることができます。

キーのメンバの名前/値の対、およびスキーマの種類を指定してプロファイルを取得するには、GetProfileByKey メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppProfileObject パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

ProfileService オブジェクト

IProfileService::GetProfileByKey

IProfileService::Initialize

ProfileObject オブジェクト

IProfileObject::get_Fields


IProfileService::GetProfileByKey

このメソッドは、指定したキーのメンバの名前/値の対およびスキーマの種類に対応する、ProfileObject オブジェクトを取得するために使います。

定義

HRESULT IProfileService::GetProfileByKey(
BSTR bstrKeyMemberName,
VARIANT sValue,
BSTR bstrType,
VARIANT_BOOL bReturnError,
IProfileObject** ppProfileObject
);

パラメータ

bstrKeyMemberName

[in] キーのメンバの名前を含む BSTR です。

sValue

[in] キーの値を含む Variant です。

bstrType

[in] スキーマの種類を含む BSTR です。

bReturnError

[in, optional, defaultvalue (-1)] 省略可能な VARIANT_BOOL です。

ppProfileObject

[out, retval] 返された ProfileObject オブジェクトの、IProfileObject インターフェイスへのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

省略可能な bReturnError パラメータが True (-1) に設定されている場合、指定された ProfileObject オブジェクトが見つからないときは、ProfileObject オブジェクトは返されず、エラー メッセージ E_PS_PROFILE_NOTEXISTS が返されます。

bReturnError パラメータが False (0) に設定されている場合には、指定された ProfileObject オブジェクトが見つからないときはエラー メッセージは返されず、空の ProfileObject オブジェクトが返されます。

このメソッドは、IsCached 属性が False に設定されているプロパティは読み込みません。

返された ProfileObject オブジェクトの Fields プロパティを使うと、プロファイルのプロパティにアクセスすることができます。

プライマリ キーの値とスキーマの種類を指定してプロファイルを取得するには、GetProfile メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

ppProfileObject パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

ProfileService オブジェクト

IProfileService::GetProfile

IProfileService::Initialize

ProfileObject オブジェクト

IProfileObject::get_Fields


IProfileService::GetProfileDefXML

このメソッドは、指定されたプロファイル スキーマの XML 定義を取得するために使います。

定義

HRESULT IProfileService::GetProfileDefXML(
BSTR bstrProfileName,
VARIANT_BOOL bNamesOnly,
BSTR* pbstrXML
);

パラメータ

bstrProfileName

[in] プロファイル スキーマの種類の名前を含む BSTR です。

bNamesOnly

[in] メソッドがプロファイル スキーマの名前、プロファイル スキーマの定義のどちらを返すかを決定する VARIANT_BOOL です。値が False の場合、プロファイル定義を返すことを示します。値が True の場合、プロファイル スキーマの名前のみを返すことを示します。

pbstrXML

[out, retval] XML 説明を含む BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

bstrProfileName パラメータが空で bNamesOnly パラメータが False (0) の場合は、カタログ内にあるすべてのスキーマについて XML 説明が返されます。

bstrProfileName パラメータが空で bNamesOnly パラメータが True (-1) の場合、カタログ内にあるすべてのスキーマの名前が返されます。

XML 定義については、「プロファイルの XML 構造」を参照してください。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pbstrXML パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

関連項目

ProfileService オブジェクト

プロファイルの XML 構造


IProfileService::Initialize

このメソッドは、Commerce Server プロファイル ストアへの接続を確立し、指定したカタログにあるすべてのスキーマをスキーマ キャッシュに取り込むために使います。

定義

HRESULT IProfileService::Initialize(
BSTR sConfigStore,
BSTR sCatalog
);

パラメータ

sConfigStore

[in] プロファイル ストアへの接続文字列を含む BSTR です。

sCatalog

[in, optional] カタログを識別する BSTR です。この値を指定する場合、"プロファイル定義" と指定する必要があります。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

Initialize メソッドによって、プロファイルの管理に必要な内部パラメータとスキーマ キャッシュが作成されます。1 つの ProfileService オブジェクトが接続するプロファイル ストアは、1 つだけにする必要があります。複数のストアにアクセスするには、複数の ProfileService オブジェクトのインスタンスを作成しなければなりません。

プロファイル ストアのための接続文字列は、SiteConfigReadOnly オブジェクトを介して、または Commerce Server マネージャ コンソールの Commerce Server マネージャ\グローバル リソース\プロファイル(<コンピュータ名> <サイト名>) というキーにある s_ProfileServiceConnectionString プロパティを介して取得できます。

接続文字列は、次の必須トークンで構成されています。

  • Data Source または Database、あるいはその両方 [必須] : この属性を使うと、プロファイル データベースを含んだ SQL Server の名前をアプリケーション側で指定することができます。これらの属性のうち、少なくとも 1 つを指定する必要があります。これらの属性を両方とも指定した場合は、Data Source 属性の値が優先されます。

  • Initial Catalog または Server、あるいはその両方 [必須] : この属性を使うと、プロファイル定義を含むプロファイル データベースの名前をアプリケーション側で指定することができます。これらの属性のうち、少なくとも 1 つを指定する必要があります。これらの属性を両方とも指定した場合は、Initial Catalog 属性の値が優先されます。

  • User ID または UID、あるいはその両方 [必須] : この属性を使うと、プロファイル データベースに接続するためのログイン名をアプリケーション側で指定することができます。これらの属性のうち、少なくとも 1 つを指定する必要があります。これらの属性を両方とも指定した場合は、User ID 属性の値が優先されます。

次に示すのは、これらの属性を含んだ接続文字列の例です。

   Data Source=servername;Initial Catalog=dbname;User ID=user

区切り文字であるセミコロン (;) の前後に空白文字を入れたり、トークンの名前の中でセミコロンを使うことはできません。

プロファイル リソースでは、次の省略可能なトークンもサポートしています。

  • Provider [オプション] : プロファイル リソースの接続先となる OLE DB プロバイダを、アプリケーション側で指定することができます。このパラメータは、標準 ADO 接続文字列との一貫性を保つために用意されています。この属性の既定値であり、唯一使用できる値は "CSOLEDB" です。

  • Password [オプション] : User ID 属性または UID 属性に指定されたユーザーのパスワードを、アプリケーション側で指定することができます。この属性の既定値は Null です。

  • PsObjectCacheSize [オプション] : プロファイル リソース オブジェクトのキャッシュ サイズを、アプリケーション側で指定することができます。このキャッシュには、CreateProfile メソッドおよび GetProfile メソッドによってインスタンス化された ProfileObject オブジェクトが格納されます。この属性の既定値は、32768 です。

  • PsSchemaCacheSize [オプション] : プロファイル リソース定義 (スキーマ) のキャッシュ サイズを、アプリケーション側で指定することができます。一度読み込まれたエントリは、キャッシュからパージされることはありません。この属性の既定値は、64 です。

  • PsBackgroundThread [オプション] : バックグラウンド スレッドの作成をアプリケーション側で制御して、プロファイル リソース キャッシュにあるエントリを定期的にクリーンアップさせることができます。このパラメータに指定できる値は、0 または 1 です。0 を指定すると、バックグラウンド スレッドが使われなくなります。1 を指定した場合、バックグラウンド スレッドが使われます。既定では、バックグラウンド スレッドを使用するようになっています。

  • PsObjectAgeoutPeriod [オプション] : プロファイル リソースのキャッシュ エントリの保有期間を、アプリケーション側で指定することができます。保有期間は、参照されていないオブジェクトが、破棄されることなくキャッシュに保持される期間を指します。この属性の既定値は、5 分です。

注

  • 接続文字列にある Initial Catalog は、プロファイル ストアを含んでいるデータベースです。

  • Initialize メソッドの sCatalog パラメータは、プロファイル スキーマ定義 ("プロファイル定義") を含んでいるカタログです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

ProfileService オブジェクト


IProfileService::Unbind

このメソッドは、基になるプロファイル ストア内の ProfileObject オブジェクトにアクセスするために使われる、資格情報を消去するために使います。

定義

HRESULT IProfileService::Unbind (
);

パラメータ

なし。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

Errors プロパティは、前回のプロファイル リソース操作で見つかったエラーのコレクションを格納します。詳細については、「IProfileService::get_Errors」を参照してください。

解説

このメソッドは、基になるストア内の ProfileObject オブジェクトにアクセスするために使われる資格情報を消去します。新しいプロファイルまたは変更されたプロファイルは、特定のユーザーにバインドされることはありません。このメソッドは、特定のユーザーにバインドされていない既存の ProfileObject オブジェクトへのアクセスを取得するために使います。

特定のユーザーにバインドされた ProfileObject オブジェクトにアクセスするための資格情報を設定する場合は、Bind メソッドを使います。

ProfileService メソッドを使う前に、Initialize メソッドを呼び出す必要があります。

関連項目

ProfileService オブジェクト

IProfileService::BindAs


ReportRenderer オブジェクト

このオブジェクトは、静的レポートを同期的に作成 (表示) またはエクスポートするために使います。

ProgID: | Commerce.ReportRenderer (外部作成可能)
COM クラス名: | ReportRenderer
COM インターフェイス名: | _ReportRenderer
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Report Renderer Type Library
DLL 名: | ReportRenderer.dll
スレッド モデル: | 両方

C++ で ReportRenderer オブジェクトのメソッドにアクセスするには、_ReportRenderer インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、ReportRenderer オブジェクトのメソッドを示しています。

メソッド | 説明
Init | オブジェクトを初期化します。

解説

ReportRender オブジェクトには、初期化文字列として、作成するレポートの ReportStatusID パラメータを渡す必要があります。このパラメータは、レポートが実行された時点、または Reports モジュールからエクスポートされた時点で設定されています。

静的レポートをエクスポートすると、対象のデータベースに結果テーブルが書き込まれます。ListManager オブジェクトは、このオブジェクトが実装している CreateFromDWCalc メソッドを使って、このテーブルからのインポートを実行します。

ReportRender オブジェクトは、同期的に実行されます。静的レポートを非同期的に実行するには、AsyncRpt オブジェクトを使います。

ReportRenderer オブジェクトは Microsoft Visual Basic コンポーネントです。

関連項目

分析とレポート作成のためのスキーマ

分析とレポートのための XML 構造

カスタム レポートを作成する

AsyncRpt オブジェクト

ListManager オブジェクト

レポートを実行する


_ReportRenderer::Init

このメソッドは、ReportRenderer オブジェクトを初期化して、静的レポートを同期的に作成またはエクスポートするために使います。

定義

HRESULT IReportRenderer::Init(
BSTR* sParamString,
VARIANT_BOOL* pvResult
);

パラメータ

sParamString

[in, out] ReportRenderer オブジェクトにパラメータを指定するために使う BSTR へのポインタです。

pvResult

[out, retval] 初期化が成功したかどうかを示すために使われる VARIANT_BOOL へのポインタです。True (1) は成功を示します。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

sParamString パラメータは、6 つのパラメータが含まれる文字列で構成されており、各パラメータは "|" で区切られています。この文字列は、次のような形式になっています。

   "ReportStatusID|Data warehouse connection string|
    OLAP connection string|Destination connection string|
    Destination table name|Report execution time"

使用可能なパラメータは、次のパラメータで構成されたものです。

  • ReportStatusID : 表示またはエクスポートされるレポートを識別するために使われます。このパラメータは、レポートの実行時またはエクスポート時に作成される ReportStatus テーブルに格納されています。

  • Data warehouse connection string (データ ウェアハウス接続文字列) : 基になるデータが格納される場所です。有効となる接続文字列は、"DRIVER={SQL Server};SERVER=Server Name;DATABASE=Database Name;UID=username;PWD=password;" という形式のものです。

  • OLAP connection string (OLAP 接続文字列) : 基になる OLAP データが格納される場所です。有効となる接続文字列は、"DATA SOURCE=Server Name;INITIAL CATALOG=Database Name;" という形式のものです。

  • Destination connection string (出力先接続文字列) : エクスポートされたレポート データの格納先となるテーブルがある場所です。有効となる接続文字列は、"SERVER=Server Name;DATABASE=Database Name;UID=username;PWD=password;" という形式のものです。

  • Destination table name (出力先テーブル名) : エクスポートされたレポート データの格納先となるテーブルです。

  • Report execution time (レポート実行時刻) : レポートが実行された時刻です。指定されていない場合は、クライアント コンピュータ上の時刻形式および現在時刻が使用されます。

実際に使用されるパラメータは、レポートの種類 (SQL または MDX) に応じて決まります。さらに、レポートが表示されるのか、またはエクスポートされるのかによっても変わります。ReportStatusID パラメータおよび Data warehouse connection string (データ ウェアハウス接続文字列) パラメータは、どの場合でも必須です。そのほかの必須パラメータについては、次の表に示しています。パラメータが使用されない場合は、空欄になっています。

アクション : レポートの種類 | Report StatusID | データ ウェアハウス 接続文字列 | OLAP 接続文字列 | 出力先 接続文字列 | 出力先 テーブル名 | レポート 実行時刻
表示 : SQL | X | X |  |  |  | X
表示 : MDX | X | X | X |  |  | X
エクスポート : SQL | X | X |  | X | X |
エクスポート : MDX | X | X | X | X | X |

ReportRenderer オブジェクトで表示されるレポートには、次の制限があります。

  • 行の数は、最大で 1,000 行までです。

  • 列の数は、最大で 50 列までです。

  • 各行または列のディメンションは、最大で 5 ディメンション レベルまでです。

行および列の数は、レポート クエリ、レポート パラメータ、およびレポート定義によって決定されます。ディメンションの数は、レポートが作成されたときに、(SQL クエリの) ReportDimension テーブルに設定されます。これらの制限を超えるレポートを表示しようとすると、レポートは上の制限で切り捨てられます。レポートをエクスポートするときには制限はありません。レポート テーブルの詳細については、「分析とレポート作成のためのスキーマ.」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

pvResult パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

関連項目

ReportRenderer オブジェクト

分析とレポート作成のためのスキーマ

カスタム レポートを作成する


RowCollection オブジェクト

このオブジェクトは、ContentList オブジェクトとそれに対応する ContentListFactory オブジェクトに含まれているデータにアクセスするために使います。ある RowCollection オブジェクトは、これらのオブジェクト内のすべての行にアクセスします。また、ほかの RowCollection オブジェクトは、これらのオブジェクト内の行のうち、計算済みのサブセットにアクセスします。

ProgID: | 従属 (詳細については "解説" を参照)
COM クラス名: | RowCollection
COM インターフェイス名: | IRowCollection
インターフェイス ID 定数: | IID_IRowCollection
ヘッダー ファイル: | cacheint.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Cache Manager Type Library
DLL 名: | mscscache.dll
スレッド モデル: | 両方

C++ で RowCollection オブジェクトのメソッドとプロパティにアクセスするには、IRowCollection インターフェイスを使います。

次の表は、RowCollection オブジェクトのプロパティを示しています。

プロパティ | 型 | 説明
_NewEnum | IUnknown | Microsoft Visual Basic の "for each Row in Collection" 構文を使って、RowCollection オブジェクト内の行を繰り返し処理できるようにします。 このプロパティは読み取り専用です。
Count | long | RowCollection オブジェクトの行数を格納します。 このプロパティは読み取り専用です。
EOF | VARIANT_BOOL | 現在の行が RowCollection オブジェクト内の実際の行数を超えているかどうかを追跡します。 このプロパティは読み取り専用です。
Fields | Fields | 現在の行の Fields コレクション オブジェクトが含まれています。 このプロパティは読み取り専用です。
RowNum | long | ゼロ (0) から始まる現在の行の位置を格納します。 このプロパティは読み取り専用です。

次の表は、RowCollection オブジェクトのメソッドを示しています。

メソッド | 説明
MoveFirst | RowCollection オブジェクト内の最初の行を現在の行に設定します。
MoveNext | RowCollection オブジェクト内の現在の行の次の行を、新しい現在の行に設定します。

解説

RowCollection オブジェクトは従属オブジェクトです。IRowCollection インターフェイスへのポインタを取得するには、次のいずれかのメソッドを呼び出します。

  • IContentList::get_ActiveRows

  • IContentList::get_AllRows

  • IContentList::Search

  • IContentListFactory::get_AllRows

  • IContentListFactory::Search


IRowCollection::get__NewEnum

読み取り専用の _NewEnum プロパティでは、Microsoft Visual Basic の "for each Row in Collection" 構文を使って RowCollection オブジェクト内の行を列挙するしくみを提供しています。コレクション内の各行は Fields コレクション オブジェクトで、行内の個々のフィールドにアクセスするために使います。

定義

Get メソッド:

HRESULT IRowCollection::get__NewEnum(
IUnknown** _NewEnum
);

パラメータ

_NewEnum

[out,retval] プロパティを取得する場合に、IEnumVARIANT インターフェイスへのポインタを返すために使われる IUnknown インターフェイス ポインタです。このインターフェイスはコレクション内の行の繰り返しを管理します。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティは、Microsoft Visual Basic の "for each Row in Collection" 構文を使って RowCollection オブジェクト内の行を繰り返し処理するためのものです。このプロパティには、直接アクセスできません。

関連項目

RowCollection オブジェクト


IRowCollection::get_Count

Count プロパティは読み取り専用の long で、コレクションの行数を含んでいます。

定義

Get メソッド:

HRESULT IRowCollection::get_Count(
long* Count
);

パラメータ

Count

[out,retval] RowCollection オブジェクトの行数を含む long です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

RowCollection オブジェクト


IRowCollection::get_EOF

EOF プロパティは読み取り専用の Boolean で、コレクションの終わりに達したときに True を返します。

定義

Get メソッド:

HRESULT IRowCollection::get_EOF(
VARIANT_BOOL* EOF
);

パラメータ

EOF

[out,retval] 行の繰り返しが完了したかどうかを返すために使われる VARIANT_BOOL へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

RowCollection オブジェクト


IRowCollection::get_Fields

Fields プロパティは読み取り専用の Fields コレクションで、現在の行の Field オブジェクトを含んでいます。

定義

Get メソッド:

HRESULT IRowCollection::get_Fields(
Fields** Fields
);

パラメータ

Fields

[out,retval] 現在の行のフィールドを返すために使われる ActiveX Data Objects (ADO) Fields オブジェクトへのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティに関連付けられている Fields オブジェクトは、RowCollection オブジェクトの現在の行に対応しています。EOF プロパティが True の場合、現在の行がコレクション内の実際の行を超えて設定されていることを示します。このプロパティにアクセスすると、エラーが発生します。

関連項目

RowCollection オブジェクト


IRowCollection::MoveFirst

このメソッドは、現在の行が RowCollection オブジェクトの最初の行になるように設定するために使います。

定義

HRESULT IRowCollection::MoveFirst(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

RowCollection オブジェクト


IRowCollection::MoveNext

このメソッドは、現在の行が現在の行を 1 行超えた行になるように設定するために使います。つまり、コレクション内の次の行に設定します。

定義

HRESULT IRowCollection::MoveNext(
);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

関連項目

RowCollection オブジェクト


IRowCollection::get_RowNum

RowNum プロパティは読み取り専用の数値で、RowCollection オブジェクト内での現在の行の位置を含んでいます。行位置は、1 からではなく、0 から始まります。

定義

Get メソッド:

HRESULT IRowCollection::get_RowNum(
long* RowNum
);

パラメータ

RowNum

[out,retval] RowCollection オブジェクトの現在の行の位置を返すために使われる long です。行位置は、1 からではなく、0 から始まります。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このプロパティの値は、RowCollection オブジェクトの現在の行に対応しています。EOF プロパティが True の場合、現在の行がコレクション内の実際の行を超えて設定されていることを示します。このプロパティにアクセスすると、エラーが発生します。

関連項目

RowCollection オブジェクト


Shipping オブジェクト

このオブジェクトは、送料のプレビュー情報を作成するために使います。

ProgID: | Commerce.Shipping (外部作成可能)
COM クラス名: | Shipping
COM インターフェイス名: | _Shipping
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Shipping Components Type Library
DLL 名: | shipmgr.dll
スレッド モデル: | アパートメント

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、Shipping オブジェクトのメソッドを示しています。

メソッド | 説明
PreviewShipments | 注文を送付ごとに分け、送付先ごとにメソッドを使って送料のプレビューを作成します。


_Shipping::PreviewShipments

このメソッドは、送付先のプレビュー情報を作成するために使います。

定義

HRESULT _Shipping::PreviewShipments(
VARIANT* orderform,
VARIANT* context,
VARIANT* ShipmentDistinguishers,
VARIANT* ShippingPreview
);

パラメータ

orderform

[in] 送料プレビューを計算する OrderForm ディクショナリを含む Variant へのポインタです。

context

[in] 送付コンポーネントを実行するために使う Context ディクショナリを含む Variant へのポインタです。

ShipmentDistinguishers

[in] 注文を送付に分割するために使う項目属性 (キー) を含んだ文字列の SIMPLEARRAY を含む Variant へのポインタです。

ShippingPreview

[out, retval] 送付ごとにディクショナリの Simplelist を 返すために使う Variant へのポインタです。このポインタは、送付方法ごとに送料プレビューを含んだディクショナリの Simplelist を含みます。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ShippingPreview パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

PreviewShipments メソッドは、注文を個々の送付先に分割することによって、送料のプレビューを作成します。使われているしくみは、Splitter パイプライン コンポーネントと同じです。送付識別機能が送付先を分割するためにどのように使われているかの詳細については、「Splitter」を参照してください。

PreviewShipments メソッドは、送付先ごとにディクショナリの SimpleList を返します。返されるそれぞれの送付先ディクショナリは、ディクショナリの SimpleList を含み、それぞれのディクショナリは、特定の送付方法を使うための送料を含んでいます。

送付先のプレビュー情報全体をループする方法を示すコード例については、「送料をプレビューする」を参照してください。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

送料をプレビューする

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodManager オブジェクト

このオブジェクトは、サイトで利用できる送付方法を管理するために使います。ShippingMethodManager オブジェクトは、メソッドの追加と削除を行い、それらの説明、可用性、および構成を設定できます。

ProgID: | Commerce.ShippingMethodManager (外部作成可能)
COM クラス名: | ShippingMethodManager
COM インターフェイス名: | _ShippingMethodManager
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Shipping Components Type Library
DLL 名: | shipmgr.dll
スレッド モデル: | アパートメント

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、ShippingMethodManager オブジェクトのメソッドを示しています。

メソッド | 説明
CreateMethodInstance | 送付方法の空のインスタンスを作成します。
DeleteMethodInstance | 現在の送付方法インスタンスを削除します。
GetComponentConfig | 送付コンポーネントの Configuration ディクショナリを取得し、現在の送付方法を実装します。
GetInstalledMethodList | 現在の送付方法を含むレコードセットを返します。
GetMethodInfo | 1 つ以上の送付方法に関する情報を含むレコードセットを返します。
Initialize | ShippingMethodManager オブジェクトを初期化し、データベースに接続します。
LoadMethodInstance | ほかのメソッドによって操作される送付方法を読み込みます。
SaveMethodConfig | 現在の送付方法に関する情報を保存します。
SetCachableComponentConfig | コンポーネントの構成と、ほかのコンポーネントの情報を保存します。
SetMethodConfig | 現在の送付方法の名前と値の組み合わせを設定します。

解説

Commerce Server 2000 の送付アーキテクチャは、パイプラインのプログラミングまたは編集をしないで、Commerce Server ビジネス デスクの送付方法モジュールで変更できます。このために Commerce Server は、送付方法のデータベース テーブルである ShippingConfig と、送付コンポーネントを構成してこれらのメソッドを実装するために必要な情報を保守します。

ShippingMethodManager オブジェクトは、ShippingConfig データベース テーブルを管理するために、ビジネス デスクによって使われます。

送付オブジェクトの詳細については、複数の発送アーキテクチャの「概要」を参照してください。


_ShippingMethodManager::CreateMethodInstance

このメソッドは、新しい送付方法を作成するために使います。

定義

HRESULT __ShippingMethodManager::CreateMethodInstance(
VARIANT* bOnDisk,
VARIANT* sMethodId
);

パラメータ

bOnDisk

[in] ディスクに送付方法を作成するかどうかを示す Boolean を含む Variant です。このパラメータは通常 True に設定されます。

sMethodId

[out, retval] 新しい送付方法のメソッド ID である BSTR を含む Variant です。bOnDisk パラメータが False の場合は、空文字列に設定します。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

sMethodId パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

送付方法を作成してディスク上に保存した場合 (bOnSaved パラメータは True)、この関数は新しいレコードを現在のレコードセットに追加し、[enabled] 列の値にゼロ (0) を設定し、[shipping_method_id] 列に新しい送付方法 ID を設定します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::DeleteMethodInstance

このメソッドは、現在の送付方法インスタンスを削除するために使います。

定義

HRESULT _ShippingMethodManager::DeleteMethodInstance(void);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::GetComponentConfig

このメソッドは、送付コンポーネントの Configuration ディクショナリを取得し、現在の送付方法を実装するために使います。送付方法は、GetComponentConfig を呼び出す前に LoadMethodInstance を使って読み込む必要があります。

定義

HRESULT _ShippingMethodManager::GetComponentConfig(
VARIANT* dConfig
);

パラメータ

dConfig

[out, retval] Configuration ディクショナリを含むVariant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

dConfig パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::GetInstalledMethodList

このメソッドは、現在の送付方法のリストを取得するために使います。GetInstalledMethodList メソッドにより、リストをフィルタ処理し、返す列を選択し、リストを特定の順序に並べ替えることができます。

定義

HRESULT _ShippingMethodManager::GetInstalledMethodList(
VARIANT* Filter,
VARIANT* OrderBy,
VARIANT* columns,
VARIANT* rsReturn
);

パラメータ

フィルタ

[in] クエリの WHERE 句になる BSTR を含む Variant へのポインタです。フィルタ処理が不要な場合は、Null バリアントを指定します。たとえば、フィルタとして "enabled = 1" とすると、GetInstalledMethodList は有効な送付方法のみを返します。

OrderBy

[in] クエリの ORDER BY 句になる BSTR を含む Variant へのポインタです。順序付けが不要な場合は、Null バリアントを指定します。たとえば、OrderBy 引数として "shipping_method_name" とすると、結果は送付方法の名前で並べ替えられます。

columns

[in] 取得する値の列名の SafeArray を含む Variant へのポインタです。空の配列が渡された場合、ShippingConfig テーブルのすべての列が返されます。

rsReturn

[out, retval] 結果セットを格納する ADO Recordset オブジェクトを含む Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

rsResult パラメータは、このメソッドが正常に終了するときのみ有効なデータを参照します。

GetInstalledMethodList メソッドは、3 つのパラメータから SQL クエリを構築し、そのクエリを現在の ShippingConfig テーブルに対して実行し、結果を ADO Recordset オブジェクトで返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::GetMethodInfo

このメソッドは、ShippingConfig テーブルの 1 つ以上の列のデータベース属性に関する情報を取得するために使います。

定義

HRESULT _ShippingMethodManager::GetMethodInfo(
VARIANT* columns,
VARIANT* rsResult
);

パラメータ

columns

[in] 列の名前を含む BSTR 文字列の SafeArray を含む Variant です。空の配列を指定すると、すべての列を返します。

rsResult

[out, retval] 要求されたデータベース列に関する情報を持つ ADO Recordset オブジェクトを含む Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

rsResult パラメータは、このメソッドが正常に終了するときのみ有効なデータを参照します。

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

このメソッドは、ShippingConfig テーブルのデータ型、定義サイズ、および要求された列の属性を含む ADO Recordset オブジェクトを返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::Initialize

このメソッドは、ShippingMethodManager オブジェクトを初期化し、データベースに接続するために使います。

定義

HRESULT _ShippingMethodManager::Initialize(
VARIANT* connection_string
);

パラメータ

connection_string

[in] 接続文字列を持つ BSTR を含む Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::LoadMethodInstance

このメソッドは、指定された送付方法のインスタンスを読み込むために使います。

定義

HRESULT _ShippingMethodManager::LoadMethodInstance(
VARIANT* methodid
);

パラメータ

methodid

[in] 送付方法のメソッド ID である BSTR を含む Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、要求された送付方法のインスタンスを現在のレコードセットの 1 つのレコードとして読み込みます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::SaveMethodConfig

このメソッドは、SetMethodConfig メソッドで設定した現在の送付方法情報を保存するために使います。

定義

HRESULT __ShippingMethodManager::SaveMethodConfig(void);

パラメータ

なし。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SaveMethodConfig メソッドは、現在の送付情報の構成データを保存します。

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::SetCachableComponentConfig

このメソッドは、パイプライン コンポーネントの構成データと、ほかのコンポーネントの情報を設定するために使います。

定義

HRESULT __ShippingMethodManager::SetCachableComponentConfig(
VARIANT* progid,
VARIANT* configdict,
VARIANT* action,
VARIANT* actionfriendlyname
);

パラメータ

progid

[in] パイプライン コンポーネントの ProgID である BSTR を含む Variant へのポインタです。

configdict

[in] コンポーネントの構成情報を保持する Dictionary オブジェクトを含む Variant です。

action

[in] 送付コンポーネントの ASP 編集ページの名前を持つ BSTR を含む Variant です。

actionfriendlyname

[in] 送付コンポーネントの ASP 編集ページの表示名を持つ BSTR を含む Variant です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

このメソッドは、コンポーネントの Configuration ディクショナリを取得し、現在の構成と共に保存できる状態にします。また、このメソッドは ProgID、編集ページ、およびページの表示名を格納します。SaveMethodConfig メソッドが呼び出されるまで、設定は保存されません。

configdict パラメータは、通常、IPipelineComponentAdmin::GetConfigDictionary を使って取得されます。

このメソッドは、IPipelineComponentAdmin インターフェイスを利用します。このため、ShippingMethodManager オブジェクトによって構成可能なすべての送付コンポーネントは、IPipelineComponentAdmin インターフェイスをサポートしている必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


_ShippingMethodManager::SetMethodConfig

このメソッドは、現在の送付方法に、名前や説明などのプロパティを設定するために使います。

定義

HRESULT _ShippingMethodManager::SetMethodConfig(
VARIANT* ParametersAndValues
);

パラメータ

ParametersAndValues

[in] 名前と値の組み合わせを連続要素として持つ SafeArray を含む Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

このメソッドは、読み込まれた送付方法上で機能します。このメソッドを呼び出す前に、LoadMethodInstance または CreateMethodInstance を呼び出して、送付方法を ShippingMethodManager オブジェクトに読み込む必要があります。

この配列パラメータには、代替要素の名前と値が含まれます。奇数の添字には項目名が含まれ、偶数の添字には値が含まれます。

SaveMethodConfig メソッドは、このメソッドを使って入力された構成情報を保存するために使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

Splitter

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


SimpleFindResultInfo オブジェクト

このオブジェクトは、OrderGroupManager オブジェクトの SimpleFind メソッドと SimpleDelete メソッドを使うときの検索条件を指定するために使います。

ProgID: | Commerce.SimpleFindResultInfo (外部作成可能)
COM クラス名: | SimpleFindResultInfo
COM インターフェイス名: | _SimpleFindResultInfo
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

C++ で SimpleFindResultInfo オブジェクトのプロパティとメソッドにアクセスするには、_SimpleFindResultInfo インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、SimpleFindResultInfo オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
Columns | Variant | OrderGroupManager SimpleFind メソッドによって返される列のカスタム セットを指定します。
JoinLineItemInfo | VARIANT_BOOLEAN | OrderFormLineItems テーブルと結果を結合するかどうかを指定します。
JoinOrderFormInfo | VARIANT_BOOLEAN | OrderFormHeader テーブルが結果と結合されるかどうかを指定します。
OrderGroupSortColumn | Variant | 並べ替えに使用する列名を指定します。
PageNumber | long | 結果セットのページ番号を指定して、結果セットが PageSize を超えているかどうかを示します。
PageSize | long | ページ サイズを指定します。
SortDirection | Variant | 並べ替え順序を指定します。

解説

次の表は、OrderGroupManager SimpleFind メソッドが SimpleFindResultInfo オブジェクトに渡され、表で指定された値が JoinOrderFormInfo プロパティと JoinLineItemInfo プロパティに設定されているときに、OrderGroupManager SimpleFind メソッドによって返されるデータを示しています。

JoinOrderFormInfo | JoinLineItemInfo | SimpleFind メソッドの返されるデータ
False | False | 検索条件を満たす OrderGroup ごとに 1 レコード。OrderGroup のデータのみを返します。既定の設定は False です。
True | False | 検索条件を満たす OrderForm ごとに 1 レコード。OrderGroup と OrderForm のデータを返します。
True | True | 検索条件を満たす注文項目ごとに 1 レコード。OrderGroup、OrderForm、および注文項目のデータを返します。
False | True | 検索条件を満たす注文項目ごとに 1 レコード。OrderGroup、OrderForm、および注文項目のデータを返します。

関連項目

ビジネス プロセス オブジェクト

SimpleFindSearchInfo オブジェクト

OrderGroupManager オブジェクト

OrderGroup オブジェクト

OrderForm オブジェクト


_SimpleFindResultInfo::get_Columns、put_Columns

Columns プロパティは読み取りと書き込みが可能な Variant で、SimpleFind メソッドによって返される列のカスタム セットを指定します。列プロパティを指定する場合、列名をカンマで区切った文字列で指定する必要があります。プロパティが Null のままの場合、SimpleFind は標準的な列セットを返します。

定義

Get メソッド :

HRESULT _SimpleFindResultInfo::get_Columns(
VARIANT* Columns
);

Put メソッド :

HRESULT _SimpleFindResultInfo::put_Columns(
VARIANT* Columns
);

パラメータ

Columns

[in] プロパティを入力する場合は、既定の列のほかに返す列の名前を含む Variant です。
[out, retval] プロパティを取得する場合は、既定の列のほかに列の名前を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Columns パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

このプロパティを使うための必要条件の一覧は、「SimpleFindResultInfo オブジェクト」にあります。

関連項目

SimpleFindResultInfo オブジェクト


_SimpleFindResultInfo::get_JoinLineItemInfo、put_JoinLineItemInfo

JoinLineItemInfo プロパティは、読み取りと書き込みが可能な Boolean で、OrderFormLineItems テーブルと結果を結合するかどうかを示します。

定義

Get メソッド :

HRESULT _SimpleFindResultInfo::get_JoinLineItemInfo(
VARIANT_BOOL* JoinLineItemInfo
);

Put メソッド :

HRESULT _SimpleFindResultInfo::put_JoinLineItemInfo(
VARIANT_BOOL JoinLineItemInfo
);

パラメータ

JoinLineItemInfo

[in] プロパティを入力する場合は、OrderFormLineItems テーブルが結果と結合されるかどうかを指定する VARIANT BOOLEAN です。値が True の場合、OrderFormLineItems テーブルが結合されることを指定します。値が False の場合、結合は実行されません。
[out, retval] プロパティを取得する場合は、OrderFormLineItems テーブルが結果と結合されるかどうかを示す VARIANT BOOLEAN です。値が True の場合は、OrderFormLineItems テーブルが結合されることを示します。値が False の場合、結合は実行されません。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

JoinLineItemInfo パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

このプロパティを使うための必要条件の一覧は、「SimpleFindResultInfo オブジェクト」にあります。

関連項目

SimpleFindResultInfo オブジェクト


_SimpleFindResultInfo::get_JoinOrderFormInfo、put_JoinOrderFormInfo

JoinOrderFormInfo プロパティは、読み取りと書き込みが可能な Boolean で、OrderFormHeader テーブルが結果に結合されるかどうかを示します。

定義

Get メソッド :

HRESULT _SimpleFindResultInfo::get_JoinOrderFormInfo(
VARIANT_BOOL* JoinOrderFormInfo
);

Put メソッド :

HRESULT _SimpleFindResultInfo::put_JoinOrderFormInfo(
VARIANT_BOOL JoinOrderFormInfo
);

パラメータ

JoinOrderFormInfo

[in] プロパティを入力する場合は、OrderFormHeader テーブルが結果と結合されるかどうかを指定する VARIANT BOOLEAN です。値が True の場合は、OrderFormHeader テーブルが結合されることを指定します。値が False の場合、結合は実行されません。
[out, retval] プロパティを取得する場合は、OrderFormHeader テーブルが結果と結合されることを示す VARIANT BOOLEAN です。値が True の場合は、OrderFormHeader テーブルが結合されることを示します。値が False の場合、結合は実行されません。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

JoinOrderFormInfo パラメータに有効なデータが含まれるのは、プロパティへのアクセスがに正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

このプロパティを使うための必要条件の一覧は、「SimpleFindResultInfo オブジェクト」にあります。

関連項目

SimpleFindResultInfo オブジェクト


_SimpleFindResultInfo::get_OrderGroupSortColumn、put_OrderGroupSortColumn

OrderGroupSortColumn プロパティは、読み取りと書き込みが可能な Variant で、並べ替えに使う列名を含みます。

定義

Get メソッド :

HRESULT _SimpleFindResultInfo::get_OrderGroupSortColumn(
VARIANT* OrderGroupSortColumn
);

Put メソッド :

HRESULT _SimpleFindResultInfo::put_OrderGroupSortColumn(
VARIANT* OrderGroupSortColumn
);

パラメータ

OrderGroupSortColumn

[in] プロパティを入力する場合は、並べ替えに使用する列の名前を含む Variant です。
[out, retval] プロパティを取得する場合は、並べ替えに使用する列の名前を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

OrderGroupSortColumn パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

このプロパティを使うための必要条件の一覧は、「SimpleFindResultInfo オブジェクト」にあります。

関連項目

SimpleFindResultInfo オブジェクト


_SimpleFindResultInfo::get_PageNumber、put_PageNumber

PageNumber プロパティは、読み取りと書き込みが可能な long で、ジャンプ先のページ番号を含みます。このプロパティの設定は、PageSize プロパティと調整する必要があります。

定義

Get メソッド :

HRESULT _SimpleFindResultInfo::get_PageNumber(
long* PageNumber
);

Put メソッド :

HRESULT _SimpleFindResultInfo::put_PageNumber(
long PageNumber
);

パラメータ

PageNumber

[in] プロパティを入力する場合は、ページ番号を含む long です。
[out, retval] プロパティを取得する場合は、ページ番号を返すために使う long です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

PageNumber パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このプロパティは、たとえば、ListSheet で表示される注文を複数のページに分けて表示できるようにする、ページ機能を実装するために使います。

このプロパティは、1 に初期化されています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

このプロパティを使うための必要条件の一覧は、「SimpleFindResultInfo オブジェクト」にあります。

関連項目

SimpleFindResultInfo オブジェクト


_SimpleFindResultInfo::get_PageSize、put_PageSize

PageSize プロパティは読み取りと書き込みが可能な long で、ページ サイズを含んでいます。このプロパティの設定は、PageNumber プロパティと調整する必要があります。

定義

Get メソッド :

HRESULT _SimpleFindResultInfo::get_PageSize(
long* PageSize
);

Put メソッド :

HRESULT _SimpleFindResultInfo::put_PageSize(
long PageSize
);

パラメータ

PageSize

[in] プロパティを入力する場合は、ページ サイズを含む long です。
[out, retval] プロパティを取得する場合は、ページ サイズを返すために使う long です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

PageSize パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

このプロパティは、たとえば、ListSheet で表示される注文を複数のページに分けて表示できるようにする、ページ機能を実装するために使います。

このプロパティの既定値は 20 です。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

このプロパティを使うための必要条件の一覧は、「SimpleFindResultInfo オブジェクト」にあります。

関連項目

SimpleFindResultInfo オブジェクト


_SimpleFindResultInfo::get_SortDirection、put_SortDirection

SortDirection プロパティは読み取りと書き込みが可能な Variant で、並べ替え順序を含んでいます。このフィールドの値は、昇順の場合は "asc"、降順の場合は "desc" です。

定義

Get メソッド :

HRESULT _SimpleFindResultInfo::get_SortDirection(
VARIANT* SortDirection
);

Put メソッド :

HRESULT _SimpleFindResultInfo::put_SortDirection(
VARIANT* SortDirection
);

パラメータ

SortDirection

[in] プロパティを入力する場合は、並べ替え順序を含む Variant です。
[out, retval] プロパティを取得する場合は、並べ替え順序を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SortDirection パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

このプロパティを使うための必要条件の一覧は、「SimpleFindResultInfo オブジェクト」にあります。

関連項目

SimpleFindResultInfo オブジェクト


SimpleFindSearchInfo オブジェクト

このオブジェクトは、OrderGroupManager オブジェクトの SimpleFind メソッドや SimpleDelete メソッドを使って検索や削除を行う場合に、検索条件を指定するために使います。

ProgID: | Commerce.SimpleFindSearchInfo (外部作成可能)
COM クラス名: | SimpleFindSearchInfo
COM インターフェイス名: | _SimpleFindSearchInfo
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 OrderGroup Type Library
DLL 名: | requisition.dll
スレッド モデル: | アパートメント

C++ で、SimpleFindSearchInfo オブジェクトのプロパティとメソッドにアクセスするには、_SimpleFindSearchInfo インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、SimpleFindSearchInfo オブジェクトのプロパティを示しています。

プロパティ | 種類 | 説明
description | Variant | 検索対象となる商品説明を指定します。Null のままにした場合、商品説明は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
order_number | Variant | 検索対象となる注文番号を指定します。Null のままにした場合、注文番号は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
ordergroup_id | Variant | 検索対象となる OrderGroup ID を指定します。Null のままにした場合、OrderGroup ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
po_number | Variant | 検索対象となる OrderForm ID を指定します。Null のままにした場合、OrderForm ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
product_id | Variant | 検索対象となる商品 ID を指定します。Null のままにした場合、商品 ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
SearchDateTimeColumn | Variant | 検索対象となる DateTime 列の名前を指定します。Null のままにした場合、DateTime 列の名前は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
SearchDateTimeEnd | Variant | 検索対象となる DateTime の終了値を指定します。Null のままにした場合、DateTime の終了値は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
SearchDateTimeStart | Variant | 検索対象となる DateTime の開始値を指定します。Null のままにした場合、DateTime の開始値は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
StatusFilter | long | OrderGroup の状態を指定します。このプロパティを使うと、ユーザーは、状態 (バスケット、テンプレート、新しい注文など) を基準にしてフィルタ処理を実行できるようになります。 このプロパティは読み取りと書き込みが可能です。
user_firstname | Variant | 検索対象となるユーザーの名を指定します。Null のままにした場合、ユーザーの名は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_id | Variant | 検索対象となるユーザー ID を指定します。Null のままにした場合、ユーザー ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_lastname | Variant | 検索対象となるユーザーの姓を指定します。Null のままにした場合、ユーザーの姓は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_org_id | Variant | 検索対象となるユーザー組織の ID を指定します。Null のままにした場合、ユーザー組織の ID は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。
user_org_name | Variant | 検索対象となるユーザー組織を指定します。Null のままにした場合、ユーザー組織は検索条件の一部にはなりません。 このプロパティは読み取りと書き込みが可能です。

関連項目

ビジネス プロセス オブジェクト

SimpleFindResultInfo オブジェクト

OrderGroupManager オブジェクト

OrderGroup オブジェクト

OrderForm オブジェクト


_SimpleFindSearchInfo::get_description/put_description

description プロパティは読み取りと書き込みが可能な Variant で、検索条件となる商品説明を指定するために使われます。Null のままにした場合、商品説明は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_description(
VARIANT* description
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_description(
VARIANT* description
);

パラメータ

description

[in] プロパティを入力する場合は、検索する品目の説明を含む Variant です。
[out, retval] プロパティを取得する場合は、検索する品目の説明を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

description パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_order_number/put_order_number

order_number プロパティは読み取りと書き込みが可能な Variant で、検索対象となる注文番号を指定するために使われます。Null のままにした場合、注文番号は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_order_number(
VARIANT* order_number
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_order_number(
VARIANT* order_number
);

パラメータ

order_number

[in] プロパティを入力する場合は、検索する注文番号を含む Variant です。
[out, retval] プロパティを取得する場合は、検索する注文番号を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

order_number パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_ordergroup_id/put_ordergroup_id

ordergroup_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となる OrderGroup ID を含んでいます。Null のままにした場合、OrderGroup ID は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_ordergroup_id(
VARIANT* ordergroup_id
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_ordergroup_id(
VARIANT* ordergroup_id
);

パラメータ

ordergroup_id

[in] プロパティを入力する場合は、検索する OrderGroup ID を含む Variant です。
[out, retval] プロパティを取得する場合は、検索する OrderGroup ID を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

ordergroup_id パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_po_number/put_po_number

po_number プロパティは読み取りと書き込みが可能な Variant で、検索対象となる OrderForm ID を含んでいます。Null のままにした場合、OrderForm ID は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_po_number(
VARIANT* po_number
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_po_number(
VARIANT* po_number
);

パラメータ

po_number

[in] プロパティを入力する場合は、検索する OrderForm ID を含む Variant です。
[out, retval] プロパティを取得する場合は、検索する OrderForm ID を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

po_number パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_product_id/puｔ.produｃｔ_id

product_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となる商品 ID を含んでいます。Null のままにした場合、商品 ID は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_product_id(
VARIANT* product_id
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_product_id(
VARIANT* product_id
);

パラメータ

product_id

[in] プロパティを入力する場合は、検索する商品 ID を含む Variant です。
[out, retval] プロパティを取得する場合は、検索する商品 ID を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

product_id パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_SearchDateTimeColumn/put_SearchDateTimeColumn

SearchDateTimeColumn プロパティは読み取りと書き込みが可能な Variant で、検索条件の一部となる DateTime 列の名前を含んでいます。Null のままにした場合、DateTime 列の名前は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_SearchDateTimeColumn(
VARIANT* SearchDateTimeColumn
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_SearchDateTimeColumn(
VARIANT* SearchDateTimeColumn
);

パラメータ

SearchDateTimeColumn

[in] プロパティを入力する場合は、検索時に使う DateTime 列の名前を含む Variant です。
[out, retval] プロパティを取得する場合は、検索時に使う DateTime 列の名前を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SearchDateTimeColumn パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_SearchDateTimeEnd/put_SearchDateTimeEnd

SearchDateTimeEnd プロパティは読み取りと書き込みが可能な Variant で、検索対象となる DateTime の終了値を含んでいます。Null のままにした場合、DateTime の終了値は検索条件の一部にはなりません。このプロパティは、SearchDateTimeColumn プロパティと組み合わせて使います。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_SearchDateTimeEnd(
VARIANT* SearchDateTimeEnd
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_SearchDateTimeEnd(
VARIANT* SearchDateTimeEnd
);

パラメータ

SearchDateTimeEnd

[in] プロパティを入力する場合は、検索する DateTime の終了値を含む Variant です。
[out, retval] プロパティを取得する場合は、検索する DateTime の終了値を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SearchDateTimeEnd パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_SearchDateTimeStart/put_SearchDateTimeStart

SearchDateTimeStart プロパティは読み取りと書き込みが可能な Variant で、検索対象となる DateTime の開始値を含んでいます。Null のままにした場合、DateTime の開始値は検索条件の一部にはなりません。このプロパティは、SearchDateTimeColumn プロパティと組み合わせて使います。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_SearchDateTimeStart(
VARIANT* SearchDateTimeStart
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_SearchDateTimeStart(
VARIANT* SearchDateTimeStart
);

パラメータ

SearchDateTimeStart

[in] プロパティを入力する場合は、検索する DateTime の開始値を含む Variant です。
[out, retval] プロパティを取得する場合は、検索する DateTime の開始値を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

SearchDateTimeStart パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_StatusFilter/put_StatusFilter

StatusFilter プロパティは読み取りと書き込みが可能な Variant で、OrderGroup の状態を含んでいます。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_StatusFilter(
long* StatusFilter
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_StatusFilter(
long StatusFilter
);

パラメータ

StatusFilter

[in] プロパティを入力する場合は、OrderGroup の状態を含む long です。
[out, retval] プロパティを取得する場合は、OrderGroup の状態を返すために使う long です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

StatusFilter パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

StatusFilter パラメータ値は、検索対象をバスケット、注文、テンプレート、または、これらの組み合わせの中から指定します。パラメータの値には、ビット フィールドが用いられます。次の表は、各ビットの値を示しています。

状態の種類 | 値
バスケット | 1
テンプレート | 2
新規注文 | 4
カスタム | 8
カスタム | 16

注

  • バスケットとテンプレートの内容は 1 つのテーブルに保持され、ほかのすべての状態コード (4 以上のコード) を持つ OrderGroup の内容はほかのテーブルに保持されるので、検索条件として指定できる値は、特定のビット フィールドの値に限定されます。

    次の値が許可されます。

    • 1 (バスケット検索)

    • 2 (テンプレート検索)

    • 3 (バスケットまたはテンプレート)

    • 4 (新規注文)

    • 12 ( 4 & 8)

    • 24 (8 & 16)

    次の値は許可されていません。

    • 5 (バスケットまたは新規注文)

    • 6 (テンプレートまたは新規注文)

    • 9 (1 & 8)

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_user_firstname/put_user_firstname

user_firstname プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザーの名を含んでいます。Null のままにした場合、ユーザーの名は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_user_firstname(
VARIANT* user_firstname
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_user_firstname(
VARIANT* user_firstname
);

パラメータ

user_firstname

[in] プロパティを入力する場合は、検索するユーザーの名を含む Variant です。
[out, retval] プロパティを取得する場合は、検索するユーザーの名を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

user_firstname パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_user_id/put_user_id

user_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザーの ID を含んでいます。Null のままにした場合、ユーザーの ID は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_user_id(
VARIANT* user_id
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_user_id(
VARIANT* user_id
);

パラメータ

user_id

[in] プロパティを入力する場合は、検索するユーザーの ID を含む Variant です。
[out, retval] プロパティを取得する場合は、検索するユーザーの ID を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

user_id パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_user_lastname/put_user_lastname

user_lastname プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザーの姓を含んでいます。Null のままにした場合、ユーザーの姓は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_user_lastname(
VARIANT* user_lastname
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_user_lastname(
VARIANT* user_lastname
);

パラメータ

user_lastname

[in] プロパティを入力する場合は、検索するユーザーの姓を含む Variant です。
[out, retval] プロパティを取得する場合は、検索するユーザーの姓を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

user_lastname パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_user_org_id/put_user_org_id

user_org_id プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザー組織の ID を含んでいます。Null のままにした場合、ユーザー組織の ID は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_user_org_id(
VARIANT* user_org_id
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_user_org_id(
VARIANT* user_org_id
);

パラメータ

user_org_id

[in] プロパティを入力する場合は、検索するユーザー組織の ID を含む Variant です。
[out, retval] プロパティを取得する場合は、検索するユーザー組織の ID を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

user_org_id パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


_SimpleFindSearchInfo::get_user_org_name/put_user_org_name

user_org_name プロパティは読み取りと書き込みが可能な Variant で、検索対象となるユーザー組織の名前を含んでいます。Null のままにした場合、ユーザー組織の名前は検索条件の一部にはなりません。

定義

Get メソッド :

HRESULT _SimpleFindSearchInfo::get_user_org_name(
VARIANT* user_org_name
);

Put メソッド :

HRESULT _SimpleFindSearchInfo::put_user_org_name(
VARIANT* user_org_name
);

パラメータ

user_org_name

[in] プロパティを入力する場合は、検索するユーザー組織の名前を含む Variant です。
[out, retval] プロパティを取得する場合は、検索するユーザー組織の名前を返すために使う Variant です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

user_org_name パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleFindSearchInfo オブジェクト

OrderGroupManager::SimpleDelete

OrderGroupManager::SimpleFind


SimpleList オブジェクト

このオブジェクトは、列挙型をサポートする Variant の配列を作成するために使います。

ProgID: | Commerce.SimpleList (外部作成可能)
COM クラス名: | CSimpleList
COM インターフェイス名: | ISimpleList
インターフェイス ID 定数: | IID_ISimpleList
ヘッダー ファイル: | commerce.h, mspu_guids.h
タイプ ライブラリ名: | Microsoft Commerce 2000 Core Components Type Library
DLL 名: | MscsCore.dll
スレッド モデル: | 両方

C++ で SimpleList オブジェクトのプロパティとメソッドにアクセスするには、ISimpleList インターフェイスを使います。

次の表は、SimpleList オブジェクトのプロパティを示しています。

プロパティ | 型 | 説明
Count | long | SimpleList オブジェクト内の要素の数を返します｡ このプロパティは読み取り専用です。
Item | Variant | SimpleList オブジェクトの要素を格納します。 このプロパティは読み取りと書き込みが可能です。

次の表は、SimpleList オブジェクトのメソッドを示しています。

メソッド | 説明
Add | 指定された項目を SimpleList オブジェクトに追加します。
Delete | 指定された項目を SimpleList オブジェクトから削除します。

関連項目

汎用オブジェクト

Dictionary オブジェクト


ISimpleList::Add

このメソッドは、指定した項目をこの SimpleList オブジェクトに追加するために使います。

定義

HRESULT ISimpleList::Add(
VARIANT* pVar
);

パラメータ

pVar

[in] SimpleList に追加する Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleList オブジェクト

ISimpleList::Delete


ISimpleList::get_Count

このプロパティは、SimpleList オブジェクト内の要素の数を返すために使います。

定義

HRESULT ISimpleList::get_Count(
long* Count
);

パラメータ

Count

[out, retval] SimpleList 内の項目の数を返すために使われる long へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Count パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

Delete メソッドなどの SimpleList オブジェクトのメソッドでは、パラメータとして配列インデックスの入力値が必要になります。このため、呼び出し元は必ず事前にこのメソッドを呼び出しておかなくてはなりません。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleList オブジェクト


ISimpleList::Delete

このメソッドは、指定した項目を SimpleList オブジェクトから削除するために使います。

定義

HRESULT ISimpleList::Delete(
long Index
);

パラメータ

Index

[in] 削除する項目のインデックス値を含む long です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値またはカスタム COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 説明
DISP_E_BADINDEX | Index パラメータが範囲外の値を参照しています。これは、Index に SimpleList よりも大きい値または 0 より小さい値が含まれていることを意味します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SimpleList オブジェクト

ISimpleList::Add

ISimpleList::get_Count


ISimpleList::get_Item/put_Item

Item プロパティは読み取りと書き込みが可能な Variant で、SimpleList オブジェクトの要素を含んでいます。初期化された Variant は、指定した配列インデックスの位置に格納されます。指定されたインデックス位置に既に項目が格納されていた場合、既存の項目は入力処理が行われると上書きされます。

定義

Get メソッド:

HRESULT ISimpleList::get_Item(
long Index,
VARIANT* Item
);

Put メソッド :

HRESULT ISimpleList::put_Item(
long Index,
VARIANT Item
);

Putref メソッド :

HRESULT ISimpleList::putref_Item(
long Index,
VARIANT Item
);

パラメータ

Index

[in] 項目のインデックスを含む long です。

Item

[in] プロパティを入力する場合は、新しい項目を含む Variant です。
[out, retval] プロパティを取得する場合は、項目を返すために使う Variant です。

戻り値

これらのメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準またはカスタムの COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。

次の表は、このメソッドで返すことができるカスタム COM エラー値を示しています。

定数 | 説明
DISP_E_BADINDEX | Index パラメータが範囲外の値を参照しています。これは、Index に SimpleList よりも大きい値または 0 より小さい値が含まれていることを意味します。

グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

Item パラメータに有効なデータが含まれるのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

値を入力する場合、オブジェクト参照を設定するときは putref_Item メソッドを使い、スカラ値を設定するときは put_Item メソッドを使います。

関連項目

SimpleList オブジェクト


SiteConfig オブジェクト

このオブジェクトは、次のことを行うために使います。

  • サイト構成情報の作成または削除

  • 管理データベースへの更新のあったサイト構成情報の格納

  • 管理データベースからのサイト構成情報の読み込み

  • サイトへのリソース構成データのインポート/サイトからのリソース構成データのエクスポート
ProgID: | Commerce.SiteConfig (外部作成可能)
COM クラス名: | SiteConfig
COM インターフェイス名: | _SiteConfig
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Configuration Type Library
DLL 名: | MSCSCfg.dll
スレッド モデル: | アパートメント

C++ で、SiteConfig オブジェクトのプロパティやメソッドにアクセスするには、_SiteConfig インターフェイスを使います。

次の表は、SiteConfig オブジェクトが持つ唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Fields | Fields | 構成フィールドを返します。これらのフィールドのいくつかには、リソースの構成設定が含まれています。 このプロパティは、読み取りと書き込みが可能です。

次の表は、SiteConfig オブジェクトのメソッドを示しています。

メソッド | 説明
AddRefToGroupComponent | サイトがグローバル リソースにアクセスできるように、グローバル リソースへの参照を追加します。
CreateComponentConfig | 指定されたリソースの構成情報を管理データベースに作成し、書き込みます。
DeleteComponentConfig | 指定されたリソースの構成情報を削除します。
DeleteSQLScript | 指定された SQL スクリプト ファイルを管理データベースから削除します。
ExportResource | 指定されたファイルの中に、指定したリソース、プロパティ、および属性を書き込みます。
GetAppsInSite | 指定されたサイトにある Commerce Server 2000 アプリケーションの一覧を取得します。
GetIfCollection | このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトまたは Variant Array のうち、どちらか適切な方に変換するために使います。
GetResourcePropAttrib | 指定されたリソースの指定されたプロパティの属性を示すキーと値の組み合わせが格納されているディクショナリを取得します。
GetSQLScript | 指定された SQL スクリプト ファイルを管理データベースから取得します。
ImportResource | 指定されたリソース、リソースのプロパティ、および属性を、指定されたファイルから読み取って、Commerce Server 2000 のデータベースに書き込みます。
Initialize | 管理データベースにあるサイト構成情報を読み込みます。
MakeArrayFromSimpleList | 指定された SimpleList オブジェクトを Array に変換します。
MakeArrayFromString | Fields プロパティから読み取られた値を Array に変換します。
MakeSimpleListFromArray | Array を SimpleList オブジェクトに変換します。
MakeStringFromArray | Array を変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにします。
MakeStringFromSimpleList | SimpleList オブジェクトを変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにします。
PutSQLScript | 指定された SQL スクリプト ファイルを管理データベースに入力します。
SaveConfig | サイトの構成設定を管理データベースに保存します。

解説

ユーザー独自のカスタム リソースの追加方法によっては、このオブジェクトを使って管理データベースから構成設定にアクセスできるようにする必要があります。

関連項目

構成オブジェクト

カスタム リソースを統合する

GlobalConfig オブジェクト

SiteConfigReadOnly オブジェクト


_SiteConfig::AddRefToGroupComponent

このメソッドは、グローバル リソースへの参照を追加して、サイトがそのリソースにアクセスできるようにするために使います。このメソッドを使ってグローバル リソースを作成する場合、正しいプロパティ値を読み取るためには SiteConfigReadOnly オブジェクトのメソッドを使います。プロパティ値を正しく設定するために、このサイト レベルのリソースによって参照されているグローバル リソースの GlobalConfig オブジェクトを使います。

定義

HRESULT _SiteConfig::AddRefToGroupComponent(
BSTR bstrSiteResourceName,
BSTR bstrGroupResourceName
);

パラメータ

bstrSiteResourceName

[in] サイトに加えるリソース構成オブジェクトの名前を含む BSTR です。

bstrGroupResourceName

[in] 参照の追加先であるグローバル リソース構成オブジェクトの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドを使ってグローバル リソースを作成する場合、正しいプロパティ値を読み取るためには SiteConfigReadOnly オブジェクトのメソッドを使います。プロパティ値を正しく設定するために、このサイト レベルのリソースによって参照されているグローバル リソースの GlobalConfig オブジェクトを使います。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::CreateComponentConfig

このメソッドは、構成スキーマ クラスのインスタンスを作成して、サイトのレコードセットに読み込むために使います。

定義

HRESULT _SiteConfig::CreateComponentConfig(
BSTR bstrConfigComponentName,
BSTR bstrConfigSchemaClass
);

パラメータ

bstrConfigComponentName

[in] リソース構成オブジェクト インスタンスの新しい名前を含む BSTR です。

bstrConfigSchemaClass

[in] リソース構成スキーマのクラス名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドは、bstrConfigSchemaClass パラメータに指定されているクラスのインスタンスを作成し、そのインスタンスの Name プロパティを bstrConfigComponentName で指定されている名前に設定します。インスタンスは、サイトのレコードセットに読み込まれます。

このメソッドは SaveConfig メソッドを呼び出します。

次の表は、このメソッドのスキーマ クラスの一覧です。

管理データベースでのクラスの名前 | リソース名
MSCS_Catalog | 商品カタログ
MSCS_AppConfigDefault | アプリケーション既定の構成
MSCS_TransactionConfig | トランザクションの構成
MSCS_Transactions | トランザクション
MSCS_Content | 現在では使用されていません
MSCS_Campaigns | キャンペーン
MSCS_AuthManager | CS 認証のサイト
MSCS_DirectMailer | ダイレクト メーラー
MSCS_Predictor | 予測
MSCS_Predictor_Site | 現在では使用されていません
MSCS_Datawarehouse_Group | グローバル データ ウェアハウス
MSCS_Datawarehouse_Site | サイト データ ウェアハウス
MSCS_BizDataStore | プロファイル リソース
MSCS_Address | IIS アプリケーション (Retail や RetailBizDesk など)
MSCS_UPMDtsTask | システム プロファイリングの DTS タスク 情報

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト

_SiteConfig::DeleteComponentConfig


_SiteConfig::DeleteComponentConfig

このメソッドは、指定したリソースについての管理データベース情報を削除するために使います。

HRESULT _SiteConfig::DeleteComponentConfig(
BSTR bstrConfigComponentName
);

パラメータ

bstrConfigComponentName

[in] 削除する管理データベース情報に関連付けられているリソースの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

この削除処理では、リソースに固有の情報のうち、構成情報以外は何も削除されません。たとえば、商品カタログ リソースを削除しても、データベースから Product Catalog テーブルが削除されることはありません。構成情報のみが削除されます。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト

_SiteConfig::CreateComponentConfig


_SiteConfig::DeleteSQLScript

このメソッドは、指定した SQL スクリプト ファイルを管理データベースから削除するために使います。

定義

HRESULT _SiteConfig::DeleteSQLScript(
BSTR sResource,
BSTR sScriptName
);

パラメータ

sResource

[in] 削除する SQL スクリプト ファイルに関連付けられているリソースの名前を含む BSTR です。

sScriptName

[in] 削除する SQL スクリプト ファイルの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::ExportResource

このメソッドは、指定したファイルの中に、指定したリソース、リソースのプロパティ、および属性を書き込むために使います。

定義

HRESULT _SiteConfig::ExportResource(
BSTR bstrResourceName,
BSTR bstrFileName
);

パラメータ

bstrResourceName

[in] リソース名を含む BSTR です。

bstrFileName

[in] リソースのエクスポート先のファイル名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドと ImportResource メソッドは、お互いに補完し合う関係にあります。このメソッドは、ImportResource が使うファイルを作成します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::get_Fields

Fields プロパティは、読み取りと書き込みが可能な Fields オブジェクトです。Fields オブジェクトには、リソースの構成設定を保持するレコードセットが含まれています。Fields オブジェクトは、ADO の切断されたレコードセットです。

定義

HRESULT _SiteConfig::get_Fields(
Fields** Fields
);

パラメータ

Fields

[out] このメソッドが、リソース構成情報を返すために使う Fields オブジェクトへのポインタを書き込むアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

Fields パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

構成情報を変更するには、Fields オブジェクト内のデータを更新します。次に、SaveConfig を呼び出して、その変更内容をコミットしてデータベースに戻します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::GetAppsInSite

このメソッドは、指定したサイトにある Commerce Server 2000 アプリケーションの一覧を取得するために使います。

定義

HRESULT _SiteConfig::GetAppsInSite(
BSTR* strSiteName,
VARIANT* vtAppNames
);

パラメータ

strSiteName

[in] サイトの名前を含む BSTR へのポインタです。このサイトは、現在実行されている Commerce Server 2000 アプリケーションの一覧の取得対象となるサイトです。

vtAppNames

[out, retval] Commerce Server 2000 アプリケーションの一覧を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

vtAppNames パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::GetIfCollection

このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトや Variant Array などの適切なオブジェクトに変換するために使います。

定義

HRESULT _SiteConfig::GetIfCollection(
VARIANT* strList,
VARIANT* retVal
);

パラメータ

strList

[in] 変換対象のエンコードされた文字列を含む Variant へのポインタです。

retVal

[out, retval] 適切なデータ型に変換されたデータを返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

retVal パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

Fields プロパティに含まれる文字列のエンコードが SimpleList オブジェクトを示す場合、SimpleList オブジェクトが返されます。エンコードが Variant Array を示す場合、Variant Array が返されます。コレクション オブジェクトが示されていない場合、メソッドは元のエンコードされた入力文字列を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::GetResourcePropAttrib

このメソッドは、キーと値の組み合わせを保持する Dictionary オブジェクトを取得するために使います。取得する Dictionary オブジェクトは、指定したリソースの指定したプロパティの属性を示すものです。

定義

HRESULT _SiteConfig::GetResourcePropAttrib(
BSTR strResourceName,
BSTR strPropName,
IDictionary** idictResPropAttrib
);

パラメータ

strResourceName

[in] リソース名を含む BSTR です。

strPropName

[in] リソースのプロパティ名を含む BSTR です。

idictResPropAttrib

[out, retval] IDictionary インターフェイスを受け取るためのポインタのアドレスです。このインターフェイスは、指定したリソースの指定したプロパティの属性を表す、キーと値の対を返すために使われます｡

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

idictResPropAttrib パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::GetSQLScript

このメソッドは、指定した SQL スクリプト ファイルを管理データベースから取得するために使います。

定義

HRESULT _SiteConfig::GetSQLScript(
BSTR sResource,
BSTR sScriptName,
BSTR* strScriptContents
);

パラメータ

sResource

[in] 目的の SQL スクリプト ファイルに関連付けられているリソースを含む BSTR です。

sScriptName

[in] 目的の SQL スクリプト ファイルのファイル名を含む BSTR です。

strScriptContents

[out, retval] SQL スクリプト ファイルの内容を返すために使われる BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

strScriptContents パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::ImportResource

このメソッドは、指定したリソース、リソースのプロパティ、および属性を指定したファイルから読み取って、Commerce Server 2000 データベースに書き込むために使います。

定義

HRESULT _SiteConfig::ImportResource(
BSTR bstrFileName
);

パラメータ

bstrFileName

[in] ファイル名を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドは、ExportResource メソッドを補完するものです。このメソッドは、ExportResource メソッドが作成したファイルを利用します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::Initialize

このメソッドは、管理データベースにあるサイト構成情報を読み込むために使います。

定義

HRESULT _SiteConfig::Initialize(
BSTR bstrSiteName
);

パラメータ

bstrSiteName

[in] サイトの名前を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::MakeArrayFromSimpleList

このメソッドは、指定された SimpleList オブジェクトを Array に変換するために使います。

定義

HRESULT _SiteConfig::MakeArrayFromSimpleList(
IDispatch** list,
VARIANT* vtArray
);

パラメータ

list

[in] Array に変換する SimpleList オブジェクトを示す IDispatch インターフェイス ポインタ。

vtArray

[out, retval] 変換済みの Array を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtArray パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列に対しては、特殊なメソッドを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::MakeArrayFromString

このメソッドは、Fields プロパティから読み取ったエンコードされた文字列を、Array に変換するために使います。エンコードされた文字列が Array プロパティを示していない場合、メソッドに渡された元の文字列が返されます。

定義

HRESULT _SiteConfig::MakeArrayFromString(
VARIANT strList,
VARIANT* vtArray
);

パラメータ

strList

[in] エンコードされた文字列を含む Variant です。

vtArray

[out, retval] 変換された Array または変換されていない文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtArray パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列に対しては、特殊なメソッドを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドに、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトが表示する値にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfig オブジェクトは、エンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::MakeSimpleListFromArray

このメソッドは、Array を SimpleList オブジェクトに変換するために使います。

定義

HRESULT _SiteConfig::MakeSimpleListFromArray(
VARIANT* varArray,
IDispatch** iSimpleList
);

パラメータ

varArray

[in] 変換対象の Array を含む Variant へのポインタです。

iSimpleList

[out, retval] 変換済みの SimpleList オブジェクトを返すために使う IDispatch インターフェイスのポインタのアドレスです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

iSimpleList パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

重要

  • 複数値配列に対しては、特殊なメソッドを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::MakeStringFromArray

このメソッドは、Array オブジェクトを変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにするために使います。

定義

HRESULT _SiteConfig::MakeStringFromArray(
VARIANT* varArray,
VARIANT* vtEncodedString
);

パラメータ

varArray

[in] エンコード対象の Array を含む Variant へのポインタです。

vtEncodedString

[out, retval] エンコードされた文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtEncodedString パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列に対しては、特殊なメソッドを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfig オブジェクトは、エンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::MakeStringFromSimpleList

このメソッドは、SimpleList オブジェクトを変換してエンコードされた文字列にし、Fields プロパティに書き込めるようにするために使います。

定義

HRESULT _SiteConfig::MakeStringFromSimpleList(
IDispatch** slist,
BSTR* strEncodedString
);

パラメータ

slist

[in] エンコードされた文字列に変換される SimpleList オブジェクトへの IDispatch インターフェイスのポインタです。

strEncodedString

[out, retval] エンコードされた文字列を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

strEncodedString パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列に対しては、特殊なメソッドを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、SimpleList、または Fields 列のオブジェクトとしてはサポートされません。そのため、SiteConfig オブジェクトは、エンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::PutSQLScript

このメソッドは、指定した SQL スクリプト ファイルを管理データベースに入れるために使います。

定義

HRESULT _SiteConfig::PutSQLScript(
BSTR sResource,
BSTR sScriptName,
BSTR sScriptContents
);

パラメータ

sResource

[in] SQL スクリプト ファイルに関連付けられているリソースの名前を含む BSTR です。

sScriptName

[in] SQL スクリプト ファイルの名前を含む BSTR です。

sScriptContents

[in] SQL スクリプト ファイルの内容を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfig オブジェクト


_SiteConfig::SaveConfig

このメソッドは、変更または更新のあったサイトの構成設定をすべて保存するために使います。

定義

HRESULT _SiteConfig::SaveConfig(
);

パラメータ

なし。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

このメソッドは、サイトの構成全体を保存します。2 人のユーザーがサイト構成の別の部分を同時に更新しようとした場合、最後に保存された内容によって、最初にサイト構成を更新したユーザーによる変更が上書きされます。

関連項目

SiteConfig オブジェクト


SiteConfigReadOnly オブジェクト

このオブジェクトは、管理データベースにあるサイト構成情報を読み込むために使います。

ProgID: | Commerce.SiteConfigReadOnly (外部作成可能)
COM クラス名: | SiteConfigReadOnly
COM インターフェイス名: | _SiteConfigReadOnly
インターフェイス ID 定数: | なし
ヘッダー ファイル: | なし
タイプ ライブラリ名: | Microsoft Commerce 2000 Configuration Type Library
DLL 名: | MSCSCfg.dll
スレッド モデル: | アパートメント

C++ でSiteConfigReadOnly オブジェクトのプロパティとメソッドにアクセスするには、_SiteConfigReadOnly インターフェイスを使います。

次の表は、SiteConfigReadOnly オブジェクトが持つ唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Fields | Fields | サイトおよびサイト リソースの構成設定を返します。 このプロパティは読み取り専用です。

次の表は、SiteConfigReadOnly オブジェクトのメソッドを示しています。

メソッド | 説明
GetAppsInSite | 指定されたサイトにある Commerce Server 2000 アプリケーションの一覧を取得します。
GetIfCollection | このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトまたは Variant Array のうち、どちらか適切な方に変換するために使います。
Initialize | 管理データベースにあるサイト構成情報を読み込みます。
MakeArrayFromSimpleList | 指定された SimpleList オブジェクトを Array に変換します。
MakeArrayFromString | Fields プロパティから読み取った値を Array に変換します。
MakeSimpleListFromArray | Array を SimpleList オブジェクトに変換します。
MakeStringFromArray | Array をエンコードされた文字列に変換します。これは Fields プロパティに書き込めます。
MakeStringFromSimpleList | SimpleList オブジェクトをエンコードされた文字列に変換します。これはFields プロパティに書き込めます。

解説

SiteConfigReadOnly オブジェクトを使うと、SiteConfig オブジェクトを使う場合よりも多くの構成データにアクセスすることができます。SiteConfigReadOnly オブジェクトを使う場合、リソースへの参照にアクセスすると、グループ リソースの値が返されます。SiteConfig オブジェクトを使う場合、返されるのはリソースの名前への参照のみです。

ユーザー独自のカスタム リソースの追加方法によっては、このオブジェクトを使って管理データベースから構成設定にアクセスできるようにする必要があります。

関連項目

構成オブジェクト

カスタム リソースを統合する

GlobalConfig オブジェクト

SiteConfig オブジェクト


_SiteConfigReadOnly::get_Fields

Fields プロパティは読み取り専用の Fields オブジェクトです。Fields オブジェクトの中には、サイトおよびサイト リソースの構成設定が保持されています。

定義

HRESULT _SiteConfigReadOnly::get_Fields(
Fields** Fields
);

パラメータ

Fields

[out] このメソッドが、サイトおよびリソース構成情報を返すために使う Fields オブジェクトへのポインタを書き込むアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このプロパティは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラー値を返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

Fields パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト

_SiteConfigReadOnly::Initialize


_SiteConfigReadOnly::GetAppsInSite

このメソッドは、指定したサイトにある Commerce Server 2000 アプリケーションの一覧を取得するために使います。

定義

HRESULT _SiteConfig::GetAppsInSite(
BSTR* strSiteName,
VARIANT* vtAppNames
);

パラメータ

strSiteName

[in] サイトの名前を含む BSTR へのポインタです。このサイトは、現在実行されている Commerce Server 2000 アプリケーションの一覧の取得対象となるサイトです。

vtAppNames

[out, retval] Commerce Server 2000 アプリケーションの一覧を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このメソッドを使う前に、Initialize メソッドを呼び出す必要があります。

vtAppNames パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


_SiteConfigReadOnly::GetIfCollection

このメソッドは、Fields プロパティから読み取った値を、SimpleList オブジェクトや Variant Array などの適切なオブジェクトに変換するために使います。

定義

HRESULT _SiteConfig::GetIfCollection(
VARIANT* strList,
VARIANT* retVal
);

パラメータ

strList

[in] 変換対象のエンコードされた文字列を含む Variant へのポインタです。

retVal

[out, retval] 適切なデータ型に変換されたデータを返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

retVal パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

Fields プロパティに含まれる文字列のエンコードが SimpleList オブジェクトを示す場合、SimpleList オブジェクトが返されます。エンコードが Variant Array を示す場合、Variant Array が返されます。コレクション オブジェクトが示されていない場合、メソッドは元のエンコードされた入力文字列を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


_SiteConfigReadOnly::Initialize

このメソッドは、管理データベースにあるサイト構成情報を読み込むために使います。

定義

HRESULT _SiteConfigReadOnly::Initialize(
BSTR bstrSiteName
);

パラメータ

bstrSiteName

[in] サイトの名前を含む BSTR です。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

このオブジェクトを使う前に、Initialize メソッドを呼び出す必要があります。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


_SiteConfigReadOnly::MakeArrayFromSimpleList

このメソッドは、指定された SimpleList オブジェクトを Array に変換するために使います。

定義

HRESULT _SiteConfig::MakeArrayFromSimpleList(
IDispatch** list,
VARIANT* vtArray
);

パラメータ

list

[in] Array に変換する SimpleList オブジェクトへの IDispatch インターフェイス ポインタです。

vtArray

[out, retval] 変換済みの Array を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtArray パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


_SiteConfigReadOnly::MakeArrayFromString

このメソッドは、Fields プロパティから読み取ったエンコードされた文字列を、Array に変換するために使います。エンコードされた文字列が Array プロパティを示していない場合、メソッドに渡された元の文字列が返されます。

定義

HRESULT _SiteConfig::MakeArrayFromString(
VARIANT strList,
VARIANT* vtArray
);

パラメータ

strList

[in] エンコードされた文字列を含む Variant です。

vtArray

[out, retval] 変換された Array または変換されていない文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtArray パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトが表示する値にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfigReadOnly オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


_SiteConfigReadOnly::MakeSimpleListFromArray

このメソッドは、Array を SimpleList オブジェクトに変換するために使います。

定義

HRESULT _SiteConfig::MakeSimpleListFromArray(
VARIANT* varArray,
IDispatch** iSimpleList
);

パラメータ

varArray

[in] 変換対象の Array を含む Variant へのポインタです。

iSimpleList

[out, retval] 変換済みの SimpleList オブジェクトを返すために使う IDispatch インターフェイス ポインタのアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

iSimpleList パラメータに有効なデータが含まれるのは、メソッドが正常に値を返した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


_SiteConfigReadOnly::MakeStringFromArray

このメソッドは、Array オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列はFields プロパティに書き込めます。

定義

HRESULT _SiteConfig::MakeStringFromArray(
VARIANT* varArray,
VARIANT* vtEncodedString
);

パラメータ

varArray

[in] エンコード対象の Array を含む Variant へのポインタです。

vtEncodedString

[out, retval] エンコードされた文字列を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

vtEncodedString パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、または Fields 列としてのオブジェクトをサポートしません。そのため、SiteConfigReadOnly オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


_SiteConfigReadOnly::MakeStringFromSimpleList

このメソッドは、SimpleList オブジェクトをエンコードされた文字列に変換するために使います。エンコードされた文字列は Fields プロパティに書き込めます。

定義

HRESULT _SiteConfig::MakeStringFromSimpleList(
IDispatch** slist,
BSTR* strEncodedString
);

パラメータ

slist

[in] エンコードされた文字列を変換する SimpleList オブジェクトへの IDispatch インターフェイスのポインタです。

strEncodedString

[out, retval] エンコードされた文字列を返すために使う BSTR のアドレスです。

戻り値

このメソッドは、正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

すべての ADO、SQL、および ODBC エラーもこのメソッドによって返されます。

解説

strEncodedString パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

重要

  • 複数値配列には、特別なメソッドのグループを使います。複数値配列を管理データベースに保存および取得する方法は、これらのメソッドしか承認および推奨されていません。次のメソッドには、複数値配列構造を持つプロパティを指定して使う必要があります。
    • MakeArrayFromSimpleList

    • MakeSimpleListFromArray

    • MakeArrayFromString

    • MakeStringFromArray

注

  • このメソッドは、Fields オブジェクトによって表示される値を更新する場合にのみ使います。クライアント側の切断された ADO レコードセットは、Variant、Array、SimpleList、または Fields 列のオブジェクトとしてはサポートされません。そのため、SiteConfigReadOnly オブジェクトはエンコードされた文字列形式でデータを格納します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

SiteConfigReadOnly オブジェクト


StandardSManager オブジェクト

このオブジェクトは、買物客 ID を実行時に作成し、取得する機能を利用するために使います。

ProgID: | Commerce.StandardSManager (外部作成可能)
COM クラス名: | MSCSStandardSManager_3_0
COM インターフェイス名: | IMSCSStandardSManager_3_0
インターフェイス ID 定数: | IID_IMSCSStandardSManager_3_0
ヘッダー ファイル: | mspu_guids.h
タイプ ライブラリ名: | Commerce 1.0 Type Library
DLL 名: | Commerce.dll
スレッド モデル: | 両方

C++ で StandardSManager オブジェクトのプロパティとメソッドにアクセスするには、IMSCSStandardSManager_3_0 インターフェイスを使います。

このオブジェクトは ASP スクリプト内で使われることを想定しているため、C++ コードからアクセスするのは一般的な使い方ではありません。

次の表は、StandardSManager オブジェクトが持つ唯一のプロパティを示しています。

プロパティ | 種類 | 説明
Mode | Integer | Page オブジェクトの GetShopperID メソッドと PutShopperID メソッドがどのように買物客 ID を取得し、格納するかを決定します。

次の表は、StandardSManager オブジェクトのメソッドを示しています。

メソッド | 説明
CreateShopperId | 現在のユーザーに割り当てる一意の買物客 ID を作成します。
GetShopperId | 現在のユーザーの一意な買物客 ID を返します。
InitManager | StandardSManager オブジェクトを初期化します。
PutShopperId | サイトの StandardSManager オブジェクトの初期化モードに応じて、指定した買い物客 ID を Cookie に書き込むか、URL または SURL で使用するために格納するか、またはその両方の操作を行います。

解説

このオブジェクトは、Site Server 3.0 Commerce Edition との下位互換のためだけに含まれています。AuthManager オブジェクトによって置き換えられます。

関連項目

下位互換性オブジェクト

AuthManager オブジェクト


IMSCSStandardSManager_3_0::CreateShopperId

このメソッドを使用して、現在のユーザーの一意な買物客 ID を作成します。

定義

HRESULT IMSCSStandardSManager_3_0::CreateShopperId(
BSTR* pbstrRet
);

パラメータ

pbstrRet

[out, retval] 新規買物客 ID を返すために使う BSTR へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pbstrRet パラメータが有効な値を指すのは、メソッドが正常に値を返した場合だけです。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

IMSCSStandardSManager_3_0::InitManager

IMSCSStandardSManager_3_0::GetShopperId

IMSCSStandardSManager_3_0::PutShopperId


IMSCSStandardSManager_3_0::GetShopperId

このメソッドを使用して、現在のユーザーの買物客 ID を取得します。サイトの StandardSManager オブジェクトの初期化モードに応じて、URL クエリ文字列または Cookie から買物客 ID が返されます。

定義

HRESULT IMSCSStandardSManager_3_0::GetShopperId(
IDispatch* pdispContext,
VARIANT* pvtRet
);

パラメータ

pdispContext

[in] ASP スクリプト コンテキストを含む IDispatch インターフェイスへのポインタです。

pvtRet

[out, retval] 買物客 ID を返すために使う Variant へのポインタです。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

pvtRet パラメータが有効なデータをポイントするのは、メソッドが正常に終了した場合だけです。

買物客 ID が見つからない場合は、GetShopperID メソッドが空文字列を返します。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

IMSCSStandardSManager_3_0::get_Mode/put_Mode

IMSCSStandardSManager_3_0::PutShopperId


IMSCSStandardSManager_3_0::InitManager

このメソッドを使用して、指定したサイト名およびモードに対して StandardSManager オブジェクトを初期化します。

定義

HRESULT IMSCSStandardSManager_3_0::InitManager(
BSTR bstrStoreKey,
BSTR bstrMode
);

パラメータ

bstrStoreKey

[in] サイトの名前を含む BSTR です。

bstrMode

[in] ユーザー情報をどのように格納するかを示す BSTR です。初期化モードの詳細については、"解説" を参照してください。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

bstrMode パラメータには、次の値を指定できます。

モード | 動作
Cookie | PutShopperID メソッドが、買物客 ID をクライアント システム上の Cookie に格納します。GetShopperID メソッドがこの Cookie を取得します。
url | MCSSIDUrlKey を URL 変数の名前の部分として、PutShopperID メソッドが買物客 ID を URL に追加します。GetShopperID メソッドが URL から買物客 ID を取得します。
Cookieurl | PutShopperID メソッドが、クライアント システム上の Cookie および URL に買物客 ID を格納します。GetShopperID メソッドが、まず Cookie から買物客 ID の取得を試み、次にURL から取得を試みます。
Urlcookie | PutShopperID メソッドが、URL に買物客 ID を格納し、それを cookie としてクライアント システムにも格納します。GetShopperID メソッドが、まず URL から買物客 ID の取得を試み、次に Cookie から取得を試みます。

このオブジェクトは、Site Server 3.0 Commerce Edition との下位互換のためだけに含まれています。

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

IMSCSStandardSManager_3_0::get_Mode/put_Mode

IMSCSStandardSManager_3_0::PutShopperId


IMSCSStandardSManager_3_0::get_Mode/put_Mode

Mode プロパティは読み取りと書き込みが可能な Integer で、Page オブジェクトの GetShopperID メソッドと PutShopperID メソッドが買物客 ID を取得および格納する方法を決定します。

定義

Get メソッド:

HRESULT IMSCSStandardSManager_3_0::get_Mode(
int* Mode
);

Put メソッド :

HRESULT IMSCSStandardSManager_3_0::put_Mode(

 int Mode

);

パラメータ

Mode

[in] プロパティを入力する場合は、モードを含む Integer です。

[out, retval] プロパティを取得する場合は、モードを返すために使う Integer です。

戻り値

これらのメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

これらのメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

StandardSManager オブジェクトを作成したら、GetShopperID メソッドまたは PutShopperID メソッドを呼び出す前に、StandardSManager オブジェクトを初期化する必要があります。初期化するには、サイト名と初期化モードを指定して StandardSManager オブジェクトの InitManager メソッドを呼び出します。

次の表は、Mode プロパティの Integer として指定できる値を示しています。

モード | 動作
0 | Cookie だけ参照します。
1 | URL だけ参照します。
2 | まず Cookie を、次に URL を参照します。
3 | まず URL を、次に Cookie を参照します。

Mode パラメータに有効なデータが含まれるのは、プロパティへのアクセスが正常に行われた場合だけです

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

Page オブジェクト

IMSCSStandardSManager_3_0::InitManager


IMSCSStandardSManager_3_0::PutShopperId

このメソッドを使用して、現在のユーザーの買物客 ID を格納します。オブジェクトが初期化されたら、買物客 ID が、Cookie または URL の一部として格納されます。

定義

HRESULT IMSCSStandardSManager_3_0::PutShopperId(
IDispatch* pdispContext,
BSTR bstrShopperID
);

パラメータ

pdispContext

[in] ASP スクリプト コンテキストを取得するのに使用する IDispatch インターフェイスへのポインタです。

bstrShopperID

[in] 格納する買物客 ID を含む BSTR です。

戻り値

このメソッドは、処理が正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは標準 COM HRESULT エラーを返します。標準 COM エラーの詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、API 関数 GetErrorInfo を使います。特に便利なのは、IErrorInfo インターフェイスの GetDescription メソッドが返す、テキストによるエラー説明です。

解説

COM プロパティおよびメソッド パラメータのメモリ所有権に関する問題の詳細については、「COM パラメータのメモリを管理する」を参照してください。

関連項目

StandardSManager オブジェクト

IMSCSStandardSManager_3_0::get_Mode/put_Mode

IMSCSStandardSManager_3_0::GetShopperId


インターフェイス リファレンス

Microsoft Commerce Server 2000 は、特定のインターフェイスをサポートする Component Object Model (COM) オブジェクトを作成 (プログラミング) することで拡張が可能です。特定のインターフェイスをサポートすることにより、これらのオブジェクトは標準的な方法で呼び出すことができます。これらのオブジェクトは、次の 2 つのカテゴリに分類できます。

  1. パイプライン コンポーネント

    パイプライン コンポーネントは、特定のインターフェイスを1 つまたは複数実装しています。これらのインターフェイスを使うことで、パイプライン コンポーネントを Commerce Server パイプラインのコンテキストで実行したり、パイプライン エディタを使用してパイプライン コンポーネントを構成し、パイプライン構成に含めたりできるようになっています。パイプラインの詳細、および Commerce Server におけるパイプラインのさまざまな用途の詳細については、「パイプラインを利用する」を参照してください。

  2. サイト パッケージャ コンポーネント

    サイト パッケージャ コンポーネントは、IPuP インターフェイスを実装しています。このインターフェイスを使うと、サイト パッケージャ コンポーネントを Commerce Server サイト パッケージャから呼び出して、カスタム データのパッケージやアンパックを行うことができます。このカスタム データは、多くの場合、管理データベース (MSCS_Admin) 以外の場所に格納されたカスタム リソースの構成情報です。

    カスタム リソースの統合の概要については、「カスタム リソースを統合する」を参照してください。

    管理データベース以外の場所に格納されているデータのパッケージ化およびアンパックの詳細については、「そのほかのデータをパッケージ化する」を参照してください。

Commerce Server COM オブジェクトで実装される標準 COM インターフェイスの 3 番目のカテゴリとして、汎用ステータス保存インターフェイスがあります。パイプライン コンポーネントは、多くの場合、それらのインターフェイスを 1 つ以上実装しています。これらのステータス保存インターフェイスの中には、Commerce Server に付属するほかの COM オブジェクトに実装されているものもあります。たとえば、Dictionary オブジェクトは IPersistXML インターフェイスを実装しています。このインターフェイスを使うことで、Dictionary オブジェクトの内容を、特定の書式を持つ XML 形式文字列として保存することができます。逆に、特定の書式を持つ XML 形式文字列の内容に基づいて、このオブジェクトの内容を初期化することもできます。

ここでは、これらのインターフェイスについて詳しく説明します。これを読むと、それらを適切な種類の新しい COM オブジェクトに実装できるようになります。

ここでは、次のトピックについて説明します。

  • パイプライン コンポーネントのインターフェイス : パイプライン コンポーネント インターフェイスについて説明します。COM コンポーネントは、このインターフェイスを介すことで Commerce Server パイプライン コンポーネントとして動作できます。

  • サイト パッケージャ インターフェイス : サイト パッケージャ インターフェイスについて説明します。このインターフェイスを介して、COM オブジェクトにカスタム データのパッケージ化やアンパックを実行させることができます。

  • 汎用ステータス保存インターフェイス : 汎用ステータス保存インターフェイスについて説明します。このインターフェイスを介して、データを XML 形式の文字列、Dictionary オブジェクト、またはストリームに保存するよう COM オブジェクトに指示することができます。


パイプライン コンポーネントのインターフェイス

Microsoft Commerce Server 2000 は、パイプライン インターフェイスと呼ばれる一連の Component Object Model (COM) を定義しています。また、パイプライン コンポーネントは一般的に、Commerce Server で定義された汎用ステータス保存インターフェイスのほか、標準の OLE インターフェイスである ISpecifyPropertyPages および IPersistStreamInit を実装しています。

どのパイプライン コンポーネントでも、IPipelineComponent インターフェイスをサポートする必要があります。このインターフェイスがないと、Commerce Server パイプラインはコンポーネントを実行できません。それ以外のインターフェイスは省略可能です。新しいコンポーネントを Commerce Server アーキテクチャに円滑に組み込むための各種機能を公開しています。

次の表は、必須の IPipelineComponent インターフェイスとその他の省略可能なインターフェイスの一覧です。

インターフェイス | 説明
IPipelineComponent | コンポーネントを実行します。 このインターフェイスは必須です。
IPipelineComponentAdmin | Dictionary オブジェクトを使用して、コンポーネントのプロパティを設定および取得します。 このインターフェイスは省略可能です。
IPipelineComponentDescription | SAFEARRAY を使用して、コンポーネントが読み書きする OrderForm オブジェクト要素と PipeContext オブジェクト要素を識別します。 このインターフェイスは省略可能です。
IPipelineComponentUI | パイプライン コンポーネントを構成するためのダイアログ ボックスを表示します。 このインターフェイスは省略可能です。
ISpecifyPipelineComponentUI | コンポーネントのダイアログ ボックスを表示するための IPipelineComponentUI インターフェイスを使って、起動するオブジェクトを決定します。 このインターフェイスは省略可能です。
ISpecifyPropertyPages | オブジェクトでプロパティ ページがサポートされることを示します。 これは標準 OLE インターフェイスです。このインターフェイスは省略可能です。
IPersistStreamInit | オブジェクトに関連付けられたデータをストリームに保存します。Active Template Library (ATL) パイプライン ウィザードでは、この形式のステータス保存が使われます。 これは標準 OLE インターフェイスです。このインターフェイスは省略可能です。
IPersistDictionary | オブジェクトに関連付けられたデータを Dictionary オブジェクトに保存します。 これは、Commerce Server で定義される汎用ステータス保存インターフェイスです。このインターフェイスは省略可能です。


IPipelineComponent インターフェイス

いずれのパイプライン コンポーネントも IPipelineComponent インターフェイスを実装して、各コンポーネント間で OrderForm オブジェクト インターフェイス ポインタを受け渡しする必要があります。コンポーネントからエラーが返された場合、パイプラインは実行を終了し、呼び出し元にエラーを返すことがあります。

IPipelineComponent インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
Execute | パイプラインがコンポーネントの実行を開始するエントリ ポイントです。
EnableDesign | コンポーネントにデザイン モードを設定します。

解説

Active Template Library (ATL) パイプライン コンポーネント ウィザードによって生成される IPipelineComponent インターフェイスのコードの詳細については、「IPipelineComponent インターフェイスを実装する」を参照してください。

ヘッダー : pipecomp.h

タイプ ライブラリ : Microsoft Commerce 2000 Order Pipeline Type Library (pipeline.dll)

IDL ファイル : Pipecomp.idl


IPipelineComponent::Execute

このメソッドは、パイプライン コンポーネントを実行するために使います。

定義

HRESULT Execute(
..IDispatch* pDispOrder,
..IDispatch* pDispContext,
..long lFlags,
..long* plErrorLevel
);

パラメータ

pDispOrder

[in] OrderForm オブジェクトへのポインタです。

pDispContext

[in] Context オブジェクトへのポインタです。これは、MessageManager オブジェクト、Content オブジェクト、および言語情報へのポインタを含む Dictionary オブジェクトです。

lFlags

[in] 予約されています。このパラメータは必ずゼロ (0) に設定します。

plErrorLevel

[out, retval] 許容されるエラーのレベルを示すフラグです。このパラメータの有効な値については、"解説" を参照してください。

このエラー情報は、返される HRESULT 情報を補完するためのものです。パイプラインはコンポーネントから返されたエラー (E_xxxx エラー) をエラー レベル 2 にマップします。

解説

plErrorLevel パラメータには、次の値を指定できます。

値 | 意味
0 | エラーはありません。コンポーネントは正常に実行されました。
1 | この処理で、バスケット エラーまたは注文エラーが発生しました。
2 | このコンポーネントの実行時に、重大なエラーが発生しました。

Active Template Library (ATL) パイプライン コンポーネント ウィザードによって生成される IPipelineComponent インターフェイスのコードの詳細については、「IPipelineComponent インターフェイスを実装する」を参照してください。

戻り値

このメソッドは、HRESULT 値を返します。

関連項目

IPipelineComponent インターフェイス


IPipelineComponent::EnableDesign

このメソッドは、デザイン モードと実行モードのいずれかで実行するコンポーネントを作成するために使います。パイプライン エディタを実行する場合に便利なデザイン モードの方が、よりエラーを許容できます。実行モード (既定) は運用モードに相当します。

定義

HRESULT EnableDesign(
BOOL fEnable
);

パラメータ

fEnable

[in] コンポーネントをデザイン モード (True) で実行するか、実行モード (False) で実行するかを示します。

戻り値

このメソッドは、HRESULT 値を返します。

解説

Active Template Library (ATL) パイプライン コンポーネント ウィザードによって生成される IPipelineComponent インターフェイスのコードの詳細については、「IPipelineComponent インターフェイスを実装する」を参照してください。

関連項目

IPipelineComponent インターフェイス


IPipelineComponentAdmin インターフェイス

パイプライン エディタでサード パーティのコンポーネントをサポートするには、コンポーネントでそれ専用のユーザー インターフェイス コードを提供する必要があります。IPipelineComponentAdmin インターフェイスと IPipelineComponentUI インターフェイスおよび IPipelineComponentSpecifyUI インターフェイスを組み合わせて使用すると、ISpecifyPropertyPages インターフェイスを使用するのと同じ効果が得られます。

IPipelineComponentAdmin インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
GetConfigData | コンポーネントの構成設定を含む Dictionary オブジェクトを返します。
SetConfigData | Dictionary オブジェクトの内容を使って、コンポーネントに構成設定を設定します。

解説

詳細については、「公開するインターフェイスを決める」を参照してください。

ヘッダー : pipecomp.h

タイプ ライブラリ : Microsoft Commerce Pipeline StdRetComp Type Library (stdretcomp.dll)

IDL ファイル : Pipecomp.idl


IPipelineComponentAdmin::GetConfigData

このメソッドは、ユーザー インターフェイスでコンポーネントの構成データを読み込むための IDictionary ポインタを返します。

定義

HRESULT GetConfigData(
IDispatch** ppDict
);

パラメータ

ppDict

[out] ユーザー インターフェイスで構成データを読み込むことができるオブジェクトへのポインタです (通常は IDictionary インターフェイスを使います)。

戻り値

このメソッドは、HRESULT 値を返します。

解説

詳細については、「公開するインターフェイスを決める」を参照してください。

関連項目

IPipelineComponentAdmin インターフェイス

IPipelineComponentAdmin::SetConfigData


IPipelineComponentAdmin::SetConfigData

このメソッドは、コンポーネントの構成情報を含むオブジェクトへのポインタを使います。このオブジェクトは、IDictionary インターフェイスを実装する必要があります。

定義

HRESULT SetConfigData(
IDispatch* pDict
);

パラメータ

pDict

[in] 構成情報を含むオブジェクトへのインターフェイス ポインタです。

戻り値

このメソッドは、HRESULT 値を返します。

解説

詳細については、「公開するインターフェイスを決める」を参照してください。

関連項目

IPipelineComponentAdmin インターフェイス

IPipelineComponentAdmin::GetConfigData


IPipelineComponentDescription インターフェイス

IPipelineComponentDescription インターフェイスを利用すると、パイプライン コンポーネントでパイプライン コンテキストから読み込む値を識別したり、OrderForm オブジェクトから読み込んだり、同オブジェクトに書き込むキーおよび値を識別できます。

パイプライン コンポーネントは必ずしも IPipelineComponentDescription インターフェイスを実装する必要はありませんが、このインターフェイスを実装すると、コンポーネントで読み書きする要素をパイプライン エディタで識別および表示できます。この情報は、開発者がパイプライン構成をトラブルシューティングする際に役立ちます。

IPipelineComponentDescription インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
ContextValuesRead | コンポーネントで読み取るパイプライン コンテキスト値を識別する SAFEARRAY Variant を返します。
ValuesRead | コンポーネントで読み取る値を識別する SAFEARRAY Variant を返します。
ValuesWritten | コンポーネントが書き込む値を識別する SAFEARRAY Variant を返します。

IPipelineComponentDescription インターフェイスで定義されるメソッドは、いずれも単一のパラメータ、つまり Variant アウト値のアドレスを使用します。IPipelineComponentDescription メソッドでこのアドレスに格納する Variant には、BSTR 変数を含んだ Variant の SAFEARRAY を含める必要があります。BSTR 変数は、パイプライン コンテキストまたは OrderForm オブジェクトから読み込んだり、これらに書き込む値を識別します。この SAFEARRAY の Variant には単純な BSTR 変数が含まれているため、これらの BSTR 変数にあらゆる種類の文字列情報を格納できます。ただし、パイプライン構成をトラブルシューティングする開発者のために、BSTR 変数を初期化して、PipeContext オブジェクトまたは OrderForm オブジェクトの要素のみを参照することをお勧めします。

解説

Active Template Library (ATL) とパイプライン コンポーネント ウィザードによって生成される IPipelineComponentDescription インターフェイス コードの詳細については、「コンポーネントの有用性を高める」を参照してください。

ヘッダー : pipecomp.h

タイプ ライブラリ : Microsoft Commerce Pipeline StdRetComp Type Library (stdretcomp.dll)

IDL ファイル : Pipecomp.idl


IPipelineComponentDescription::ContextValuesRead

このメソッドは、Variant の SAFEARRAY を含む Variant を返します。SAFEARRAY の各 Variant には、コンポーネントが読み込む PipeContext オブジェクト要素を識別する BSTR が含まれています。

定義

HRESULT ContextValuesRead(
VARIANT* pVar
);

パラメータ

pVar

[out, retval] メソッドが Variant を返す先のアドレスです。この Variant には、Variant の SAFEARRAY が含まれています。それぞれの Variant には、PipeContext オブジェクトからコンポーネントが読み込む要素を識別する BSTR が含まれています。

戻り値

関数が S_OK を返さない場合、パイプライン エディタは返された Variant 変数の内容を無視します。

解説

Active Template Library (ATL) とパイプライン コンポーネント ウィザードによって生成される IPipelineComponentDescription インターフェイス コードの詳細については、「コンポーネントの有用性を高める」を参照してください。

関連項目

IPipelineComponentDescription インターフェイス


IPipelineComponentDescription::ValuesRead

このメソッドは、コンポーネントが OrderForm オブジェクトから読み込むキーおよび値を識別します。

定義

HRESULT ValuesRead(
VARIANT* pVar
);

パラメータ

pVar

[out, retval] メソッドが Variant を返す先のアドレスです。この Variant には、Variant の SAFEARRAY が含まれています。それぞれの Variant には、コンポーネントが OrderForm オブジェクトから読み込むキーおよび値を識別する BSTR が含まれています。

戻り値

関数が S_OK を返さない場合、パイプライン エディタは返された Variant の内容を無視します。

解説

Active Template Library (ATL) とパイプライン コンポーネント ウィザードによって生成される IPipelineComponentDescription インターフェイス コードの詳細については、「コンポーネントの有用性を高める」を参照してください。

関連項目

IPipelineComponentDescription インターフェイス

IPipelineComponentDescription::ValuesWritten


IPipelineComponentDescription::ValuesWritten

このメソッドは、コンポーネントが OrderForm オブジェクトで変更するキーおよび値を識別します。

定義

HRESULT ValuesWritten(
VARIANT* pVar
);

パラメータ

pVar

[out, retval] メソッドが Variant を返す先のアドレスです。この Variant には、Variant の SAFEARRAY が含まれています。それぞれの Variant には、変更されたキーおよび値を識別する BSTR が含まれています。

戻り値

関数が S_OK を返さない場合、パイプライン エディタは返された Variant の内容を無視します。

解説

Active Template Library (ATL) とパイプライン コンポーネント ウィザードによって生成される IPipelineComponentDescription インターフェイス コードの詳細については、「コンポーネントの有用性を高める」を参照してください。

関連項目

IPipelineComponentDescription インターフェイス

IPipelineComponentDescription::ValuesRead


IPipelineComponentUI インターフェイス

IPipelineComponentUI インターフェイスを実装すると、パイプライン コンポーネントが構成値のダイアログ ボックスを表示できます。インターフェイスは、ダイアログ ボックスを表示する別の Component Object Model (COM) オブジェクトによって実装されます。

IPipelineComponentUI インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
ShowProperties | パイプライン エディタによって呼び出され、コンポーネントのダイアログ ボックスを表示します。

解説

ヘッダー : pipecomp.h

タイプ ライブラリ : Microsoft Commerce 2000 Order Pipeline Type Library (pipeline.dll)

IDL ファイル : Pipecomp.idl


IPipelineComponentUI::ShowProperties

このメソッドを呼び出すと、パイプライン コンポーネントの構成ダイアログ ボックスが表示されます。

定義

HRESULT ShowProperties(
IDispatch* pdispComponent
);

パラメータ

pdispComponent

[in] IPipelineComponentAdmin インターフェイスへのポインタです。

戻り値

ダイアログ ボックスが表示され、かつ構成値が設定された場合に S_OK を返します。

解説

このインターフェイスを実装するオブジェクトは、まず IPipelineComponentAdmin::GetConfigData メソッドを使って構成 Dictionary オブジェクトを取得します。次に、これらの値をダイアログ ボックスに表示します。ユーザーがダイアログ ボックスを閉じると、オブジェクトは IPipelineComponentAdmin::SetConfigData メソッドを使って構成値を設定します。

関連項目

IPipelineComponentUI インターフェイス

ISpecifyPipelineComponentUI インターフェイス


ISpecifyPipelineComponentUI インターフェイス

ISpecifyPipelineComponentUI インターフェイスは、構成値の取得および設定のための IPipelineComponentUI インターフェイスを実装する Component Object Model (COM) を、パイプライン コンポーネントが指定する際に使用されます。

ISpecifyPipelineComponentUI インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
GetPipelineComponentUIProgID | IPipelineComponentUI インターフェイスを実装して構成ダイアログ ボックスを表示するコンポーネントを、パイプライン コンポーネントが指定するために使われます。

解説

ヘッダー : pipecomp.h

タイプ ライブラリ : Microsoft Commerce 2000 Order Pipeline Type Library (pipeline.dll)

IDL ファイル : Pipecomp.idl


ISpecifyPipelineComponentUI::GetPipelineComponentUIProgID

このメソッドは、IPipelineComponentUI インターフェイスを実装して構成ダイアログ ボックスを表示するコンポーネントを、パイプライン コンポーネントが指定するために使われます。

定義

HRESULT GetPipelineComponentUIProgID(
BSTR* pbstrProgID
);

パラメータ

pbstrProgID

[out, retval] 構成ダイアログ ボックスを表示するコンポーネントのプログラム識別子 (ProgID) を返すために使われる BSTR 文字列へのポインタです。

戻り値

ProgID が取得された場合に S_OK を返します。

関連項目

ISpecifyPipelineComponentUI インターフェイス

IPipelineComponentUI インターフェイス


ISpecifyPropertyPages インターフェイス

ISpecifyPropertyPages インターフェイスは標準 Win32 OLE インターフェイスです。このインターフェイスを実装すると、パイプライン管理ツールでコンポーネントのプロパティ ページ (ユーザー インターフェイス) を起動できます。ISpecifyPropertyPages インターフェイスの詳細については、「OLE Programmer's Reference」を参照してください。

ISpecifyPropertyPages インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
GetPages | クラス識別子 (CLSID) の配列を埋めます。各 CLSID は、このオブジェクトのプロパティ シートに表示されるプロパティ ページの CLSID です。

解説

Active Template Library (ATL) とパイプライン コンポーネント ウィザードによって生成される ISpecifyPropertyPages インターフェイス コードの詳細については、「MinMaxShip サンプル パイプライン コンポーネント」を参照してください。

ヘッダー : ocidl.h

IDL ファイル : ocidl.idl


ISpecifyPropertyPages::GetPages

このメソッドは、ユニバーサル一意識別子 (UUID) 値のカウント済み配列を入力します。各 UUID は、このオブジェクトのプロパティ シートに表示される特定のプロパティ ページのクラス識別子 (CLSID) を指定しています。

CAUUID 構造は呼び出し元によって割り当てられますが、呼び出し元によっては初期化されません。ISpecifyPropertyPages::GetPages メソッドは、CAUUID 構造の cElements フィールドを埋めます。また、このメソッドは、CAUUID 構造の pElems フィールドによってポイントされる配列に、CoTaskMemAlloc メソッドを使ってメモリを割り当てます。それから、新たに割り当てられた配列を埋めます。このメソッドが正常に戻ると、CAUUID 構造には、それぞれがプロパティ ページの CLSID を指定する UUID のカウント済み配列が含まれます。

定義

HRESULT GetPages(
CAUUID* pPages
);

パラメータ

pPages

[out] 戻る前に初期化および入力する必要のある、呼び出し元によって割り当てられた CAUUID 構造へのポインタです。CAUUID 構造の pElems フィールドは、呼び出し先が CoTaskMemAlloc メソッドを使って割り当て、呼び出し元が CoTaskMemFree メソッドを使って解放します。

戻り値

このメソッドは、HRESULT 値を返します。

解説

CAUUID 構造は次のように定義されています。

typedef struct tagCAUUID
{
    ULONG       cElems;
    GUID FAR *  pElems;
} CAUUID;

cElems

pElems 配列によってポイントされる配列のサイズです。

pElems

UUID 値の配列へのポインタです。各 UUID 値は、特定のプロパティ ページの CLSID を指定しています。この配列は、呼び出し先が CoTaskMemAlloc メソッドを使って割り当て、呼び出し元が CoTaskMemFree メソッドを使って解放します。

Active Template Library (ATL) とパイプライン コンポーネント ウィザードによって生成される ISpecifyPropertyPages インターフェイス コードの詳細については、「MinMaxShip サンプル パイプライン コンポーネント」を参照してください。

関連項目

ISpecifyPropertyPages インターフェイス


サイト パッケージャ インターフェイス

カスタム リソースをファイルにパッケージ化することができます。パッケージとは、特殊な形式の Commerce Server ファイルです。各パッケージは、.pup という拡張子で識別されます。1 つのパッケージには必ず 1 つのサイトが含まれ、その中に Commerce Server サイトのリソース構成データとアプリケーションが含まれています。このほか、各リソースがパッケージ化されるファイルを含めることもできますが、アンパック時に DLL 登録などの特別な処理は行われません。

カスタム リソースをパッケージ化するために、必ずしもパッケージ処理操作を行う必要はありません。カスタム リソースのデータが Commerce Server 管理データベースに格納されている場合は、そのデータが自動的にパッケージ化されます。この開発が容易なアプローチの詳細については、「統合レベル」を参照してください。

カスタム リソースの構成データが管理データベースの外部に保存される場合、またはパッケージにほかのファイルを含める場合は、通常パッケージ処理やアンパック処理で使われるカスタム Component Object Model (COM) コンポーネントを開発する必要があります。たとえば、リソースがサイト構成ストアに格納されるデータに依存する場合は、開発されたカスタム COM コンポーネントがこの機能を実行します。

場合によっては、カスタム COM コンポーネントを新しく開発する代わりに GenericPuP オブジェクトを使うことができます。このオブジェクトの使い方の詳細については、「GenericPuP オブジェクトを使う」を参照してください。

パッケージ処理で使われるカスタム COM コンポーネントを開発する必要がある場合は、IPuP インターフェイスを実装する必要があります。

IPuP インターフェイスを実装するカスタム COM コンポーネントを起動するには、そのコンポーネントの ProgID を管理データベース内の適切なテーブルに保存する必要があります。

次の表は、カスタム COM コンポーネントで IPuP インターフェイスを実装するメソッドを示しています。

メソッド | 説明
CreateGroupResource | グローバル リソースとそのリソースへのサイト レベルの参照との接続を作成します。リソースがグローバル リソースの場合に、Import メソッドと一緒に呼び出します。
Delete | コンピュータからカスタム サイト リソース データを削除するために、 Commerce Server マネージャで呼び出されます。このリソースの構成データも管理データベースから削除します。 このメソッドは、対応するサイト リソースに関連付けられたデータを適切に削除するために必要な作業を実行します。
DeleteGroupResource | コンピュータからカスタム グローバル リソース データを削除します。このリソースの構成データも管理データベースから削除します。 このメソッドは、対応するグローバル リソースに関連付けられたデータを適切に削除するために必要な作業を実行します。
Export | カスタム COM コンポーネントが、パッケージ化するファイルを指定された場所に保存します。
Import | カスタム COM コンポーネントが、パッケージ化されたファイルを指定された場所から取得します。


IPuP::CreateGroupResource

カスタム リソースがグローバル リソースの場合は、このメソッドを実装する必要があります。パッケージ化されたサイトは必ずグローバル リソースを使うので、グローバル リソースを参照するサイト レベルのオブジェクトをサイトに作成する必要があります。このメソッドでは、必要に応じた処理を実行する必要があります。

f_ResourceFlags 列がグローバル リソースを示している場合、つまり対応するビット マスク定数が IS_REFTOGROUPRES の場合は、Import メソッドを呼び出す前にこのメソッドが呼び出されます。サイト リソースの場合は、このメソッドは呼び出されません。

サイト パッケージャがこのメソッドを呼び出すときは、サイト名とサイト レベルで認証されるカスタム リソース名を示します。実装でグローバル リソースを作成し、そのリソース名を返す必要があります。その後、サイト パッケージャがグローバル リソースのサイト レベルの参照と実際のグローバル リソースとの間のリンクを作成できます。次に、サイト パッケージャは、カスタム グローバル リソースに関連付けられたデータをインポートする Import メソッドを呼び出します。

定義

HRESULT CreateGroupResource(
BSTR szSiteName,
BSTR szResourceName,
BSTR szConnStr,
BSTR szPath,
BOOL bSilent,
BSTR* szGroupResourceName
);

パラメータ

szSiteName

[in] アンパックするサイトの名前を含む BSTR です。

szResourceName

[in] カスタム リソースの名前を含む BSTR です。

szConnStr

[in] 接続文字列を含む BSTR です。

szPath

[in] エラー ログ記録用のファイルのパスとファイル名を含む BSTR です。

bSilent

[in] ユーザーによる操作を許可するかどうかを示すために使われる Boolean 値です。値が True の場合、ユーザーによる操作は抑制されます。これにより、無人状態で処理を行えるようになります。

szGroupResourceName

[out, retval] 対応するグローバル リソースの名前を返すために使われる BSTR へのポインタです。

戻り値

このメソッドは、メソッドが正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは COM の HRESULT エラーを返します。使用可能な標準 COM エラー値の詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、呼び出し元で API 関数の GetErrorInfo を使います。具体的には、IErrorInfo インターフェイスの GetDescription メソッドを呼び出して、テキストによるエラー説明を取得し、それを利用することができます。

解説

このメソッドにおいて、ユーザーによる操作を許可するように設計する場合、その操作を行うためのユーザー インターフェイスを非表示にできるようにしておく必要があります。このような抑制を行うかどうかを示すには、bSilent パラメータを使います。bSilent パラメータを True に設定すると、ユーザー インターフェイスは表示されなくなります。bSilent パラメータを False に設定すると、ユーザー インターフェイスを表示し、ユーザーによる操作を待つことが許可されます。メソッドの呼び出し時に、このパラメータを True に設定することにより、無人状態で処理を行うことができるようになります。

接続文字列は、このリソースが使うデータベースのデータ ソース名 (DSN)、データベース ログイン ID、データベース パスワードを含みます。カスタム データベース テーブルを作成するためには、このメソッドを実装する必要があります。リソースはほかのリソースとデータベースを共有していることがあるので、一意のテーブル名を選択することをお勧めします。

関連項目

サイト パッケージャ インターフェイス

IPuP::Import


IPuP::Delete

カスタム リソースがサイト リソースでリソース データのカスタム クリーンアップを実行する場合は、このメソッドを実装する必要があります。

コンピュータからサイト リソースを削除するときに、Commerce Server マネージャがこのメソッドを呼び出します。これにより、このカスタム リソースのみを対象としたクリーンアップを実行することができます。このメソッドから制御が戻されると、Commerce Server マネージャは、カスタム リソースへの参照とそれに対応するすべての構成データを管理データベースから削除し、処理を続行します。

定義

HRESULT Delete(
BSTR szSiteName,
BSTR szResourceName,
BOOL bKeepData,
BOOL bSilent
);

パラメータ

szSiteName

[in] サイトの名前を含む BSTR です。

szResourceName

[in] カスタム リソースの名前を含む BSTR です。

bKeepData

[in] サイト リソースのデータを削除するかどうかを示すために使われる Boolean 値です。値が True の場合、データがそのまま維持されることを示します。値が False の場合、データが削除されることを示します。

bSilent

[in] ユーザーによる操作を許可するかどうかを示すために使われる Boolean 値です。値が True の場合、ユーザーによる操作は抑制されます。これにより、無人状態で処理を行えるようになります。

戻り値

このメソッドは、メソッドが正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは COM の HRESULT エラーを返します。使用可能な標準 COM エラー値の詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、呼び出し元で API 関数の GetErrorInfo を使います。具体的には、IErrorInfo インターフェイスの GetDescription メソッドを呼び出して、テキストによるエラー説明を取得し、それを利用することができます。

解説

このメソッドにおいて、ユーザーによる操作を許可するように設計する場合、その操作を行うためのユーザー インターフェイスを非表示にできるようにしておく必要があります。このような抑制を行うかどうかを示すには、bSilent パラメータを使います。bSilent パラメータを True に設定すると、ユーザー インターフェイスは表示されなくなります。bSilent パラメータを False に設定すると、ユーザー インターフェイスを表示し、ユーザーによる操作を待つことが許可されます。メソッドの呼び出し時に、このパラメータを True に設定することにより、無人状態で処理を行うことができるようになります。

ユーザーがユーザー インターフェイスを介して、リソースのデータを維持するか削除するかについては、システム管理者が指定できるようにする必要があります。ユーザーが入力した内容に応じて、bKeepData パラメータが True または False に設定されます。

カスタム スクリプトからこのメソッドを呼び出して、カスタム サイト リソースに関連付けられたデータをクリーンアップすることもできます。

関連項目

サイト パッケージャ インターフェイス

IPuP::DeleteGroupResource


IPuP::DeleteGroupResource

カスタム リソースがグローバル リソースでリソース データのカスタム クリーンアップを実行する場合は、このメソッドを実装する必要があります。

コンピュータからグローバル リソースを削除するときに、Commerce Server マネージャがこのメソッドを呼び出します。これにより、このカスタム リソースのみを対象としたクリーンアップを実行することができます。このメソッドから制御が戻ると、Commerce Server マネージャは、カスタム リソースへの参照とそれに対応するすべての構成データを管理データベースから削除し、処理を続行します。

定義

HRESULT DeleteGroupResource(
BSTR szSiteName,
BSTR szResourceName,
BOOL bKeepData,
BOOL bSilent
);

パラメータ

szSiteName

[in] サイトの名前を含む BSTR です。

szResourceName

[in] カスタム リソースの名前を含む BSTR です。

bKeepData

[in] サイト リソースのデータを削除するかどうかを示すために使われる Boolean 値です。値が True の場合、データがそのまま維持されることを示します。値が False の場合、データが削除されることを示します。

bSilent

[in] ユーザーによる操作を許可するかどうかを示すために使われる Boolean 値です。値が True の場合、ユーザーによる操作は抑制されます。これにより、無人状態で処理を行えるようになります。

戻り値

このメソッドは、メソッドが正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは COM の HRESULT エラーを返します。使用可能な標準 COM エラー値の詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、呼び出し元で API 関数の GetErrorInfo を使います。具体的には、IErrorInfo インターフェイスの GetDescription メソッドを呼び出して、テキストによるエラー説明を取得し、それを利用することができます。

解説

このメソッドにおいて、ユーザーによる操作を許可するように設計する場合、その操作を行うためのユーザー インターフェイスを非表示にできるようにしておく必要があります。このような抑制を行うかどうかを示すには、bSilent パラメータを使います。bSilent パラメータを True に設定すると、ユーザー インターフェイスは表示されなくなります。bSilent パラメータを False に設定すると、ユーザー インターフェイスを表示し、ユーザーによる操作を待つことが許可されます。メソッドの呼び出し時に、このパラメータを True に設定することにより、無人状態で処理を行うことができるようになります。

ユーザーがユーザー インターフェイスを介して、リソースのデータを維持するか削除するかについては、システム管理者が指定できるようにする必要があります。ユーザーが入力した内容に応じて、bKeepData パラメータが True または False に設定されます。

カスタム スクリプトからこのメソッドを呼び出して、カスタム グローバル リソースに関連付けられたデータをクリーンアップすることもできます。

関連項目

サイト パッケージャ インターフェイス

IPuP::Delete


IPuP::Export

このメソッドは、サイト パッケージャが Commerce Server サイト パッケージを作成するときに呼び出されます。カスタム リソースが選択した 1 つ以上のファイルをこのパッケージに含めるために、このメソッドを実装する必要があります。

定義

HRESULT Export(
BSTR szSiteName,
BSTR szResourceName,
BSTR szPath,
BOOL bExportData,
BOOL bSilent
);

パラメータ

szSiteName

[in] サイトの名前を含む BSTR です。

szResourceName

[in] カスタム リソースの名前を含む BSTR です。

szPath

[in] カスタム リソースが選択した 1 つ以上のファイルを格納するパスを含む BSTR です。詳細については、"解説" を参照してください。

bExportData

[in] データのエクスポートを有効または無効にするために使う Boolean フラグです。

bSilent

[in] ユーザーによる操作を許可するかどうかを示すために使われる Boolean 値です。値が True の場合、ユーザーによる操作は抑制されます。これにより、無人状態で処理を行えるようになります。

戻り値

このメソッドは、メソッドが正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは COM の HRESULT エラーを返します。使用可能な標準 COM エラー値の詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、呼び出し元で API 関数の GetErrorInfo を使います。具体的には、IErrorInfo インターフェイスの GetDescription メソッドを呼び出して、テキストによるエラー説明を取得し、それを利用することができます。

解説

サイト パッケージャは、管理データベースの Resource テーブルにある f_PupFlags 列の値に基づいて、ファイル名またはフォルダ名のいずれかを指定し、このメソッドを呼び出します。このビット フィールド列で定義されているのは、ビット 1 という 1 ビットのみです。ビット 1 が 0 に設定されている場合、szPath パラメータは一時ファイルの名前を指定します。ビット 1 が 1 に設定されている場合は、szPath は一時フォルダの名前を指定しています。

ファイル名を指定した場合は、パッケージ化されるデータが、szPath パラメータで指定した名前の単一のファイルに格納されます。このメソッドが返されると、サイト パッケージャがそのファイルをパッケージに追加し、ファイルを削除します。

フォルダ名を指定した場合は、パッケージ化するデータが、szPath パラメータで指定したフォルダ内にある 1 つ以上のファイルに格納されます。このメソッドが返されると、サイト パッケージャがそれらのファイルをパッケージに追加し、ファイルを削除します。

このメソッドにおいて、ユーザーによる操作を許可するように設計する場合、その操作を行うためのユーザー インターフェイスを非表示にできるようにしておく必要があります。このような抑制を行うかどうかを示すには、bSilent パラメータを使います。bSilent パラメータを True に設定すると、ユーザー インターフェイスは表示されなくなります。bSilent パラメータを False に設定すると、ユーザー インターフェイスを表示し、ユーザーによる操作を待つことが許可されます。メソッドの呼び出し時に、このパラメータを True に設定することにより、無人状態で処理を行うことができるようになります。

関連項目

サイト パッケージャ インターフェイス

IPuP::Import


IPuP::Import

このメソッドは、サイト パッケージャがCommerce Server サイト パッケージをアンパックするときに呼び出されます。カスタム リソースがこのパッケージの中から 1 つ以上のファイルを利用するためには、このメソッドを実装する必要があります。

定義

HRESULT Import(
BSTR szSiteName,
BSTR szResourceName,
BSTR szPath,
BOOL bSilent
);

パラメータ

szSiteName

[in] サイトの名前を含む BSTR です。

szResourceName

[in] カスタム リソースの名前を含む BSTR です。

szPath

[in] サイト パッケージャにより、このリソース用にパッケージ化された 1 つ以上のファイルを格納するパスを含む BSTR です。詳細については、"解説" を参照してください。

bSilent

[in] ユーザーによる操作を許可するかどうかを示すために使われる Boolean 値です。値が True の場合、ユーザーによる操作は抑制されます。これにより、無人状態で処理を行えるようになります。

戻り値

このメソッドは、メソッドが正常に終了したかどうかを示す HRESULT を返します。詳細については、"エラー値" を参照してください。

エラー値

このメソッドは、成功を示すときは S_OK (0x00000000) を返し、失敗を示すときは COM の HRESULT エラーを返します。使用可能な標準 COM エラー値の詳細については、「標準 COM エラー」を参照してください。グローバル Err オブジェクトを使うと、さらに詳しい情報を得ることができます。このオブジェクトにアクセスするには、呼び出し元で API 関数の GetErrorInfo を使います。具体的には、IErrorInfo インターフェイスの GetDescription メソッドを呼び出して、テキストによるエラー説明を取得し、それを利用することができます。

解説

サイト パッケージャは、管理データベースの Resource テーブルにある f_PupFlags 列の値に基づいて、ファイル名またはフォルダ名のいずれかを指定し、このメソッドを呼び出します。このビット フィールド列で定義されているのは、ビット 1 という 1 ビットのみです。ビット 1 が 0 に設定されている場合、szPath パラメータは一時ファイルの名前を指定します。ビット 1 が 1 に設定されている場合は、szPath は一時フォルダの名前を指定しています。

ファイル名を指定した場合は、パッケージ化されたデータが、szPath パラメータで指定した名前の単一のファイルから取得されます。このメソッドが返される前に、そのファイル、またはカスタム リソースだけが認証するほかの場所に移されたファイルからデータを取得する必要があります。このメソッドが返されると、サイト パッケージャが一時ファイルを削除します。

フォルダ名を指定した場合は、パッケージ化されたデータが、szPath パラメータで指定したフォルダ内にある 1 つ以上のファイルから取得されます。このメソッドが返される前に、これらのファイル、またはカスタム リソースだけが認証するほかの場所に移されたファイルからデータを取得する必要があります。このメソッドが返されると、サイト パッケージャが一時ファイルを削除します。

このメソッドにおいて、ユーザーによる操作を許可するように設計する場合、その操作を行うためのユーザー インターフェイスを非表示にできるようにしておく必要があります。このような抑制を行うかどうかを示すには、bSilent パラメータを使います。bSilent パラメータを True に設定すると、ユーザー インターフェイスは表示されなくなります。bSilent パラメータを False に設定すると、ユーザー インターフェイスを表示し、ユーザーによる操作を待つことが許可されます。メソッドの呼び出し時に、このパラメータを True に設定することにより、無人状態で処理を行うことができるようになります。

関連項目

サイト パッケージャ インターフェイス

IPuP::Export

IPuP::CreateGroupResource


汎用ステータス保存インターフェイス

Microsoft Commerce Server 2000 はオブジェクトのステータス保存に関連して、汎用 Component Object Model (COM) インターフェイスを定義しています。

次の表は、汎用インターフェイスの一覧です。

インターフェイス | 説明
IPersistXML | XML 形式の文字列へのデータの保存、および XML 形式の文字列からのデータの読み込みを行います。
IPersistDictionary | Dictionary オブジェクトへのデータの保存、および Dictionary オブジェクトからのデータの読み込みを行います。
IPersistStreamInit | ストリームへのデータの保存、およびストリームからのデータの読み込みを行います。ATL パイプライン ウィザードでは、この形式のステータス保存が使われます。


IPersistXML インターフェイス

IPersistXML インターフェイスは、XML 形式のテキストでデータを読み取りまたは書き込みする必要のあるオブジェクトによって実装されます。たとえば、注文処理パイプライン (OPP) のコンテキストでは、ビジネス データ オブジェクトの内容を対応する拡張マークアップ言語 (XML) にマップするのに使われます。

Dictionary オブジェクトもこのインターフェイスを実装します。これにより、Dictionary オブジェクトのエントリを XML 形式の文字列に変換したり、元に戻したりできます。

IPersistXML インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
LoadXML | XML 表現のデータを含む文字列からデータを読み込みます。
SaveXML | 文字列に結果を書き込んで、XML 表現でデータを保存します。

解説

ヘッダー : commerce.h

IDL ファイル : commerce.idl


IPersistXML::LoadXML

このメソッドは BSTR から XMK 形式のデータを読み込みます。

定義

HRESULT LoadXML(
long Reserved,
BSTR bstrXML
);

パラメータ

Reserved

[in] 将来的に使うため、予約されています。

bstrXML

[in] オブジェクトに必要な XML 表現のオブジェクト データを含む BSTR です。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

関連項目

IPersistXML インターフェイス

IPersistXML::SaveXML


IPersistXML::SaveXML

このメソッドは XML 形式の BSTR にデータを保存します。

定義

HRESULT SaveXML(
long Reserved,
BSTR* bstrXML
);

パラメータ

Reserved

[in] 将来的に使うため、予約されています。

bstrXML

[out, retval] XML 表現のオブジェクト データを返すために使う BSTR のアドレスです。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

関連項目

IPersistXML インターフェイス

IPersistXML::LoadXML


IPersistDictionary インターフェイス

IPersistDictionary インターフェイスは、Dictionary オブジェクトとしてデータを読み取りまたは書き込みする必要のあるオブジェクトによって実装されます。

IPersistDictionary インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
GetProgID | オブジェクトの ProgID を返します。
InitNew | 保存された値が読み込まれる前に、オブジェクトの値を初期化します。
IsDirty | 保存する値が、最後の保存以降に変更されたかどうかを示します。
Load | Dictionary オブジェクトから保存されたデータを読み込みます。
Save | Dictionary オブジェクトにデータを保存します。

解説

ヘッダー : commerce.h

IDL ファイル : commerce.idl


IPersistDictionary::GetProgID

このメソッドはオブジェクトの ProgID を返します。

定義

HRESULT GetProgID(
BSTR* pbstrProgID
);

パラメータ

pbstrProgID

[out, retval] オブジェクトの ProgID を返すために使う BSTR のアドレスです。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

関連項目

IPersistDictionary インターフェイス


IPersistDictionary::InitNew

このメソッドにより、ステータス保存値が読み込まれる前に、オブジェクトの状態を初期化できるようになります。このメソッド内でコンポーネントの IsDirty フラグを初期化できます。

定義

HRESULT InitNew(void);

パラメータ

なし。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

関連項目

IPersistDictionary インターフェイス


IPersistDictionary::IsDirty

このメソッドは、オブジェクトの値が最後に保存されてから変更されたかをレポートします。オブジェクトの IsDirty フラグの値を返します。このフラグは、オブジェクトが IPersistDictionary::Save メソッドを実装するときに、そのオブジェクトによってクリアされる必要があります。

定義

HRESULT IsDirty(
long* pfDirty
);

パラメータ

pfDirty

[out, retval] IsDirty フラグの値を返すために使う long へのポインタです。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

関連項目

IPersistDictionary インターフェイス


IPersistDictionary::Load

このメソッドは Dictionary オブジェクトからデータを読み込みます。

定義

HRESULT Load(
IDispatch* pdispDict
);

パラメータ

pdispDict

[in] データの読み込み元となる Dictionary オブジェクトの IDictionary インターフェイスへのポインタです。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

解説

基本的にオブジェクトは、IDictionary インターフェイスの get_Value メソッドを使って Variant 値を取得します。IDictionary インターフェイスの詳細については、「Dictionary オブジェクト」を参照してください。

関連項目

IPersistDictionary インターフェイス

IPersistDictionary::Save


IPersistDictionary::Save

このメソッドは Dictionary オブジェクトにデータを保存します。

定義

HRESULT Save(
IDispatch* pdispDict,
long fSameAsLoad
);

パラメータ

pdispDict

[in] データの保存先となる Dictionary オブジェクトのIDictionary インターフェイスへのポインタです。

fSameAsLoad

[in] pdispDict パラメータの示す Dictionary オブジェクトが、コンポーネントのステータス保存値の読み込み元オブジェクトと同じである場合に、True に設定される long です。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

解説

基本的にオブジェクトは、IDictionary インターフェイスの put_Value メソッドを使って Variant 値を保存します。IDictionary インターフェイスの詳細については、「Dictionary オブジェクト」を参照してください。

関連項目

IPersistDictionary インターフェイス

IPersistDictionary::Load


IPersistStreamInit インターフェイス

IPersistStreamInit インターフェイスは標準 Win32 OLE インターフェイスです。基本的にこのインターフェイスは、初期化されたストリーム ベースのステータス保存をサポートする必要のあるオブジェクトであれば、そのオブジェクトがほかにどんな動作をするかにかかわらず、どのオブジェクトにも実装されます。

注文処理パイプライン (OPP) のコンテキストでは、パイプライン設定ファイルのコンポーネント設定を読み込みおよび保存するために使われます (パイプラインは必要に応じてこのインターフェイスを呼び出します)。IPersistStreamInit インターフェイスの詳細については、「OLE Programmer's Reference」を参照してください。CComVariant 型の変数は、ストリームからの値の読み取りと保存ができ、保存の必要なコンポーネントの値を保持するために使うことができます。

IPersistStreamInit インターフェイスは、次のメソッドをサポートしています。

メソッド | 説明
GetClassID | オブジェクトのクラス識別子 (CLSID) を返します。
GetSizeMax | ステータス保存値を保存するために必要なサイズを返します。
InitNew | 保存された値が読み込まれる前に、オブジェクトの値を初期化します。
IsDirty | 保存するデータが、最後の保存以降に変更されたかどうかを示します。
Load | ストリームからデータを読み込みます。
Save | ストリームにデータを保存します。

ヘッダー : ocidl.h

IDL ファイル : ocidl.idl


IPersistStreamInit::GetClassID

このメソッドはオブジェクトのクラス識別子 (CLSID) を返します。

定義

HRESULT GetClassID(
CLSID* pClassID
);

パラメータ

pClassID

[out] オブジェクトのクラス識別子を返すために使う CLSID 変数のアドレスです。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

解説

GetClassID メソッドは、IPersistStreamInit インターフェイスの元になった IPersist インターフェイスのメソッドです。

関連項目

IPersistStreamInit インターフェイス


IPersistStreamInit::GetSizeMax

このメソッドは、ステータス保存させるデータを保存するのにストリーム上で必要な最大のサイズをバイト単位で返します。

定義

HRESULT GetSizeMax(
ULARGE_INTEGER* pCbSize
);

パラメータ

pCbSize

[out] 値を保存するのにストリームでオブジェクトが必要とするバイト数を返すために使う ULARGE_INTEGER のアドレスです。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

関連項目

IPersistStreamInit インターフェイス


IPersistStreamInit::InitNew

このメソッドにより、ステータス保存値が読み込まれる前に、オブジェクトの状態を初期化できるようになります。このメソッド内でオブジェクトの IsDirty フラグを初期化する必要があります。

定義

HRESULT InitNew(void);

パラメータ

なし。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

関連項目

IPersistStreamInit インターフェイス


IPersistStreamInit::IsDirty

このメソッドは、オブジェクトの値が最後に保存されてから変更されたかをレポートします。オブジェクトの IsDirty フラグの値を返します。このフラグは、オブジェクトが IPersistStreamInit::Save メソッドを実装するときに、そのオブジェクトによってクリアされる必要があります。

定義

HRESULT IsDirty(void);

パラメータ

なし。

戻り値

このメソッドは、データに変更があるときは HRESULT 値の S_OK を返し、最後の Save 操作以降データに変更がないときは S_FALSE を返します。

関連項目

IPersistStreamInit インターフェイス


IPersistStreamInit::Load

このメソッドは指定されたストリームからオブジェクト データを読み込みます。

定義

HRESULT Load(
LPSTREAM pStm
);

パラメータ

pStm

[in] オブジェクト データの読み込み元であるストリームへのポインタです。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

解説

最後に IPersistStreamInit::Save メソッドが行われた時と同じようにシーク ポインタが設定されます。このメソッドは、ストリームからのシークと読み取りはできますが、ストリームへの書き込みはできません。

終了時に、シーク ポイントは開始時と同じ位置、つまりデータの末尾のすぐ後ろになければなりません。

関連項目

IPersistStreamInit インターフェイス

IPersistStreamInit::Save


IPersistStreamInit::Save

このメソッドはオブジェクト データを指定のストリームに保存します。

定義

HRESULT Save(
LPSTREAM pStm,
BOOL fClearDirty
);

パラメータ

pStm

[in] オブジェクト データの保存先であるストリームへのポインタです。

fClearDirty

[in] IsDirty フラグをクリアするかどうかを示す BOOL です。True ならばフラグはクリアされます。False ならばフラグは変えられません。

戻り値

このメソッドは、成功を示すときは HRESULT 値の S_OK を返し、失敗を示すときは一般的に標準 COM エラー値を返します。

解説

シーク ポインタは、オブジェクトがデータの書き込みを始めるストリーム内の位置に置かれます。オブジェクトは IStream::Write メソッドを呼び出してデータを書き込みます。

終了時に、シーク ポインタはオブジェクト データのすぐ後ろになければなりません。エラーが返ると、シーク ポインタの位置は未定義となります。

関連項目

IPersistStreamInit インターフェイス

IPersistStreamInit::Load


パイプライン コンポーネント リファレンス

ここでは、Commerce Server で提供されている次のパイプライン コンポーネントについての資料を提供します。

パイプライン コンポーネント名 | 説明
AddAttachments | ダイレクト メール メッセージにアタッチメントを追加します。
AdvertisingNeedOfDelivery | ビジネス上の合意事項を満たす表示頻度で、広告が確実に選択されるようにします。
ComposeDMLMessage | ダイレクト メール メッセージの本文を作成します。
CreateUPMCookie | 特定の個人宛てのダイレクト メール メッセージを作成するために、Active Server Pages (ASP) ページに渡す cookie データを収集します。
CSFLoadAdvertisements | CacheManager オブジェクトを介して、コンテンツ選択フレームワークの広告データを読み込みます。
CSFLoadDiscounts | CacheManager オブジェクトを介して、コンテンツ選択フレームワークの割引データを読み込みます。
CSFWriteEvents | コンテンツ選択フレームワークのイベントをログに記録するために、CacheManager オブジェクトと共に使用されます。
DBOrderPromoADO | データベースから、価格調整による販売促進活動に関するデータを取得し、それを基に項目の価格調整を行います。
DefaultHandlingCy/DefaultHandling | 手数料コンポーネントのプレースホルダとして使用されます。注文の合計手数料は 0 に初期化されます。
DefaultItemPriceCy/DefaultItemPrice | QueryCatalogInfo コンポーネントや QueryProdInfoADO コンポーネントから返された標準価格を、項目の正規の価格として設定します。
DefaultOrderSubTotalCy/DefaultOrderSubTotal | 注文の小計を計算します。
DefaultPayment | 支払い認証コードに既定値を割り当てます。このコンポーネントは通常、サードパーティの支払いコンポーネントに置き換えられます。
DefaultShippingCy/DefaultShipping | 送付コンポーネントのプレースホルダです。送料は 0 に設定されます。
DefaultShopperInfo | パイプラインの Context ディクショナリにある Shopper ディクショナリから、情報を OrderForm オブジェクトに移動します。
DefaultTaxCy/DefaultTax | 注文の税フィールドを 0 に設定します。これらのコンポーネントは通常、サードパーティの税コンポーネントに置き換えられます。
DefaultTotalCy/DefaultTotal | 小計を基に合計注文量を計算します。
EvalTargetGroups | 広告、コンテンツ選択、および割引の対象を特定グループに定めるために使用されます。このコンポーネントは、一覧内の各項目について式の一覧を評価し、項目選択スコアを調整します。
ExecuteProcess | 外部の実行可能ファイルを実行します。
FilterContent | 指定されたフィルタを、コンテンツ選択パイプライン (CSP) 内のコンテンツ リストに適用します。
FixedHandling | 定額の手数料を注文に付加します。
FixedShipping | 定額の送料を注文に適用します。
FlagInventory | 注文フォーム内の項目に在庫切れのものがあるかどうかを判定します。
FormatTemplate | 選択された項目のデータとそれらに関連付けられているテンプレートをマージして、書式設定済み文字列を作成します。これらの文字列は通常、ページ上に表示できる Hypertext Markup Language (HTML) 文字列です。
HistoryPenalty | コンテンツ項目が選択された時期に基づいてペナルティを適用します。
IISAppendToLog | コンテンツ選択に関する情報を、インターネット インフォメーション サービス (IIS) ログ ファイルの QueryString フィールドに記録します。
InitCSFPipeline | コンテンツ選択パイプライン (CSP) の最初の部分で使用されます。このパイプラインの残りの部分で必要になる値を初期化します。
ItemPromo | 注文フォーム内の項目に対し、販売促進価格調整を適用します。
LinearHandling | 注文フォームのフィールドに一定のレートを掛けて、注文の合計手数料を設定します。
LinearShipping | 一定のレートを使って、注文フォームの合計送料を計算します。
LoadHistory | ユーザー プロファイルや、ASP セッション コレクション内の項目、または cookie から履歴文字列を取得します。
LocalInventory | 注文フォームに、バックオーダーが存在する項目の数を設定します。
MakePO | 注文フォームの情報を注文書テンプレートとマージし、書式設定済みの注文書 (PO) テキスト文字列を作成します。
MoneyConverter | OrderForm のキーおよび値を Integer から新しい Currency に変換したり、新しい Currency から Integer に変換したりします。
OrderDiscount | 買い物バスケットに対し、Commerce Server ビジネス デスク内のキャンペーン マネージャでスケジュール設定した割引を適用します。
POtoFile | 注文書などのテキスト データをファイルに送信します。
QueryCatalogInfo | 注文フォームの各項目のカタログ情報を取得します。
QueryProdInfoADO | データベースから商品情報を取得します。
RecordEvent | 選択されたコンテンツ項目(落札者)のイベント差分カウントをパフォーマンス ディクショナリに記録します。
RecordHistory | 落札したコンテンツ項目の識別子を履歴リスト文字列に記録します。
RequiredHandlingCy/RequiredHandling | 合計手数料が注文に含まれていることを確認します。
RequiredItemAdjustPriceCy/RequiredItemAdjustPrice | 注文の各項目に現在の価格を設定し、前回バスケットを参照した後に現在の価格が変更されていないことを確認します。
RequiredItemPriceCy/RequiredItemPrice | 注文フォームの各項目に正規の価格が割り当てられていることを確認します。DefaultItemPrice コンポーネントおよび同類のコンポーネントによって正規の価格が割り当てられます。
RequiredOrderAdjustPriceCy/RequiredOrderAdjustPrice | 割引の適用後に、注文の各項目の合計コストを調整します。
RequiredOrderCheck | 注文フォームに項目が少なくとも 1 つ含まれていることを確認します。
RequiredOrderInitCy/RequiredOrderInit | 注文フォームの支払い認証コード、注文 ID、合計および代金を初期化します。
RequiredOrderSubtotalCy/RequiredOrderSubtotal | 注文フォームに小計が設定されていることを確認します。
RequiredPayment | 注文フォームに支払い認証コードが設定されていること (認証コードが Null ではないこと) を確認します。
RequiredProdInfo | 以前の商品情報ステージ コンポーネントによって削除フラグが設定された品目を削除します。
RequiredShippingCy/RequiredShipping | 合計送料が設定されていることを確認します。
RequiredTaxCy/RequiredTax | 注文フォームに合計税額および税込み価格が設定されていることを確認します。
RequiredTotalCy/RequiredTotal | ページの値が改ざんまたは再設定されていないことを確認します。このコンポーネントは、注文書の値を _Verify_With ディクショナリの値と比較します。
SaleAdjust | 項目に特価を適用します。 このパイプライン コンポーネントは、以前のバージョンとの下位互換性を維持する場合のみ使用します。それ以外の場合は、新しい OrderDiscount コンポーネントを使います。
SampleRegionalTax | このコンポーネントは、Commerce Server 2000 の複数送料機能を利用して税額を計算するために使います。
SaveHistory | ユーザー プロファイル オブジェクト、ASP セッション コレクション、または Hypertext Transfer Protocol (HTTP) Cookie のいずれかに履歴文字列を記録します。
SaveReceipt | 注文をデータベース テーブルに保存します。
ScoreDiscounts | 割引が現在のユーザーと最も関係が深くなるように、割引項目のスコアを調整します。
Scriptor | Microsoft ActiveX スクリプト言語で作成されたスクリプトを実行します。
SelectWinners | コンテンツ選択パイプラインでの最終スコアに基づいて、項目を選択します。
SendPrecomposedMessage | パイプラインの初期のステージで作成されたダイレクト メール メッセージを送信します。
SendSMTP | 指定された受信者に電子メールを送信します。
ShippingDiscountAdjust | 注文に送料割引を適用します。
ShippingManagerCache | CacheManager オブジェクトを介して、複数送料アーキテクチャ用の送料データを読み込みます。
ShippingMethodRouter | ShippingMethodRouter コンポーネントは、個々の出荷の送料を計算するコンポーネントを調べて実行します。その後、注文全体の合計送料を計算します。
SimpleCanadaTax | カナダの物品サービス税 (GST) および地方消費税 (PST) を計算します。
SimpleJapanTax | 日本の課税体系を基に税額を計算します。
SimpleUSTax | アメリカ国内の指定された州に送付される注文に対し、税を適用します。
SimpleVATTax | 付加価値税 (VAT) を計算します。
Splitter | 項目キーの一覧に基づいて、注文を複数のグループに分割します。主な用途は、注文を複数に分割して送付することです。
SQLItemADO | 注文フォーム内の各項目についてクエリを実行します。
SQLOrderADO | クエリに注文パラメータを渡し、注文に対して単一の SQL クエリを実行します。
StepwiseShipping | 複数送料アーキテクチャを利用して送料を計算します。このコンポーネントは、パイプライン内で直接使用されることはありません。ShippingMethodRouter コンポーネントによって実行されます。
TableHandlingADO | データベースから取得した値に基づいて、注文の合計手数料を設定します。
TableShippingADO | データベースから取得した値に基づいて、注文の合計送料を設定します。
ThrottleDMLPerformance | パイプラインによるダイレクト メール メッセージの処理速度を制御します。
ValidateCCNumber | クレジット カードの有効期限の確認と、カード番号のチェックサム テストを行います。
VerifyMessageBody | ユーザー フラグに基づいて、ダイレクト メール メッセージの本体をチェックします。
VerifyRecipientData | ダイレクト メール メッセージの受信者に関するデータをチェックします。


AddAttachments

このコンポーネントは、ダイレクト メール メッセージにアタッチメントを追加するために使います。

このコンポーネントはパイプライン エディタで AddAttachments として表示されますが、ProgID は Commerce.DMLAddAttachments です。

使用目的 : ダイレクト メーラー パイプライン、電子メール作成ステージ

構成値

なし。

読み取られる値

AddAttachments コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
rcp_bypass | Order | Boolean です。True の場合、コンポーネントは処理をバイパス (省略) します。
cdo_result | Order | 最後に行われた Collaboration Data Objects (CDO) 処理の結果コード (HRESULT) です。
attachments | Order | アタッチメントをポイントする Uniform Resource Locators (URL) の SimpleList です。
cdo_message | Context | CDO メッセージ オブジェクト (CDO.Message) への参照です。

書き込まれる値

AddAttachments コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
cdo_result | 最後に行われた CDO 処理の結果コード (HRESULT) です。
cdo_error | 省略可能です。最後に行われた CDO 処理が返すエラー文字列です (存在する場合)。エラーがない場合は Null が返されます。

解説

AddAttachments コンポーネントは、CDO for Microsoft Windows 2000 を使って、メッセージにアタッチメントを追加します。

バイパス フラグ (rcp_bypass) が True の場合、または直前の CDO 操作が正常に終了しなかった場合 (cdo_result が S_OK でない場合) は、このコンポーネントは処理をスキップします。

このコンポーネントを実行する前に、メッセージ本文が既に存在している必要があります。

関連項目

ComposeDMLMessage

CreateUPMCookie

SendPrecomposedMessage

ThrottleDMLPerformance

VerifyMessageBody

VerifyRecipientData


AdvertisingNeedOfDelivery

このコンポーネントは、ビジネス上の合意事項を満たす表示頻度で、広告が確実に選択されるようにするために使います。

このコンポーネントはパイプライン エディタで AdvertisingNeedOfDelivery として表示されますが、ProgID は Commerce.CSFAdvertisingNeedofDelivery です。

使用目的 : コンテンツ選択パイプライン、初期スコア ステージ

構成値

なし。

読み取られる値

AdvertisingNeedOfDelivery コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_content | Order | コンテンツ項目を含む ContentList オブジェクトへの参照です。
_performance | Order | InitCSFPipeline コンポーネントがキャッシュから取得する Performance ディクショナリへの参照です。
_cache._LastNODRecalc | Context | _LastNODRecalc キー値は、広告情報が含まれている現在のディクショナリへの参照である _cache キーから読み取られます。_LastNODRecalc の値は、AdvertisingNeedOfDelivery コンポーネントが ContentList オブジェクトのすべての広告の表示頻度を最後に再計算した時刻を示します。
Trace | Context | 省略可能です。スコア調整追跡が有効になっているかどうかを示す Boolean です。このコンポーネントが追跡文字列を作成するのは、このフラグが True に設定されている場合だけです。

AdvertisingNeedOfDelivery コンポーネントは、_content によって参照される ContentList オブジェクトの各項目について、次の値を読み取ります。

キー | 説明
need_of_delivery | 品目の表示頻度、つまり、品目の初期スコアです。
invalid_nod | Boolean フラグです。True の場合は、品目の表示頻度を再計算します。
ad_type | 品目の種類です。有料広告は 1、自社広告は 2 です。
ad_weight | 広告に割り当てられている現在の優先度です。キャンペーン レベルの目標が設定されているキャンペーンの自社広告または有料広告に対して使われます。Commerce Server ビジネス デスクのキャンペーン マネージャ モジュールに指定されます。
event_name | イベントの名前です。
events_scheduled | 品目にスケジュールされているイベントの総数です。
events_served | 現在までに処理されたイベントの総数です。
prev_events_served | 有効日以前に処理されたイベント数です。
eff_date_start | 品目の有効開始日です。
date_end | 品目の終了日です。
time_of_day_start | イベントが開始する日の時刻です。
time_of_day_end | イベントが終了する日の時刻。
days_of_week | 曜日を表すビット フラグです。

書き込まれる値

AdvertisingNeedOfDelivery コンポーネントは、指定されたディクショナリに次の値を書き込みます。

キー | ディクショナリ | 説明
_content | Order | 特に、コンポーネントはコンテンツ項目の次のフィールドに書き込みます。 need_of_delivery 広告の計算済み表示頻度です。 invalid_nod 表示頻度は既に計算されているため、False にリセットします。 score 品目のスコアです。品目の表示頻度に初期化されます。自社広告の場合は ad_weight キーに初期化されます。
_cache._LastNODRecalc | Context | AdvertisingNeedOfDelivery コンポーネントが ContentList オブジェクトのすべての広告の表示頻度を最後に再計算した時刻です。

解説

このコンポーネントは、ContentList オブジェクトの広告品目の表示頻度 (NOD) を計算し、品目の初期スコアとして割り当てます。各品目の NOD の再計算は、定期的に行われるか、または品目の invalid_nod フラグが True の場合に行われます。ContentList オブジェクトの列の詳細については、「CSFLoadAdvertisements」を参照してください。

AdvertisingNeedOfDelivery コンポーネントは、ContentList オブジェクトの SetScore メソッドを使って初期スコアを設定します。

有料広告の NOD 値は、このコンポーネントでは計算されません。効率を高めるために、有料広告の NOD 値は LoadAdvertisements キャッシュ ローダー コンポーネントと RecordEvent パイプライン コンポーネントで計算されます。有料広告の場合、このコンポーネントは、need_of_delivery フィールドの値を score フィールドにコピーするだけです。

自社広告の NOD は、自社広告の優先度と同じ値に設定されます。自社広告を配信するかどうかについての決定は、SelectWinners パイプライン コンポーネントが行います。競合は、自社広告間のみで発生します。自社広告の実行比率は、その広告の優先度をすべての自社広告の優先度の合計で割った値です。

このスコア方式は、Site Server 3.0 Commerce Edition の AdServer コンポーネントで使われる方式とは異なることに注意してください。Site Server 3.0 Commerce Edition の AdServer コンポーネントでは、各自社広告は、0.95 の固定表示頻度スコアで開始する点を除いて、有料広告と同様にスコアが決定され、選択されます。

Commerce Server 2000 は、有料広告に対して新しい NOD 計算式を使います。この計算式は、広告スケジュール全体が遅れている場合に、公正な選択の機会を各広告に与えるように設計されています。この計算式では、すべての広告はそれぞれの目標に比例した割合で表示されます。

新しい計算式を次に示します。

NOD = ( Events Scheduled / Time Total ) / ( Events Served / Time Elapsed )

この計算式を使うと、配信目標を満たしている広告の NOD は、1.0 になります。遅れている広告の NOD は、1.0 より大きくなります。配信目標に関して広告の配信が遅れるほど、NOD は大きくなります。配信目標を超えた広告の NOD は 1.0 より小さくなります。

関連項目

SelectWinners


ComposeDMLMessage

このコンポーネントは、ダイレクト メール メッセージの本文を作成するために使います。

このコンポーネントはパイプライン エディタで ComposeDMLMessage として表示されますが、ProgID は Commerce.DMLComposeMessage です。

使用目的 : ダイレクト メーラー パイプライン、電子メール作成ステージ

構成値

なし。

読み取られる値

ComposeDMLMessage コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
rcp_bypass | Order | Boolean です。True の場合、コンポーネントは処理をバイパス (省略) します。
use_precomposed_body | Order | Boolean です。True の場合、コンポーネントは precomposed_body キーに割り当てられたテキスト形式の本文からメッセージを作成します。
precomposed_body | Order | 省略可能です。テキスト形式のメッセージ本文です。このキーは、既定では空文字列です。
rcp_url | Order | 省略可能です。メールの内容を取得するために使用される Uniform Resource Locator (URL) です。これは default_url キーよりも優先されます。
rcp_url_isfile | Order | 省略可能です。コンテンツの URL (rcp_url) がファイルであり、http:// アドレスではない場合に、True になります。
rcp_url_content | Order | 省略可能です。rcp_url_isfile キーが True の場合は、rcp_url キーがポイントするファイルの内容です。
from_field | Order | メッセージの From (送信元) フィールドです。
replyto_field | Order | メッセージの Reply-to (返信先) フィールドです。
rcp_email | Order | 受信者の電子メール アドレスです。
subj_field | Order | メッセージの Subject (件名) フィールドです。
rcp_formatting | Order | メッセージの書式を決定します。選択できるオプションは次のとおりです。 0 既定の書式設定です。 1 テキストです。 2 MIME です。 3 MHTML です。 このキーは、既定の書式を上書きします。
rcp_personalize | Order | このキーは、受信者のメッセージをパーソナライズするかどうかを指定するために使います。選択できるオプションは次のとおりです。 0 パーソナライズしません。 1 パーソナライズします。 このキーは、既定では 1 (パーソナライズする) です。
rcp_locale | Order | 受信者が使うロケール コードです。
default_locale | Order | 省略可能です。受信者用のロケール コード (rcp_locale) がない場合に使うロケール コードです。
cookie | Order | cookie データを含むディクショナリです。
cdo_message | Context | Collaboration Data Objects (CDO) メッセージ オブジェクト (CDO.Message) への参照です。
cdo_config | Context | CDO 構成オブジェクト (CDO.Configuration) への参照です。
default_url | Context | 省略可能です。メールの内容を取得するために使用される Uniform Resource Locator (URL) です。
default_url_isfile | Context | 省略可能です。既定の URL がファイル パスであり、http:// パスではない場合に、True になります。
default_url_content | Context | 省略可能です。default_url_isfile キーが True の場合は、default_url キーがポイントするファイルの内容です。
default_formatting | Context | 省略可能です。メッセージの既定の書式です。選択できるオプションは次のとおりです。 0 既定の書式設定です。 1 テキストです。 2 MIME です。 3 MHTML です。

書き込まれる値

ComposeDMLMessage コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
cdo_result | 最後に行われた CDO 処理の結果コード (HRESULT) です。
cdo_error | 省略可能です。最後に行われた CDO 処理が返すエラー文字列です (存在する場合)。エラーがない場合は Null が返されます。

解説

バイパス フラグ (rcp_bypass) が True の場合、ComposeDMLMessage コンポーネントは処理をスキップします。それ以外の場合は、Collaboration Data Objects (CDO) for Microsoft Windows 2000 を使って、メール メッセージを作成します。各 CDO 処理の終了後、コンポーネントはエラー チェックを行います。

単純なフラット ファイルを使ったパーソナライズされていないメッセージの場合、use_precomposed_body キーを True に設定できます。このコンポーネントは、precomposed_body キーからメッセージ本文を読み込みます。

パーソナライズされたメッセージの場合は、ComposeDMLMessage コンポーネントは、CreateUPMCookie コンポーネントによって収集された情報を使って cookie 文字列を作成します。

ComposeDMLMessage コンポーネントは、Order ディクショナリのロケール値 (rcp_locale キーまたは default_locale キー) を使って、多言語メッセージを処理できます。ロケール値は、確認なしで CDO に渡されます。ロケール コードが指定されていない場合は、CDO の既定のロケールを使われます。

rcp_url キーまたは default_url キーにファイル パスが使用されている場合は、ダイレクト メーラーはパフォーマンスを向上させるために、ファイルの内容を (rcp_url_content キーまたは default_url_content キーに) あらかじめ読み込みます。この場合、メッセージの内容は、ASCII テキストでは 2 MB、Unicode テキストでは 1 MB に制限されます。

関連項目

AddAttachments

CreateUPMCookie

SendPrecomposedMessage

ThrottleDMLPerformance

VerifyMessageBody

VerifyRecipientData


CreateUPMCookie

このコンポーネントは、cookie データを収集して、パーソナライズされたメッセージを生成する Active Server Pages (ASP) ページに渡すために使います。

このコンポーネントは、パイプライン エディタで CreateUPMCookie として表示されますが、ProgID は Commerce.DMLCreateUPMCookie です。

使用目的 : ダイレクト メーラー パイプライン、cookies 作成ステージ

構成値

なし。

読み取られる値

CreateUPMCookie コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
rcp_bypass | Order | Boolean です。True の場合、コンポーネントは処理をバイパス (省略) します。
rcp_personalize | Order | 省略可能な数値です。このキーは、受信者のメッセージをパーソナライズするかどうかを指定するために使います。 0 パーソナライズしません。 1 パーソナライズします。 このキーは、既定では 1 (パーソナライズする) です。
cookie | Order | 省略可能です。作成された cookie を保持するディクショナリへの参照です。このキーが存在しない場合は、作成されます。
rcp_guid | Order | 省略可能です。この受信者を一意に識別するグローバル一意識別子 (GUID) です。これはユーザー プロファイルから取得されます。
rcp_email | Order | 受信者の電子メール アドレスです。
css_site | Context | サイト ID 文字列です。
campaign_item | Context | 省略可能です。キャンペーン項目 ID です。
campaign_item_name | Context | 省略可能です。キャンペーン項目の名前です。
default_url_isfile | Context | 既定の Uniform Resource Locator (URL) がファイル パスであり、http:// パスではない場合は、このキーは True になります。

書き込まれる値

CreateUPMCookie コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
Cookie | cookie で使われる情報を含むディクショナリです。

解説

CreateUPMCookie コンポーネントは、rcp_bypass キーが True、default_url_isfile キーが True、または rcp_personalize キーが 0 の場合は何も実行しません。

CreateUPMCookie コンポーネントは、ディクショナリに cookie 情報を保持します。cookie 文字列は、ComposeDMLMessage コンポーネントによって作成されます。

メッセージをパーソナライズしない場合、このコンポーネントは cookie エントリを作成し (Microsoft_DirectMailer キーに YES を割り当てて)、ローカルに格納された cookie を CDO に使われないようにします。

データから作成される cookie 文字列の書式を次に示します。

MSCSProfile='encryptedstring';CampaignItemID=string;CampaignItemName=string;UserEmail=string

cookie の項目は、次の意味を持ちます。

略語 | 説明
MSCSProfile | 文字列です。メッセージをパーソナライズするために必要なユーザー プロファイル ID です。
CampaignItemID | 文字列です。クリック追跡のために必要なキャンペーン項目 ID です。
CampaignItemNames | 文字列です。ユーザーのメッセージ ラベルを作成するためのキャンペーン項目名です。
UserEmail | 文字列です。ユーザーの電子メール アドレスです。

この表の略語は、Cookie ディクショナリでも使われるキーであることに注意してください。

ユーザー プロファイル ID が暗号化されるのは、メールがキャンペーンの一部として送信される場合だけです。スタンドアロンのダイレクト メーラー ジョブでは、ユーザー プロファイル ID は暗号化されません。

関連項目

AddAttachments

ComposeDMLMessage

SendPrecomposedMessage

ThrottleDMLPerformance

VerifyMessageBody

VerifyRecipientData


CSFLoadAdvertisements

このコンポーネントは、データベースから広告コンテンツを読み込むために、CacheManager オブジェクトで使います。

注

  • CSFLoadAdvertisements コンポーネントは、2 つのパイプライン コンポーネント インターフェイス (IPipelineComponent と IPipelineComponentAdmin) を実装していますが、CSFLoadAdvertisements コンポーネントはパイプライン コンポーネントではなく、パイプライン エディタには表示されません。そのため、このコンポーネントは、パイプライン エディタで使用または構成することはできません。

構成値

なし。

読み取られる値

なし。

書き込まれる値

なし。

解説

CacheManager オブジェクトで CSFLoadAdvertisements コンポーネントを使って、後でアプリケーションで使用するために、広告コンテンツを読み込むことができます。

CacheManager オブジェクトによって実行されると、CSFLoadAdvertisements コンポーネントは 2 つのパイプライン ディクショナリ (Order と Context) を使って、動作方法と CacheManager オブジェクトに情報を返す方法を決定します。

CSFLoadAdvertisements コンポーネントは、初めにデータベースへの接続を開き、広告のリストを取得します。コンポーネントは、ContentListFactory オブジェクトを使って、ContentList オブジェクトにデータを生成します。次に、コンポーネントは、取得したデータをテンプレート、対象グループ、およびページ グループに分割します。

ContentList 内の列

次の表は、CSFLoadAdvertisements コンポーネントが返す ContentList オブジェクトの列を示しています。列名はアルファベット順に表示されます。

列名 | 型 | フラグ
ad_type | short (CLCOL_I2) | 1 (CLCOL_READONLY)
ad_weight | int (CLCOL_I4) | 1 (CLCOL_READONLY)
campaign_id | int (CLCOL_I4) | 1 (CLCOL_READONLY)
customer_id | int (CLCOL_I4) | 1 (CLCOL_READONLY)
date_end | Date/Time (CLCOL_DATE) | 1 (CLCOL_READONLY)
date_start | Date/Time (CLCOL_DATE) | 1 (CLCOL_READONLY)
days_of_week | short (CLCOL_I2) | 1 (CLCOL_READONLY)
eff_date_start | Date/Time (CLCOL_DATE) | 1 (CLCOL_READONLY)
event_name | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
events_scheduled | int (CLCOL_I4) | 1 (CLCOL_READONLY)
events_served | int (CLCOL_I4) | 1 (CLCOL_READONLY)
exposure_limit | int (CLCOL_I4) | 1 (CLCOL_READONLY)
height | short (CLCOL_I2) | 1 (CLCOL_READONLY)
industry | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
invalid_nod | Boolean (CLCOL_BOOL) | 0 (DEFAULT)
item_id | int (CLCOL_I4) | 1 (CLCOL_READONLY)
name | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
need_of_delivery | Real (CLCOL_R4) | 0 (DEFAULT)
prev_events_served | int (CLCOL_I4) | 1 (CLCOL_READONLY)
score | Real (CLCOL_R4) | 6 (CLCOL_PRIVATE | CLCOL_SCORE_COLUMN)
size | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
target_groups | SafeArray (CLCOL_VARIANTARRAY) | 1 (CLCOL_READONLY)
template | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
time_of_day_end | short (CLCOL_I2) | 1 (CLCOL_READONLY)
time_of_day_start | short (CLCOL_I2) | 1 (CLCOL_READONLY)
values | IDispatch (CLCOL_DISPATCH) | 1 (CLCOL_READONLY)
width | short (CLCOL_I2) | 1 (CLCOL_READONLY)

上の表の略語は、ContentList オブジェクトの列挙値です。詳細については、「ContentListSchema.ColumnType」の "解説" を参照してください。

例

「CacheManager オブジェクト」の例を参照してください。


CSFLoadDiscounts

このコンポーネントは、コンテンツ選択フレームワークの割引を読み込むために、CacheManager オブジェクトで使います。

注

  • CSFLoadDiscounts コンポーネントは、2 つのパイプライン コンポーネント インターフェイス (IPipelineComponent と IPipelineComponentAdmin) を実装していますが、CSFLoadDiscounts コンポーネントはパイプライン コンポーネントではなく、パイプライン エディタには表示されません。そのため、このコンポーネントは、パイプライン エディタで使用または構成することはできません。

構成値

なし。

読み取られる値

なし。

書き込まれる値

なし。

解説

CacheManager オブジェクトで CSFLoadDiscounts コンポーネントを使って、後でアプリケーションで使用するために、割引を読み込むことができます。

CacheManager オブジェクトによって実行されると、CSFLoadDiscounts コンポーネントは 2 つのパイプライン ディクショナリ (Order と Context) を使って、動作方法と CacheManager オブジェクトに情報を返す方法を決定します。

CSFLoadDiscounts コンポーネントは、初めにデータベースへの接続を開き、割引のリストを取得します。コンポーネントは、ContentListFactory オブジェクトを使って、ContentList オブジェクトにデータを生成します。次に、このコンポーネントは、取得した情報からテンプレート、対象グループ、およびページ グループを抽出します。

ContentList 内の列

次の表は、CSFLoadDiscounts コンポーネントが返す ContentList オブジェクトの列を示しています。列名はアルファベット順に表示されます。

列名 | 型 | フラグ
award_expr | int (CLCOL_I4) | 1 (CLCOL_READONLY)
award_max | int (CLCOL_I4) | 1 (CLCOL_READONLY)
campaign_id | int (CLCOL_I4) | 1 (CLCOL_READONLY)
click_required | Boolean (CLCOL_BOOL) | 1 (CLCOL_READONLY)
condition_basis | int (CLCOL_I4) | 1 (CLCOL_READONLY)
condition_expr | int (CLCOL_I4) | 1 (CLCOL_READONLY)
condition_mny_min | Currency (CLCOL_CY) | 1 (CLCOL_READONLY)
condition_qty_min | int (CLCOL_I4) | 1 (CLCOL_READONLY)
date_end | Date/Time (CLCOL_DATE) | 1 (CLCOL_READONLY)
date_modified | Date/Time (CLCOL_DATE) | 1 (CLCOL_READONLY)
date_start | Date/Time (CLCOL_DATE) | 1 (CLCOL_READONLY)
description | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
disc_id | int (CLCOL_I4) | 1 (CLCOL_READONLY)
disjoint | Boolean (CLCOL_BOOL) | 1 (CLCOL_READONLY)
exposure_limit | int (CLCOL_I4) | 1 (CLCOL_READONLY)
expressions_used_for_display | Boolean (CLCOL_BOOL) | 1 (CLCOL_READONLY)
height | short (CLCOL_I2) | 1 (CLCOL_READONLY)
item_id | int (CLCOL_I4) | 1 (CLCOL_READONLY)
limit | int (CLCOL_I4) | 1 (CLCOL_READONLY)
name | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
offer_type | int (CLCOL_I4) | 1 (CLCOL_READONLY)
offer_value | Currency (CLCOL_CY) | 1 (CLCOL_READONLY)
order_level | Boolean (CLCOL_BOOL) | 1 (CLCOL_READONLY)
pagegroups | SafeArray (CLCOL_VARIANTARRAY) | 1 (CLCOL_READONLY)
rank | int (CLCOL_I4) | 1 (CLCOL_READONLY)
required_exprs | SafeArray (CLCOL_VARIANTARRAY) | 1 (CLCOL_READONLY)
score | Real (CLCOL_R4) | 6 (CLCOL_PRIVATE | CLCOL_SCORE_COLUMN)
size | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
special_offer_type | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
target_groups | SafeArray (CLCOL_VARIANTARRAY) | 1 (CLCOL_READONLY)
template | 文字列 (CLCOL_STRING) | 1 (CLCOL_READONLY)
width | short (CLCOL_I2) | 1 (CLCOL_READONLY)

上の表の略語は、ContentList オブジェクトの列挙値です。詳細については、「ContentListSchema.ColumnType」の "解説" を参照してください。

例

「CacheManager オブジェクト」の例を参照してください。


CSFWriteEvents

このコンポーネントは、コンテンツ選択フレームワークのイベント コンテンツをログに記録するために、CacheManager オブジェクトで使います。

注

  • CSFWriteEvents コンポーネントは、2 つのパイプライン コンポーネント インターフェイス (IPipelineComponent と IPipelineComponentAdmin) を実装していますが、CSFWriteEvents コンポーネントはパイプライン コンポーネントではなく、パイプライン エディタには表示されません。そのため、このコンポーネントは、パイプライン エディタで使用または構成することはできません。

構成値

コンポーネントのプロパティを設定して、CSFWriteEvents コンポーネントの実行方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [CSFWriteEvents] タブで、次の項目を使います。

項目 | 説明
[接続文字列] | データベースに接続するために指定する接続文字列です。これは、完全な接続文字列、または接続マップの名前のいずれかになります。指定されない場合は、既定の接続文字列が渡されます。

読み取られる値

CSFWriteEvents コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_performance | Order | さまざまなコンテンツ項目の過去のイベント差分カウントです。

書き込まれる値

なし。

解説

CacheManager オブジェクトで CSFWriteEvents コンポーネントを使って、広告とそのほかのキャンペーン スケジュールを後で調整するために、データベースにイベント情報を保存できます。

CacheManager オブジェクトによって実行されると、CSFWriteEvents コンポーネントは 2 つのパイプライン ディクショナリ (Order と Context) を使って、動作方法と CacheManager オブジェクトに情報を返す方法を決定します。

CSFWriteEvents コンポーネントは、初めにデータベースへの接続を開きます。次に、Performance ディクショナリに格納された情報を使って、データベースにイベント データを書き出します。

例

「CacheManager オブジェクト」の例を参照してください。


DBOrderPromoADO

このコンポーネントは、クエリを実行し、データベースから、価格調整による販売促進活動に関するデータを取得し、それを基に品目の価格調整を行うために使います。

使用目的 : 注文処理パイプライン、品目価格調整ステージ

注

  • DBOrderPromoADO コンポーネントは、今後の開発では使わないでください。コンテンツ選択パイプラインの割引機能によって、商品価格に割引を適用するための、より強力で一般的なしくみが利用できます。詳細については、「割引オブジェクト」を参照してください。

構成値

コンポーネントのプロパティを設定して、DBOrderPromoADO コンポーネントがドキュメントを取得する場所と結果を書き込む場所を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [DB 注文プロモーション (ADO)] タブで、次の項目を使います。

項目 | 説明
[クエリ] | このコンポーネントで実行するクエリの完全な SQL テキスト、または Global.asa ファイルで定義される完全な SQL テキストを持つクエリの名前のいずれかを入力します。
[接続文字列] | データベースに接続するための接続文字列を入力します。これは、完全なデータ ソース名 (DSN)、または接続マップの名前のいずれかになります。指定されない場合は、既定の接続文字列が使われます。

読み取られる値

DBOrderPromoADO コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._iadjust_currentprice | Order | 販売促進を適用する前の品目の現在の価格です。
item._product_* | Order | 省略可能です。
_shopper_* | Order | 省略可能です。
item._n_unadjusted | Order | この品目で、割引が適用されなかった分の数量です。
item.quantity | Order | この品目に対して注文された数量です。
DefaultConnectionString | Context | 省略可能です。既定のクエリ文字列を含む Application ディクショナリ内のキーです。
ConnectionStringMap | Context | 省略可能です。マップされた接続文字列の名前を参照するマップです。
QueryMap | Context | 省略可能です。クエリ マップを含むディクショナリへの参照です。

書き込まれる値

DBOrderPromoADO コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._oadjust_adjustedprice | 品目のコストの合計です。販売促進活動によって調整されている可能性もあります。
item._n_unadjusted | この品目で、割引が適用されなかった分の数量です。販売促進活動によって調整されている可能性もあります。

解説

DBOrderPromoADO コンポーネントはクエリを実行して、データベース テーブルに定義された販売促進条件が OrderForm の品目によって満たされているかどうかを判断します。条件が満たされている場合、DBOrderPromoADO コンポーネントは販売促進の影響を受ける品目の item._oadjust_adjustedprice キーと item._n_unadjusted キーを初期化して、OrderForm オブジェクトに販売促進を適用します。

item._oadjust_adjustedprice キーには、販売促進のために調整された指定品目の合計コストが反映されます。item._n_unadjusted キーには、販売促進の影響を受けない品目の数が格納されます。

たとえば、品目 A を 1 つ購入したユーザーは品目 B を半額で 1 つ購入できるという販売促進を定義するとします。そして、次の条件が存在するとします。

  • ユーザーが品目 A を 1 つ購入した。

  • そのユーザーが品目 B を 3 つ購入した。

  • 品目 B の正規の価格は 1.00 である。

DBOrderPromoADO コンポーネントが実行されると、販売促進の条件により、このユーザーは品目 B のうち 2 つを正規の価格 1.00 で購入します。そして、3 つ目は 50% 引きで購入することになります。したがって、品目 B の item._oadjust_adjustedprice キーは 2.50 になります。

また、品目 B の 3 つの商品のうち 1 つだけが販売促進に基づいて調整されるため、item._n_unadjusted キーは 2 に設定されます。一度調整された品目の価格は再度調整することができないので、注意が必要です。

この例では、品目 B の 1 つの価格が調整されました。品目 B の残りの 2 つは調整されていません。その結果、次回 DBOrderPromoADO コンポーネントが実行されたときに、これら 3 つのうち販売促進の調整対象になるものがいくつあっても、実際に調整できるのは、品目 B のうち前回調整されなかった 2 つだけです。

販売促進テーブル

DBOrderPromoADO コンポーネントでは、指定するクエリがテーブル列の特定のグループを参照する必要があるため、販売促進を格納するテーブルには特定の構造が必要です。

データベース クエリは、少なくとも次の列を返す必要があります。

データベース列 | 説明
cond_column | この列には、販売促進条件をチェックする品目の属性の名前が含まれます。
cond_op | cond_column と cond_value を比較する比較演算子です。たとえば、= や <> です。
cond_value | 販売促進の対象となる品目を識別する値です。たとえば、cond_column が _product_pfid、cond_op が "="、および cond_value が 22 の場合、品目リストのうち、_product_pfid が 22 に評価される品目がこの条件セットを満たします。 この値が数値の場合は、整数値でなければなりません。浮動小数点数 (たとえば、10.0) は受け付けられません。
cond_all | 省略可能です。1 (True) に設定されている場合、購入される商品セット内のすべての商品が、この販売促進をトリガします。それ以外の場合は、cond_column、cond_op、および cond_value (条件セット) で定義された基準を満たす商品だけが、この販売促進をトリガします。単一の商品が複数の販売促進の対象になることを防ぐために、商品は販売促進が適用された後に、条件セットと特典セットから削除されます。
award_column | award_column は、award_op 列および award_value 列と共に、販売促進の特典セットを定義します。award_column には、特典の基準を定義するキーと値が含まれます。
award_op | award_column と award_value を比較する比較演算子です。たとえば、= や <> です。
award_value | この列は、award_column 列によって参照される要素の値を示します。
award_all | 省略可能です。1 (True) に設定されている場合、その特典はすべての商品に適用できます。それ以外の場合、この特典は、award_column、award_op、および award_value 列 (特典セット) で定義された基準を満たす商品だけに適用されます。
shopper_column | ユーザー固有の情報を示す値です。この値は、すべてのユーザーが販売促進の対象になることを示すワイルドカード値 (@) にすることができます。
shopper_op | ユーザーを指定する場合、この列は = に設定します。それ以外の場合は、ワイルドカード値 (@) にします。
shopper_value | ユーザーの種類を示す値です。すべてのユーザーの場合は、ワイルドカード値 (@) に設定します。
shopper_all | 省略可能です。この列は、この販売促進がすべてのユーザーに適用できるかどうかを示します。この値が 0 (False) の場合、この販売促進は、 shopper_column、shopper_op、および shopper_value の各列で定義された基準を満たすユーザーだけに適用できます。
cond_min | この列には、販売促進の対象になるために必要な最小購入の値が含まれます。値の単位は、セント (またはその他の通貨単位)、あるいは数量です。cond_min 列の単位は、cond_basis 列で参照されている値によって決まります。たとえば、cond_basis 列に "P" が含まれている場合、cond_min 列の単位は価格と見なされます。また、cond_basis 列に "Q" が含まれている場合、cond_min 列の単位は数量と見なされます。
cond_basis | cond_min 列の単位が価格または数量のどちらであるかを示す値です。価格の場合は P、数量の場合は Q です。
award_max | 特典セットのサイズです。
disjoint_cond_award | この列には、特典を "解除" できるかどうかを示す数値 (1 または 0) が含まれます。値が 0 の場合、特典は解除されます。それ以外の場合は、解除されません。ここで使われている解除という用語は、1 つの品目がその品目自体の販売促進を行うことができるかどうかに関連する用語です。条件セットと特典セットが同じ品目を参照していない場合、この値は無視されます。 たとえば、品目 A を 1 つ購入すると、品目 A を 1 つ 50% 引きで購入できるという販売促進を行うとします。 特典が解除されていない場合 (disjoint_cond_award 列が 0 の場合) は、品目 A を 1 つ購入すると、それ自体が 50% 引きになります。特典が解除された場合 (disjoint_cond_award 列が 1 の場合)、品目 A を購入するユーザーは 2 つ目の 品目 A を 50% 引きで購入できます。ただし、2 つ目の品目がバスケットに追加されるまで割引は適用されません。
disc_value | 割引の金額を示す数値です。
disc_type | 割引の種類です。パーセント (%) 記号または通貨 ($) 記号のいずれかです。
date_start | 省略可能なフィールドです。販売促進を開始する日付です。この日付の午前 00:00:01 に開始します。
date_end | 省略可能なフィールドです。販売促進を終了する日付です。この日付の午前 00:00:01 に終了します。date_start 列と date_end 列で日付を指定すると、時刻が午前 0 時に設定されるため、date_end 列はその指定された日付を除外します。
Connection String | データベースに接続するために使われる DSN 接続文字列です。

注文に関する販売促進には、3 つの基準があります。ユーザー基準、条件基準、および特典基準です。ユーザーがユーザー基準に一致しない場合、販売促進は適用されません。ユーザーがユーザー基準に一致する場合は、残りの 2 つの基準がその順番ですべての品目に適用され、条件セット (条件基準に一致するもの) と特典セット (特典基準に一致するもの) の 2 つのセットが生成されます。


DefaultHandlingCy/DefaultHandling

これらのコンポーネントは、手数料コンポーネントのプレースホルダとして使います。これらのコンポーネントは、注文の合計手数料を 0 に初期化します。

DefaultHandling コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。DefaultHandlingCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、手数料ステージ

構成値

なし。

読み取られる値

なし。

書き込まれる値

DefaultHandlingCy コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。DefaultHandling コンポーネントは、cy_ なしで同じキーに値を割り当てます。

キー | 説明
order._cy_handling_total | 注文処理のためのコストの合計です。

解説

DefaultHandlingCy コンポーネントと DefaultHandling コンポーネントは、Order ディクショナリの合計手数料に 0 を割り当てます。これらは、実際の使用時にはほかの手数料コンポーネントに置き換えられるプレースホルダ コンポーネントです。


DefaultItemPriceCy/DefaultItemPrice

これらのコンポーネントは、QueryCatalogInfo コンポーネントや QueryProdInfoADO コンポーネントから返された標準価格を、品目の正規の価格として設定するために使います。

DefaultItemPrice コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。DefaultItemPriceCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、品目価格ステージ

構成値

なし。

読み取られる値

DefaultItemPriceCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。DefaultItemPrice コンポーネントは、cy_ なしで同じ値を読み取ります。

キー | ディクショナリ | 説明
item._product_cy_list_price | Order | QueryCatalogInfo、QueryProdInfoADO などのコンポーネントが返す品目の標準価格です。

書き込まれる値

DefaultItemPriceCy コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。DefaultItemPrice コンポーネントは、cy_ なしで同じキーに値を割り当てます。

キー | 説明
item._cy_iadjust_regularprice | 品目の正規の価格です。

解説

DefaultItemPriceCy コンポーネントと DefaultItemPrice コンポーネントは、異なるディクショナリ キーで同じ操作を実行します。次の説明では、DefaultItemPriceCy のキーを使います。

正規の価格を標準価格以外の価格に設定するには、パイプライン内でこれらのコンポーネントを置き換えます。

注文フォームの各品目 (items コレクションの各品目) ごとに、DefaultItemPriceCy コンポーネントはその品目の _cy_product_list_price キーに格納された値を _iadjust_regularprice キーに割り当てます。正規の価格の設定は、通常は商品情報ステージで QueryCatalogInfo コンポーネントまたは QueryProdInfoADO コンポーネントによって行われます。

QueryCatalogInfo コンポーネントまたは QueryProdInfoADO コンポーネントが標準価格を取得しない場合、Item ディクショナリには _product_list_price キーは含まれません。この場合は、DefaultItemPrice コンポーネントが _iadjust_regularprice キーを初期化できるように、コンポーネント (たとえば Scriptor) を追加して、正規の価格を取得する必要があります。

パイプラインの品目価格ステージに続くステージには、設定対象の _iadjust_regularprice キーに依存するコンポーネントが含まれています。このキーに値がない場合、これらのコンポーネントは失敗します。RequiredItemPrice コンポーネントは、値が存在するかどうかを確認します。

関連項目

QueryCatalogInfo

QueryProdInfoADO

RequiredItemPriceCy/RequiredItemPrice


DefaultOrderSubTotalCy/DefaultOrderSubTotal

これらのコンポーネントは、注文の代金を計算するために使います。

DefaultOrderSubTotal コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。DefaultOrderSubTotalCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、注文代金ステージ

構成値

なし。

読み取られる値

DefaultOrderSubTotalCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。DefaultOrderSubTotal コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
item._cy_oadjust_adjustedprice | Order | 品目のコストの合計です。

書き込まれる値

DefaultOrderSubTotalCy コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。DefaultOrderSubTotal コンポーネントは、cy_ なしで同じキーに値を割り当てます。

キー | 説明
_cy_oadjust_subtotal | すべての品目の代金です。

解説

代金は、OrderForm オブジェクトの品目の SimpleList オブジェクト内の品目ごとの合計コストを総計して算出されます。


DefaultPayment

このコンポーネントは、支払い認証コードに既定値を割り当てるために使います。このコンポーネントは通常、サードパーティの支払いコンポーネントに置き換えられます。

注

  • DefaultPayment コンポーネントは、コンポーネントの調整ルールに従いません。このコンポーネントは、支払い認証コードを常に設定します。

使用目的 : 注文処理パイプライン、支払いステージ

構成値

なし。

読み取られる値

なし。

書き込まれる値

DefaultPayment コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。

キー | 説明
_payment_auth_code | 支払い認証コードです。

解説

DefaultPayment コンポーネントは、既定の認証コードとして FAITH という文字列の値を割り当てます。


DefaultShippingCy/DefaultShipping

これらのコンポーネントは、送付コンポーネントのプレースホルダとして使います。このコンポーネントは、送料を 0 に設定します。

DefaultShipping コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。DefaultShippingCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

注

  • DefaultShippingCy コンポーネントと DefaultShipping コンポーネントは、コンポーネントの調整ルールに従いません。このコンポーネントは、合計送料を常に 0 に設定します。

使用目的 : 注文処理パイプライン、送料ステージ

構成値

なし。

読み取られる値

なし。

書き込まれる値

DefaultShippingCy コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。DefaultShipping は、cy_ なしで同じキーに値を割り当てます。

キー | 説明
_cy_shipping_total | 注文に対する送料の合計です。

解説

DefaultShippingCy コンポーネントと DefaultShipping コンポーネントは、合計送料を 0 に設定します。


DefaultShopperInfo

このコンポーネントは、パイプラインの Context ディクショナリにある Shopper ディクショナリから、情報を OrderForm オブジェクトに移動するために使います。

使用目的 : 注文処理パイプライン、買い物客情報ステージ

構成値

なし。

読み取られる値

DefaultShopperInfo コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
Shopper | Context | ユーザー情報を含むディクショナリです。

書き込まれる値

DefaultShopperInfo コンポーネントは、Shopper ディクショナリのすべてのキーの値を読み取り、そのキーの値に _shopper_ というプレフィックスを付けた値で対応するキーを OrderForm オブジェクトに作成します。

解説

Context ディクショナリに Shopper ディクショナリがない場合、このコンポーネントは何も実行しません。


DefaultTaxCy/DefaultTax

これらのコンポーネントは、注文の税フィールドを 0 に設定するために使います。これらコンポーネントは通常、サードパーティの税コンポーネントに置き換えられます。

DefaultTax コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。DefaultTaxCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

注

  • DefaultTaxCy コンポーネントと DefaultTax コンポーネントは、コンポーネントの調整ルールに従いません。このコンポーネントは、合計税額と注文代金に含まれる税額を常に 0 に設定します。

使用目的 : 注文処理パイプライン、税ステージ

構成値

なし。

読み取られる値

なし。

書き込まれる値

DefaultTaxCy コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。DefaultTax コンポーネントは、cy_ なしで同じキーに値を割り当てます。

キー | 説明
_cy_tax_total | 注文に対する税の合計です。
_cy_tax_included | 注文の代金に既に含まれている税額です。

解説

このコンポーネントは、税フィールドを 0 に設定します。


DefaultTotalCy/DefaultTotal

これらのコンポーネントは、代金を基に注文合計を計算するために使います。

DefaultTotal コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。DefaultTotalCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、注文合計ステージ

構成値

なし。

読み取られる値

DefaultTotalCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。DefaultTotal コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
_cy_oadjust_subtotal | Order | 品目リスト内のすべての品目の代金です。DefaultSubTotal コンポーネントによって設定されます。
_cy_shipping_total | Order | 品目に対する送料の合計です。
_cy_tax_total | Order | 注文に対する税の合計です。
_cy_handling_total | Order | 注文処理のためのコストの合計です。

書き込まれる値

DefaultTotalCy コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。DefaultTotal コンポーネントは、cy_ なしで同じキーに値を割り当てます。

キー | 説明
_cy_total_total | 注文全体の合計です。

解説

これらのコンポーネントは、注文の 4 つの合計がすべて設定されているかどうかを確認します。

4 つの値がすべて存在する場合は、それらを合計して、Order ディクショナリに全体の合計として設定します。

いずれかの値が不足している場合は、このコンポーネントは停止し、エラーを返します。


EvalTargetGroups

このコンポーネントは、広告、コンテンツ選択、および割引の対象を特定グループに定めるために使います。このコンポーネントは、一覧内の各品目について式の一覧を評価し、品目選択スコアを調整します。

使用目的 : コンテンツ選択パイプライン、スコア調整ステージ

構成値

コンポーネントのプロパティを設定して、EvalTargetGroups コンポーネントが対象式を評価する方法を決定できます。この情報を評価するには、[コンポーネントのプロパティ] ダイアログ ボックスの [式の評価] タブで、次の行を使います。

行 | 列 | 説明
対象 | 一致 | 対象式の評価結果が "True" の場合に適用される乗数です。既定値は 1.2 です。
 | 不一致 | 対象式の評価結果が "False" の場合に適用される乗数です。既定値は 1 です。
必須 | 一致 | 必須式の評価結果が "True" の場合に適用される乗数です。既定値は 1 です。
 | 不一致 | 必須式の評価結果が "False" の場合に適用される乗数です。既定値は 0 です。
除外 | 一致 | 除外式の評価結果が "True" の場合に適用される乗数です。既定値は 0 です。
 | 不一致 | 除外式の評価結果が "False" の場合に適用される乗数です。既定値は 1 です。

読み取られる値

EvalTargetGroups コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_content | Order | ContentList オブジェクトへの参照です。特に、コンテンツ項目の target_groups フィールドが読み取られます。target_groups フィールドには、各コンテンツ項目に関連付けられた対象グループの ID の配列が含まれています。
TargetGroups | Context | SimpleList オブジェクトのディクショナリです。そのキーは、対象グループの識別子です。各 SimpleList オブジェクトには、エントリの変更で格納される式名とアクションの組み合わせが含まれています。インデックス 0 に最初の式名、インデックス 1 に最初のアクション、インデックス 2 に 2 番目の式名、インデックス 3 に 2 番目のアクションのように続きます。 アクションは、次の意味を持つ数値です。 1 対象 2 必須 3 除外 4 排他 (スポンサー)
Evaluator | Context | 使用する ExpressionEval コンポーネントへの参照です。
ContextProfile | Context | 省略可能です。式の評価に使う ContentSelector オブジェクト (ディクショナリ) です。このディクショナリには、Commerce Server ビジネス デスクで入力されたコンテキスト プロファイルの式をテストする値が含まれています。
UserProfile | Context | 省略可能です。現在のユーザーのプロファイルを含む ProfileObject オブジェクトへの参照です。式の評価で、"UserObject" プロファイルとして使います。
Trace | Context | 省略可能です。スコア調整追跡が有効になっているかどうかを示す Boolean です。このコンポーネントが追跡文字列を作成するのは、このキーが True に設定されている場合だけです。

書き込まれる値

EvalTargetGroups コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_content | コンテンツ項目の score フィールドに必要な調整を加えた ContentList オブジェクトへの参照です。

解説

EvalTargetGroups コンポーネントは、リストの各コンテンツ項目について、リストされた対象式をすべて評価します。その式が True の場合は、指定されたアクション、つまり、対象、必須、または 除外 のいずれかの一致値を適用します。式が False の場合は、指定されたアクションの不一致乗数を適用します。

コンテンツ項目には、適用される対象式が複数存在する場合があります。このため、すべての対象式はコンテンツ項目で評価されますが、最大の乗数を生成する式だけが適用されます。

各アクションは、乗数の組み合わせに対応します。乗数の 1 つが ContentList オブジェクトのコンテンツ項目のスコアに適用されます。式の結果 (True または False) に基づいて、組み合わせから 1 つの乗数が選択されます。

スポンサーは、異なる方法で処理されます。スポンサー アクションは、スコア乗数ではありません。対象グループに評価結果が True になるスポンサー式が含まれている場合は、評価結果が True になるスポンサー式が含まれていない対象グループはすべて資格を失います。

式が未定義の値を生成した場合、適用される乗数はその式に関連付けられたアクションによって決まります。

アクション | 適用される乗数
対象 | 不一致乗数
必須 | 不一致乗数
除外 | 一致乗数
スポンサー | 0

未定義の値を生成する式の例としては、ユーザーの年齢に依存する式があります。ユーザーの年齢が不明な場合、この式は未定義の値を生成します。

EvalTargetGroups コンポーネントと ExpressionEval コンポーネントは両方とも、高いパフォーマンスを得るために結果のキャッシュを使います。複数の対象グループが同じ式を参照している場合は、その式を 1 回だけ評価し、それ以降はキャッシュされた結果を使います。同様に、複数のコンテンツ項目が同じ対象グループを参照している場合は、対象グループを 1 回だけ評価し、それ以降はキャッシュされた結果を使います。

このコンポーネントは、ExpressionEval オブジェクトを使って式を評価します。

Site Server 3.0 Commerce Edition AdServer コンポーネントの PenalizeUnmatchedTargets プロパティの動作を複製するには、対象/不一致用の乗数を 0.95 に変更します。

関連項目

ExpressionEval オブジェクト


ExecuteProcess

このコンポーネントは、外部の実行可能ファイルを実行するために使います。

使用目的 : すべてのパイプライン、すべてのステージ

構成値

コンポーネントのプロパティを設定して、ExecuteProcess コンポーネントがドキュメントを取得する場所と結果を書き込む場所を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [プロセスの実行] タブで、次の項目を使います。

項目 | 説明
[実行プログラムのパス名] | このコンポーネントが実行する実行可能ファイルの完全なパスです。ファイルを検索するには、[参照] をクリックします。
[実行プログラムへの引数] | 実行可能ファイルに渡す引数です。引数には、%1 を使用できます。これは [置換可能なパラメータのフィールド名] ボックスに名前が表示される OrderForm オブジェクトの値に置換されます。
[置換可能なパラメータのフィールド名] | 省略可能です。OrderForm のキーです。%1 引数がこの値に置換され、実行可能ファイルに渡されます。

読み取られる値

[置換可能なパラメータのフィールド名] ボックスに指定されるキーを持つ Order ディクショナリの値です。

書き込まれる値

なし。

解説

ExecuteProcess コンポーネントは、実行可能ファイルを実行します。


FilterContent

このコンポーネントは、指定されたフィルタを、コンテンツ選択パイプライン (CSP) 内のコンテンツ リストに適用するために使います。

使用目的 : コンテンツ選択パイプライン、フィルタ ステージ

構成値

なし。

読み取られる値

FilterContent コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
FilterRequire | Order | スコアが 0 に設定されないように、コンテンツ項目に必要な (キーとしての) フィールドと、対応する値を指定する Dictionary オブジェクトです。
FilterExclude | Order | スコアが 0 に設定されないように、コンテンツ項目に必要のない (キーとしての) フィールドと、対応する値を指定する Dictionary オブジェクトです。
_content | Order | ContentList オブジェクトへの参照である値を持つキーです。Filter メソッドは、コンテンツ項目のフィルタ処理中に、ContentList オブジェクトのコンテンツ項目のさまざまなフィールドにアクセスします。

書き込まれる値

FilterContent パイプライン コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_content | ContentList オブジェクトへの参照である値を持つキーです。Filter メソッドは、ContentList オブジェクトでさまざまなコンテンツ項目のスコア フィールドを 0 に設定して、それらのコンテンツ項目を選択処理から排除することができます。

解説

FilterContent コンポーネントは、フィルタをコンテンツ選択パイプライン内のコンテンツ リストに適用します。適用するフィルタは、Order ディクショナリの FilterRequire ディクショナリと FilterExclude ディクショナリから取得されます。

このコンポーネントは、ContentList オブジェクトの Filter メソッドを使います。コンテンツ項目が選択処理から排除されるのは、必須条件を満たさない場合、または除外条件を満たす場合のいずれかです。Filter メソッドは、FilterRequire エントリと FilterExclude エントリが参照するディクショナリのキーごとに 1 回呼び出されます。これらのディクショナリのキーは、ContentList オブジェクトの列名に対応し、そのキーに格納される値は、テストする値に対応します。

フィルタ処理は、式の評価よりもはるかに高速で、CSF パイプラインの初期のステージで行われます。ContentList オブジェクトは、フィルタ処理の対象となるフィールドにはすべてインデックスを作成します。このインデックス作成のため、FilterContent コンポーネントを使うフィルタ ステージでは、できる限り対象化を行うと効率がよくなります。代表的な CSF パイプラインでの対象化の例としては、Campaign Manager の PageGroup の対象化があります。

コンテンツのリストは、Order ディクショナリの _content エントリで識別される ContentList オブジェクトに含まれています。

関連項目

ContentList.Filter


FixedHandling

このコンポーネントは、定額の手数料を注文に付加するために使います。

FixedHandling コンポーネントは、Site Server 3.0 Commerce Edition との下位互換性を維持する目的でのみ用意されています詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、手数料ステージ

構成値

コンポーネントのプロパティを設定して、FixedHandling コンポーネントが手数料を適用する方法と手数料自体を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [手数料] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | [料金] ボックスで指定する手数料を課金するタイミングを決定します。値は次のとおりです。 [常に] 既定値です。手数料を常に [料金] ボックスの値に設定することを指定します。 [以下のメソッドと等しい] Order ディクショナリの shipping_method キーの値が [方法] ボックスで指定される文字列と同じである場合に手数料が適用されることを指定します。 [何らかの値が指定されている] 注文の shipping_method キーの値が Null でない場合に手数料が適用されることを指定します。
[方法] | Order ディクショナリの shipping_method キーの値と一致する送付方法です。[適用条件] ボックスの値が [以下のメソッドと等しい] に設定されている場合に使います。
[料金] | このボックスは手数料を指定します。

読み取られる値

FixedHandling コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
shipping_method | Order | [適用条件] ボックスの値が [以下のメソッドと等しい] または [何らかの値が設定されている] に設定されている場合に、このキーを読み取ります。

書き込まれる値

FixedHandling コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_handling_total | 注文全体に対する手数料の合計です。

解説

FixedHandling コンポーネントは、注文フォームの _handling_total キーの値を、[料金] ボックスで指定した固定金額に設定します。

プログラムでの使用

FixedHandling コンポーネントをパイプラインの外部で使うには、Configuration ディクショナリのキーに値を割り当てて構成します。これらのキーは、[コンポーネントのプロパティ] ダイアログ ボックスのフィールドに対応しています。次の表はその対応を示しています。

FixedHandlingCy コンポーネントは、パイプラインの外部で使う場合には、構成値を必要としません。

パイプラインの外部でのパイプライン コンポーネントの使用の詳細については、C++ で作成したコンポーネントの場合は「C++ の MicroPipe」、Visual Basic で作成したコンポーネントの場合は「Visual Basic の MicroPipe」を参照してください。


FixedShipping

このコンポーネントは、定額の送料を注文に適用するために使います。

注

  • FixedShipping コンポーネントは、Site Server 3.0 との下位互換性を維持する目的でのみ用意されています。拡張された新しい Currency データ型はサポートしていません。

使用目的 : 注文処理パイプライン、送料ステージ

構成値

コンポーネントのプロパティを設定して、FixedShipping コンポーネントが送料を適用する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [送料] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | [料金] ボックスで指定する送料を課金するタイミングを決定します。値は次のとおりです。 [常に] 既定値です。送料を常に [料金] ボックスの値に設定することを指定します。 [以下のメソッドと等しい] Order ディクショナリの shipping_method キーの値が [方法] ボックスで指定される文字列と同じである場合に送料が適用されることを指定します。 [何らかの値が指定されている] 注文の shipping_method キーの値が Null でない場合に送料が適用されることを指定します。
[方法] | Order ディクショナリの shipping_method キーの値と一致する送付方法です。[適用条件] ボックスの値が [以下のメソッドと等しい] に設定されている場合に使います。
[料金] | 送料を指定します。

読み取られる値

FixedShipping コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
shipping_method | Order | [適用条件] の値が [以下のメソッドと等しい] または [何らかの値が設定されている] に設定されている場合に読み取ります。

書き込まれる値

FixedShipping コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_shipping_total | 注文全体に対する送料です。

解説

FixedShipping コンポーネントは、_shipping_total キーの値を、[料金] ボックスで指定した固定金額に設定します。

1 つのコンポーネントに複数の方法を指定することはできません。複数の送付方法を指定する必要がある場合は、それぞれの方法に個別の FixedShipping コンポーネントを追加します。

例

次の例では、Carrier1 が配送する品目について、送料を $9.95 に設定します。

項目 | 値
[適用条件] | 以下のメソッドと等しい
[方法] | Carrier1
[料金] | 995

このステージでコンポーネントを構成する場合は、正しい順番で料金が計算され、適用されるように、コンポーネントを実行する順番を確認します。


FlagInventory

このコンポーネントは、注文フォーム内の品目に在庫切れのものがあるかどうかを判定するために使います。

使用目的 : 注文処理パイプライン、在庫ステージ

構成値

コンポーネントのプロパティを設定して、FlagInventory コンポーネントがバックオーダーを処理する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [フラグ インベントリ] タブで、次のボックスを使います。

項目 | 説明
[バックオーダーの禁止] | 選択した場合は、バック オーダーを許可しないことを示します。このコンポーネントは、バック オーダーが存在する場合に、_Purchase_Errors リストにメッセージを追加します。

読み取られる値

FlagInventory コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._product_in_stock | Order | 省略可能です。この品目の在庫数量です。
item.quantity | Order | この品目に対して注文された数量です。
MessageManager | Context | 動的な値です。MessageManager オブジェクトへの参照です。エラーが発生した場合に、在庫切れ定数 (pur_out_of_stock) を取得するために使います。[バックオーダーの禁止] チェック ボックスがオンなっている場合にのみ使います。

書き込まれる値

FlagInventory コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._inventory_backorder | この品目の注文を実行するためにバックオーダーされた金額です。
_Purchase_Errors | 動的な値です。[バックオーダーの禁止] チェック ボックスがオンになっている場合にのみ、エラー メッセージをこの SimpleList オブジェクトに書き込みます。

エラー

コンポーネントは、_Purchase_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_out_of_stock | 注文された品目は在庫切れです。

解説

このコンポーネントは、実行時に、注文フォームの品目リストをループし、各品目の _product_in_stock フィールドの値を確認します。この値が 0 の場合、コンポーネントは _inventory_backorder キーを注文数量に設定して、不足が発生していることを示します。また、[バックオーダーを禁止] チェック ボックスをオンにすると、コンポーネントは注文フォームの _Purchase_Errors リストに在庫切れのメッセージを書き込みます。

_product_in_stock の値は、商品データベース テーブルの in_stock 列に対応します。

このコンポーネントは、すべての注文品目について、商品データベース テーブルの in_stock 列に対応する _product_in_stock の値が 0 に設定されていないことを確認します。このフィールドが 0 に設定されている品目がある場合、FlagInventory コンポーネントは _inventory_backorder キーを注文数量に設定して、不足が発生していることを示します。[バックオーダーを禁止] チェック ボックスがオンになっている場合に、このような不足が発生すると、FlagInventory コンポーネントは _Purchase_Errors コレクションに pur_out_of_stock エラーを生成します。このコンポーネントは、手作業での在庫管理手続きと対話します。つまり、商品データベースは、実際の手持ち在庫を反映するために更新する必要があります。

パイプラインに FlagInventory コンポーネントを含めるには、注文フォームに _product_in_stock という名前の列が必要です。この値は、商品情報ステージで実行されるクエリによって注文フォームに配置されます。この処理は、通常、QueryProdInfoADO コンポーネントまたは QueryCatalogInfo コンポーネントによって行われます。通常、この値は in_stock という名前のデータベース列から選択されます。クエリを操作して、注文フォームに _product_in_stock 列を配置することもできます。

このコンポーネントは、手作業での在庫管理手続きと対話します。商品データベースは、実際の手持ち在庫を反映するために更新する必要があります。


FormatTemplate

このパイプライン コンポーネントは、選択された品目のデータとそれらに関連付けられているテンプレートをマージして、書式設定済み文字列を作成するために使います。これらは通常、ページで表示できる HTML 文字列です。品目は、Order ディクショナリの ContentList オブジェクトと Context ディクショナリから取得される場合もあります。

このコンポーネントはパイプライン エディタで FormatTemplate として表示されますが、ProgID は Commerce.CSFFormatTemplate です。

使用目的 : コンテンツ選択パイプライン、形式ステージ

構成値

なし。

読み取られる値

FormatTemplate コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_winnerindexes | Order | 落札したコンテンツ項目の ContentList オブジェクト位置を含む SimpleList オブジェクトです。 このキーが存在する場合は、_winners キーがあってはいけません。どちらも存在する場合は、このキーだけが使われます。
_winners | Order | 落札したコンテンツ項目の item_id キーの値を含む SimpleList オブジェクトです。 このエントリが存在する場合は、_winnerindexes キーがあってはいけません。どちらも存在する場合は、_winners_indexes キーだけが使われます。
_content | Order | ContentList オブジェクトへの参照です。複数の値が読み取られます。下記の "解説" を参照してください。
<arbitrary entry> | Context | 省略可能です。Context ディクショナリの任意のプロパティを、テンプレートの置換された値の変換元として使うことができます。
FormatTemplate | Order | 省略可能です。このキーが存在する場合は、書式設定される各コンテンツ項目に関連付けられた既定の書式テンプレートに優先します。このキーは、次の値を取ることができます。 文字列 Context ディクショナリの Templates ディクショナリのキーを含む文字列です。このキーに関連付けられる値は、Format Template ディクショナリです。 参照 Format Template ディクショナリへの参照です。
templates | Context | 省略可能です。名前を Format Template ディクショナリにマップするディクショナリです。通常、コンテンツ項目のテンプレート キーには、このディクショナリへのキーとして使う名前が含まれます。適切な Format Template ディクショナリが指定されます。
ContextProfile | Context | 省略可能です。このコンポーネントによって実行されるテンプレート置換の変換元として使われる名前を設定できる ContentSelector オブジェクトへの参照です。
RedirectUrl | Context | 省略可能です。リダイレクタ スクリプトの URL を含む文字列です。このキーは、ほとんどのテンプレートで必要です。
CacheName | Context | 省略可能です。現在のコンテンツ キャッシュの名前を含む文字列です。このキーは、ほとんどのテンプレートで必要です。

FormatTemplate コンポーネントは、_content キーが参照する ContentList オブジェクトの各項目について、次の値を読み取ります。

キー | 説明
item_id | さまざまなコンテンツ項目の識別子です。
<arbitrary fields> | Template ディクショナリが指定する ContentList オブジェクトのフィールドです。テンプレートで使用する値の変換元としての役割を果たします。
values | マーケティング データベースの creative_property テーブルと creative_property_values テーブルから派生するディクショナリです。このディクショナリの値は、クリエイティブ タイプに固有のものです。
template | Templates ディクショナリのテンプレートの名前です。この値を指定するか、または Order ディクショナリの FormatTemplate エントリを指定する必要があります。

これらのキーは、item_id キーを除いてすべて省略可能です。

書き込まれる値

FormatTemplate コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_formatted | 書式設定された文字列を含む SimpleList オブジェクトです。

解説

テンプレートは、置換変数を含む文字列です。置換変数は、文字、数値、アンダースコア文字で構成することができ、区切り文字 {% と %} によりテンプレート文字列内で識別されます。たとえば、{%Book_Title%} は有効な置換変数です。何らかの理由で、ドキュメントにリテラル {% が必要な場合は、そのシーケンスにアンパサンド (&) を付加します ({%&)。

置換変数と置き換える情報は、複数の変換元から取得できます。これには、ContentList オブジェクトの Values ディクショナリ、ContentList オブジェクトの実際のコンテンツ項目フィールド、および ContentSelector オブジェクト (CSO) または Context ディクショナリの任意のプロパティがあります。また、ほかの場所に値が見つからない場合は、既定値を指定できます。値の変換元、既定値、および値をエンコードする方法は、すべて Format Template ディクショナリのテンプレート文字列で格納されます。

Values ディクショナリは、コンテンツの特定の種類の変数プロパティを格納するために使います。たとえば、画像広告とテキスト広告はどちらも広告であるため、互いに競合できるにように、同じ ContentList オブジェクトに格納します。ただし、一部のプロパティは一意であるため、ほかの種類の広告には適用されません。このため、ContentList オブジェクトがサポートする固定スキーマでは問題が発生します。これを解決するのが、Values という呼ばれる CLCOL_DISPATCH 列です。この列には、一意なキーと値が保持するディクショナリを参照する値が含まれています。これらのディクショナリのキーと値は、creative_property テーブルと creative_property_values テーブルから取得されます。

Format Template ディクショナリは、マーケティング データベースの情報から LoadAdvertisements オブジェクトと LoadDiscounts オブジェクトにより作成されます。Format Template ディクショナリには、単一のテンプレートとそのテンプレートの置換変数についての情報が含まれています。これには "text" という名前のエントリが含まれ、そのエントリの値はテンプレート文字列です。Format Template ディクショナリには、その文字列の置換変数ごとに、値の変換元、既定値、およびその変数のエンコード方式を指定する 3 つの追加エントリが含まれています。これらの追加エントリの名前は、文字列 "_default"、"_source"、および "_encoding" のいずれかを付加した変数名によって作成されます。次の表は、これらの追加ディクショナリ エントリについて説明しています。

ディクショナリ エントリ | ディクショナリ エントリ値の説明
Text | 置換変数も含めることができるテンプレートのテキストです。ディクショナリのそのほかのエントリは、置換変数の値の取得方法と書式設定方法についての情報を指定します。
<variable>_default | 置換値に既定値がある場合、その値を指定する文字列です。指定したどの変換元にも値が見つからない場合は、既定値が使われます。
<variable>_source | 値の変換元を示す数値です。変数の名前は、次のいずれかの数値が示すさまざまな場所で検索されます。 1 コンテンツ項目の値を検索します。初めに、ContentList オブジェクトの Values ディクショナリがあれば、それが使われます。次に、ContentList オブジェクトの列が検査されます。 2 一致する場合は、組み込み値を使用します。現在サポートされている組み込み値は、一意の数値を生成する "unique" だけです。 3 Context ディクショナリの値を検索します。初めに、そのディクショナリの ContextProfile エント (CSO) で一致するエントリ名が検査され、次に、Context ディクショナリで一致するエントリ名が検査されます。 Null または 0 上に示した順番で、すべての変換元を検査し、最初に一致するものが見つかったときに停止します。 指定された変換元に値が見つからなかった場合は、既定値が使われます。
<variable>_encoding | 値にエンコードを適用する場合は、エンコードの種類を示す数値です。選択できるオプションは次のとおりです。 Null または 0 エンコードなし。 1 完全な URL エンコードを実行します。このエンコードが必要な場合の例としては、ClickUrl エントリをリダイレクタに渡す場合があります。 2 空白文字をプラス文字としてエンコードするエンコード処理を制限します。たとえば、この種類のエンコードは、画像 URL などのリダイレクタを通過しない URL で役に立ちます。

エンコードされた文字列は、Order ディクショナリの _formatted キーに割り当てられる SimpleList オブジェクトに返されます。

関連項目

CSFLoadAdvertisements

CSFLoadDiscounts


HistoryPenalty

このコンポーネントは、コンテンツ項目が選択された時期に基づいてペナルティを適用するために使います。

このコンポーネントはパイプライン エディタで HistoryPenalty として表示されますが、ProgID は Commerce.CSFHistoryPenalty です。

使用目的 : コンテンツ選択パイプライン、スコア調整ステージ

構成値

コンポーネントのプロパティを設定して、HistoryPenalty コンポーネントがペナルティを適用する方法とペナルティの範囲を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [ペナルティ履歴] タブで、次のボックスを使います。

項目 | 説明
[ペナルティの適用範囲] | 最小ペナルティです。既定値は 0.9 です。
[まで] | 最大ペナルティです。既定値は 0.5 です。
[最新のペナルティの数] | 最新のペナルティの数です。既定値は 10 です。

ペナルティ値の範囲は、0 ～ 1 です。

読み取られる値

HistoryPenalty コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_content | Order | スコアにペナルティを適用できるコンテンツ項目を含む ContentList オブジェクトへの参照です。特に、item_id and exposure_limit キーが読み取られます。
_history | Order | LoadHistory コンポーネントによって取得される履歴文字列を含むキーです。
trace | Context | スコア調整追跡が有効になっているかどうかを示す Boolean です。このコンポーネントが追跡文字列を作成するのは、このキーが True に設定されている場合だけです。

書き込まれる値

HistoryPenalty コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_content | スコアにペナルティを適用できるコンテンツ項目を含む ContentList オブジェクトへの参照です。

解説

このコンポーネントは、最近その品目が選択された頻度と、その品目の表示上限回数に基づいて、コンテンツ項目のスコアにペナルティを適用します。ペナルティは、0 ～ 1 の範囲の値で、これを品目の現在のスコアに掛けます。ペナルティによって、通常、スコアが減少するので、その品目が選択される可能性も減少します。

たとえば、最近選択された 9 つの品目に 0.90 ～ 0.1 の範囲のペナルティを適用するように構成するとします。この例では、最近最も多く表示された品目の現在のスコアに 0.1 を掛けて、そのスコアを減らし、選択される可能性を大幅に減少させます。最近 2 番目に多く表示された品目では、現在のスコアに 0.2 を掛けて、スコアの減少幅を小さくします。

HistoryPenalty コンポーネントは、_content エントリが参照する ContentList オブジェクトの各項目の exposure_limit キーと item_id キーを読み取ります。exposure_limit キーは、品目を表示する回数に対する厳格な制限です。制限値に達すると、その品目のスコアには 0 (0.0) が掛けられます。品目の調整済みスコアは、コンテンツ項目のスコア フィールドに割り当てられます。


IISAppendToLog

このコンポーネントは、コンテンツ選択の結果に関する情報を、インターネット インフォメーション サービス (IIS) ログ ファイルの QueryString フィールドに記録するために使います。

このコンポーネントはパイプライン エディタで IISAppendToLog として表示されますが、ProgID は Commerce.CSFIISAppendToLog です。

使用目的 : イベント処理パイプライン、記録ステージ

構成値

なし。

読み取られる値

IISAppendToLog コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_event | Order | ログに記録するイベントの名前を含む文字列です。
_eventcount | Order | 省略可能です。落札したコンテンツ項目において記録するイベントの数を含む SimpleList オブジェクトです。これは落札者のリストと同じ数の要素を含んでいる必要があります。 このキーが存在しない場合は、落札したコンテンツ項目ごとに 1 つのイベントが記録されます。
_winnerindexes | Order | 落札したコンテンツ項目の ContentList オブジェクト インデックスを含む SimpleList オブジェクトです。 このキーが存在する場合は、_winners キーがあってはいけません。どちらも存在する場合は、_winnerindexes キーだけが使われます。
_winners | Order | 落札したコンテンツ項目の item_id キーの値を含む SimpleList オブジェクトです。 このエントリが存在する場合は、_winnerindexes キーがあってはいけません。どちらも存在する場合は、_winnerindexes キーだけが使われます。
ContextProfile.PageGroup | Context | ContextProfile オブジェクトが参照するディクショナリに格納される ContentSelection オブジェクトの PageGroup キーです。
PageGroups | Context | ページ グループ名を page_groups データベース テーブルの identity 列の ID にマップするディクショナリです。

書き込まれる値

Order ディクショナリまたは Context ディクショナリに対して、書き込まれる値はありません。

解説

このコンポーネントは、IIS ログ ファイルの QueryString キーにコンテンツ選択処理の結果についての情報を追加します。このログ ファイルは、レポートと分析で使用するために、データ ウェアハウスにインポートできます。このコンポーネントは、IIS Response オブジェクトの AppendToLog メソッドを使用するため、IIS のコンテキストだけで使つことができます。

ログ記録の書式を次に示します。

&CVET={T=class, property=value, property=value1+value2}

このログ記録の書式の構成要素およびその説明を次の表に示します。

コンポーネント | 説明
&CEVT={ | URI_Query オブジェクトの Commerce イベント エントリの開始です。
} | URI_Query オブジェクトの Commerce イベントの終了です。
T=class | Data Warehouse イベント クラス定義で定義されるイベント クラスです。class は、対応する定義の名前です。class の値は、常に CAMP です。
Property=value | 特定のプロパティに関連付けられる値です。プロパティと値の文字列は、どちらも URL エンコードする必要があります。エンコードの対象となるのは、空白文字、および {},=&+ の各文字です。一般的なプロパティには、CI (キャンペーン項目)、CNT (カウント)、および EVT (イベント) があります。
Property=value1+value2 | 特定のプロパティに関連付けられる複数の値です。プロパティと値の文字列は、どちらも URL エンコードされます。
, (comma) | 要素間の区切り文字として使います。

次に示すのは、ログの書式設定された有効な文字列の例とその内容の説明です。

&CEVT={T=CAMP,CI=3,EVT=REQUEST,PG=2}

Campaign イベント、キャンペーン項目 3、イベント名 REQUEST、ページ グループ ID 2

&CEVT={T=CAMP,CI=1,CNT=3,EVT=CLICK}

Campaign イベント、キャンペーン項目 1、カウント 3、イベント名 CLICK

&CEVT={T=CAMP,CI=3,EVT=DOWNLOAD}

Campaign イベント、キャンペーン項目 3、イベント名 DOWNLOAD


InitCSFPipeline

このコンポーネントは、コンテンツ選択パイプライン (CSP) の最初の部分において、このパイプラインの残りの部分で必要になる値を初期化するために使います。

このコンポーネントはパイプライン エディタで InitCSFPipeline として表示されますが、ProgID は Commerce.CSFInitPipeline です。

使用目的 : コンテンツ選択パイプライン、コンテキスト読み込みステージ

構成値

なし。

読み取られる値

InitCSFPipeline コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
ContextProfile | Context | ContentSelector オブジェクト (CSO) への参照です。このオブジェクトには、任意のプロパティを割り当て、パイプラインに追加の情報を渡すために使うことができます。2 つのエントリが必要です。詳細については、"解説" を参照してください。

InitCSFPipeline コンポーネントは、ContextProfile キーから次の値を読み取ります。

キー | 説明
CacheName | キャッシュの名前です。CacheManager オブジェクトからキャッシュを取得するために使います。
CacheManager | CacheManager オブジェクトへの参照です。
Trace | 省略可能です。パイプライン全体の追跡の設定を指定する Boolean です。ContentSelector オブジェクトで設定します。パイプラインをデバッグする場合にだけ追跡を使います。追跡は、パイプラインのパフォーマンスを低下させます。
Evaluator | 省略可能です。設定されている場合に、Context ディクショナリにコピーされる式評価器への参照です。
PageGroup | 省略可能です。存在する場合は、このキーによって Cache.PageGroup プロパティが Context ディクショナリにコピーされます。このキーは、FilterRequire ディクショナリのキーとしても使われます。詳細については、"解説" を参照してください。
Size | 省略可能です。存在する場合は、このキーは FilterRequire ディクショナリのキーとして作成されます。詳細については、"解説" を参照してください。
NumRequested | 省略可能です。ContentSelector オブジェクトの NumRequested プロパティです。要求されたコンテンツ項目の数です。設定されている場合、このキーは Context ディクショナリにコピーされます。
UserProfile | 省略可能です。このキーは、ユーザー プロファイル オブジェクトへの参照です。設定されている場合、このキーは Context ディクショナリにコピーされます。
FilterRequire | 省略可能です。設定されている場合、このキーは Context ディクショナリにコピーされます。詳細については、"解説" を参照してください。
FilterExclude | 省略可能です。設定されている場合、このキーは Context ディクショナリにコピーされます。詳細については、"解説" を参照してください。

書き込まれる値

InitCSFPipeline コンポーネントは、指定されたディクショナリに次の値を書き込みます。

キー | ディクショナリ | 説明
_content | Order | 新しく作成され、初期化された ContentList オブジェクトへの参照です。
Performance | Order | コンテンツ キャッシュから取得した Performance ディクショナリへの参照です。このキーは、コンテンツ項目を選択するために、後にパイプラインで AdvertisingNeedOfDelivery コンポーネントによって使われます。このディクショナリについては、「RecordEvent」を参照してください。
NumRequested | Order | ContextProfile オブジェクトに NumRequested プロパティ セットがある場合にだけ作成される省略可能なエントリです。このキーは、要求されているコンテンツ項目の数を示します。このキーが存在しない場合、パイプラインはコンテンツ項目を 1 つだけ返します。
FilterRequire | Order | このキーは、ContextProfile.FilterRequire オブジェクトがあれば、このオブジェクトからコピーされます。このキーが存在する場合は、このキーによって、FilterContent コンポーネントはディクショナリの各項目について、ContentList オブジェクトの Filter メソッドを呼び出します。FilterAction パラメータは、これらの呼び出しのために FILTER_REQUIRE に設定されます。ディクショナリに含まれるキーは、検索対象であるコンテンツ フィールドの名前、および一致対象である値です。
FilterExclude | Order | このキーは、ContextProfile.FilterExclude オブジェクトがあれば、このオブジェクトからコピーされます。このキーが存在する場合は、このキーによって、FilterContent コンポーネントはディクショナリの各項目について、ContentList オブジェクトの Filter メソッドを呼び出します。FilterAction パラメータは、これらの呼び出しのために FILTER_EXCLUDE に設定されます。ディクショナリに含まれるキーは、検索対象であるコンテンツ フィールドの名前、および一致対象である値です。
_cache | Context | キャッシュから取得した項目を含む Dictionary オブジェクトへの参照です。
Templates | Context | キャッシュのテンプレート プロパティです。Dictionary オブジェクトです。
Trace | Context | ContextProfile オブジェクトが存在する場合は、このオブジェクトから取得した追跡の設定です。この値は、ContentList オブジェクトの TraceMode プロパティの値として使われ、追跡のオンとオフを切り替えます。
Evaluator | Context | ContextProfile オブジェクトから取得した Evaluator オブジェクトです。
RedirectUrl | Context | ユーザーをリダイレクトする Uniform Resource Locator (URL) です。
TargetGroups | Context | キャッシュから取得した TargetGroups エントリです。
PageGroups | Context | キャッシュから取得した PageGroups エントリです。
PageHistory | Context | ContextProfile オブジェクトが存在する場合は、ContextProfile オブジェクトから取得した PageHistory エントリです。
UserProfile | Context | ContentSelector オブジェクト (CSO) からコピーされたユーザー プロファイルへの参照です。

解説

InitCSFPipeline コンポーネントは、コンテンツ選択パイプラインの後続のコンポーネントで使うために、Order ディクショナリと Context ディクショナリに多数の値を設定する必要があります。また、このコンポーネントは、コンテンツ フィルタを自動的に生成し、FilterInclude、FilterExclude、および PageGroups の各ディクショナリを使って、新しいパイプライン コンポーネントを作成せずにフィルタをカスタマイズできるようにします。

一般に、InitCSFPipeline コンポーネントが Order ディクショナリと Context ディクショナリで設定する値は、Context ディクショナリの ContextProfile エントリ、または CacheManager オブジェクトから取得された Cache ディクショナリから派生します。Order ディクショナリの ContextProfile エントリには、ContentSelector オブジェクトへの参照が含まれます。これはパイプラインに必要な多くの情報を提供します。

また、ContextProfile から Order ディクショナリ オブジェクトと Context ディクショナリ オブジェクトにさまざまな値を移動することにより、パイプラインの下位コンポーネントは、はるかに効率的にこのデータにアクセスできるようになります。

おそらく、InitCSFPipeline コンポーネントが実行する最も重要なタスクは、ContentList オブジェクトの作成と初期化です。また、このオブジェクト内で、パイプラインの実行中にコンテンツのスコアリングが追跡されます。

InitCSFPipeline コンポーネントは、次の手順によって、ContentList オブジェクトを作成します。

  1. ContextProfile からキャッシュの名前を取得します。

  2. ContextProfile.CacheManager プロパティから CacheManager オブジェクトを取得します。

  3. CacheManager オブジェクトからキャッシュを取得します。

  4. キャッシュから ContentListFactory オブジェクトを取得します。

  5. ContentListFactory オブジェクトの CreateNewContentList メソッドを呼び出し、新しいコンテンツ リストを Order ディクショナリの _content キーに割り当てます。

FilterRequire ディクショナリと FilterExclude ディクショナリを使うと、新しいパイプライン コンポーネントを作成せずに、カスタム フィルタを設定できます。簡単に使えるようにするために、InitCSFPipeline コンポーネントは、ページ グループ、広告サイズ、および (割引コンテンツ選択パイプラインでは) NoDisplay テンプレートで一般に使用される一部のフィルタを自動的に設定します。FilterRequire ディクショナリまたは FilterExclude ディクショナリが明示的に渡されず、これらのフィルタのいずれかが適用可能な場合、フィルタ ディクショナリは自動的作成されます。InitCSFPipeline コンポーネントは、フィルタ ディクショナリに存在するこれらのキーに対する既存のフィルタを検出した場合、フィルタを変更しません。

InitCSFPipeline コンポーネントは、PageGroup 用のフィルタを作成します。ただし、そのフィルタが既に存在している場合は作成しません。このフィルタには、特別な PageGroup "All" (Run of Site) が含まれています。これにより、サイト全体で実行するようにマークされているすべてのコンテンツは、フィルタを通過します。また、このフィルタには、GetContent (設定されている場合) を呼び出す ContentSelector オブジェクトに設定される PageGroup プロパティの値も含まれています。

このコンポーネントは、Context ディクショナリにデータを書き込んではならないというルールに反しています。ただし、ほとんどのパイプライン コンポーネントは、このルールに従う必要があります。

関連項目

ContentList.Filter


ItemPromo

このコンポーネントは、注文フォーム内の品目に対し、販売促進価格調整を適用するために使います。

注

  • ItemPromo コンポーネントは、今後の開発では使わないでください。コンテンツ選択パイプラインの割引機能によって、商品価格に割引を適用するための、より強力で一般的なしくみが利用できます。詳細については、「割引オブジェクト」を参照してください。

このコンポーネントは、注文フォームの品目リスト内の品目に対し、販売促進価格調整を適用するために使います。ItemPromo コンポーネントは、初めに現在の日付が [開始日] ボックスと [終了日」ボックスに指定された期間内であるかどうかを判断します。期間内の場合は、このコンポーネントは品目を評価し、販売促進の条件を満たしているかどうかを判断します。この条件は、[比較する品目フィールド名]、[比較演算子]、および [条件値] の各ボックスの組み合わせによって指定します。条件を満たしている場合、以前に実行したコンポーネントが _iadjust_currentprice キーを初期化していない限り、ItemPromo コンポーネントは、指定された割引を適用し、品目注文フォームの _iadjust_currentprice キーに新しい値を書き込みます。

使用目的 : 注文処理パイプライン、品目価格調整ステージ

構成値

コンポーネントのプロパティを設定して、ItemPromo コンポーネントが適用する割引と割引の種類を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [商品宣伝] タブで、次のボックスを使います。

項目 | 説明
[比較する品目フィールド名] | 販売促進が適用されるための条件を識別する品目属性の名前です (たとえば、_product_type)。
[比較演算子] | [比較する品目フィールド名] ボックスの値を [条件値] ボックスの値と比較するために使う演算子 (<、<=、=、>=、>、または <>) です。既定値は、等号演算子 (=) です。
[条件値] | 販売促進を適用するために、購入する必要がある 1 つまたは複数の商品です。このボックスの値は、[比較する品目フィールド名] ボックスに指定された列名の値と比較されます。この値には、テキスト、整数、または浮動小数点数が使えます。
[割引の種類] | 割引がパーセンテージによる割引か、または価格による割引かを示します。既定値は、パーセンテージによる割引です。
[割引値] | 割引金額です。これは整数値でなければなりません。たとえば、.10 のような浮動小数点数は受け付けられません。既定値は 0 です。
[開始日] | 省略可能です。販売促進を開始する日付です。この日付の午前 00:00:01 に開始します。
[終了日] | 省略可能です。販売促進を終了する日付です。この日付の午前 00:00:01 に終了します。たとえば、販売促進の最終日が 3/31 の場合は、[終了日] は 4/1 に指定します。

読み取られる値

ItemPromo コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._iadjust_regularprice | Order | 品目の正規の価格です。
item._iadjust_currentprice | Order | 品目の現在の価格です。
item.<name> | Order | 動的な値です。[比較する品目フィールド名] ボックスで指定されるキーです。

書き込まれる値

ItemPromo コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._iadjust_currentprice | 割引を適用する品目の現在の価格です。

解説

ItemPromo コンポーネントは、注文フォームの品目リスト内の品目に対し、販売促進価格調整を適用します。このコンポーネントは、割引をテストして適用するときに次の手順を実行します。

  1. ItemPromo コンポーネントは、初めに現在の日付が [開始日] ボックスと [終了日」ボックスに指定された期間内であるかどうかを判断します。

  2. 現在の日付が範囲内の場合は、そのコンポーネントは、品目を評価して、販売促進の条件を満たしているかどうかを判断します。条件は、[比較する品目フィールド名]、[比較演算子]、および [条件値] の各ボックスの値の組み合わせによって指定します。

  3. 品目が条件を満たしている場合は、以前に実行したコンポーネントが _iadjust_currentprice キーを初期化していない限り、ItemPromo コンポーネントは指定した割引を適用し、注文フォームのその品目の _iadjust_currentprice キーに新しい値を書き込みます。

[条件値] ボックスで指定する販売促進の比較では、大文字と小文字が区別されます。たとえば、AW13-200 の商品 ID は、aw13-200 の商品 ID とは異なる商品と見なされます。

また、販売促進の [開始日] ボックスと [終了日] ボックスは午前 0 時に指定されるため、[終了日] ボックスに指定された日付は除外されます。たとえば、販売促進の最終日を 3/31 にするには、販売促進の終了日を 4/1 に指定します。


LinearHandling

このコンポーネントは、注文フォームのフィールドに一定のレートを掛けて、注文の合計手数料を設定するために使います。

注

  • LinearHandling コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。拡張された新しい Currency データ型はサポートしていません。

使用目的 : 注文処理パイプライン、手数料ステージ

構成値

コンポーネントのプロパティを設定して、LinearHandling コンポーネントが処理レートを適用する方法と処理レート自体を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [一次処理] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | 手数料を課金するタイミングを決定します。値は次のとおりです。 [常に] 既定値です。注文に対して常に手数料が課金されます。 [以下のメソッドと等しい] Order ディクショナリの shipping_method キーの値が [方法] ボックスで指定される文字列と同じである場合に手数料が適用されることを指定します。 [何らかの値が指定されている] 注文の shipping_method キーの値が Null でない場合に手数料が適用されることを指定します。
[方法] | Order ディクショナリの shipping_method キーの値と一致する送付方法です。[適用条件] ボックスの値が [以下のメソッドと等しい] に設定されている場合に使います。
[基準フィールド] | 手数料を計算するために使う、品目のプロパティです。既定値は sum.quantity キーです。
[レート] | 処理レートで、整数値をとります。

読み取られる値

LinearHandling コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item.sum_quantity | Order | 動的な値です。既定で表示されます。手数料を計算するために使う、品目のプロパティです。キー名は、[基準フィールド] 構成ボックスの値によって決定されます。

書き込まれる値

LinearHandling コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_handling_total | 注文全体に対する手数料の合計です。

解説

LinearHandling コンポーネントは、[レート] ボックスで指定する値を、[基準フィールド] ボックスで指定するプロパティの合計に掛けることによって手数料を計算します。たとえば、品目の数量に基づいて一次手数料を決定する場合は、[基準フィールド] ボックスの値を sum.quantity キーにする必要があります。注文に 2 つの品目が含まれ、1 つの品目の数量が 4 で、もう 1 つの品目の数量が 2 の場合、基準となる合計値は 6 になります。コンポーネントは、[レート] ボックスの値に 6 を掛けて、手数料を算出します。

基準フィールドの詳細については、「基準フィールドを指定する」を参照してください。

関連項目

基準フィールドを指定する


LinearShipping

このコンポーネントは、一定のレートを使って、注文フォームの合計送料を計算するために使います。

注

  • LinearShipping コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。拡張された新しい Currency データ型はサポートしていません。

使用目的 : 注文処理パイプライン、送料ステージ

構成値

コンポーネントのプロパティを設定して、LinearShipping コンポーネントが送料を適用する方法と送料自体を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [一次出荷] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | 送料を課金するタイミングを決定します。値は次のとおりです。 [常に] 既定値です。注文に対して常に送料を課金するように指定します。 [以下のメソッドと等しい] Order ディクショナリの shipping_method キーの値が [方法] ボックスで指定される文字列と同じである場合に送料が適用されることを指定します。 [何らかの値が指定されている] 注文の shipping_method キーの値が Null でない場合に送料が適用されることを指定します。
[方法] | Order ディクショナリの shipping_method キーの値と一致する送付方法です。[適用条件] ボックスの値が [以下のメソッドと等しい] に設定されている場合に使います。
[基準フィールド] | 送料を計算するために使うプロパティです。既定値は sum.quantity キーです。
[レート] | 処理レートで、整数値をとります。

データベースに格納されている価格と同じ通貨単位で値を入力します。

読み取られる値

LinearShipping コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item.sum_quantity | Order | 動的な値です。既定で表示されます。送料を計算するために使う、品目のプロパティです。キー名は [基準フィールド] 構成ボックスによって決定されます。

書き込まれる値

LinearShipping コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_shipping_total | 注文全体に対する送料です。

解説

LinearShipping コンポーネントは、[レート] ボックスで指定する値を、[基準フィールド] ボックスで指定するプロパティの合計に掛けることによって送料を計算します。たとえば、品目の数量に基づいて一次送料を決定する場合は、[基準フィールド] ボックスの値を sum.quantity キーにする必要があります。注文に 2 つの品目が含まれ、1 つの品目の数量が 4 で、もう 1 つの品目の数量が 2 の場合、基準となる合計値は 6 になります。コンポーネントは、[レート] ボックスの値に 6 を掛けて、手数料を算出します。

基準フィールドの詳細については、「基準フィールドを指定する」を参照してください。

関連項目

基準フィールドを指定する


LoadHistory

このコンポーネントは、ユーザー プロファイルの履歴文字列、Active Server Pages (ASP) セッション コレクション内の項目、または cookie を取得するために使います。

このコンポーネントはパイプライン エディタで LoadHistory として表示されますが、ProgID は Commerce.CSFLoadHistory です。

使用目的 : コンテンツ選択パイプライン、コンテキスト読み込みステージ

構成値

コンポーネントのプロパティを設定して、LoadHistory コンポーネントが履歴文字列を取得する場所を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [履歴の読み込み] タブで、次のボックスを使います。次のオプションのうち、いずれか 1 つを選択してください。

項目 | 説明
[ユーザー プロファイル オブジェクト] | 履歴文字列を格納するユーザー プロファイル オブジェクトのプロパティです。
[ASP セッション コレクション] | 履歴文字列を含む Session オブジェクトのキーです。コンポーネントを適切なキーで構成し、パイプラインを Internet Information Server (IIS) コンテキストで実行することを要求します。
[HTTP Cookie] 履歴文字列を含む Cookies オブジェクトのキーです。コンポーネントを適切なキーで構成し、パイプラインを IIS コンテキストで実行することを要求するものです。

注

  • この cookie はセッション cookie のため、複数のセッションでは保存されません。

Commerce Server 2000 に同梱されている既定のユーザー オブジェクト プロファイルには、履歴文字列のプロパティ Advertising Info.Campaign History が含まれています。これは、サイトの複数ユーザー セッションで履歴文字列を保存する唯一の方法です。これは ExposureLimit データ メンバを正しくサポートするために必要なものです。

読み取られる値

LoadHistory コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
UserProfile | Context | このユーザーの ProfileObject オブジェクトへの参照です。このエントリは省略可能です。このエントリが必要になるのは、[ユーザー プロファイル オブジェクト] を使う場合だけす。

書き込まれる値

LoadHistory コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_history | 履歴文字列です。コンポーネントのプロパティ ページに構成されるソースから取得されます。

解説

このコンポーネントは、履歴文字列のソースを非表示にして、ほかのパイプライン コンポーネントがその履歴文字列に簡単にアクセスできるようにします。

履歴文字列のソースとして [ユーザー プロファイル オブジェクト] を選択した場合、プロパティ ページには、履歴文字列が管理されている [ユーザー プロファイル オブジェクト] のプロパティ名が必要になります。

[ユーザー プロファイル オブジェクト] を使う場合は、テーブルのデータ列にマップされるフィールドまたはマップされないフィールドのいずれかを使うことができます。フィールドがマップされていないと、履歴文字列はユーザー セッションの間だけ保存され、その後はプロファイル キャッシュのタイムアウトになります。このメソッドは、マップされたメソッドより効率的ですが、マップされたメソッドでは、複数のセッションにおいて履歴文字列が保存されます。マップされていないオプションでは、ドメイン ネーム サーバー (DNS) ネットワーク要求の負荷を分散するために、リスト上の次のサーバーに受信要求を送信する方法 (ラウンドロビン負荷分散) を利用することはできません。


LocalInventory

このコンポーネントは、注文フォームに、バックオーダーが存在する品目の数を設定するために使います。

使用目的 : 注文処理パイプライン、在庫ステージ

構成値

コンポーネントのプロパティを設定して、LocalInventory コンポーネントがバック オーダーを処理する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [ローカルな在庫] タブで、次のボックスを使います。

項目 | 説明
[バックオーダーの禁止] | 選択した場合は、バック オーダーを許可しないことを示します。このコンポーネントは、バック オーダーが存在する場合に、_Purchase_Errors リストにメッセージを追加します。

読み取られる値

LocalInventory コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._product_local_inventory | Order | この在庫保管単位 (SKU) のローカルな在庫です。
item.quantity | Order | この品目に対して注文された数量です。
item.sku | Order | 商品の一意の識別子です。
MessageManager | Context | 動的な値です。このキーが使われるのは、[バックオーダーの禁止] チェック ボックスがオンなっている場合だけです。このキーは、エラーの発生時に在庫切れ定数 (pur_out_of_stock) を取得するために使う MessageManager オブジェクトへの参照です。

書き込まれる値

LocalInventory コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._inventory_backorder | この品目の注文を実行するためにバックオーダーされた金額です。
_Purchase_Errors | 動的な値です。[バックオーダーの禁止] チェック ボックスがオンになっている場合にのみ、エラー メッセージをこの SimpleList オブジェクトに書き込みます。

エラー

コンポーネントは、_Purchase_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_out_of_stock | 注文された品目は在庫切れです。

解説

LocalInventory コンポーネントは、注文フォームの _inventory_backorder キーの値を、バック オーダーされた品目数に設定します。LocalInventory コンポーネントは、注文の SKU ごとに品目の合計を取得してから、この数値を _product_local_inventory キーの値と比較します。_product_local_inventory キーの値が注文された品目数よりも少ない場合、このコンポーネントは _inventory_backorder キーの値をその差に設定します。

item._product_local_inventory キーの値は、QueryProdInfoADO、QueryCatalogInfo などのコンポーネントによって、データベース テーブルから設定されます。

関連項目

FlagInventory

QueryCatalogInfo

QueryProdInfoADO


MakePO

このコンポーネントは、注文フォームの情報をテンプレートとマージして、文字列を生成します。たとえば、注文書テンプレートを基に書式設定された注文書を作成します。

構成値

コンポーネントのプロパティを設定して、MakePO コンポーネントが注文書を書式設定する方法と、その注文書を書き込む場所を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [注文書の作成] タブで、次のボックスを使います。

項目 | 説明
[テンプレート ファイル名] | 注文書のテンプレートを提供するファイルの名前です。通常、テンプレートは、下記の特殊な書式の Microsoft Visual Basic Scripting Edition (VBScript) ファイルです。
[テンプレートのスクリプト言語] | テンプレートで使用されるプログラミング言語です。既定値は VBScript です。
[出力プロパティ名] | コンポーネントが注文書を書き込む、注文フォームまたは Transport ディクショナリのフィールド名です。既定値は _po_text です。
[子オブジェクト名] | [子オブジェクトを使用] チェック ボックスをオンにした場合にだけ適用されます。子オブジェクトは、パイプラインに渡される Transport ディクショナリのキーによって参照されるオブジェクトです。[子オブジェクト名] ボックスは、キーを指定します。Commerce インターチェンジ パイプラインでは、MakePO コンポーネントが生成する注文書の基となる注文フォーム (ビジネス データ オブジェクト) は、子オブジェクトです。
[子オブジェクトを使用] | コンポーネントが読み取る注文書情報の基となるソースを決定します。コンポーネントが、[子オブジェクト名] ボックスの値で指定されたビジネス データ オブジェクトからこの情報を読み取るようにするには、Commerce インターチェンジ パイプラインの使用時にこのチェック ボックスをオンにします。コンポーネントが、パイプラインに直接渡される注文フォームからこの情報を読み取るようにするには、注文処理パイプラインの使用時にこのチェック ボックスをオフにします。

読み取られる値

MakePO コンポーネントは、[テンプレート ファイル名] ボックスに指定されたファイルを読み取ります。スクリプト使うと、利用できる任意のファイルを読み取ることができます。

書き込まれる値

MakePO コンポーネントは、[出力プロパティ名] ボックスに指定された Transport ディクショナリのキーに値を割り当てます。スクリプトを作成すると、値を追加して書き出すこともできます。

解説

MakePO コンポーネントを使うと、OrderForm オブジェクトのテキスト エントリ (通常は注文書) を動的に生成することができます。このエントリは、Active Server Pages (ASP) ページに類似したテンプレート ファイルから生成されます。ASP ページと同様に、MakePO テンプレートには、スクリプト コードを囲む特殊なタグが埋め込まれたテキストが含まれています。スクリプト内から、PageGen.Print 式または Response.Write の ASP ショートカットに類似した <%% = expression %%> を使って出力を行うことができます。スクリプト言語は、プロパティ ページで構成可能です。

MakePO テンプレート内から、ビジネス オブジェクト (OrderForm オブジェクト、ディクショナリ、または子オブジェクト) は、Items という名前を持つオブジェクトとして公開されます。また、選択したスクリプト言語のライブラリを拡張して、このオブジェクトのメンバを組み込み済みのプロパティとして含めることができます。これにより、Items.xxx 表記を使ってビジネス オブジェクトのエントリを参照できます。このため、それらのメンバがビジネス オブジェクトに保存されないように、一時変数を宣言することをお勧めします。

テンプレートの例を次に示します。

Item Class:<%%= item.partclasscode %%>
#:<%%= item.partnumber %%>
Qty:<%%= item.quantity %%>
Cost:<%%= item.[_display_list_price] %%>
Unit Code:<%%= item.unitcode %%>

MakePO コンポーネントが生成する注文書は、POtoFile コンポーネントを使ってファイルに保存できます。

MakePO コンポーネントは、Variant の内部処理形式である VT_DECIMAL を出力できません。MakePO コンポーネントで Decimal またはCurrency を使う場合は、CStr メソッドを呼び出す必要があります。これにより、その値は文字列への強制型変換が適切に行われます。次に例を示します。

Requisition # <%% = CStr(RequisitionID) %%>

プログラムでの使用

このコンポーネントをパイプラインの外部で使うには、Configuration ディクショナリのキーに値を割り当てて構成します。これらのキーは、[コンポーネントのプロパティ] ダイアログ ボックスのボックスに対応しています。次の表はその対応を示しています。

キー | 項目 | 説明
TemplateFileName | [テンプレート ファイル名] | 文字列です。
TemplateScriptLanguage | [テンプレートのスクリプト言語] | 文字列です。
OutPropName | [出力プロパティ名] | 文字列です。
ChildObjectName | [子オブジェクト名] | 文字列です。
UseChildObject | [子オブジェクトを使用] | 数値です。 False の場合は 0、True の場合は 1 を指定します。

パイプラインの外部でのパイプライン コンポーネントの使用の詳細については、「MicroPipe オブジェクト」を参照してください。

関連項目

MicroPipe オブジェクト

POtoFile


MoneyConverter

このコンポーネントは、OrderForm のキーおよび値を Integer から新しい Currency 型に変換したり、新しい Currency 型から Integer に変換したりするために使います。

使用目的 : 注文処理パイプライン、すべてのステージ

構成値

コンポーネントのプロパティを設定して、MoneyConverter コンポーネントが実行する変換と変換するフィールドを決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [通貨の変換] タブで、次のボックスを使います。

項目 | 説明
[通貨型を整数型に変換する] | Currency 型の値を Integer 型の値に変換します。
[整数型を通貨型に変換する] | Integer 型の値を Currency 型の値に変換します。
[通貨フィールド] | このボックスには、通貨フィールドのスペースで区切られたリストが含まれます。整数フィールドは、同じ名前を持ちますが、cy_ のプレフィックスが付きません。項目レベルのフィールドには item.、注文レベルの要素には order. のプレフィックスを付けます。詳細については、"解説" を参照してください。

読み取られる値

[通貨フィールド] ボックスに指定されているフィールドです。

書き込まれる値

[通貨フィールド] ボックスに指定されているフィールドです。

解説

通貨表現を使う Site Server 3.0 Commerce Edition と Commerce Server 2000 のパイプライン コンポーネントの両方を含むパイプライン ステージで、MoneyConverter コンポーネントを使用します。

パイプライン ステージに Site Server 3.0 Commerce Edition オブジェクトしか含まれていない場合、または Commerce Server 2000 オブジェクトしか含まれていない場合には、MoneyConverter を使う必要はありません。RequiredItemPrice などのさまざまな必須コンポーネントが、パイプライン ステージの終了時に Currency 型と Integer 型の変換を自動的に実行します。

値を変換するとき、このコンポーネントはキーの値を取得し、変換してから、ほかの型のキーに割り当てます。たとえば、古い Integer Currency 型の値 item._oadjust_adjustedprice を変換するとします。MoneyConverter コンポーネントはこのキーから値を取得し、新しいCurrency 型に変換してから、変換した値を item._cy_oadjust_adjustedprice キーに割り当てます。変換中に値は端数処理されることがあります。端数処理の詳細については、「Currency の拡張」を参照してください。

ぞれぞれのキーの違いは、Currency 型の値を保持するキーの名前に cy_ が付いていることだけです。変換の方向にかかわらず、[コンポーネントのプロパティ] ダイアログ ボックスで指定するのは Currency 型のキーです。

関連項目

DataFunctions オブジェクト


OrderDiscount

このコンポーネントは、買い物バスケットに対し、Commerce Server ビジネス デスク内のキャンペーン マネージャでスケジュール設定した割引を適用するために使います。

使用目的 : 注文処理パイプライン、品目価格調整ステージ

構成値

なし。

読み取られる値

OrderDiscount コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._cy_iadjust_currentprice | Order | 品目の現在の価格です。品目価格調整ステージで調整されていることがあります。
item.quantity | Order | 品目の合計数です。
item._cy_oadjust_adjustedprice | Order | 省略可能です。割引前の品目のコストの合計です。
item._n_unadjusted | Order | 省略可能です。この品目で、割引が適用されなかった分の数量です。
item._product_* | Order | 各品目の商品プロパティです。列名が付加されて、キー名が形成されます。詳細については、"解説" を参照してください。
item.discounts_applied | Order | 省略可能です。この品目に適用した割引の ID を含むディクショナリです。キーは ID で、値は割引の日付とタイムスタンプです。
currency_decimal_places | Order | 省略可能です。現在の通貨の桁位置です。既定値は 2 です。
discounts_clicked | Order | 省略可能です。クリック必須の割引のキャンペーン項目 ID です。
Evaluator | Context | ExpressionEval オブジェクトへの参照です。
CacheManager | Context | 割引スケジュールを取得するために使う CacheManager オブジェクトへの参照です。
CacheName | Context | 文字列です。キャッシュの名前です。
MessageManager | Context | 割引削除エラー定数 (pur_discount_removed) と割引変更エラー定数 (pur_discount_changed) を使ってエラー メッセージを取得する MessageManager オブジェクトへの参照です。
Language | Context | 省略可能です。MessageManager オブジェクトが使うメッセージの言語です。
UserProfile | Context | 省略可能です。ユーザー プロファイル オブジェクトへの参照です。
ContextProfile | Context | 省略可能です。式評価器で使う ExprEvalContext (式コンテキスト プロファイル) オブジェクトへの参照です。
SiteName | Context | 省略可能です。エラー メッセージで使うサイト名です。

書き込まれる値

OrderDiscount コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_discounts | 割引のスケジュール含む ContentList オブジェクトです。ContentList オブジェクトの構造については、「CSFLoadDiscounts」を参照してください。
_winners | このキーには、バスケットに適用するすべての割引のキャンペーン項目 ID が含まれます。
_event | このキーには、記録するイベントの名前が含まれます。これは常に SOLD に設定されます。この値は、RecordEvent コンポーネントと IISAppendToLog コンポーネントで使われます。
item._cy_oadjust_adjustedprice | 省略可能です。割引を適用した品目の合計代金です。
item._n_unadjusted | 省略可能です。割引を適用した後に、価格が未調整のままになっている品目の数です。
item.discounts_applied | 省略可能です。品目に適用した割引のキャンペーン項目 ID を含むディクショナリです。キーは ID で、値は割引の日付とタイムスタンプです。
_discounts_removed | 省略可能です。最後にパイプラインを実行した後に、適用されていない割引のキャンペーン項目 ID の SimpleList オブジェクトです。このキーが書き込まれるのは、適用されていない割引がある場合だけす。
_discounts_changed | 省略可能です。最後にパイプラインを実行した後に、変更された割引のキャンペーン項目 ID の SimpleList オブジェクトです。このキーが書き込まれるのは、変更された割引がある場合だけす。
_Basket_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。
_<special_offer_type>_type 省略可能です。適用する場合は、注文レベルの割引の種類です。パイプラインのほかのコンポーネント (ShippingDiscountAdjust など) が割引を適用します。キー名は、ContentList オブジェクトの special_offer_type キーに格納された文字列から形成されます。次の値をとることができます。
  • 1 (金額による割引)

  • 2 (パーセンテージによる割引)

注文レベルの割引の一例として、送料の免除があります。
_cy_<special_offer_type>_value | 省略可能です。適用する場合は、注文レベルの割引の値です。パイプラインのほかのコンポーネント (ShippingDiscountAdjust など) が割引を適用します。このキーは、パイプラインの外部で適用されるカスタム割引のめにだけ使われます。キー名は、割引データベースの u_special_offer_type キーに格納された文字列から形成されます。割引の値は、ContentList オブジェクトの offer_value フィールドから取得されます。注文レベルの割引の一例として、送料の免除があります。
_cy_<special_offer_type>_description | 省略可能です。文字列です。適用する場合は、注文レベルの割引の説明です。割引をページ上の特定の場所で適用したときに、このキーを表示することができます。この値は、ContentList オブジェクトの description フィールドから取得されます。

エラー

コンポーネントは、_Basket_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_discount_removed | 最後にパイプラインを実行した後に、割引は適用されていません。
pur_discount_changed | 最後にパイプラインを実行した後に、割引が変更されています。

解説

OrderDiscount コンポーネントは、ユーザーの買い物バスケットに割引を適用します。割引のスケジュール設定は、Commerce Server ビジネス デスクのキャンペーン マネージャ モジュールによって行われます。各割引はキャンペーン項目であり、一意のキャンペーン項目 ID を持っています。

コンテンツ選択パイプラインの ScoreDiscounts コンポーネントを使って、OrderDiscount コンポーネントが適用する割引のスコアを調整できます。ScoreDiscounts コンポーネントは、割引のスコアを調整して、CacheManager オブジェクトが保持する ContentList オブジェクトに保存します。次に、ContentList オブジェクトは、別のパイプラインで OrderDiscount コンポーネントによって使われます。

OrderDiscount コンポーネントは、品目レベルで端数処理を行います。複数の割引を 1 つの品目に適用する場合は、それらの割引額を加算した後に端数処理を行います。ただし、精度が小数点以下 4 桁の通貨は例外です。この場合は、割引額を加算するときに値を小数点以下 4 桁に切り捨てます。

割引を選択し適用する方法の詳細については、「割引オブジェクト」を参照してください。

_winners キーと _event キーは、キャンペーン システムを追跡するためのイベントの記録に使われ、レポート作成のためにデータ ウェアハウスにインポートされます。

関連項目

割引オブジェクト

CSFLoadDiscounts

ScoreDiscounts


POtoFile

このコンポーネントは、注文書などのテキスト データをファイルに送信するために使います。

使用目的 : 注文処理パイプライン、購入確認ステージまたは受注ステージ

構成値

コンポーネントのプロパティを設定して、POtoFile コンポーネントがドキュメントを取得する場所と結果を書き込む場所を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [注文書からファイルへ] タブで、次のボックスを使います。

項目 | 説明
[変換元フィールド名] | コンポーネントによる注文書データの読み取り元となる注文のフィールド名です。既定値は po_text です。
[ファイル名] | コンポーネントによる注文書の書き込み先となるファイルへの絶対パスです。ファイルを検索するには、[参照] をクリックします。
[名前が保存されているフィールド] | OrderForm オブジェクトのフィールド名です。その値は、コンポーネントによる注文書の書き込み先となるファイル名です。たとえば、save_filename などです。
[次のフィールドで名付けられた一時ファイル] | コンポーネントがテキストを一時ファイルに保存してから、テキスト ボックスで指定したフィールドにその一時ファイルの名前を保存することを指定します。たとえば、saved_filename などです。
[上書きせずにファイルを追加する] | このチェック ボックスがオンになっている場合は、指定したファイルにテキストを追加することを示します。それ以外の場合は、既存のファイルは上書きされます。

読み取られる値

POtoFile コンポーネントは、[変換元フィールド名] ボックスに表示された Order ディクショナリのキーによって指定された値を読み取ります。

書き込まれる値

なし。

解説

注文書は、通常は MakePO コンポーネントの出力です。

[ファイル名]、[名前が保存されているフィールド]、および [次のフィールドで名付けられた一時ファイル] ボックスは、同時に選択できません。つまり、これらの 3 つのうち 1 つだけを選択できます。

プログラムでの使用

このコンポーネントをパイプラインの外部で使うには、Configuration ディクショナリのキーに値を割り当てて構成します。これらのキーは、[コンポーネントのプロパティ] ダイアログ ボックスのボックスに対応しています。次の表はその対応を示しています。

キー | 項目 | 説明
SourceFieldName | [変換元フィールド名] | 文字列です。
SaveMode | [N/A] | 数値です。指定されたファイル名の場合は 0、SourceFieldName から取得されたファイル名の場合は 1 です。
FixedSaveFileName | [ファイル名] | 文字列です。
SaveFileFieldName | [名前が保存されているフィールド] | 文字列です。
TempFileFieldName | [次のフィールドで名付けられた一時ファイル] | 文字列です。
IsAppendToFile | [上書きせずにファイルを追加する] | 数値です。上書きする場合は 0、追加する場合は 1 です。

パイプラインの外部でのパイプライン コンポーネントの使用の詳細については、「MicroPipe オブジェクト」を参照してください。

関連項目

MakePO


QueryCatalogInfo

このコンポーネントは、注文フォームの各品目のカタログ情報を取得するために使います。

注

  • このコンポーネントは、古い QueryProdInfoADO コンポーネントに代わりに使われます。QueryCatalogInfo コンポーネントは、商品テーブルを検索する代わりに、新しい Commerce Server 2000 のカタログの構造体と連携します。

使用目的 : 注文処理パイプライン、商品情報ステージ

構成値

コンポーネントのプロパティを設定して、QueryCatalogInfo コンポーネントが取得する商品プロパティを決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [クエリ カタログ情報] タブで、次のボックスを使います。

項目 | 説明
Columns | カタログ システムから取得する商品プロパティのカンマ区切りリストです。すべての商品プロパティを取得するには、空白のままにします。

読み取られる値

QueryCatalogInfo コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
CacheManager | Context | CacheManager オブジェクトへの参照です。
CatalogManager | Context | CatalogManager オブジェクトへの参照です。
item.product_catalog | Context | 文字列です。品目を含むカタログです。
item.product_id | Context | 文字列です。商品 ID です。
item.product_variant_id | Context | 省略可能な文字列です。同じ品目で色が異なる場合のように、特定の商品のバリエーションを区別するために使う追加の ID です。

書き込まれる値

QueryCatalogInfo コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._product_* | 各品目の商品プロパティです。列名が付加されて、キー名が形成されます。詳細については、"解説" を参照してください。
item.delete | 注文から削除する品目を示すフラグです。詳細については、"解説" を参照してください。

解説

QueryCatalogInfo コンポーネントは、注文のすべての品目について、カタログ システムから商品情報を取得します。そして、取得した情報を注文フォームの各 Item ディクショナリに追加します。

[列] ボックスには、カタログから取得するプロパティのカンマ区切りリストが含まれます。[列] ボックスを空白のままにすると、QueryCatalogInfo コンポーネントは各品目に関連するすべての商品プロパティを取得します。

品目は、product_catalog キー、product_id キー、および product_variant_id キーの組み合わせによって識別されます。product_variant_id キーが必要になるのは、商品がバリエーションの中の 1 つである場合だけです。たとえば、複数の色を持つ品目のうち特定の色の品目であるような場合です。

品目のデータが見つからない場合、QueryCatalogInfo コンポーネントは Item ディクショナリにキーを作成して、その品目を削除対象としてマークします。この delete キーには、値 1 が割り当てられます。RequiredProdInfo コンポーネントは、このフラグを確認して、キーが見つかった場合はその品目を削除します。通常、この削除の処理は、バスケット内の品目がカタログから削除されている場合に発生します。

品目のデータが見つからない場合、QueryCatalogInfo コンポーネントは [列] ボックスで指定した各プロパティ、または [列] ボックスで何も指定していない場合はすべてのプロパティに対応する Item ディクショナリにエントリを書き込みます。エントリの名前は、プレフィックス _product_ とそれに続くプロパティ名で構成されます。たとえば、"weight" という名前のプロパティ名は、_product_weight として保存されます。エントリの値は、カタログ システムの対応するデータに設定されます。

QueryCatalogInfo コンポーネントは、PipeContext ディクショナリに QueryCatalogInfoCache データ構造体を持つ CacheManager オブジェクトを必要とします。QueryCatalogInfo コンポーネントはこのデータ構造体を使って、品目に適用する商品とカテゴリの情報をキャッシュします。

global.asa ファイルにキャッシュを設定するには、次のコードを使います。

    ' Initialize dictQCICacheConfig
    Set dictQCICacheConfig = Server.CreateObject("Commerce.Dictionary")
    dictQCICacheConfig("ConnectionString") _
     = _dictConfig.s_TransactionConfigConnectionString
    dictQCICacheConfig("CacheSize") = 10000
    dictQCICacheConfig("TableName") = "CatalogCache_Virtual_Directory"
    dictQCICacheConfig("CacheName") = "CatalogCache"
    dictQCICacheConfig("AppUrl") = sMachineBaseURL

    ' Configure CacheManager For QueryCatalogInfoCache
    oCacheManager.RefreshInterval("QueryCatalogInfoCache") = 60 * 60
    oCacheManager.RetryInterval("QueryCatalogInfoCache") = 5 * 60
    oCacheManager.CacheObjectProgId("QueryCatalogInfoCache") _
     = "Commerce.LRUCache"
    oCacheManager.LoaderProgId("QueryCatalogInfoCache") _
     = "Commerce.LRUCacheFlush"
    Set oCacheManager.LoaderConfig("QueryCatalogInfoCache") _
     = dictQCICacheConfig

関連項目

RequiredProdInfo


QueryProdInfoADO

このコンポーネントは、データベースから商品情報を取得するために使います。

注

  • 新しい Commerce Server 2000 カタログ API を利用するには、新しいアプリケーションで新しい QueryCatalogInfo を使います。

使用目的 : 注文処理パイプライン、商品情報ステージ

構成値

コンポーネントのプロパティを設定して、QueryProdInfoADO コンポーネントが実行するクエリを決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [商品情報のクエリ (ADO)] タブで、次のボックスを使います。

項目 | 説明
[接続文字列] | データベースに接続するために指定する接続文字列です。これは、完全な接続文字列、または接続マップの名前のいずれかになります。指定されない場合は、既定の接続文字列が渡されます。
[クエリ] | このコンポーネントが実行するクエリの完全な SQL テキスト、または QueryMap キーの Global.asa ファイルで定義される完全な SQL テキストを持つクエリの名前です。
[パラメータ リスト] | クエリに渡すパラメータのスペース区切りリストです。一般に、品目 (item.sku) の在庫管理単位 (SKU) が使われます。

読み取られる値

QueryProdInfoADO コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
DefaultConnectionString | Context | 省略可能です。既定のクエリ文字列を含む Application ディクショナリ内のキーです。
ConnectionStringMap | Context | 省略可能です。マップされた接続文字列の名前を参照するマップです。
QueryMap | Context | 省略可能です。クエリ マップを含むディクショナリへの参照です。

書き込まれる値

QueryProdInfoADO コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._product_* | 見つかった各 SKU の商品情報です。Order ディクショナリの Item ディクショナリに追加されます。列名が付加されて、キー名が形成されます。
item.delete | 削除フラグです。見つからなかった品目は 1 に設定されます。その品目は、注文から削除されます。

解説

QueryProdInfoADO コンポーネントは、データベース クエリを実行して、注文フォームの商品に関するデータを取得します。指定したクエリで一意のデータが見つかると、このコンポーネントは、クエリで取得された列ごとに、注文フォームの Item ディクショナリの item._product_columnvalue キーにそのデータを書き込みます。これにより、パイプラインの後続のコンポーネントが商品情報を利用できるようになります。

接続文字列には、データ ソース名 (DNS)、データベース ログイン ID、データベース パスワードなどの完全接続文字列、または接続マップに格納される名前付き接続の名前のいずれかが含まれている必要があります。

商品データベース テーブルに新しい列を追加し、この情報がパイプラインのコンポーネントで必要になった場合は、QueryProdInfoADO コンポーネントが使うクエリにその列を追加する必要があります。

指定した SKU のデータが見つかると、QueryProdInfoADO コンポーネントは、クエリで取得された列ごとに、キーとそれに対応する値を Item ディクショナリに書き込みます。そのキーは、プレフィックス _product_ とそれに続く列名で構成されます。たとえば、col という名前のテーブル列のデータは、item._product_col の値に配置されます。最後に、QueryProdInfoADO コンポーネントは、適切な列に格納されたデータを含む値を初期化します。

クエリによって行が返されなかった場合、または複数の行が返された場合、QueryProdInfoADO コンポーネントは Item ディクショナリに delete という名前のキーを書き込み、delete 品目を 1 (削除対象のマーク) に初期化し、次の品目に移動します。削除対象としてマークされた品目は、通常は RequiredProdInfo コンポーネントによって注文フォームから削除されます。


RecordEvent

このコンポーネントは、選択されたコンテンツ項目 (落札者) のイベント差分カウントを Performance ディクショナリに記録するために使います。

このコンポーネントはパイプライン エディタで RecordEvent として表示されますが、ProgID は Commerce.CSFRecordEvent です。

使用目的 : コンテンツ選択パイプラインまたはイベント処理パイプライン、記録ステージ、および注文処理パイプライン、Receipt ステージ

構成値

なし。

読み取られる値

RecordEvent コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_event | Order | 記録するイベントの名前を含む文字列です。
_eventcount | Order | 省略可能です。落札したコンテンツ項目において記録するイベントの数を含む SimpleList オブジェクトです。これは _winners リストと同じ数の要素を含んでいる必要があります。 このキーが存在しない場合は、落札した品目ごとに 1 つのイベントが記録されます。
_winnerindexes | Order | 落札したコンテンツ項目の ContentList オブジェクト インデックスを含む SimpleList オブジェクトです。 このキーが存在する場合は、_winners キーがあってはいけません。どちらも存在する場合は、このキーだけが使われます。
_winners | Order | 選択された (落札した) コンテンツ項目の item_id キーの値を含む SimpleList オブジェクトです。 このキーが存在する場合は、_winnerindexes キーがあってはいけません。どちらも存在する場合は、_winnerindexes キーだけが使われます。
_performance | Order | 特に、さまざまなコンテンツ項目の過去のイベント差分カウントです。
_content.item_id | Order | _content が参照する ContentList に含まれるさまざまなコンテンツ項目の item_id キーです。 _content キーが存在する場合は、参照される ContentList オブジェクトには item_id という名前の列が必要です。

書き込まれる値

RecordEvent コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_performance | Performance ディクショナリです。このキーには、さまざまなコンテンツ項目の新しいイベント差分カウントが含まれます。
_content.invalid_nod | ContentList オブジェクトの各項目の Boolean フラグです。品目の表示頻度 (NOD) を再計算する必要がある場合は、このキーを True に設定します。

解説

次に、キャンペーン用の定義済みイベントの名前を示します。

  • REQUEST : コンテンツ要求イベントです。

  • CLICK : 広告または販売促進のクリック イベントです。

  • DOWNLOAD : Web サーバーからの GIF イメージまたはその他の広告資産のダウンロードです。

  • SOLD : 販売促進または懸賞広告などの品目販売イベントです。

キャンペーン データベースの event_type テーブルにカスタム イベント名を追加すると、カスタム イベントを記録できます。

このコンポーネントは、落札したコンテンツ項目の NOD 値を再計算する必要があるかどうかをフラグで示します。このフラグが True に設定されるのは、Item ディクショナリに NOD キーがあり、イベント名が、品目をスケジュール設定するイベントの種類と一致する場合です。

NOD 値は、_winnerindexes キーの代わりに _winners キーが渡され、ContentList オブジェクトが存在しない (_Content キーが存在しない) 場合に再計算できます。

Performance ディクショナリには、item_id キーによって示されるイベントが発生したコンテンツ項目ごとのサブディクショナリが含まれます。各サブディクショナリは、イベント名をそのイベントの新しい発生数のカウントにマップします。定期的に、各コンテンツ項目の各イベントに関するデータベース内の合計が、この数だけ増分されます。RecordEvent コンポーネントは、必要に応じてこれらのディクショナリにキーを作成し、それに対応する値を増分する処理を受け持っています。WriteEvents キャッシュ コンポーネントは、データベース内の現在の合計に対する増分値を記録する処理を受け持っています。


RecordHistory

このコンポーネントは、落札したコンテンツ項目の識別子を履歴リスト文字列に記録するために使います。

このコンポーネントはパイプライン エディタで RecordHistory として表示されますが、ProgID は Commerce.CSFRecordHistory です。

使用目的 : コンテンツ選択パイプライン、記録ステージ

構成値

コンポーネントのプロパティを設定して、RecordHistory コンポーネントが文字列に保存する項目の数を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [ヒストリの記録] タブで、次のボックスを使います。

項目 | 説明
[履歴文字列に保持する項目の最大数] | 数値です。履歴文字列に保存する項目の最大数です。既定値は 35 です。

読み取られる値

RecordHistory コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_history | Order | LoadHistory コンポーネントによって取得される履歴文字列です。
_winnerindexes | Order | 落札したコンテンツ項目の ContentList オブジェクト インデックスを含む SimpleList オブジェクトです。 このエントリが存在する場合は、_winners キーがあってはいけません。どちらも存在する場合は、このキーだけが使われます。
_winners | Order | 落札したコンテンツ項目の item_id キーの値を含む SimpleList オブジェクトです。 このエントリが存在する場合は、_winnerindexes キーがあってはいけません。どちらも存在する場合は、_winnerindexes キーだけが使われます。
_content | Order | _content キーが参照する ContentList オブジェクトに含まれるさまざまなコンテンツ項目の item_id キーです。 _winners キーの代わりに _winnersindexes キーが渡される場合、item_id キーは自動的に参照されます。

書き込まれる値

RecordHistory コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_history | 更新された履歴リスト文字列です。

解説

RecordHistory コンポーネントは、履歴リストのサイズを管理し、必要に応じて整理します。このコンポーネントは、文字列が最大長を超えると、その最も古いエントリを削除します。

RecordHistory コンポーネントのプロパティ ページでは、履歴の最大エントリ数を構成できます。このコンポーネントは、この制限を超えないように、必要に応じて最も古い履歴リスト エントリを除去します。

関連項目

ContentList オブジェクト

SimpleList オブジェクト


RequiredHandlingCy/RequiredHandling

これらのコンポーネントは、合計手数料が注文に含まれていることを確認するために使います。

RequiredHandling コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredHandlingCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、手数料ステージ

構成値

なし。

読み取られる値

RequiredHandlingCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。RequiredHandling コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
_cy_handling_total | Order | 注文処理のためのコストの合計です。
MessageManager | Context | MessageManager オブジェクトへの参照です。このキーは、エラーが発生した場合に、無効な合計手数料定数 (pur_badhandling) を取得するために使います。

書き込まれる値

RequiredHandlingCy コンポーネントと RequiredHandling コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Purchase_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

RequiredHandlingCy コンポーネントと RequiredHandling コンポーネントは、手数料の合計が注文フォームにない場合にエラー レベル 2 (OPPERRORLEV_WARN) を返します。そのほかのエラーは、エラー レベル 3 (OPPERRORLEV_FAIL) を返します。

コンポーネントは、_Purchase_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_badhandling | 手数料の合計が注文フォームにありません。

解説

RequiredHandlingCy コンポーネントと RequiredHandling コンポーネントは、order._handling_total キーが存在していることを確認します。

関連項目

MessageManager オブジェクト


RequiredItemAdjustPriceCy/RequiredItemAdjustPrice

これらのコンポーネントは、注文の各品目の現在価格が設定され、変更されていないことを確認するために使います。

RequiredItemAdjustPrice コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredItemAdjustPriceCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、品目価格調整ステージ

構成値

なし。

読み取られる値

RequiredItemAdjustPriceCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。RequiredItemAdjustPrice コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
item._cy_iadjust_currentprice | Order | OrderForm オブジェクトの items コレクションに含まれる各品目の現在価格を読み取ります。
item._cy_iadjust_regularprice | Order | OrderForm オブジェクトの items コレクションに含まれる各品目の正規の価格を読み取ります。
item.cy_placed_price | Order | OrderForm オブジェクトの items コレクションに含まれる各品目の表示価格を読み取ります。詳細については、"解説" を参照してください。
MessageManager | Order | MessageManager オブジェクトへの参照です。このキーは、エラーが発生した場合に、無効な合計手数料定数 (pur_badplacedprice) を取得するために使います。

書き込まれる値

RequiredItemAdjustPriceCy コンポーネントは、Order ディクショナリに次の値を書き込みます。RequiredItemAdjustPrice コンポーネントは、cy_ なしで同じキーを書き込みます。

キー | 説明
item.cy_placed_price | OrderForm オブジェクトの items コレクションに含まれる品目の表示価格を書き込みます。詳細については、"解説" を参照してください。
item._cy_iadjust_currentprice | OrderForm オブジェクトの items コレクションに含まれる品目の調整された現在価格を書き込みます。
_Basket_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

RequiredItemAdjustPriceCy コンポーネントと RequiredItemAdjustPrice コンポーネントは、表示価格が現在価格と同じでない場合に、エラー レベル 2 (OPPERRORLEV_WARN) を返します。そのほかのエラーは、エラー レベル 3 (OPPERRORLEV_FAIL) を返します。

これらのコンポーネントは、_Basket_Errors コレクションにエラー メッセージを書き込みます。また、MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_badplacedprice | 表示価格が現在価格と異なります。現在価格は、その品目がバスケットに追加された後に変更されました。

解説

RequiredItemAdjustPriceCy コンポーネントと RequiredItemAdjustPrice コンポーネントは、異なるディクショナリ キーで同じ操作を実行します。次の説明では、RequiredItemAdjustPriceCy コンポーネントのキーを使います。

RequiredItemAdjustPriceCy コンポーネントは、現在価格 (_cy_iadjust_currentprice) が品目リストの各品目に存在していることを確認します。この値が存在しない場合、コンポーネントは値を作成して、正規の価格 (_cy_iadjust_regularprice) に初期化します。

また、このコンポーネントは、表示価格 (cy_placed_price) と正規の価格 (cy_iadjust_currentprice) を比較して、ユーザーがバスケットにその品目を入れてから、現在価格が変更されているかどうかを確認します。表示価格が存在しない場合、コンポーネントはその値を作成して、現在価格 (cy_iadjust_currentprice) に設定します。表示価格が存在していても現在価格と等しくない場合、RequiredItemAdjustPriceCy コンポーネントは、MessageManager オブジェクトから無効な表示価格の警告メッセージ テキストを取得し、このメッセージを注文フォームの _Basket_Errors コレクションに書き込みます。


RequiredItemPriceCy/RequiredItemPrice

このコンポーネントは、注文フォームの各品目に正規の価格が割り当てられていることを確認するために使います。DefaultItemPrice コンポーネントおよび同類のコンポーネントによって正規の価格が割り当てられます。

RequiredItemPrice コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredItemPriceCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、品目価格ステージ

構成値

なし。

読み取られる値

RequiredItemPriceCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。RequiredItemPrice コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
item._cy_iadjust_regularprice | Order | 品目の正規の価格です。

書き込まれる値

なし。

解説

RequiredItemPriceCy コンポーネントと RequiredItemPrice コンポーネントは、異なるディクショナリ キーで同じ操作を実行します。次の説明では、RequiredItemPriceCy コンポーネントのキーを使います。

RequiredItemPriceCy コンポーネントは、_cy_iadjust_regularprice キーが品目リストの各品目で設定されていることを確認します。

RequiredItemPrice コンポーネントを実行する前に、品目リストを DefaultItemPriceCy コンポーネントで初期化し、品目の最新の価格情報が含まれるようにする必要があります。

_cy_iadjust_regularprice キーに値が含まれていないと、エラーが発生します。

関連項目

DefaultItemPriceCy/DefaultItemPrice


RequiredOrderAdjustPriceCy/RequiredOrderAdjustPrice

これらのコンポーネントは、割引の適用後に、注文の各品目の合計コストを調整するために使います。

これらのコンポーネントを使って、割引を適用しない品目のコストと、注文の全品目の割引金額を計算します。

RequiredOrderAdjustPrice コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredOrderAdjustPriceCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。

使用目的 : 注文処理パイプライン、品目価格調整ステージ

構成値

なし。

読み取られる値

RequiredOrderAdjustPriceCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。RequiredOrderAdjustPrice コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
item._n_unadjusted | Order | この品目で、割引が適用されなかった分の数量です。
item._cy_iadjust_currentprice | Order | 品目の現在の価格です。
item._cy_oadjust_adjustedprice | Order | 割引前の品目のコストの合計です。
item.quantity | Order | 品目の合計数です。

書き込まれる値

RequiredOrderAdjustPriceCy コンポーネントは、指定されたディクショナリに次の値を書き込みます。RequiredOrderAdjustPrice コンポーネントは、cy_ なしで同じキーを書き込みます。

キー | 説明
item._cy_oadjust_adjustedprice | 割引を考慮に入れた品目のコストの合計です。
item._cy_oadjust_discount | 品目に対する割引です。

解説

RequiredOrderAdjustPriceCy コンポーネントと RequiredOrderAdjustPrice コンポーネントは、異なるディクショナリ キーで同じ操作を実行します。次の説明では、RequiredOrderAdjustPriceCy コンポーネントのキーを使います。

RequiredOrderAdjustPriceCy コンポーネントは、OrderForm オブジェクトの items コレクションに含まれる各品目を処理します。

品目ごとに、RequiredOrderAdjustPriceCy コンポーネントは初めに割引を適用しない数量についてコストを計算します。品目の現在の価格 (_cy_iadjust_currentprice) に、その品目で割引を適用しない分の数量 (n_unadjusted) を乗算し、品目の合計コスト (_cy_oadjust_adjustedprice) に追加します。

次に、品目の現在の価格 (_cy_iadjust_currentprice) に合計数量 (quantity) を乗算して、品目の合計コストを計算し、割引を適用しない品目について以前に計算したコストを差し引くことにより、品目に対する割引 (cy_oadjust_discount) を計算します。

RequiredOrderAdjustPriceCy コンポーネントは、パイプライン エディタをエキスパート モードで実行している場合にだけ、パイプライン エディタから参照できます。


RequiredOrderCheck

このコンポーネントは、注文フォームに品目が少なくとも 1 つ含まれていることを確認するために使います。

使用目的 : 注文処理パイプライン、注文の確認ステージ

構成値

なし。

読み取られる値

RequiredOrderCheck コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
MessageManager | Context | エラーの発生時に、"no items in order" 定数 (pur_noitems) を取得するために使う MessageManager オブジェクトへの参照です。

書き込まれる値

RequiredOrderCheck コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Purchase_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

RequiredOrderCheck コンポーネントは、OrderForm に品目がない場合に、エラー レベル 2 (OPPERRORLEV_WARN) を返します。そのほかのエラーは、エラー レベル 3 (OPPERRORLEV_FAIL) を返します。

コンポーネントは、_Purchase_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_noitems | OrderForm オブジェクトに品目が存在しません。

解説

RequiredOrderCheck コンポーネントは、OrderForm オブジェクトの品目リストが空でないことを確認します。

関連項目

MessageManager オブジェクト


RequiredOrderInitCy/RequiredOrderInit

このコンポーネントは、注文フォームの支払い認証コード、注文 ID、合計、および代金を初期化するために使います。

RequiredOrderInit コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredOrderInitCy コンポーネントは、3.0 互換モード パイプラインと 4.0 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、注文初期化ステージ

構成値

なし。

読み取られる値

RequiredOrderInitCy コンポーネントと RequiredOrderInit コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
order_id | Order | 注文の ID です。
item.quantity | Order | 品目の数量です。

書き込まれる値

RequiredOrderInitCy コンポーネントは、Order ディクショナリに次の値を書き込みます。RequiredOrderInit コンポーネントは、cy_ なしで同じキーを書き込みます。

キー | 説明
order_id | 注文の ID です。
item._cy_oadjust_adjustedprice | 品目のコストの合計です。
item._n_unadjusted | 品目で、割引が適用されなかった分の数です。
_cy_total_total | 注文のコストの合計です。
_cy_oadjust_subtotal | 品目リスト内のすべての品目の代金です。
_cy_shipping_total | 注文のすべての品目の合計送料です。
_cy_tax_total | 注文に対する税の合計です。
_cy_handling_total | 注文に対する手数料の合計です。
_payment_auth_code | 支払い認証コードです。

解説

RequiredOrderInitCy コンポーネントと RequiredOrderInit コンポーネントは、異なるディクショナリ キーで同じ操作を実行します。次の説明では、RequiredOrderInitCy コンポーネントのキーを使います。

初めに、RequiredOrderInitCy コンポーネントは order_id キーに値が割り当てられていることを確認します。値が割り当てられていない場合は、RequiredOrderInitCy コンポーネントは一意の注文 ID を生成して、このキーに割り当てます。

次に、注文の整合性を確保するために、このコンポーネントは Null を割り当てて次のキーを初期化します。

_cy_total_total
_cy_oadjust_subtotal
_cy_shipping_total
_cy_tax_total
_cy_handling_total
_cy_tax_included
_payment_auth_code

最後に、items コレクションの品目ごとに、RequiredOrderInitCy コンポーネントは、quantity キーに格納されている値を _n_unadjusted キーにコピーして、割引を適用しない品目の数量を初期化し、_oadjust_adjustedprice (品目の合計コスト) キーを 0 に初期化します。


RequiredOrderSubtotalCy/RequiredOrderSubtotal

このコンポーネントは、注文の合計を正しく計算できるように、注文の品目リストにすべての品目の代金が存在することを確認するために使います。

RequiredOrderSubtotal コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredOrderSubtotalCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、注文代金ステージ

構成値

なし。

読み取られる値

RequiredOrderSubtotalCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。RequiredOrderSubtotal コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
_cy_oadjust_subtotal | Order | 注文の品目リスト内のすべての品目の代金です。

書き込まれる値

なし。

解説

RequiredOrderSubtotalCy コンポーネントと RequiredOrderSubtotal コンポーネントは、どちらも OrderForm オブジェクトの _oadjust_subtotal キーを検査して、割り当てられている値が Null ではないことを確認します。

RequiredOrderSubtotalCy コンポーネントは、パイプライン エディタをエキスパート モードで実行している場合にだけ、パイプライン エディタからから参照できます。


RequiredPayment

このコンポーネントは、注文フォームに支払い認証コードが設定されていること、つまり Null ではないことを確認するために使います。

使用目的 : 注文処理パイプライン、支払いステージ

構成値

なし。

読み取られる値

RequiredPayment コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_payment_auth_code | Order | 注文フォームの支払い認証コードです。
MessageManager | Context | エラーの発生時に無効な支払い定数 (pur_bad_payment) を取得するために使う MessageManager オブジェクトへの参照です。

書き込まれる値

RequiredPayment コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Purchase_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

このコンポーネントは、_Purchase_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_badpayment | 支払い認証コードが注文フォームにありません。

解説

支払い認証コードが設定されていない場合、つまり Null である場合は、RequiredPayment コンポーネントは、MessageManager オブジェクトから pur_badpayment 定数のエラーを取得し、このエラーを OrderForm オブジェクトの _Purchase_Errors コレクションに書き込みます。

関連項目

MessageManager オブジェクト


RequiredProdInfo

このコンポーネントは、以前の商品情報ステージ コンポーネントによって削除フラグが設定された品目を削除するために使います。

使用目的 : 注文処理パイプライン、商品情報ステージ

構成値

なし。

読み取られる値

RequiredProdInfo コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item.delete | Order | OrderForm オブジェクトの items コレクションの品目に設定されたフラグです。このキーは、別のパイプライン コンポーネントによって作成され、設定されます。
MessageManager | Context | エラーの発生時に無効な在庫管理単位 (SKU) 定数 (pur_badsku) を取得するために使う MessageManager オブジェクトへの参照です。

書き込まれる値

RequiredProdInfo コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Basket_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

このコンポーネントは、_Basket_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_badsku | 1 つ以上の品目が注文から削除されています。

解説

RequiredProdInfo コンポーネントは、OrderForm オブジェクトの items コレクションの全品目を確認し、削除キーが 1 に設定されている品目をすべて削除します。このキーを設定するコンポーネントには、QueryCatalogInfo と QueryProdInfoADO があります。

RequiredProdInfo コンポーネントで items コレクションから品目を削除する場合は、pur_badsku 定数を使って MessageManager オブジェクトからエラー メッセージ テキストを取得し、このメッセージを OrderForm オブジェクトの _Basket_Errors コレクションに格納して、アプリケーションからユーザーにその品目の問題をレポートできるようにします。

関連項目

QueryCatalogInfo

QueryProdInfoADO


RequiredShippingCy/RequiredShipping

これらのコンポーネントは、合計送料が設定されていることを確認するために使います。

RequiredShipping コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredShippingCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、送料ステージ

構成値

なし。

読み取られる値

RequiredShippingCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。RequiredShipping コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
_cy_shipping_total | Order | 注文に対する送料の合計です。
MessageManager | Context | エラーの発生時に、無効な合計送料定数 (pur_badshipping) を取得するために使う MessageManager オブジェクトへの参照です。

書き込まれる値

RequiredShippingCy コンポーネントと RequiredShipping コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Purchase_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

RequiredShippingCy コンポーネントと RequiredShipping コンポーネントは、手数料の合計が注文フォームにない場合に、エラー レベル 2 (OPPERRORLEV_WARN) を返します。そのほかのエラーは、エラー レベル 3 (OPPERRORLEV_FAIL) を返します。

また、このコンポーネントは _Purchase_Errors コレクションにエラー メッセージを書き込みます。このコンポーネントは、MessageManager オブジェクトを使って、エラー メッセージ テキストを取得します。

定数 | 状態
pur_badshipping | 合計送料のキーが注文に存在しません。

解説

RequiredShippingCy コンポーネントと RequiredShipping コンポーネントは、異なるディクショナリ キーで同じ操作を実行します。次の説明では、RequiredShippingCy コンポーネントのキーを使います。

RequiredShippingCy コンポーネントは、_cy_shipping_total キーが注文フォームに存在することを確認します。このキーが存在しない場合は、pur_badshipping 定数を使って MessageManager オブジェクトからエラー メッセージ テキストを取得し、OrderForm オブジェクトの _Purchase_Errors コレクションにこのメッセージを格納します。

関連項目

MessageManager オブジェクト


RequiredTaxCy/RequiredTax

これらのコンポーネントは、注文フォームに合計税額および税込み価格が設定されていることを確認するために使います。

RequiredTax コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredTaxCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、税ステージ

構成値

なし。

読み取られる値

RequiredTaxCy コンポーネントは、指定されたディクショナリから次の値を読み取ります。RequiredTax コンポーネントは、cy_ なしで同じキーを読み取ります。

キー | ディクショナリ | 説明
_cy_tax_total | Order | 注文に対する税の合計です。
_cy_tax_included | Order | 注文に含まれる税額です。
MessageManager | Context | エラーの発生時に、無効な税定数 (pur_badtax) を取得するために使う MessageManager オブジェクトへの参照です。

書き込まれる値

RequiredTaxCy コンポーネントと RequiredTax コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Purchase_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

RequiredTaxCy コンポーネントと RequiredTax コンポーネントは、税項目の 1 つが不足している場合にエラー レベル 2 (OPPERRORLEV_WARN) を返します。そのほかのエラーは、エラー レベル 3 (OPPERRORLEV_FAIL) を返します。

また、このコンポーネントは _Purchase_Errors コレクションにエラー メッセージを書き込みます。このコンポーネントは、MessageManager オブジェクトを使って、エラー メッセージ テキストを取得します。

定数 | 状態
pur_badtax | 税項目の 1 つが不足しています。

解説

RequiredTaxCy コンポーネントと RequiredTax コンポーネントは、異なるディクショナリ キーで同じ操作を実行します。次の説明では、RequiredTaxCy コンポーネントのキーを使います。

RequiredTaxCy コンポーネントは、_cy_tax_total キーと _cy_tax_included キーが注文フォームに存在することを確認します。いずれの値も存在しない場合、RequiredTaxCy コンポーネントは pur_badtax 定数を使って MessageManager オブジェクトからエラー メッセージ テキストを取得し、OrderForm オブジェクトの _Purchase_Errors コレクションにこのメッセージを格納します。

関連項目

MessageManager オブジェクト


RequiredTotalCy/RequiredTotal

これらのコンポーネントは、ページの値が改ざんまたは再設定されていないことを確認するために使います。このコンポーネントは、値を _Verify_With ディクショナリの値と順番に比較します。

RequiredTotal コンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。RequiredTotalCy コンポーネントは、Site Server 3.0 Commerce Edition 互換モード パイプラインと Commerce Server 2000 モード パイプラインの両方で動作します。詳細については、「Currency の拡張」を参照してください。

使用目的 : 注文処理パイプライン、注文合計ステージ

構成値

なし。

読み取られる値

RequiredTotalCy コンポーネントと RequiredTotal コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_Verify_With | Order | 注文フォームのキーと値に対してテストするキーと値を持つディクショナリです。
MessageManager | Context | エラーの発生時に、確認エラー定数 (pur_badverify) を取得するために使う MessageManager オブジェクトへの参照です。

書き込まれる値

RequiredTotalCy コンポーネントと RequiredTotal コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Purchase_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

RequiredTotalCy コンポーネントと RequiredTotal コンポーネントは、_Verify_With ディクショナリの 1 つ以上のキーと値が、対応する注文フォーム エントリと一致しない場合に、エラー レベル 2 (OPPERRORLEV_WARN) を返します。そのほかのエラーは、エラー レベル 3 (OPPERRORLEV_FAIL) を返します。

コンポーネントは、_Purchase_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_badverify | _Verify_With ディクショナリの少なくとも 1 つのキーと値が、注文フォームの対応する組と一致していません。

解説

RequiredTotalCy コンポーネントと RequiredTotal コンポーネントは、_Verify_With ディクショナリのキーと値を順次処理し、それらのキーが注文フォームに存在し、同じ値が割り当てられていることを確認します。

これらのコンポーネントは、ページの値が改ざんまたは再設定されていないことを確認するために使います。ページの値を確認するには、その項目および関連付けられた値を含む _VERIFY_WITH という名前の各項目に非表示のフィールドを追加します。たとえば、値 ship_to_zip が変更されていないことを確認するには、そのページに次のようなタグを作成します。

<INPUT TYPE="HIDDEN" NAME="_VERIFY_WITH"
       VALUE="<% = "ship_to_zip=" & CStr(mmsOrderForm.ship_to_zip) %>">

このページが送信されると、その名前と値は OrderForm オブジェクトの _Verify_With ディクショナリにキーと値として追加されます。

非表示タグを作成するには、Page オブジェクトの VerifyWith メソッドを使います。Page オブジェクトの ProcessVerifyWith メソッドは、非表示フィールドの値を OrderForm オブジェクトの _Verify_With ディクショナリにコピーします。

注文合計ステージでは、常に _VERIFY_WITH チェックを実行します。_VERIFY_WITH="value=key" のように表示されるポストのフィールドは、注文にそのキーが存在し、その値に設定されていることを確認します。これにより、アドレスまたはコンテンツに対する悪質なリセットを防止することができます。_VERIFY_WITH が注文フォームにない場合は、チェックは実行されません。

たとえば、_total.total が _VERIFY_WITH 句にある場合は、order._total_total は (order._VERIFY_WITH)._total_total と同等です。

関連項目

Page.ProcessVerifyWith

Page.VerifyWith


SaleAdjust

このコンポーネントは、品目に特価を適用するために使います。

このコンポーネントは、以前のバージョンとの下位互換性を維持する目的でのみ用意されています。これは OrderDiscount コンポーネントに置き換えられています。

使用目的 : 注文処理パイプライン、品目価格調整ステージ

構成値

なし。

読み取られる値

SaleAdjust コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._product_sale_start | Order | 省略可能です。販売を開始する日付です。
item._product_sale_end | Order | 省略可能です。販売を終了する日付です。
item._product_sale_price | Order | 品目の特価です。

書き込まれる値

SaleAdjust コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._iadjust_currentprice | 販売促進を適用する品目の現在の価格です。

解説

SaleAdjust コンポーネントを使うと、品目に特価を適用できます。その品目が販売中で、その _iadjust_currentprice キーが以前に実行したコンポーネントによって初期化されていない場合は、SaleAdjust コンポーネントは _iadjust_currentprice キーを、item._product_sale_price キーに格納されている値に初期化します。

SaleAdjust コンポーネントは、その品目の _product_sale_start キーと _product_sale_end キーで指定した日付値と、現在の日付を比較して、その品目が販売中であるかどうかを特定します。

SaleAdjust コンポーネントでは、さまざまな販売に関する値が、サイトのデータベースの商品の一覧に存在していることが必要です。値が不足している場合、OrderForm オブジェクトには品目の調整済み価格 (_iadjust_currentprice) を計算するために必要なデータが含まれず、エラー メッセージが生成されます。商品の販売に関するキーは、商品情報ステージの QueryProdInfoADO コンポーネントで設定します。

_product_sale_start キーと _product_sale_end キーで日付を指定すると、時刻が午前 0 時に設定されるため、_product_sale_end キーはその指定された日付を除外します。したがって、販売促進の最終日を 3/31 にするには、販売促進の終了日を 4/1 に指定します。

関連項目

QueryProdInfoADO

OrderDiscount


SampleRegionalTax

このコンポーネントは、Commerce Server 2000 の複数発送機能を利用してパイプラインで税額を計算するために使います。

注

  • SampleRegionalTax コンポーネントは、税額を計算するための完全なソリューションではありません。これは Commerce Server 2000 の複数発送機能を十分に利用する税コンポーネントのサンプルとして用意されているものです。サード パーティの税コンポーネントを購入するようにしてください。

使用目的 : 注文処理パイプライン、税ステージ

構成値

なし。

読み取られる値

SampleRegionalTax コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
shipments | Order | 送付の SimpleList オブジェクトです。
item._cy_oadjust_adjustedprice | Order | 品目のコストの合計です。
RegionalTaxCache | Context | 税情報を含むディクショナリへの参照です。

また、SampleRegionalTax コンポーネントは、OrderForm オブジェクトの Addresses ディクショナリから次のキーを読み取ります。

キー | 説明
addresses.country_code | 送付用に取得した住所 ID に対応する送付先国です。
addresses.region_code | 省略可能です。送付用に取得した住所 ID に対応する送付先地域です。

書き込まれる値

SampleRegionalTax コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
item._cy_tax_total | 品目に対する税の合計です。
item._cy_tax_included | コストに含まれる品目に対する税の合計です。このキーはゼロ (0) に設定する必要があります。
shipment._cy_tax_total | 送付に対する税の合計です。
shipment._cy_tax_included | コストに含まれる送付に対する税の合計です。このキーはゼロ (0) に設定する必要があります。
_cy_tax_total | 注文に対する税の合計です。
_cy_tax_included | コストに含まれる注文に対する税の合計です。このキーはゼロ (0) に設定する必要があります。

解説

SampleRegionalTax コンポーネントは、複数の送付を処理する Commerce Server 2000 発送アーキテクチャで税額を計算します。Commerce Server が送付を処理する方法の詳細については、「複数発送アーキテクチャ」を参照してください。

注文の送付ごとに、このコンポーネントは初めに CacheManager オブジェクトを使ってデータベースから税率を取得し、SampleRegionalTaxCache コンポーネントに格納します。

次に、SampleRegionalTax コンポーネントは、送付する各品目を順次処理し、税率の一覧から取得した比率に基づいて、税額を計算します。税率は、Order ディクショナリ内の住所関連ディクショナリにある国と地域のコードに基づいて取得します。住所に関するディクショナリの詳細については、「複数発送アーキテクチャ」を参照してください。

SampleRegionalTax コンポーネントは、注文の品目と送付を処理しながらそれらの合計を累計し、最後に注文全体の合計を算出します。

SampleRegionalTaxCache コンポーネントに格納される税率データは、RegionalTax データベース テーブルのスナップショットです。RegionalTax テーブルには 3 つの列があります。

列 | データ型 | 説明
country_code | 文字列 (255 文字) | 国コードです。
region_code | 文字列 (255 文字) | 地域コードです。
rate | Float (8 バイト) | 税率です。

地域コードには、ワイルドカード エントリ (@) を含めることができます。このように指定すると、ほかの方法では一致しない地域も一致します。RegionalTax テーブルにエントリが見つからない場合は、税率は 0 になります。

SampleRegionalTax コンポーネントを含むパイプラインの使用は、コンテンツ選択パイプラインの使い方に非常に似ています。初めに、CacheManager オブジェクトを構成して、Global.asa ファイルの Application_OnStart セクションで、SampleRegionalTaxCache ローダーを使います。次に、Active Server Pages (ASP) ページで、CacheManager オブジェクトのエントリを Context ディクショナリに追加して、パイプラインを呼び出します。

Application_OnStart メソッドのセットアップ コード

    ' Create a Dictionary to hold configuration information.
    Set dConfig = CreateObject("Commerce.Dictionary")

    ' Add configuration information to the dictionary. SampleRegtionalTax
    ' only uses a connection string.
    dConfig("ConnectionString") = "DSN=adsamples;UID=sa;PWD="

    ' Create a CacheManager object.
    Set CacheManager = Server.CreateObject("Commerce.CacheManager")

    ' Set the ProgID of the Loader component for the
    ' "SampleRegionalTaxCache" cache.
    CacheManager.LoaderProgId("SampleRegionalTaxCache") = _
                    "Commerce.SampleRegionalTaxCache"

    ' Set the Loader component config Dictionary for the cache.
    Set CacheManager.LoaderConfig("SampleRegionalTaxCache") = dConfig

    '
    ' Other CacheManager configuration code would appear here.
    '

    ' Store a reference to the CacheManager in the Application object.
    Set Application("CacheManager") = CacheManager

SampleRegionalTax コンポーネントを含むパイプラインを実行するコード

    ' Place a reference to the CacheManager in the context dictionary.
    Set dContext = Server.CreateObject("Commerce.Dictionary")
    dContext.CacheManager = Application("CacheManager")

    '
    ' Set other values and create the Order dictionary (dOrder) here.
    '

    ' Load and execute the pipeline containing the tax component.
    Set pPooledPipe = Server.CreateObject("Commerce.PooledPipeline")
    pPooledPipe.LoadPipe("OrderAndTax.pcf")
    iErrVal = pPooledPipe.Execute(0, dOrder, dContext, 1)

関連項目

複数発送アーキテクチャ

CacheManager オブジェクト

PooledPipeline オブジェクト

PooledTxPipeline オブジェクト


SaveHistory

このコンポーネントは、ユーザー プロファイル オブジェクト、ASP セッション コレクション、HTTP cookie の 3 つの場所のいずれかに履歴文字列を記録するために使います。

このコンポーネントはパイプライン エディタで SaveHistory として表示されますが、ProgID は Commerce.CSFSaveHistory です。

使用目的 : コンテンツ選択パイプライン、記録ステージ

構成値

コンポーネントのプロパティを設定して、SaveHistory コンポーネントが履歴文字列を保存する場所を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [ヒストリの保存] タブで、次のボックスを使います。次のオプションのうち、いずれか 1 つを選択してください。

項目 | 説明
[ユーザー プロファイル オブジェクト] | 履歴文字列を格納するユーザー プロファイルのプロパティです。既定値は、Advertising Info.Campaign History です。
[ASP セッション コレクション] | 履歴文字列を含む Session オブジェクトのキーです。コンポーネントを適切なキーで構成し、パイプラインを IIS コンテキストで実行することを要求するものです。これは既定のオプションです。
[HTTP Cookie] | 履歴文字列を含む Cookies オブジェクトのキーです。このオプションは、コンポーネントを適切なキーで構成し、パイプラインを IIS コンテキストで実行することを要求します。

読み取られる値

SaveHistory コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_history | Order | LoadHistory コンポーネントによって取得される履歴文字列です。

書き込まれる値

なし。

エラー

SaveHistory コンポーネントは、エラーの発生時にエラー レベル 3 (OPPERRORLEV_FAIL) を返します。

解説

LoadHistory コンポーネントがソースとして使うことのできる同じ 3 つの場所のいずれかに、履歴文字列を保存します。

このコンポーネントのプロパティ ページでは、LoadHistory コンポーネントのプロパティ ページと同じ 3 つの選択肢がサポートされています。

[ユーザー プロファイル オブジェクト] を使う場合は、テーブルのデータ列にマップされるフィールドまたはマップされないフィールドのいずれかを使うことができます。フィールドがマップされていないと、履歴文字列はユーザー セッションの間だけ保存され、その後はプロファイル キャッシュのタイムアウトになります。このメソッドは、マップされたメソッドより効率的ですが、マップされたメソッドでは、複数のセッションにおいて履歴文字列が保存されます。マップされていないオプションでは、ドメイン ネーム サーバー (DNS) ネットワーク要求の負荷を分散するために、リスト上の次のサーバーに受信要求を送信する方法 (ラウンドロビン負荷分散) を利用することはできません。

関連項目

LoadHistory


SaveReceipt

このコンポーネントは、データベース テーブルに注文を保存するために使います。

使用目的 : 注文処理パイプライン、受注ステージ

構成値

コンポーネントのプロパティを設定して、SaveReceipt コンポーネントがデータベースに保存する項目を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [受領書の保存] タブで、次のボックスを使います。

項目 | 説明
[保存しない名前/値ペアのプレフィックス] | データベース テーブルに保存しない注文フォームのキーを識別するプレフィックスです。このプレフィックスを使って、クレジットカード番号など、保存すべきでない機密情報を識別します。既定のプレフィックスは、_cc_ です。

読み取られる値

SaveReceipt コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
ReceiptStorage | Context | データの保存先であるデータベースをポイントする DBStorage オブジェクトへの参照です。
<Various Fields> | Order | SaveReceipt コンポーネントは、データベース テーブルに対応する名前があり、[保存しない名前/値ペアのプレフィックス] ボックスで指定した文字を名前の先頭に持たない、注文フォームのすべてのフィールドを保存します。

書き込まれる値

なし。

解説

SaveReceipt コンポーネントは、データベース テーブルに注文を保存します。データベース テーブルの名前は、DBStorage オブジェクトに格納されます。Context ディクショナリ キー、ReceiptStorage がそのオブジェクトをポイントします。SaveReceipt コンポーネントは、データベース テーブルに対応する列名を持つ、注文フォームのすべてのフィールドを保存します。

関連項目

DBStorage オブジェクト


ScoreDiscounts

このコンポーネントは、割引販売促進の選択において、割引項目のスコアを調整し、現在のユーザーに最も関係が深い割引を適用するために使います。

このコンポーネントはパイプライン エディタで ScoreDiscounts として表示されますが、ProgID は Commerce.CSFScoreDiscounts です。

使用目的 : コンテンツ選択パイプライン、スコア調整ステージ

構成値

なし。

読み取られる値

ScoreDiscounts コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_content | Order | ContentList オブジェクトへの参照です。複数のフィールドが読み取られます。詳細については、"解説" を参照してください。
Evaluator | Context | 使う Expression Evaluator コンポーネントへの参照です。
ContextProfile | Context | 省略可能です。式の評価に使う ContentSelector オブジェクト (ディクショナリ) です。 ディクショナリの SimpleList オブジェクトは、ContextProfile オブジェクトの Products という名前のキーから読み取ることもできます。通常、これはユーザーが (現在のページなどで) 表示または参照している商品リストです。QueryCatalogInfo コンポーネントが実行され、割引の式ですべての商品属性が利用可能になったら、この商品リストを OrderForm オブジェクトの品目リストと同じ書式に設定する必要があります。
UserProfile | Context | 省略可能です。式の評価に使う、現在のユーザーのユーザー プロファイルを格納する ProfileObject オブジェクトへの参照です。
Items | ContextProfile | 省略可能です。OrderForm オブジェクトからの items コレクションです。 QueryCatalogInfo コンポーネントが実行され、割引の式ですべての商品属性が利用可能になったら、この商品リストを OrderForm オブジェクトの品目リストと同じ書式に設定する必要があります。
trace | Context | 省略可能です。スコア調整追跡が有効になっているかどうかを示す Boolean です。このコンポーネントが追跡文字列を作成するのは、このキーが True に設定されている場合だけです。

ScoreDiscounts コンポーネントは、_content キーが参照する ContentList オブジェクトの各項目について、次の値を読み取ります。

キー | 説明
required_exprs | ユーザー プロファイルとコンテキスト プロファイルとで構築される必須の式です。これは式 ID の配列で、True である必要があります。True でない場合は、割引にはスコア 0 が割り当てられます。
condition_expr | 割引条件式です。
award_expr | 特典条件式です。
date_start | 割引が有効になる日付です。
date_end | 割引の期間が終了する日付です。

書き込まれる値

ScoreDiscounts コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_content | ContentList オブジェクトへの参照です。オブジェクトの各コンテンツ項目の score キーに、値が割り当てられます。

解説

このコンポーネントは、割引コンテンツ項目のスコアを調整し、現在のユーザーに最も関係が深い割引を適用します。このアルゴリズムでは、次の点が考慮されています。

  • 割引の開始日と終了日。割引が開始してない場合または終了している場合は、資格を失います。

  • 割引が適用される品目が買い物バスケットに入っているかどうか。

  • 割引が適用される品目が表示されているページ (商品リスト) にあるかどうか。

次の表は乗数の一覧です。この乗数は、バスケットと商品リストで一致する、または一致しない条件と特典の、さまざまな組み合わせに基づいて使うものです。"一致する" 条件または特典とは、True として評価される式を意味しますが、コストや数量が一致しているとは限りません。次の表では、複数のエントリで一致しているケースがあります。その場合は、一致している最初のエントリが適用されます。

条件 | 特典 | 乗数 | 説明
バスケットで一致 | すべてに適用 (または送料免除) | 0.5 | ユーザーは既に割引の特典を受けています。
バスケットで一致 | バスケットで一致 | 0.5 | ユーザーは既に割引の特典を受けています。
バスケットで一致 | 商品で一致 | 1.6 | ユーザーの注文は、半分についてバスケットでの割引対象、残りの半分についてはサイトでの割引対象になっています。
バスケットで一致 | 一致しない | 1.4 | ユーザーの注文は、半分についてバスケットでの割引対象になっています。
商品で一致 | すべてに適用 (または送料免除) | 1.2 | ユーザーの注文は、半分についてサイトでの割引対象になっています。
商品で一致 | バスケットで一致 | 1.6 | ユーザーの注文は、半分についてバスケットでの割引対象、残りの半分についてはサイトでの割引対象になっています。
商品で一致 | 商品で一致 | 1.4 | ユーザーの注文は、それぞれの半分がどちらも、サイトでの割引対象になっています。
商品で一致 | 一致しない | 1.2 | ユーザーの注文は、半分についてサイトでの割引対象になっています。
一致しない | すべてに適用 (または送料免除) | 1.0 | ニュートラルなコンテキストです。
一致しない | バスケットで一致 | 1.4 | ユーザーの注文は、半分についてバスケットでの割引対象になっています。
一致しない | 商品で一致 | 1.2 | ユーザーの注文は、半分についてサイトでの割引対象になっています。
一致しない | 一致しない | 1.0 | ニュートラルなコンテキストです。

OrderDiscount コンポーネントは、ScoreDiscounts コンポーネントによってスコアを調整される割引を適用します。ScoreDiscounts コンポーネントは、CacheManager オブジェクトが保持する ContentList オブジェクトにスコアを保存します。次に、ContentList オブジェクトは、別のパイプラインで OrderDiscount コンポーネントによって使われます。

関連項目

割引オブジェクト

CSFLoadDiscounts

OrderDiscount


Scriptor

このコンポーネントは、ActiveState Perl または Microsoft Visual Basic Scripting Edition (VBScript) などの Microsoft ActiveX スクリプト言語でスクリプトを実行するために使います。

使用目的 : すべてのパイプライン、すべてのステージ

構成値

コンポーネントのプロパティを設定して、Scriptor コンポーネントがスクリプトを読み込む場所とスクリプトに渡すパラメータを決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [スクリプタ] タブで、次のボックスを使います。

項目 | 説明
[スクリプト実行エンジン] | スクリプトを記述するスクリプト言語を指定します。ドロップダウン リストには、システムにインストールされているスクリプト エンジンが表示されます。
[ソース] | スクリプトを内部に格納するか、外部に格納するかを指定します。選択できるオプションは次のとおりです。 [ダイアログ内に記述] スクリプトは、パイプライン (.pcf) ファイルに格納されます。パイプライン エディタで [編集] をクリックして、スクリプトを表示します。 [外部ファイルに記述] スクリプトは、ディスク上のファイルに格納されます。[ファイル名] ボックスに、スクリプトのパスとファイル名を入力します。外部スクリプトをインポートして、内部スクリプトに変換できます。詳細については、「Scriptor コンポーネントを構成する」を参照してください。
[パラメータ (名前=値; 名前=値...)] | 書式 "名前=値" でスクリプトに渡すパラメータです。

読み取られる値

なし。

書き込まれる値

なし。

解説

Scriptor コンポーネントは、次の 3 つのプロシージャを順番に呼び出します。

  1. MSCSOpen プロシージャ : Scriptor コンポーネントは、初めにこのプロシージャを呼び出して、Configuration ディクショナリに渡します。このプロシージャは省略できます。

  2. MSCSExecute 関数 : Scriptor コンポーネントの主要なプロシージャで、スクリプトに記述する必要があります。この関数は、Configuration ディクショナリ、Order ディクショナリ (通常は OrderForm オブジェクト)、Context ディクショナリ、およびフラグ変数に、順番に渡されます。

  3. MSCSClose ハンドラ : Scriptor コンポーネントは、MSCSExecute プロシージャが制御を返した後に、このプロシージャを呼び出します。これには引数がなく、省略可能です。

MSCSExecute 関数は、成功コードを返す必要があります。VBScript でスクリプトを記述する場合は、MSCSExecute ルーチンを、サブルーチンではなく、関数にする必要があります。MSCSExcute 関数の戻り値は、成功を示す 1、警告を示す 2、および失敗を示す 3 のいずれかです。

[コンポーネントのプロパティ] ダイアログ ボックスの [スクリプタ] プロパティ ページにある [パラメータ (名前=値; 名前=値...)] ボックスに入力するパラメータは、Configuration ディクショナリのスクリプトに渡されます。その名前はキーとして使われ、等号の右の値がそのキーに割り当てられます。

これは MSCSExecute 関数が 1 の成功値、2 の警告値、または 3 の失敗値を返すためです。サブルーチンは、1 を返すことができません。

MtsTxPipeline オブジェクトを使ってパイプラインに Scriptor コンポーネントを格納する場合は、MSCSOpen プロシージャまたは MSCSClose プロシージャで、ObjectContext オブジェクトのメソッドを呼び出さないでください。ObjectContext メソッドを呼び出せるのは、MSCSExecute プロシージャだけです。

Microsoft Transaction Server (MTS) コンテキストは、Scriptor コンポーネント、または Scriptor コンポーネントが呼び出すコンポーネントでは利用できません。このため、context.SetComplete と context.SetAbort は、Scriptor コンポーネントが実行するスクリプトでは利用できません。

関連項目

Scriptor コンポーネントを構成する


Scriptor コンポーネントを構成する

Scriptor コンポーネントが実行するスクリプトは、パイプライン構成ファイル (.pcf) の一部として内部に格納したり、実行時にコンポーネントが呼び出す個々のファイルに格納できます。

渡されるパラメータによって動作の異なる汎用スクリプトを記述できます。ファイルにそのスクリプトを保存してから、パラメータを渡すために Scriptor コンポーネントを構成します。

Microsoft Transaction Server (MTS) コンテキストは、Scriptor コンポーネント、または Scriptor コンポーネントが呼び出すコンポーネントでは利用できません。つまり、context.SetComplete と context.SetAbort は、Scriptor コンポーネントがホストするスクリプトでは利用できません。

Scriptor コンポーネントを構成するには

外部と内部との間でスクリプタを変換するには

Scriptor コンポーネントを構成するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [開く] をクリックします。Scriptor コンポーネントを含むパイプラインを検索し、[開く] をクリックします。

  3. 構成する Scriptor コンポーネントを右クリックし、[プロパティ] をクリックして [スクリプタ] タブをクリックします。

  4. [スクリプタ] タブで、次の操作を行います。
    項目 | 操作
    [スクリプト実行エンジン] | スクリプトを記述した言語を選択します。
    [ソース] [ダイアログ内に記述] をクリックし、[編集] をクリックします。[スクリプタ -- ソース コードの編集] 画面で、コンポーネントのスクリプトを入力または貼り付けて [OK] をクリックします。

    または [外部ファイルに記述] をクリックし、スクリプトを外部ファイルに格納します。内部ソース コードをエクスポートしない場合は、[スクリプタ] ダイアログ ボックスで [いいえ] をクリックします。[ファイル名] ボックスにパスとファイル名を入力します。
    [パラメータ (名前=値; 名前=値...)] スクリプトにパラメータを渡すには、書式 "名前=値" でコンポーネントのパラメータを入力します。

    または、空白のままにします。

  5. [OK] をクリックし、次に [適用] をクリックします。

外部と内部との間でスクリプタを変換するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. [ファイル] メニューの [開く] をクリックします。Scriptor コンポーネントを含むパイプラインを検索し、[開く] をクリックします。

  3. 構成する Scriptor コンポーネントを右クリックし、[プロパティ] をクリックして [スクリプタ] タブをクリックします。

  4. スクリプタが既に外部ファイル用に構成されている場合に、内部に格納できるように変換するには、[ダイアログ内に記述] をクリックして [はい] をクリックし、外部ファイルをインポートすることを確認します。

    また、スクリプタが既に内部ファイル用に構成されている場合に、外部に格納できるように変換するには、[外部ファイルに記述] をクリックして [はい] をクリックし、内部ファイルをエクスポートすることを確認します。外部ファイルの名前を指定して [保存] をクリックします。

  5. [OK] をクリックします。


SelectWinners

このコンポーネントは、コンテンツ選択パイプラインの最終スコアに基づいて項目を選択するために使います。

このコンポーネントはパイプライン エディタで SelectWinners として表示されますが、ProgID は Commerce.CSFSelectWinners です。

使用目的 : コンテンツ選択パイプライン、選択ステージ

構成値

コンポーネントのプロパティを設定して、SelectWinners コンポーネントが自社広告を表示するタイミングを決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [落札者の選択] タブで、次のボックスを使います。

項目 | 説明
[有料広告の表示頻度の平均が右記を下回った場合、自社広告に切り替える] | 有料広告から自社広告に切り替えるしきい値です。有料広告に対する最大の表示頻度 (NOD) がこの値を下回った場合に、自社広告が選択されます。既定値は 0,95 です。

読み取られる値

SelectWinners コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_Content | Order | ContentList オブジェクトへの参照です。複数のフィールドが読み取られます。詳細については、"解説" を参照してください。
NumRequested | Order | 省略可能です。戻り値のために選択が必要なコンテンツ項目の数です。既定値は 1 です。
PageHistory | Context | 省略可能です。ページレベルの履歴文字列への参照です。この参照によって、同じページにあるコンテンツへの要求それぞれの間で履歴を渡すことができます。また、複数のページにわたる場合でも使用できます。このキーは、Context ディクショナリの ContextProfile ディクショナリから取得します。これには、ページで既に選択されているコンテンツ項目の item_ids が含まれます。

SelectWinners コンポーネントは、_content キーが参照する ContentList オブジェクトの各項目について、次の値を読み取ります。

キー | 説明
Score | さまざまなコンテンツ項目の最終スコアです。
Industry | 同じ業種のコンテンツ項目が 2 つ選択されないようにするために使う業種タグです。
need_of_delivery | 広告の配信に関する契約要件です。
ad_type | 広告の種類です。有料 (1) と自社 (2) があります。
customer_id | このキーは、競合する広告を防止するために使います。
ad_weight | このキーは、一部の広告をより頻繁に表示するために、自社広告で使います。

Score キーは必須です。そのほかのキーは、広告の選択のためだけに必要なものです。

書き込まれる値

SelectWinners コンポーネントは、指定されたディクショナリに次の値を書き込みます。

キー | ディクショナリ | 説明
_event | Order | 既に設定されていない限り、このキーは文字列 "REQUEST" に設定されます。
PageHistory | Context | 現在の要求で選択された項目を含む新しいページ履歴です。PageHistory キーは、Context ディクショナリの ContextProfile ディクショナリにあります。
_winnerindexes | Order | 選択されたコンテンツ項目の ContentList オブジェクト インデックスを含む SimpleList オブジェクトへの参照です。

解説

優先項目と通信するために、SelectWinners コンポーネントは、要求された優先コンテンツ項目の数までの ContentList オブジェクト インデックスを含む、新しい SimpleList オブジェクトを構築します。

SelectWinners コンポーネントは、次の追加の操作を行います。

  • 既に設定されていない場合、_event キーを文字列 "REQUEST" に設定します。

  • PageHistory キーを使って、1 ページに同じ広告が複数回表示されないようにします。これは、同じページで複数の選択要求が行われるネットワーク広告モデルで役に立ちます。

  • 同じページに競合する広告が表示されることを防止します。これは、ユーザー識別子と組み合わせた、各広告の業種設定に基づいています。

このコンポーネントは、Order ディクショナリの NumRequested キーを参照して、選択するコンテンツ項目の数を決定します。そのキーが存在しない場合は、選択するコンテンツ項目は 1 つです。NumRequested コンテンツ項目より少ない戻り値は、エラーとは見なされません。呼び出し元がこの状況を処理する必要があります。

PageHistory キーは、現在のページで既に選択されたコンテンツ項目の ID のリストを含む文字列です。呼び出し元は、"ページ" の構成を定義し、同じページへの複数の呼び出しにわたって PageHistory キーを保持します。ContentList オブジェクトのコンテンツ項目の item_id キーは、カンマで区切られた 10 進形式で、この文字列に書き込まれます。同じページの複数のコンテンツ要求で、同じ ContentSelector オブジェクトを使う場合は、PageHistory キーは複数の呼び出し間で自動的に渡されます。

ここで、広告の選択アルゴリズムについて説明します。

  • PageHistory キーに表示される項目は選択対象ではありません。

  • 自社広告のしきい値よりも大きい表示頻度 (NOD) の値を持つ有料広告は、常に自社広告よりも優先して選択されます。

  • PageHistory キーが示す広告など、既に選択された別の広告と競合する広告は、選択対象ではありません。競合する広告は、同じ業種で異なるユーザーからの広告として定義されます。

  • 選択はスコアに基づいて進められ、より高いスコアが先に返されます。複数の有料広告が同じスコアを持つ場合は、その選択はランダムに行われます。

次に、広告以外の種類のコンテンツに対する選択アルゴリズムについて説明します。

  • PageHistory キーに表示される項目は選択対象ではありません。

  • 選択はスコアに基づいて進められ、より高いスコアが先に返されます。複数の項目が同じスコアを持つ場合は、その選択はランダムに行われます。

関連項目

ContentList オブジェクト

ContentSelector オブジェクト


SendPrecomposedMessage

このコンポーネントは、パイプラインの初期のステージで作成されたダイレクト メール メッセージを送信するために使います。

このコンポーネントはパイプライン エディタで SendPrecomposedMessage として表示されますが、ProgID は Commerce.DMLSendPrecomposedMessage です。

使用目的 : ダイレクト メーラー パイプライン、電子メール送信ステージ

構成値

なし。

読み取られる値

SendPrecomposedMessage コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
rcp_bypass | Order | Boolean です。True の場合、コンポーネントは処理をバイパス (省略) します。
cdo_result | Order | 最後に行われた Collaboration Data Objects (CDO) 処理の結果コード (HRESULT) です。
cdo_message | Context | CDO メッセージ オブジェクト (CDO.Message) への参照です。

書き込まれる値

SendPrecomposedMessage コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
messages_sent | このパイプライン サイクルに送信されたメッセージの合計数です。
cdo_result | 最新の CDO 処理の結果コード (HRESULT) です。
cdo_error | 省略可能です。最新の CDO 処理が返すエラー文字列です (存在する場合)。エラーがない場合は Null が返されます。

解説

SendPrecomposedMessage コンポーネントは、CDO for Microsoft Windows 2000 を使ってダイレクト メール メッセージの送信を試行します。このコンポーネントは、バイパス フラグ (rcp_bypass) が True の場合や、cdo_result キーが S_OK に等しくない場合は、メッセージの処理を省略します。

各 CDO 処理の終了後、コンポーネントはエラー チェックを行います。

関連項目

AddAttachments

ComposeDMLMessage

CreateUPMCookie

ThrottleDMLPerformance

VerifyMessageBody

VerifyRecipientData


SendSMTP

このコンポーネントは、指定された受信者に電子メール メッセージを送信するために使います。

使用目的 : Commerce Interchange Transmit パイプライン、Transport ステージ

構成値

コンポーネントのプロパティを設定して、SendSMTP コンポーネントがメッセージを送信する場所と送信する情報を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [SMTP の送信] タブで、次のボックスを使います。

項目 | 説明
[差出人 (必須)] | メッセージの送信元の電子メール アドレスです。これは電子メール アドレスを含むキーではなく、実際の電子メール アドレスです。
[SMTP ホスト (必須)] | オブジェクトを送信する Simple Mail Transfer Protocol (SMTP) メール サーバーの名前またはインターネット プロトコル (IP) アドレスです。これは名前を含むキーではなく、サーバーの実際の名前です。
[宛先 (必須)] | メッセージの送信先の電子メール アドレスを含む Order ディクショナリのキーです。
[CC] | メッセージのコピーの送信先の電子メール アドレスを含む Order ディクショナリのキーです。
[件名] | 電子メール メッセージの "Subject" ボックスに表示するテキストを含む Order ディクショナリのキーです。
[件名の文字セット] | 電子メール メッセージの件名をエンコードするために使う文字セットです。このドロップダウン リストは、コンピュータに現在インストールされている文字セットを表示します。
[メッセージ本文] | 電子メール メッセージの本文に使うメッセージを含む Order ディクショナリのキーです。
[MIME ヘッダーと本文] | ビジネス データ オブジェクトが Multipurpose Internet Mail Extensions (MIME) ヘッダーに既にカプセル化されていることを示します。このオプションを選択すると、コンポーネントは既にメッセージと共にカプセル化された文字セットとヘッダーを使います。独自の MIME ヘッダーを生成して [件名の文字セット] ボックスで指定した文字セットを使うことはありません。
[テキスト] | ビジネス データ オブジェクトが ASCII テキストで構成されていて、追加の処理が必要ないことを示します。
[バイナリ] | ビジネス データ オブジェクトがバイナリ BLOB であることを示します。SendSMTP コンポーネントは、送信する前に base64 でエンコードします。

読み取られる値

なし。

書き込まれる値

なし。

解説

SendSMTP コンポーネントは、SMTP メール サーバーへの電子メール メッセージとして、ビジネス データ オブジェクトを送信します。Microsoft Exchange と Microsoft Outlook を使っている場合は、Visual Basic スクリプトを実行して、Exchange サーバーで、MtsPipeline オブジェクトや MtsTxPipeline オブジェクトではなく、OrderPipeline オブジェクトを呼び出して、受信したメッセージを処理できます。

SendSMTP コンポーネントで文字セットの変換が正しくサポートされるようにするには、対応する Windows NT コード ページをコンピュータにインストールします。たとえば、米国バージョンの Windows NT には、Unicode を ISO-2022-jp に変換するために必要な日本語コード ページ (コード ページ 932) が含まれていません。コード ページのインストールについては、Microsoft Knowledge Base の記事 Q164948 を参照してください。

プログラムでの使用

このコンポーネントをパイプラインの外部で使うには、Configuration ディクショナリのキーに値を割り当てて構成します。これらのキーは、[コンポーネントのプロパティ] ダイアログ ボックスのボックスに対応しています。次の表はその対応を示しています。

キー | 項目 | 説明
From | [差出人 (必須)] | 文字列です。
SMTPHost | [SMTP ホスト (必須)] | 文字列です。
ToField | [宛先 (必須)] | 文字列です。
CCField | CC | 文字列です。
SubjectField | [件名] | 文字列です。
CharSet | [件名の文字セット] | 文字列です。
BodyField | [メッセージ本文] | 文字列です。
BodyType | [メッセージ本文は以下を含みます] | 数値で、次のいずれかになります。 0 [MIME ヘッダーと本文] 1 [テキスト] 2 [バイナリ]

パイプラインの外部でのパイプライン コンポーネントの使用の詳細については、「MicroPipe オブジェクト」を参照してください。

関連項目

MicroPipe オブジェクト


SendSMTP のテスト

このプロパティ ページは、テスト電子メール メッセージを送信して、SendSMTP コンポーネントの構成を確認するために使います。

項目 | 説明
[テスト メッセージの送信先アドレス] | メッセージの送信先の完全な電子メール アドレスです。


ShippingDiscountAdjust

このコンポーネントは、注文に送料の割引を適用するために使います。

使用目的 : 注文処理パイプライン、送料ステージ

構成値

なし。

読み取られる値

ShippingDiscountAdjust コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_cy_shipping_total | Order | 割引適用前の注文に対する合計送料です。
_shipping_discount_type | Order | 割引の種類です。選択できるオプションは次のとおりです。 1 金額による割引です。 2 パーセンテージによる割引です。
_cy_shipping_discount_value | Order | 金額またはパーセンテージのいずれかの値による割引額です。パーセンテージは、小数ではなく、整数で記述します。たとえば、40% の割引の場合は、40 と表します。送料を無料にする場合は、100 と表します。

書き込まれる値

ShippingDiscountAdjust コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_cy_shipping_total | 割引適用後の注文に対する合計送料です (割引を適用する場合)。

解説

ShippingDiscountAdjust コンポーネントは、_shipping_discount_type キーを検査し、注文に対する合計送料を調整します。割引が空白の場合、このコンポーネントは処理を行いません。割引の種類が 1 または 2 の場合は、このコンポーネントはその割引を適用します。割引がいずれの種類でもない場合は、コンポーネントはエラーを返します。

_shipping_discount_type キーの値は、OrderDiscount オブジェクトによって決定されます。

Commerce Server 2000 パイプラインで送料を無料にするには、ShippingDiscountAdjust コンポーネントで _cy_shipping_total キーに 0 を指定します。

関連項目

Shipping オブジェクト

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingManagerCache

このコンポーネントは、複数発送アーキテクチャ用に送付データを読み込むために CacheManager オブジェクトで使います。

注

  • ShippingManagerCache コンポーネントは 2 つのパイプライン コンポーネント インターフェイス (IPipelineComponent と IPipelineComponentAdmin) を実装していますが、パイプライン コンポーネントではなく、パイプライン エディタには表示されません。そのため、このコンポーネントは、パイプライン エディタで使用または構成することはできません。

構成値

なし。

読み取られる値

なし。

書き込まれる値

なし。

解説

CacheManager オブジェクトで ShippingManagerCache コンポーネントを使って、Splitter パイプライン コンポーネントと ShippingMethodRouter パイプライン コンポーネント用の送付情報を格納します。

CacheManager オブジェクトによって実行されると、ShippingManagerCache コンポーネントは 2 つのパイプライン ディクショナリ (Order と Context) を使って、動作方法と CacheManager オブジェクトに情報を返す方法を決定します。

例

例については、「送付オブジェクト」の「パイプラインとキャッシュを設定する」を参照してください。

関連項目

CacheManager オブジェクト

Shipping オブジェクト

ShippingDiscountAdjust

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


ShippingMethodRouter

ShippingMethodRouter コンポーネントは、コンポーネントを参照および実行し、その送付を処理して、注文全体に対する合計送料を計算するために、複数発送アーキテクチャの一部として使います。

注

  • ShippingMethodRouter コンポーネントで実行するように設計されている送付コンポーネントは、パイプラインに直接配置しないでください。

使用目的 : 注文処理パイプライン、送料ステージ

構成値

なし。

読み取られる値

ShippingMethodRouter コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
Shipments | Order | ディクショナリの SimpleList オブジェクトで、ディクショナリごとに送付は 1 回です。
shipments._cy_shipping_total | Order | 個々の送付に対する送料を合計したものです。
CacheManager | Context | 送付データを処理するために使う CacheManager オブジェクトへの参照です。

書き込まれる値

ShippingMethodRouter コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_cy_shipping_total | 注文のすべての送付にかかる合計送料です。

解説

Splitter コンポーネント以外の送付コンポーネントは、ShippingMethodRouter コンポーネントで実行します。

次に、そのコンポーネントは、送付方法のリストを順次処理します。特定のメソッド ShippingMethodRouter を使う送付がある場合は、その送付を送付コンポーネントに渡し、そのコンポーネントを実行します。個々の送付コンポーネントは、渡された送付について、合計送料を計算します。すべての送付を処理したら、ShippingMethodRouter コンポーネントはすべての送料の合計を計算します。

ShippingMethodRouter コンポーネントは、使うコンポーネントについてのみ、インスタンスを作成します。

関連項目

複数発送アーキテクチャ

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

StepwiseShipping


SimpleCanadaTax

このコンポーネントは、カナダの物品サービス税 (GST) および地方消費税 (PST) を計算するために使います。

注

  • SimpleCanadaTax コンポーネントは、Site Server 3.0 Commerce Edition のサンプル税コンポーネントです。SampleRegionalTax コンポーネントは、Commerce Server 2000 のサンプル税コンポーネントです。この製品の税コンポーネントはすべてサンプルとして作成されたものです。このコンポーネントで使われている税率やデータを個人または企業で使う場合は、事前に税金の専門家に相談し、これらの情報について確認するようにしてください。

使用目的 : 注文処理パイプライン、税ステージ

構成値

コンポーネントのプロパティを設定して、SimpleCanadaTax コンポーネントが税を計算する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [カナダの税金] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | 課税条件を決定します。値は次のとおりです。 [常に] 既定値です。常に注文に課税するように指定します。 [以下の国/地域と等しい] Order ディクショナリの ship_to_country キーの値が [国/地域] ボックスで指定される文字列と同じである場合に税が適用されることを指定します。 [何らかの値が指定されている] 注文の ship_to_country キーに Null でない値がある場合に税が適用されることを指定します。
[国/地域] | 注文の ship_to_country キーと比較される文字列です。
[GST 税率フィールド] | GST 税率の値が割り当てられる注文フォームのキーです。
[PST 税率フィールド] | SimpleCanadaTax コンポーネントが品目の送付先の州名 (注文フォームの ship_to_state キー) に付加するプレフィックスです。このコンポーネントは、この連結文字列を使って、注文フォームの PST 税率を参照します。
[州リスト] | 税計算の対象である州のリストで、空白で区切られています。

読み取られる値

SimpleCanadaTax コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._oadjust_adjustedprice | Order | 品目のコストの合計です。
ship_to_state | Order | 送付先の州です。
item._product_gst | Order | 動的な値です。既定で表示されます。品目の GST です。キー名は、[GST 税率フィールド] 構成ボックスの値によって決定されます。
item._product_pst__* | Order | 動的な値です。既定で表示されます。特定の州での品目の PST です。州の省略形が、正式名に追加されます。この省略形は、[州リスト] ボックスで一意である必要があります。キー名は、[PST 税率フィールド] 構成ボックスの値によって決定されます。
ship_to_country | Order | 送付先の国です。

書き込まれる値

SimpleCanadaTax コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。

キー | 説明
item._tax_total | この在庫保管単位 (SKU) を持つ品目に対する税の合計です。
item._tax_included | 品目のコストに含まれる税額です。
_tax_total_gst | 注文に対する GST の合計です。
_tax_total_pst | 注文に対する PST の合計です。
_tax_total | この注文に対する税の合計です。
_tax_included | 注文のコストに含まれる税額です。

解説

GST は、カナダ全域で共通で、ほとんどすべての商品とサービスには GST が課せられます。商品に課税される場合、GST 税率はカナダ全域で同じです。ただし、一部の商品には課税せず、規定の規模よりも小さい一部のサービス マーチャントには GST を請求しないことを選択できます。各州には独自の PST があり、通常すべての商品で固定税率ですが、PST の税率も商品によって異なる場合があります。州によっては、ほかの州では税金を課さない品目に課税することがあります。

州の間で商品を送付する場合は、PST が課せられません。一般的ではありませんが、PST が課されても、GST が課されない商品もあります。また、逆のケースもあります。

SimpleCanadaTax コンポーネントで使うデータは、通常 QueryCatalogInfo コンポーネントまたは QueryProdInfoADO コンポーネントによって提供されます。SimpleCanadaTax コンポーネントは、常に _tax_included キーを品目と注文の両方で 0 に設定します。このコンポーネントは、基本通貨単位の端数までは処理しません。すべての計算で、端数は四捨五入されます。

[キー]、[適用条件]、および [国/地域] の各ボックスの組み合わせによって、税を適用するかどうかが決定されます。ただし、その注文が [州リスト] ボックスの 1 つの州に送付される場合に限ります。

SimpleCanadaTax コンポーネントは、初めに [適用条件] ボックスの値を確認します。

  • [常に] に設定されていると、注文に対して常に課税されます。

  • [適用条件] ボックスの値が [何らかの値が指定されている] に設定されていると、注文フォームの ship_to_country キーに値が含まれている場合に、その注文に対して課税されます。

  • [適用条件] ボックスの値が、[以下の国/地域と等しい] に設定されている場合、コンポーネントは、注文フォームの ship_to_country キーの値と [国/地域] ボックスのテキスト文字列とを比較します。一致する場合は、税が適用されます。

コンポーネントで税を適用する必要があると判断される場合は、注文フォームの ship_to_state キーの値と [州リスト] ボックスで指定した州のリストとが比較されます。一致する項目がある場合は、その注文は税が徴収される州に送付されることを示します。この場合、コンポーネントは次の 2 つの操作を行います。初めに、[GST 税率フィールド] ボックスで識別される注文フォームのフィールドから GST 税率を取得します。2 番目に、[PST 税率フィールド] ボックスで指定するプレフィックスを、その品目の送付先の州名 (注文フォームの ship_to_state キー) に付加します。次に、このコンポーネントは、この連結文字列を使って、注文フォームの PST 税率を参照します。

例

カナダのアルバータ州に送付する品目に 2% の GST 税率と 4.5% のアルバータ州の PST 税率を請求するように指定するには、次の操作を行います。ここでは、商品情報を取得するために、QueryProdInfoADO コンポーネントを使うことを前提としています。

  1. 商品テーブルに GST 税率の列を追加します。税率は次のように、実数値として指定します。

can_prod_gst_tax_rate real NOT NULL

  2. 商品テーブルにアルバータ州の PST 税率の列を追加します。税率は次のように、実数値として指定します。

can_prod_pst_tax_rate_alb real NOT NULL

  3. SQL スクリプトを使って、商品一覧の各商品に対して税率を割り当てます。たとえば、商品 ABC に 2% の GST 税率と 4.5% のアルバータ州の PST 税率を割り当てます。商品 ABC 行の can_prod_gst_tax_rate 列に「2.0」と入力し、can_prod_pst_tax_rate_alb 列に「4.5」と入力します。

  4. パイプライン エディタの [SimpleCanadaTax] をダブルクリックし、表示されるプロパティ ページに次のデータを入力します。
    項目 | 値
    [適用条件] | [何らかの値が指定されている]
    [国/地域] | [CAN]
    [GST 税率フィールド] | [_product_can_prod_gst_tax_rate]
    [PST 税率フィールド] | [_product_can_prod_pst_tax_rate]
    [州リスト] | [Alb]

ユーザーが SimpleCanadaTax コンポーネント構成で指定されていない国または州を注文フォームで入力した場合、その値は注文の _tax_total キーと _tax_included キーには割り当てられず、その項目は設定されないことに注意してください。


SimpleJapanTax

このコンポーネントを使って、日本の課税体系を基に税額を計算します。

注

  • SimpleJapanTax コンポーネントは、Site Server 3.0 Commerce Edition のサンプル税コンポーネントです。SampleRegionalTax コンポーネントは、Commerce Server 2000 のサンプル税コンポーネントです。この製品の税コンポーネントはすべてサンプルとして作成されたものです。このコンポーネントで使われている税率やデータを個人または企業で使う場合は、事前に税金の専門家に相談し、これらの情報について確認するようにしてください。

使用目的 : 注文処理パイプライン、税ステージ

構成値

コンポーネントのプロパティを設定して、SimpleJapanTax コンポーネントが税を計算する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [日本の税金] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | 課税条件を決定します。値は次のとおりです。 [常に] 既定値です。常に注文に課税するように指定します。 [以下の国/地域と等しい] Order ディクショナリの ship_to_country キーの値が [国/地域] ボックスで指定される文字列と同じである場合に税が適用されることを指定します。 [何らかの値が指定されている] 注文の ship_to_country キーに Null でない値がある場合に税が適用されることを指定します。
[国/地域] | 注文の ship_to_country キーと比較される文字列で、それによって課税されるかどうかが決まります。
[内税/外税] | 品目の価格に税金が含まれているかどうかを示す Item ディクショナリのキーです。
[税率フィールド] | 品目のキーで、その品目に対して課される税率を含んでいます。

読み取られる値

SimpleJapanTax コンポーネントは、指定したディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._oadjust_adjustedprice | Order | 品目のコストの合計です。
item._product_jpn_tax_included | Order | 動的な値です。既定で表示されます。税金が品目の料金に含まれているかどうかを示す Boolean です。キー名は、[内税/外税] 構成ボックスの値によって決定されます。
item._product_jpn_tax_rate | Order | 動的な値です。既定で表示されます。品目に対する税率です。キー名は、[税率フィールド] 構成ボックスの値によって決定されます。
ship_to_country | Order | 送付先の国です。

書き込まれる値

SimpleJapanTax コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。

キー | 説明
item._tax_total | この在庫保管単位 (SKU) を持つ品目に対する税の合計です。
item._tax_included | 品目のコストに含まれる税額です。
_tax_total | この注文に対する税の合計です。
_tax_included | 注文のコストに含まれる税額です。

解説

SimpleJapanTax コンポーネントは、日本の課税体系で税額を計算します。これは、類似した課税体系を採用しているすべての国で使えます。このコンポーネントは、品目レベルだけで通貨単位の端数を処理します。注文レベルの計算 (order._tax_total と order._tax_included) では、最も近い整数値に端数処理されます。

[キー]、[適用条件]、および [国/地域] の各ボックスの値の組み合わせによって、税を適用するかどうかが決定されます。ただし、税が品目の価格に含まれていない場合に限ります。

SimpleJapanTax コンポーネントは、初めに [適用条件] の値を確認します。

  • [常に] に設定されていると、注文に対して常に課税されます。

  • [適用条件] ボックスの値が [何らかの値が指定されている] に設定されていると、注文フォームの ship_to_country キーに値が含まれている場合に、その注文に対して課税されます。

  • [適用条件] ボックスの値が [以下の国/地域と等しい] に設定されている場合、コンポーネントは、注文フォームの ship_to_country キーの値と、プロパティ ページの [国/地域] ボックスのテキスト文字列とを比較します。一致する場合、コンポーネントは [税率フィールド] に指定されたボックスに格納されている値の税を適用します。

[内税/外税] ボックスのキーは、税が品目の価格に含まれているかどうかを示す Item ディクショナリのフィールド名を指定します。このフィールドは、品目に税率を追加するかどうか (この場合、item._tax_total キーは税額に設定され、item._tax_included キーは 0 に設定されます)、または税率が価格に含まれているかどうか (この場合、item._tax_included キーは税額に設定され、item._tax_total キーは 0 に設定されます) を示す Boolean 値を格納していると仮定されます。

例

日本の品目について、9.54% の税率が 1 つの品目の価格に含まれており、別の品目の価格には含まれていないことを示すには、次の操作を行います。

  1. 商品テーブルに内税率の列を追加します。税率は次のように、smallint の数値として指定します。

jpn_prod_tax_included smallint NOT NULL,

  2. 商品テーブルに税率の列を追加します。税率は次のように、実数値として指定します。

jpn_prod_tax_rate real NOT NULL,

  3. SQL スクリプトを使って、商品一覧の各商品に対して税率と内税の値を割り当てます。この例では、2 つの商品、Product Included と Product Excluded を使います。Product Included では商品価格に税金を含め、9.54% の税率を割り当てます。Product Included 行の jpn_prod_tax_rate 列に「9.54」と入力し、jpn_prod_tax_included 列に「1」(True) と入力します。Product Excluded では税金を商品の価格に含まず、9.54% の税率を割り当てます。Product Excluded 行の jpn_prod_tax_rate 列に「9.54」と入力し、jpn_prod_tax_included 列に「0」(False) と入力します。

  4. パイプライン エディタを使って、SimpleJapanTax コンポーネントのプロパティ ページに次のデータを入力します。
    項目 | 値
    [適用条件] | [何らかの値が指定されている]
    [国/地域] | [JPN]
    [内税/外税] | [_product_jpn_prod_tax_included]
    [税率フィールド] | [_product_jpn_prod_tax_rate]

ユーザーが SimpleJapanTax コンポーネント構成で指定されていない国を注文フォームで入力した場合、その注文と品目の _tax_total キーと _tax_included キーは設定されません。


SimpleUSTax

このコンポーネントを使って、アメリカ国内の指定された州に送付される注文に対し、税を適用します。

注

  • SimpleUSTax コンポーネントは、Site Server 3.0 Commerce Edition のサンプル税コンポーネントです。SampleRegionalTax コンポーネントは、Commerce Server 2000 のサンプル税コンポーネントです。この製品の税コンポーネントはすべてサンプルとして作成されたものです。このコンポーネントで使われている税率やデータを個人または企業で使う場合は、事前に税金の専門家に相談し、これらの情報について確認するようにしてください。

使用目的 : 注文処理パイプライン、税ステージ

構成値

コンポーネントのプロパティを設定して、SimpleUSTax コンポーネントが税を計算する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [アメリカの税金] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | 課税条件を決定します。値は次のとおりです。 [常に] 既定値です。常に注文に課税するように指定します。 [以下の国/地域と等しい] Order ディクショナリの ship_to_country キーの値が [国/地域] ボックスで指定される文字列と同じである場合に税が適用されることを指定します。 [何らかの値が指定されている] 注文の ship_to_country キーに Null でない値がある場合に税が適用されることを指定します。
[国/地域] | 注文の ship_to_country キーと比較される文字列です。
[州税リスト] | state:rate という形式の州と税率のリストです。state は 2 文字の郵便番号の略語で、rate は 10 進数の値で表します。たとえば、WA:8.6 はワシントン州の 8.6% の税率を表します。複数の州と税率の組み合わせは、スペースで区切ります。

読み取られる値

SimpleUSTax コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
ship_to_state | Order | 送付先の州です。
item._oadjust_adjustedprice | Order | 品目のコストの合計です。
ship_to_country | Order | 送付先の国です。

書き込まれる値

SimpleUSTax コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。

キー | 説明
item._tax_total | この在庫保管単位 (SKU) を持つ品目に対する税の合計です。
item._tax_included | 品目のコストに含まれる税額です。
_tax_total | この注文に対する税の合計です。
_tax_included | 注文のコストに含まれる税額です。

解説

SimpleUSTax コンポーネントは、アメリカ国内の州税を計算します。

[キー]、[適用条件]、および [国/地域] の各ボックスの値の組み合わせによって、税を適用するかどうかが決定されます。ただし、その注文を送付する州が [州税リスト] ボックスに含まれている場合に限ります。

SimpleUSTax コンポーネントは、初めに [適用条件] の値を確認します。

  • [常に] に設定されていると、注文に対して常に課税されます。

  • [適用条件] ボックスの値が [何らかの値が指定されている] に設定されていると、注文フォームの ship_to_country キーに値が含まれている場合に、その注文に対して課税されます。

  • [適用条件] ボックスの値が [以下の国/地域と等しい] に設定されている場合、コンポーネントは、注文フォームの ship_to_country キーの値と、このプロパティ ページの [国/地域] ボックスのテキスト文字列とを比較します。一致する場合、コンポーネントは税を適用します。

コンポーネントで税を適用する必要があると判断される場合は、注文フォームの ship_to_state キーの値と [州税リスト] ボックスで指定した州のリストとが比較されます。一致する値があり、その注文は税が徴収される州に送付されることを示している場合、コンポーネントはその州の税率を適用し、item._tax_total キー、item._tax_included キー、order._tax_total キー、および order._tax_included キーの値を設定します。

SimpleUSTax コンポーネントは、常に _tax_included キーに品目と注文の両方で 0 を割り当てます。このコンポーネントは、基本通貨単位の端数を処理しません。すべての計算で、端数は最も近い整数に端数処理されます。

ユーザーが SimpleUSTax コンポーネント構成で指定されていない国または州を注文フォームで入力した場合、その注文と品目の _tax_total と _tax_included の名前/値の組み合わせの値は設定されません。

アットマーク記号 (@) (ワイルドカード文字) を入力して、明示的に表示されていないすべての州を表すことができます (たとえば、@:0 のようにします)。


SimpleVATTax

このコンポーネントを使って、付加価値税 (VAT) を計算します。

注

  • SimpleVATTax コンポーネントは、Site Server 3.0 Commerce Edition のサンプル税コンポーネントです。SampleRegionalTax コンポーネントは、Commerce Server 2000 のサンプル税コンポーネントです。この製品の税コンポーネントはすべてサンプルとして作成されたものです。このコンポーネントで使われている税率やデータを個人または企業で使う場合は、事前に税金の専門家に相談し、これらの情報について確認するようにしてください。

使用目的 : 注文処理パイプライン、税ステージ

構成値

コンポーネントのプロパティを設定して、SimpleVATTax コンポーネントが税を計算する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [付加価値税] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | 課税条件を決定します。値は次のとおりです。 [常に] 既定値です。常に注文に課税するように指定します。 [以下の国/地域と等しい] Order ディクショナリの ship_to_country キーの値が、[国/地域] ボックスで指定される文字列と同じである場合に税が適用されることを指定します。 [何らかの値が指定されている] 注文の ship_to_country キーに Null でない値がある場合に税が適用されることを指定します。
[国/地域] | 注文の ship_to_country キーと比較される文字列で、それによって課税されるかどうかが決まります。
[税率フィールド] | 品目のキーで、その品目に対して課される税率を含んでいます。

読み取られる値

SimpleVATTax コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
item._oadjust_adjustedprice | Order | 品目のコストの合計です。
item._product_tax_rate | Order | 動的な値です。既定で表示されます。商品に対する税率です。キー名は、[税率フィールド] 構成ボックスの値によって決定されます。

書き込まれる値

SimpleVATTax コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。

キー | 説明
item._tax_total | この在庫保管単位 (SKU) を持つ品目に対する税の合計です。
item._tax_vat_item | 品目に対する VAT です。
item._tax_included | 品目のコストに含まれる税額です。
_tax_total | この注文に対する税の合計です。
_tax_included | 注文のコストに含まれる税額です。

解説

SimpleVATTax コンポーネントは、単純な付加価値税 (VAT) を計算します。

SimpleVATTax コンポーネントは、常に _tax_total キーに品目と注文の両方で 0 を割り当てます。このコンポーネントは、基本通貨単位の端数を処理しません。すべての計算で、端数は最も近い整数に端数処理されます。

[キー]、[適用条件]、および [国/地域] の各ボックスの値の組み合わせによって、税を適用するかどうかが決定されます。SimpleVATTax コンポーネントは、初めに [適用条件] の値を確認します。

  • [常に] に設定されていると、注文に対して常に課税されます。

  • [適用条件] ボックスの値が [何らかの値が指定されている] に設定されていると、注文フォームの ship_to_country キーに値が含まれている場合に、その注文に対して課税されます。

  • [適用条件] ボックスの値が [以下の国/地域と等しい] に設定されている場合、コンポーネントは、注文フォームの ship_to_country キーの値と、このプロパティ ページの [国/地域] ボックスのテキスト文字列とを比較します。一致する場合、コンポーネントは [税率フィールド] に指定されたフィールドに格納されている値の税を適用します。

例

ドイツで品目に 6.5% の VAT 税率が課されることを指定するには、次の操作を行います。

  1. 商品テーブルにドイツの VAT 税率の列を追加します。税率は次のように、実数値として指定します。

ger_vat_tax_rate real NOT NULL

  2. SQL スクリプトを使って、商品一覧の各商品に対して税率を割り当てます。この例では、商品 ABC に 6.5% の VAT 税率を割り当てます。商品 ABC 行の ger_vat_tax_rate 列に「6.5」と入力します。

  3. パイプライン エディタで、SimpleVATTax コンポーネントのプロパティ ページに次の値を入力します。
    項目 | 値
    [適用条件] | [常に]
    [国/地域] | [GER]
    [税率フィールド] | [_product_ger_vat_tax_rate]

ユーザーが SimpleVATTax コンポーネント構成で指定されていない国を注文フォームで入力した場合、その注文と品目の _tax_total キーと _tax_included キーの値は設定されません。


Splitter

このコンポーネントを使って、項目キーの一覧に基づいて、注文を複数のグループに分割します。たとえば、受注ステージで、Splitter コンポーネントを使って、カタログと製造元に基づいて注文を分割できます。送料ステージでは、Splitter コンポーネントを使って、送付方法と住所に基づいて注文を送付に分割できます。

使用目的 : 注文処理パイプライン、すべてのステージ

構成値

コンポーネントのプロパティを設定して、Splitter コンポーネントが注文を分割する方法を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [注文分割] タブで、次のボックスを使います。

項目 | 説明
[出力構造体] | 出力されるディクショナリをポイントする SimpleList オブジェクトの名前です。Splitter コンポーネントは、識別値のセットごとにディクショナリを 1 つ作成します。
[入力識別機能] | 注文を分割するために使う項目属性 (キー) のスペースで区切られたリストです。既定値は shipping_method_id キーと shipping_address_id キーで、注文を複数の送付に分割するための識別機能です。

読み取られる値

Splitter コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
CacheManager | Context | CacheManager オブジェクトへの参照です。指定されている場合、このコンポーネントは送付方法名を参照して、shipping_method_id が識別機能であれば、出力構造体に書き込みます。
ShipmentDistinguishers | Context | 省略可能です。送付を分割するために使う項目属性 (キー) を含む文字列の配列です。既定値は shipping_method_id キーと shipping_address_id キーです。このキーは、[入力識別機能] ボックスで値が指定されてない場合にだけ使われます。たとえば、次のように使用します。 Dict("ShipmentDistinguishers") = "quantity shipping_address_id name shipping_method_id ..."

書き込まれる値

Splitter コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
dynamic (what the Output Structure is set to) | 省略可能です。出力されるディクショナリをポイントする SimpleList オブジェクトの名前です。Splitter コンポーネントは、識別値のセットごとにディクショナリを 1 つ作成します。The Shipments キーは、[出力構造体] ボックスでほかのキーが指定されていない場合にだけ使われます。

解説

注文を複数の送付に分割するための Splitter コンポーネントの設定については、「複数の送付を作成するために Splitter コンポーネントを使う」を参照してください。

例

Splitter コンポーネントを使うと、どのようにでも注文を分割できます。たとえば、次の属性を持つ 0 から 3 の番号が付いた 4 つの品目があるとします。

shipping_method_id | shipping_address_id | shipping_date | catalog | vendor
A | Home | ASAP | A | A
A | Home | ASAP | A | A
B | Work | ASAP | B | B
A | Work | 3/1 | C | B

shipping_method_id と shipping_address_id に基づいて _Shipments という出力構造体に分割する場合、次のエントリを持つ "shipments" という注文フォームに、ディクショナリの SimpleList オブジェクトが表示されます。

shipping_method_id | shipping_address_id | ItemIndexes
A | Home | 0,1
B | Work | 2
A | Work | 3

製造元に基づいて _Vendors という出力構造体に分割する場合、次のエントリを持つ "_Vendors" という注文フォームに、ディクショナリの SimpleList オブジェクトが表示されます。

Vendor | ItemIndexes
A | 0,1
B | 2,3

関連項目

Shipping オブジェクト

送付オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter

StepwiseShipping


SQLItemADO

このコンポーネントを使って、注文フォーム内の各品目についてクエリを実行します。

使用目的 : 注文処理パイプライン、受注ステージ

構成値

コンポーネントのプロパティを設定して、SQLItemADO コンポーネントが実行するクエリを決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [SQL アイテム (ADO)] タブで、次のボックスを使います。

項目 | 説明
[接続文字列] | データベースに接続するために指定する接続文字列です。これは、完全な接続文字列、または接続マップの名前のいずれかになります。指定されない場合は、既定の接続文字列が使われます。
[クエリ] | このコンポーネントが実行するクエリの完全な SQL テキスト、または QueryMap キーの Global.asa ファイルで定義される完全な SQL テキストを持つクエリの名前です。
[パラメータ リスト] | コンポーネントがクエリに渡すパラメータです。複数のパラメータを指定するときは、スペースで区切ります。指定できるパラメータを次に示します。 count クエリに注文の品目数を渡します。 index 品目の 0 から始まるインデックス番号をクエリに提供します。 order.<フィールド名> 注文フォームで指定されたフィールドの値を渡します。 item.<フィールド名> Item ディクショナリで指定されたフィールドの値を渡します。 sum.<フィールド名> クエリは、注文の任意の 1 つのフィールドの合計を受け取ります。 sumq.<フィールド名> 合計に個々の数量を掛けた値を渡します。

読み取られる値

SQLItemADO コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
DefaultConnectionString | Context | 省略可能です。既定のクエリ文字列を含む Application ディクショナリ内のキーです。
ConnectionStringMap | Context | 省略可能です。マップされた接続文字列の名前を参照するマップです。
QueryMap | Context | 省略可能です。クエリ マップを含むディクショナリへの参照です。

書き込まれる値

なし。

解説

SQLItemADO コンポーネントは、クエリにパラメータとして指定された注文フォーム フィールドを渡して、品目リストの各品目についてクエリを実行します。これらのフィールドは、Order ディクショナリまたは Item ディクショナリのいずれかのキーを含むことできます。

接続文字列には、データ ソース名 (DNS)、データベース ログイン ID、データベース パスワードなどの完全接続文字列、または接続マップに格納される名前付き接続の名前のいずれかが含まれている必要があります。


SQLOrderADO

このコンポーネントを使って、クエリに注文パラメータを渡し、注文に対して単一の SQL クエリを実行します。

使用目的 : 注文処理パイプライン、受注ステージ

構成値

コンポーネントのプロパティを設定して、SQLOrderADO コンポーネントが実行するクエリを決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [SQL オーダー (ADO)] タブで、次のボックスを使います。

項目 | 説明
[接続文字列] | データベースに接続するために指定する接続文字列です。これは、完全な接続文字列、または接続マップの名前のいずれかになります。指定されない場合は、既定の接続文字列が使われます。
[クエリ] | このコンポーネントが実行するクエリの完全な SQL テキスト、または QueryMap キーの Global.asa ファイルで定義される完全な SQL テキストを持つクエリの名前です。
[パラメータ リスト] | コンポーネントがクエリに渡すパラメータです。複数のパラメータを指定するときは、スペースで区切ります。指定できるパラメータを次に示します。 count クエリに注文の品目数を渡します。 order.<フィールド名> 注文フォームで指定されたフィールドの値を渡します。 sum.<フィールド名> クエリは、注文の任意の 1 つのフィールドの合計を受け取ります。 sumq.<フィールド名> 合計に個々の数量を掛けた値を渡します。
[子オブジェクト名] | データを受け取るフィールドの名前です。このコンポーネントは、[子オブジェクトを使用] チェック ボックスがオンになっている場合にだけ、このフィールドを使います。
[子オブジェクトを使用] | [子オブジェクト名] ボックスに指定されたオブジェクトをコンポーネントが使うかどうかを示します。このチェック ボックスがオフになっている場合、コンポーネントは子オブジェクトがないものと見なします。

読み取られる値

SQLOrderADO コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
DefaultConnectionString | Context | 省略可能です。既定の接続文字列を含む Application ディクショナリ内のキーです。
ConnectionStringMap | Context | 省略可能です。マップされた接続文字列の名前を参照するマップです。
QueryMap | Context | 省略可能です。クエリ マップを含むディクショナリへの参照です。

書き込まれる値

なし。

解説

SQLOrderADO コンポーネントは、クエリに指定された注文パラメータを渡し、注文ごとに単一の SQL クエリを実行します。このコンポーネントは、ActiveX Data Objects (ADO) を使ってデータ ソースと対話するため、COM+ トランザクションをサポートしています。

接続文字列には、データ ソース名 (DNS)、データベース ログイン ID、データベース パスワードなどの完全接続文字列、または接続マップに格納される名前付き接続の名前のいずれかが含まれている必要があります。


StepwiseShipping

複数送料アーキテクチャでこのコンポーネントを使って、送料を計算します。StepwiseShipping コンポーネントは、重量、数量、または価格に基づく送料を処理できます。

注

  • このコンポーネントは、パイプライン内に直接挿入しないでください。ShippingMethodRouter コンポーネントによって実行されます。

構成値

ShippingMethodRouter コンポーネントは、StepwiseShipping コンポーネントを実行する前に、Configuration ディクショナリの次の値を設定します。

キー | 説明
mode | 送料計算モードです。選択できるオプションは次のとおりです。 0 代金を使って送料を計算します。 1 数量を使って送料を計算します。 2 重量を使って送料を計算します。

読み取られる値

StepwiseShipping コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
TransactionConfigConnectionString | Context | 送料レートを格納しているデータベースへのデータ接続文字列です。
shipments_to_process | Context | 処理する送付の SimpleList オブジェクトです。各送付は、ディクショナリによって表されます。

また、StepwiseShipping コンポーネントは、shipments_to_process SimpleList オブジェクトの各 Shipment ディクショナリの各項目について、次の値を読み取ります。

キー | 説明
_product_weight | 省略可能です。個々の品目の重量です。重量を使って送料を計算する場合にだけ必要です。
quantity | 省略可能です。個々の品目の数量です。数量を使って送料を計算する場合にだけ必要です。
_cy_oadjust_adjustedprice | 省略可能です。品目の代金です。代金を使って送料を計算する場合にだけ必要です。

書き込まれる値

StepwiseShipping コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
shipments._cy_shipping_total | 個々の送付に対する送料です。

解説

StepwiseShipping コンポーネントは、送付リストを順次処理します。各送付について、送料レート テーブルから送料レートを取得し、指定されたモードに従って送料を計算します。

重量を使って送料を計算する場合に、すべての品目の重量データがなければ、コンポーネントはエラーを返します。

関連項目

Shipping オブジェクト

ShippingDiscountAdjust

ShippingManagerCache

ShippingMethodManager オブジェクト

ShippingMethodRouter


TableHandlingADO

このコンポーネントを使って、データベースから取得した値に基づいて、注文の合計手数料を設定します。

使用目的 : 注文処理パイプライン、手数料ステージ

構成値

コンポーネントのプロパティを設定して、TableHandlingADO コンポーネントが手数料を計算する条件を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [テーブル操作 (ADO)] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | 手数料を課金するタイミングを決定します。値は次のとおりです。 [常に] 既定値です。注文に対して常に手数料を課金するように指定します。 [以下のメソッドと等しい] Order ディクショナリの shipping_method キーの値が [方法] ボックスで指定される文字列と同じである場合に手数料が適用されます。 [何らかの値が指定されている] 注文の shipping_method キーの値が Null でない場合に手数料が適用されることを指定します。
[方法] | Order ディクショナリの shipping_method キーの値と一致する送付方法です。[適用条件] ボックスの値が [以下のメソッドと等しい] の値に設定されている場合に使います。
[接続文字列] | データベースに接続するために指定する接続文字列です。これは、完全な DSN、または接続マップの名前のいずれかになります。指定されない場合は、既定の接続文字列が使われます。
[クエリ] | このコンポーネントが実行するクエリの完全な SQL テキスト、または QueryMap キーの Global.asa ファイルで定義される完全な SQL テキストを持つクエリの名前です。
[パラメータ リスト] | コンポーネントがクエリに渡すパラメータです。複数のパラメータを指定するときは、スペースで区切ります。指定できるパラメータを次に示します。 count クエリに注文の品目数を渡します。 order.<フィールド名> 注文フォームで指定されたフィールドの値を渡します。 sum.<フィールド名> クエリは、注文の任意の 1 つのフィールドの合計を受け取ります。 sumq.<フィールド名> 合計に個々の数量を掛けた値を渡します。
[列] | 手数料を含むデータベースの列の名前です。

読み取られる値

TableHandlingADO コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
shipping_method | Order | 省略可能です。文字列としての送付方法です。
DefaultConnectionString | Context | 省略可能です。既定のクエリ文字列を含む Application ディクショナリ内のキーです。
ConnectionStringMap | Context | 省略可能です。マップされた接続文字列の名前を参照するマップです。
QueryMap | Context | 省略可能です。クエリ マップを含むディクショナリへの参照です。

書き込まれる値

TableHandlingADO コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。

キー | 説明
_handling_total | 注文処理のためのコストの合計です。

解説

TableHandlingADO コンポーネントは、データベースから取得した値を使って、注文フォームの _handling_total キーの値を設定します。

[適用条件] ボックスと [方法] ボックスの値の組み合わせによって、注文に手数料を適用するかどうかが決定されます。

TableHandlingADO コンポーネントは、初めに [適用条件] の値を確認します。[常に] に設定されていると、注文に対して常に手数料が適用されます。[適用条件] ボックスの値が [何らかの値が指定されている] に設定されていると、注文フォームの shipping_method キーに値が含まれている場合に、その注文に対して手数料が適用されます。[適用条件] ボックスの値が [以下のメソッドと等しい] に設定されている場合、コンポーネントは、注文フォームの shipping_method キーの値と、このプロパティ ページの [方法] ボックスのテキスト文字列とを比較します。一致する場合は、手数料が適用されます。

手数料が適用されることが決定すると、コンポーネントは [クエリ] ボックスに指定されているクエリを実行します。クエリは、[列] ボックスに指定されているデータベース列から手数料を取得します。その後、このコンポーネントは、手数料を計算します。

接続文字列には、データ ソース名 (DNS)、データベース ログイン ID、データベース パスワードなどの完全接続文字列、または接続マップに格納される名前付き接続の名前のいずれかが含まれている必要があります。


TableShippingADO

このコンポーネントを使って、データベースから取得した値に基づいて、注文の合計送料を設定します。

使用目的 : 注文処理パイプライン、送料ステージ

構成値

コンポーネントのプロパティを設定して、TableShippingADO コンポーネントが手数料を計算する条件を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [テーブルの配送 (ADO)] タブで、次のボックスを使います。

フィールド | 説明
[適用条件] | 送料を課金するタイミングを決定します。値は次のとおりです。 [常に] 既定値です。注文に対して常に送料を課金するように指定します。 [以下のメソッドと等しい] Order ディクショナリの shipping_method キーの値が [方法] ボックスで指定される文字列と同じである場合に送料が適用されます。 [何らかの値が指定されている] 注文の shipping_method キーの値が Null でない場合に送料が適用されることを指定します。
[方法] | Order ディクショナリの shipping_method キーの値と一致する送付方法です。[適用条件] ボックスの値が [以下のメソッドと等しい] の値に設定されている場合に使います。
[接続文字列] | データベースに接続するために指定する接続文字列です。これは、完全な接続文字列、または接続マップの名前のいずれかになります。指定されない場合は、既定の接続文字列が使われます。
[クエリ] | このコンポーネントが実行するクエリの完全な SQL テキスト、または QueryMap キーの Global.asa ファイルで定義される完全な SQL テキストを持つクエリの名前です。
[パラメータ リスト] | コンポーネントがクエリに渡すパラメータです。複数のパラメータを指定するときは、スペースで区切ります。指定できるパラメータを次に示します。 count クエリに注文の品目数を渡します。 order.<フィールド名> 注文フォームで指定されたフィールドの値を渡します。 sum.<フィールド名> クエリは、注文の任意の 1 つのフィールドの合計を受け取ります。 sumq.<フィールド名> 合計に個々の数量を掛けた値を渡します。
[列] | 手数料を含むデータベースの列の名前です。

読み取られる値

TableShippingADO コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
shipping_method | Order | 省略可能です。文字列としての送付方法です。
DefaultConnectionString | Context | 省略可能です。既定のクエリ文字列を含む Application ディクショナリ内のキーです。
ConnectionStringMap | Context | 省略可能です。マップされた接続文字列の名前を参照するマップです。
QueryMap | Context | 省略可能です。クエリ マップを含むディクショナリへの参照です。

書き込まれる値

TableShippingADO コンポーネントは、Order ディクショナリの次のキーに値を割り当てます。

キー | 説明
_handling_total | 注文処理のためのコストの合計です。

解説

TableShippingADO コンポーネントは、データベースから取得した値を使って、注文フォームの _shipping_total キーの値を設定します。

TableShippingADO コンポーネントを使う場合は、パイプラインから DefaultShipping コンポーネントを必ず削除してください。

[キー]、[適用条件]、および [方法] の各ボックスの値の組み合わせによって、注文に対して送料を適用するかどうかが決定されます。

TableShippingADO コンポーネントは、初めに [適用条件] の値を確認します。[常に] に設定されていると、注文に対して常に送料が適用されます。[適用条件] の値が [何らかの値が指定されている] に設定されていると、注文フォームの shipping_method キーに値が含まれている場合に、その注文に対して送料が適用されます。[適用条件] ボックスの値が [以下のメソッドと等しい] に設定されている場合、コンポーネントは、注文フォームの shipping_method キーの値と、このプロパティ ページの [方法] ボックスのテキスト文字列とを比較します。一致する場合は、送料が適用されます。

送料が適用されることが決定すると、コンポーネントは [クエリ] ボックスに指定されているクエリを実行し、[列] ボックスに指定されているデータベース列から送料を取得します。その後、このコンポーネントは、送料を計算します。

[パラメータ リスト] ボックスの値は、クエリにパラメータを指定するために使われます。通常、これにはテーブル参照のための基準が含まれます。基準は、注文の合計コスト、または重量などのマーチャント定義値にすることができます。

次の表は、[基準フィールド] ボックスで有用ないくつかの値を示しています。

[基準フィールド] の例 | 結果の値
order._oadjust_subtotal | 注文フォーム上の代金です。
sum.quantity | 数量の合計 (注文品目の合計数) です。
sum._oadjust_adjustedprice | 調整済み価格の合計です。
sumq._iadjust_currentprice | 現在価格の合計に、注文されたすべての品目の数量を掛けた値です。
sumq._product_weight | 注文の合計重量です。商品テーブルに重量列が存在し、QueryProdInfoADO コンポーネントによって使われるクエリにこのフィールドが含まれていることが前提となります。

たとえば、sumq._product_weight キーが指定され、2 つの品目を含む注文があるとして、そのうちの 1 つの重量が 2 ポンドで数量が 3、もう 1 つの重量が 4 ポンドで数量が 1 である場合、基準値は 10 です。


ThrottleDMLPerformance

このコンポーネントを使って、パイプラインがダイレクト メール メッセージを処理する速度を制御します。これにより、Simple Mail Transfer Protocol (SMTP) サーバーの負荷が制御されます。

使用目的 : ダイレクト メーラー パイプライン、スロットル ステージ

構成値

なし。

読み取られる値

ThrottleDMLPerformance コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
delay_msec | Context | メッセージ間の遅延で、ミリ秒の単位で表されます。

書き込まれる値

なし。

解説

一度に非常に大量のメッセージを受信すると、SMTP サーバーの負荷が大きくなりすぎることがあります。このため、ダイレクト メール パイプラインは、サーバーへのメッセージの配信速度を低下させる必要があることもあります。

ThrottleDMLPerformance コンポーネントは、delay_msec キーで指定される数ミリ秒が経過するまで待機するだけです。ダイレクト メーラー サービスは、適切な配信率を維持するために必要な遅延を計算します。その後で、Context ディクショナリの delay_msec 値を設定します。これは ThrottleDMLPerformance コンポーネントによって読み取られます。

関連項目

AddAttachments

ComposeDMLMessage

CreateUPMCookie

SendPrecomposedMessage

VerifyMessageBody

VerifyRecipientData


ValidateCCNumber

このコンポーネントを使って、クレジット カードの有効期限の確認と、カード番号のチェックサム テストを行います。チェックサム テストによって、カード番号の書式が正しいことが確認されます。アカウントの有効性は検証されません。

使用目的 : 注文処理パイプライン、支払いステージ

構成値

コンポーネントのプロパティを設定して、ValidateCCNumber コンポーネントがクレジット カードを確認する条件を決定できます。この情報を決定するには、[コンポーネントのプロパティ] ダイアログ ボックスの [CC の確認] タブで、次のボックスを使います。

項目 | 説明
[適用条件] | クレジット カードの確認を適用する条件を決定します。値は次のとおりです。 [常に] 既定値です。クレジット カード番号の書式が常に確認されることを指定します。 [以下のメソッドと等しい] Order ディクショナリの payment_method キーの値が [方法] ボックスで指定される文字列と同じである場合に番号の書式が確認されることを指定します。 [何らかの値が指定されている] 注文の payment_method キーの値が Null でない場合に番号の書式が確認されることを指定します。
[方法] | Order ディクショナリの payment_method キーの値と一致する支払い方法です。[適用条件] ボックスの値が [以下のメソッドと等しい] に設定されている場合に使います。

読み取られる値

ValidateCCNumber コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
_cc_number | Order | クレジット カード番号です。
_cc_expmonth | Order | 文字列としての有効期限の月です。
_cc_expyear | Order | 文字列としての有効期限の年です。
cc_type | Order | 文字列としてのクレジット カードの種類です。MasterCard、MC、VISA、Discover、American Express、AMEX のいずれかである必要があります。ほかの種類は、有効ではありません。
MessageManager | Context | エラー メッセージを取得するために無効なクレジット カード エラー定数 (pur_badcc) を使う MessageManager オブジェクトへの参照です。

書き込まれる値

ValidateCCNumber コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
_Purchase_Errors | この SimpleList オブジェクトにエラー メッセージが書き込まれます。

エラー

ValidateCCNumber コンポーネントは、エラーの発生時にエラー レベル 2 (OPPERRORLEV_WARN) を返します。

コンポーネントは、_Purchase_Errors コレクションにエラー メッセージを書き込みます。コンポーネントは MessageManager オブジェクトを使って、ユーザー警告メッセージ テキストを取得します。

定数 | 状態
pur_badcc | クレジット カードの有効期限が切れているか、番号が無効です。

解説

ValidateCCNumber コンポーネントは、order.cc_type キーに指定されたクレジット カードの種類がこのコンポーネントで受け入れられる種類であるかどうかを初めに判断します。有効な種類は、VISA、MasterCard、American Express、Discover、および略語の MC と AMEX です。

ValidateCCNumber コンポーネントは、order._cc_expmonth キーと order._cc_expyear キーに格納されている値を調べて、クレジット カードの有効期限が切れていないことを確認します。

カードが有効な種類である場合、コンポーネントは次に order._cc_number キーに格納されている番号でチェックサムを実行し、その番号の書式が正しいことを確認します。たとえば、指定されたクレジット カードの種類が Discover の場合、書式の正しい番号は、3 で始まり、16 文字で構成されている必要があります。

関連項目

MessageManager オブジェクト


VerifyMessageBody

このコンポーネントを使って、ダイレクト メール メッセージの本文を確認します。

このコンポーネントはパイプライン エディタで VerifyMessageBody として表示されますが、ProgID は Commerce.DMLVerifyMessageBody です。

使用目的 : ダイレクト メーラー パイプライン、電子メール送信ステージ

構成値

なし。

読み取られる値

VerifyMessageBody コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
rcp_bypass | Order | Boolean です。True の場合、コンポーネントは処理をバイパス (省略) します。
user_flags | Order | 確認対象のメッセージ要素を示すビット マスクです。現在は一番右のビットだけが使われています。
cdo_result | Order | Microsoft Windows 2000 の最新の Collaboration Data Objects (CDO) 処理の結果コード (HRESULT) です。
cdo_message | Context | CDO メッセージ オブジェクト (CDO.Message) への参照です。

書き込まれる値

VerifyMessageBody コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
rcp_bypass | Boolean です。エラーが存在する場合にほかのコンポーネントがそれ以降の処理をバイパスするように、True が設定されます。

解説

VerifyMessageBody コンポーネントは、ユーザー フラグのセット (user_flags) に基づいて、メッセージ本文を確認します。現在のコンポーネントでは、一番右のビットだけがテストされます。1 に設定されている場合、コンポーネントはメッセージ本文が空白であることを確認します。ユーザー フラグが設定されていない場合や、cdo_result キーが S_OK ではない場合、コンポーネントは何も実行しません。

コンポーネントは、アタッチメントとその数が正しいことも確認します。

本文が空白で、アタッチメントがない場合、このコンポーネントは rcp_bypass キーを True に設定します。

関連項目

AddAttachments

ComposeDMLMessage

CreateUPMCookie

SendPrecomposedMessage

ThrottleDMLPerformance

VerifyRecipientData


VerifyRecipientData

このコンポーネントを使って、ダイレクト メール メッセージの受信者についてのデータを確認します。

このコンポーネントはパイプライン エディタで VerifyRecipientData として表示されますが、ProgID は Commerce.DMLVerifyRecipientdata です。

使用目的 : ダイレクト メーラー パイプライン、受信者の前処理ステージ

構成値

なし。

読み取られる値

VerifyRecipientData コンポーネントは、指定されたディクショナリから次の値を読み取ります。

キー | ディクショナリ | 説明
rcp_bypass | Order | Boolean です。True の場合、コンポーネントは処理をバイパス (省略) します。
rcp_email | Order | 受信者の電子メール アドレスです。
rcp_formatting | Order | 数値です。メッセージの書式です。選択できるオプションは次のとおりです。 0 既定の書式設定です。 1 テキストです。 2 MIME です。 3 MHTML です。 このキーは、既定の書式を上書きします。
default_formatting | Context | 省略可能な数値です。メッセージの既定の書式です。値は次のとおりです。 0 既定の書式設定です。 1 テキストです。 2 MIME です。 3 MHTML です。

書き込まれる値

VerifyRecipientData コンポーネントは、Order ディクショナリに次の値を書き込みます。

キー | 説明
rcp_bypass | Boolean です。受信者データに問題がある場合、このキーは True に設定されます。これによって、それ以後のコンポーネントはこの受信者をスキップまたはバイパスします。

解説

VerifyRecipientData コンポーネントは、パイプライン ディクショナリの複数の値を検査し、受信者の値を確認します。確認が 1 つでも失敗すると、rcp_bypass キーが True に設定され、パイプラインの以降のコンポーネントはその受信者をスキップします。

コンポーネントは次の確認を行います。

  • 初めに rcp_bypass キーが True であるかどうかをテストします。True の場合、コンポーネントはそれ以降何も実行しません。

  • 電子メール アドレス キー (rcp_email) が存在し、値が割り当てられていることを確認します。

  • 書式指定コード (rcp_formatting) が空であるかどうかをテストします。空の場合、コンポーネントは既定の書式を使います。

  • テキスト、MIME、または MHTML に対して書式をテストします。

VerifyRecipientData コンポーネントは、パーソナライズ情報は確認しません。ダイレクト メールの送信者がこのデータを確認する必要があります。

関連項目

AddAttachments

ComposeDMLMessage

CreateUPMCookie

SendPrecomposedMessage

ThrottleDMLPerformance

VerifyMessageBody


OLE DB Provider for Commerce Server

OLE DB プロバイダは、OLE DB API への呼び出しを受け取り、データ ソースに対してその要求を処理する、COM コンポーネントです。OLE DB Provider for Commerce Server では、2 つの機能があります。どちらの機能が使用されるかは、接続文字列で渡される Fastload プロパティによって決まります。

プロファイル システムは主に、簡単な挿入やクエリと、複数のデータ ストア間のプロファイル データを収集するプロバイダ機能に関係します。

データ ウェアハウスは、一括挿入と、子クラス作成時に自動的に親クラスをインスタンス化するプロバイダ機能に関係します。

ここでは、次のトピックについて説明します。

  • データ : OLE DB Provider for Commerce Server でサポートされるデータ型とその形式について説明します。

  • OLE DB インターフェイスのサポート : サポートされる OLE DB 2.5 のオブジェクトとインターフェイスの一覧を示します。

  • データ ウェアハウス、分析、および OLE DB プロバイダ : OLE DB Provider for Commerce Server の機能を、データ ウェアハウスと分析での使用という側面から説明します。

  • プロファイル システムと OLE DB : OLE DB Provider for Commerce Server の機能を、プロファイル システムでの使用という側面から説明します。

関連項目

ADO および SQL を使用した一括操作を実行するコード

データ ウェアハウスのスキーマ

データ ウェアハウスを操作する


データ

次のトピックでは、サポートされるデータ型とその形式について説明します。

  • Date/Time 型の形式

  • 文字列

  • サポートされるデータ型

Date/Time 型の形式

ActiveX Data Objects (ADO)、OLE DB、およびオープン データベース コネクティビティ (ODBC) のアプリケーションで INSERT ステートメントおよび UPDATE ステートメントに入力する日付を指定するときは、次のエスケープ句を使用します。時間は 24 時間形式で表し、午前と午後を示す A.M や P.M は使用しません。

  • {ts 'YYYY-MM-DD [HH:MM:SS.FFF]'} の例 : {ts '2000-10-31 23:59:59.999'}

  • {d 'YYYY-MM-DD'} の例 : {d '2000-10-31'}

  • {t 'HH:MM:SS'} の例 : {t '23:59:59'}

詳細については、SQL Books Online の「Writing International Transact-SQL Statements」を参照してください。

インポート時には、複数値を持つ Date/Time 値のメンバが 1 つでも無効であると、すべての Date/Time 値のメンバがインポートできません。

文字列

Commerce データベースでは、4000 文字までの文字列がサポートされています。データ ウェアハウスでサポートする文字列は 512 文字までなので、512 文字を超える文字列はインポート時に 512 文字で切り捨てられます。

複数値を持つ文字列の場合、要素間の区切りとしてセミコロンが必要になります。このため、インポートする文字数を計算する際は、要素の長さプラス 1 文字 (セミコロン) で計算します。

サポートされるデータ型

次の表は、OLE DB Provider for Commerce Server でサポートされる有効なデータ型を示しています。"サポート" 列は、データ型がデータ ウェアハウス、プロファイル システム、またはその両方にサポートされるかどうかを示しています。データ ウェアハウスではバイナリ データはサポートされませんが、プロファイル システムでは次の場合にサポートされます。

  • ProfileService オブジェクトまたは Recordset オブジェクトを使ってアクセスする場合。

  • ProfileService オブジェクトまたは Recordset オブジェクトを使って修正する場合。
TypeName | サポート | 説明
BINARY | プロファイル システム | バイナリ
BOOL | 両方 | ブール値 (0 または 1)
CURRENCY | 両方 | 64 ビット通貨
DATE | 両方 | 標準日付
DATETIME | 両方 | SQL 日付/時刻
FILETIME | データ ウェアハウス | 標準のファイル日付/時刻スタンプ
FLOAT | プロファイル システム | 4 バイトの浮動小数点数
IDENTITY | データ ウェアハウス | 48 ビット数値識別子
IDENTITY6 | データ ウェアハウス | 48 ビット数値識別子
IMAGE | プロファイル システム | 128 KB バイナリ データ
INT64 | データ ウェアハウス | 64 ビット整数
LONG | データ ウェアハウス | 32 ビット整数
LONGREAL | データ ウェアハウス | 64 ビット浮動小数点数
LONGTEXT | プロファイル システム | 長さ 4000 文字の Unicode 文字列
なし | データ ウェアハウス | 空の型
NULL | データ ウェアハウス | 値なし
NUMBER | プロファイル システム | 4 バイトの整数
REAL | データ ウェアハウス | 32 ビット浮動小数点数
SHORT | データ ウェアハウス | 16 ビット整数
STRING | プロファイル システム | 標準文字列
TIME | データ ウェアハウス | 標準時刻
UINT64 | データ ウェアハウス | 64 ビット符号なし整数
ULONG | データ ウェアハウス | 32 ビット符号なし整数
UUID | データ ウェアハウス | グローバル一意識別子 (GUID) に使われるパック 10 進数
WORD | データ ウェアハウス | 16 ビット符号なし整数
WSTR | データ ウェアハウス | 長さ 255 文字の Unicode 文字列
WSTR8、WSTR12、 WSTR16、WSTR24、WSTR32、WSTR48、WSTR64、WSTR80、WSTR96、WSTR112、WSTR128、WSTR144、WSTR160、WSTR255、WSTR400、WSTR512 | データ ウェアハウス | 指定された長さの Unicode 文字列
WSTR1K、WSTR2K、WSTR4K | プロファイル システム | 指定された長さの Unicode 文字列


OLE DB インターフェイスのサポート

次の表は、OLE DB Provider for Commerce Server でサポートされる OLE DB 2.5 のオブジェクトとインターフェイスの一覧です。

オブジェクト | インターフェイス | サポート
バインダ | IBindResource | あり
 | ICreateRow | あり
 | IDBBinderProperties | あり
 | ISupportErrorInfo | なし
コマンド | IAccessor | あり
 | IColumnsInfo | なし
 | IColumnsRowset | なし
 | ICommand | あり
 | ICommandPersist | なし
 | ICommandPrepare | なし
 | ICommandProperties | あり
 | ICommandText | あり
 | ICommandWithParameters | なし
 | IConnectionPointContainer | なし
 | IConvertType | なし
 | IDBAsynchStatus | なし
 | IDBInitialize | なし
 | ISupportErrorInfo | なし
データ ソース | IConnectionPointContainer | なし
 | IDBAsynchStatus | なし
 | IDBCreateSession | あり
 | IDBDataSourceAdmin | なし
 | IDBInfo | なし
 | IDBInitialize | あり
 | IDBProperties | あり
 | IDBResetProperties | なし
 | IPersist | あり
 | IPersistFile | なし
 | ISupportErrorInfo | あり
エラー | IErrorInfo | あり
 | IErrorRecords | あり
複数結果 | IMultipleResults | あり
行 | IColumnsInfo | あり
 | IColumnsInfo2 | あり
 | IConnectionPointContainer | なし
 | IConvertType | あり
 | ICreateRow | あり
 | IDBAsynchStatus | なし
 | IDBInitialize | なし
 | IGetSession | あり
 | IRow | あり
 | IRowChange | あり
 | IRowSchemaChange | なし
 | IScopedOperations | なし
 | ISupportErrorInfo | なし
行セット | IAccessor | あり
 | IChapteredRowset | なし
 | IColumnsInfo | あり
 | IColumnsRowset | なし
 | IConnectionPointContainer | なし
 | IConvertType | あり
 | IDBAsynchStatus | なし
 | IDBInitialize | なし
 | IGetRow | なし
 | IRowset | あり
 | IRowsetChange | なし
 | IRowsetChapterMember | なし
 | IRowsetFind | なし
 | IRowsetIdentity | なし
 | IRowsetIndex | なし
 | IRowsetInfo | あり
 | IRowsetLocate | なし
 | IRowsetRefresh | なし
 | IRowsetScroll | なし
 | IRowsetUpdate | なし
 | IRowsetView | なし
 | ISupportErrorInfo | なし
セッション | IAlterIndex | なし
 | IAlterTable | なし
 | IBindResource | なし
 | IConnectionPointContainer | なし
 | ICreateRow | あり
 | IDBASynchStatus | なし
 | IDBCreateCommand | あり
 | IDBInitialize | なし
 | IDBSchemaRowset | なし
 | IGetDataSource | あり
 | IIndexDefinition | なし
 | IOpenRowset | あり
 | ISessionProperties | あり
 | ISupportErrorInfo | あり
 | ITableDefinition | なし
 | ITransaction | なし
 | ITransactionJoin | なし
 | ITransactionLocal | なし
 | ITransactionObject | なし


データ ウェアハウス、分析、および OLE DB プロバイダ

ここでは、OLE DB Provider for Commerce Server の機能を、データ ウェアハウスおよび分析での使用という側面から説明します。

次のトピックについて説明します。

  • URL のバインド : Row オブジェクトにバインドするために使うコマンドを説明します。

  • データ ウェアハウスの接続文字列 : OLE DB Provider for Commerce Server によって認識される接続文字列を説明します。

  • Delete 構文 : データ ウェアハウスからデータを削除するための構文を説明します。

  • スキーマの変更 : データ ウェアハウスの論理スキーマに変更をコミットするために必要な手順を説明します。


URL のバインド

OLE DB Provider for Commerce Server には、Uniform Resource Locator (URL) の名前付け規則を使って OLE DB の Row オブジェクトに対する直接バインドをサポートする、Binder オブジェクトが実装されています。

次の表は、バインド可能なカスタム URL の一覧です。"ClassNames" が URL の名前と返されたレコード内のフィールドの名前の両方であることに注意してください。

URL | 説明
ClassNames | すべてのクラス名のコレクションを含む ClassNames フィールドを持つレコードを返します。
DimensionNames | すべてのディメンション クラス名のコレクションを含む ClassNames フィールドを持つレコードを返します。
FactNames | すべてのファクト クラス名のコレクションを含む ClassNames フィールドを持つレコードを返します。
RelationNames | すべてのクラス関係名のコレクションを含む ClassNames フィールドを持つレコードを返します。

例

Microsoft Visual Basic の次の例は、各ファクト クラスの名前を表示します。Microsoft Visual Basic Scripting Edition (VBScript) では、rec("ClassNames") が文字列型の Variant の配列ではなく、文字列の配列を返すため、この機能は利用できません。

Dim rec, conn, savNames, sName
Set rec = CreateObject("ADODB.Record")
Set conn = CreateObject("ADODB.Connection")

conn.Open "URL=mscop://INPROCCONNECT/Server=servername:" & _
 "Database=dbname:Catalog=dwschema:fastload=true:" & _
 "user=username:password=******"

rec.Open "FactNames", conn

savNames = rec("ClassNames")

For Each sName In savNames
   MsgBox sName
Next

rec.Close
Set rec = Nothing
Set conn = Nothing


データ ウェアハウスの接続文字列

OLE DB Provider for Commerce Server では、データ ウェアハウスで使用できる接続文字列として、次の 2 種類を認識します。

  • "URL=mscop://InProcConnect/Server=myserver:Database=dbname:
    Catalog=DWSchema:User=userid:Password=********:FastLoad=True"

  • "Provider=commerce.dso.1;Data Source=mscop://InProcConnect/Server=myserver:
    Catalog=DWSchema:Database=dbname:User=userid:
    Password=********:FastLoad=True"

カタログの名前は必ず "DWSchema" にします。

Fastload オプションは必ず True に設定して、バイナリ データを使用できなくします。


Delete 構文

ここでは、データ ウェアハウスからデータをプログラムによって削除するための構文を説明します。

データ ウェアハウスの全データを削除したり、TaskHistoryID プロパティに基づいて Web ログのインポート データを削除したりするために、データ削除データ変換サービス (DTS) タスクが用意されています。データ削除 DTS タスクの詳細については、「データ ウェアハウスからデータを削除する」を参照してください。

Delete 構文を次に示します。

   DELETE [FROM] BaseClassName
      [WITH (DELETEORPHANS | ONLYFACT | UPDATECHILDREN)]
      [WHERE where_clause]

BaseClassName

削除するデータを含むクラスの名前です。

DELETEORPHANS

削除操作によって生じた孤立クラスを削除することを指定します。孤立クラスは、どの親クラスにも参照されていない子クラスのインスタンスです。

ONLYFACT

FACT テーブルとしてマークされた BaseClassName の子だけを削除することを指定します。

UPDATECHILDREN

BaseClassName に子があれば、それを更新することを指定します。

where_clause - memberpath [NOT] operator testvalue [AND where_clause]

memberpath - [BaseClassName.][pathelements]MemberName

pathelements - (ParentName|RelationToParentName).[pathelements]

ParentName - memberpath での直前のクラスの親クラスの名前です。

RelationToParentName - 親クラスとそのベース クラスの関係の名前です。

MemberName - memberpath の右端のクラス メンバの名前です。

where_clause でテストするクラス メンバを指定します。

operator - 次の演算子のいずれかです。

= | <> | < | > | <= | <= | LIKE | IS LIKE | IS NULL | IS IN | NOT NULL
 | != | !>= | !<= | !> | !< | NOT LIKE | IS NOT LIKE | IS NOT NULL | IS NOT IN | NOT IN

testvalue - value、IN valuelist、NULL のいずれかです。

value - where_clause で MemberName に対してテストする値です。

valuelist - カンマで区切られた value のリストです。リストはかっこで囲みます。

Delete 構文の例

Set cmdDel = WScript.CreateObject("ADODB.Command.2.5")

cmdDel.CommandText = "DELETE FROM Request"
cmdDel.CommandText = "DELETE FROM Request
                         WHERE RequestNum > 2"
cmdDel.CommandText = "DELETE FROM Date
                         WHERE DTimestamp > '1998-10-29 00:00:00'"
cmdDel.CommandText = "DELETE FROM Date
                         WITH UPDATECHILDREN"
cmdDel.CommandText = "DELETE FROM Date
                         WITH DELETEORPHANS"
cmdDel.CommandText = "DELETE FROM Date
                         WITH UPDATECHILDREN
                         WHERE DTimestamp > '1998-10-29 00:00:00'"
cmdDel.CommandText = "DELETE FROM Date
                         WITH DELETEORPHANS
                         WHERE Date.DTimestamp > '1998-10-29 00:00:00'"
cmdDel.CommandText = "DELETE FROM Visit
                         WHERE DTimestamp > 1998-10-29 00:00:00'"
cmdDel.CommandText = "DELETE FROM Visit
                         WHERE DTimestamp
                            IN ('1999-10-29 00:00:00',
                                '1999-10-30 00:00:00')"
cmdDel.CommandText = "DELETE FROM Request
                         WHERE Request.Loguser.IPRef.Hostname = " & _
                           "'1.1.1.1'"
cmdDel.Execute


スキーマの変更

論理スキーマを拡張するには、スキーマ変更モードをオンすることによって、OLE DB Provider for Commerce Server にそのことを通知する必要があります。スキーマ変更モードになると、既存のスキーマへの変更はできなくなります。変更を中間テーブルに保存するかどうかは、__Commit 属性によって決まります。CommitSchema コマンドは、セッションでの変更を実際のスキーマ テーブルに保存します。ただし、すべての変更が評価にパスする必要があります。

スキーマを拡張するには、次の操作を行います。

  1. SchemaMode 属性を 1 に設定することにより、スキーマ変更モードをオンにします。

  2. 対象とするスキーマ テーブル (ClsDef、MemDef など) に新しいインスタンスを作成します。

  3. 必要に応じて属性を設定します。

  4. __Commit 属性を使って、新しい行の保存を設定します。

  5. Update メソッドを使って、変更した行を保存します。

  6. 追加する行のそれぞれについて、手順 2 ～ 5 を繰り返します。

  7. CommitSchema コマンドを実行して、セッションでの変更をコミットします。

  8. SchemaMode 属性を 0 (ゼロ) に設定することにより、スキーマ変更モードをオフにします。

コミット

__Commit 属性によって、行に挿入されたデータが保存されるかどうか、保存される場合それがいつかが決まります。

OLE DB Provider for Commerce Server の高速読み込みモードで行データを設定する場合、データはバッファに保存されます。Flush (現在の行を保存しない) と Save and Flush という 2 つの値により、データはデータベースに対して明示的に (および同期的に) フラッシュされます。

読み込みの多い C++ アプリケーションでは、行を再利用することをお勧めします。通常、アプリケーションは、OLE DB 2.6 バインダ インターフェイスを通して空の行のインスタンスを作成し、列データを設定し、データをコミットし、行を解放します。Reuse Row 値を使うと、行を解放して新しい行を再作成しなくても、同じ行を繰り返し再利用できます。

行を再利用するには、行の列データを設定してから、__Commit 列の値を 0x201 (Save と Reuse) に設定します。__Commit 列の設定に成功すると、行の列データを再設定し、再利用できるようになります。

__Commit 属性を 0 に設定する場合と同じように、Ignore 値でも行にデータが保存されませんが、この場合は行が再利用できます。

次の表は、__Commit 属性に関して有効な値の一覧で、それぞれについて簡単に説明しています。

操作 | 値 | 説明
Discard | 0x00 | 行を破棄します。
Save | 0x01 | 現在の行を保存します。
Flush | 0x02 | バッファをフラッシュします。__Commit 列だけが設定されている行に対してのみ呼び出します。
Save and Flush | 0x04 | 現在の行を保存して、バッファをフラッシュします。
Ignore | 0x100 | 行を保存しないようにします。
Reuse Row | 0x200 | 再バインドせずに、行を複数回再利用します。


プロファイル システムと OLE DB

ここでは、OLE DB Provider for Commerce Server の機能を、プロファイル システムでの使用という側面から説明します。

次のトピックについて説明します。

  • 複数のデータ ソースの収集 : 複数のデータ ソースから収集されたオブジェクトを操作するための、OLE DB Provider for Commerce Server の機能を説明します。

  • プロファイル システムの接続文字列 : OLE DB Provider for Commerce Server によって認識される接続文字列を説明します。

  • SQL クエリ : 複数のデータ ソースから収集されたオブジェクトを操作するために使う、ANSI SQL のサブセットを説明します。


複数のデータ ソースの収集

ここでは、複数の異なるデータ ソースからのプロファイル オブジェクトのデータを 1 つの同種の OLE DB Row オブジェクトに収集するための、プロバイダの機能を説明します。

データ収集層は、プロファイル オブジェクト データの指定されたプロパティのフェッチ、新しいプロファイル オブジェクトの挿入、プロファイル オブジェクトの削除、プロファイル オブジェクト データの指定されたプロパティの更新、および複数のデータ ストアに対して並行して検索クエリを実行したときの結果の結合を扱います。

データ収集層では、次の種類のデータ ソースがサポートされています。

  • Microsoft Active Directory

  • Microsoft SQL Server 7.0

  • 次がサポートされている基幹業務 (LOB) ストア
    • ANSI SQL の簡単な公開サブセットをサポートする OLE DB プロバイダ/オープン データベース コネクティビティ (ODBC) プロバイダ。

    または

    • Lightweight Directory Access Protocol バージョン 3 (LDAPv3) に準拠したディレクトリ ストア。

データ収集層は、Active Directory および SQL Server 7.0 のストアに対して、パフォーマンスとスケーラビリティが最適化されています。

データ収集層は、4 つのコンポーネントとして実装されます。

  • 収集層。この層は、OLE DB Provider for Commerce Server の一部です。

  • ディレクトリ コンポーネント。

  • Microsoft SQL Server 7.0 コンポーネント。

  • LOB ストア コンポーネント。

収集層は、要求を各収集データ ストアに適したサブ要求に分割し、これらのストアを担当するコンポーネントに渡すことによって、要求を処理します。


プロファイル システムの接続文字列

OLE DB Provider for Commerce Server では、プロファイル システムで使用できる接続文字列として、次の 2 種類を認識します。

  • "URL=mscop://InProcConnect/Server=myserver:Database=dbname:
    Catalog=Profile Definitions:User=userid:Password=*******"

  • "Provider=commerce.dso.1;Data Source=mscop://InProcConnect/Server=myserver:Database=dbname:
    Catalog=Profile Definitions:User=userid:Password=*******"

URL に基づいた形式の方をお勧めします。

カタログの名前は必ず "Profile Definitions" にします。

プロファイル システムでは、Fastload オプション (既定値は False) は使用しません。


SQL クエリ

ここでは、複数のデータ ソースから収集されたオブジェクトを操作するために使う、ANSI SQL 言語のサブセットを説明します。

SQL クエリの構文

制限

SQL クエリの構文

次のコード例では、OLE DB Provider for Commerce Server でサポートされる SQL クエリの構文を示します。

SELECT select_list FROM class_name
   [WHERE search_condition]
   [ORDER BY order_expression]

select_list ::= * | member_name*
search_condition ::= in_exression | predicate |
                     predicate AND search_condition
in_expression ::= member_name IN ( value1, … , valueN )
predicate ::=
      member_name { = | <> | > | >= | < | <= | LIKE } value |
      member_name IS [NOT] NULL
order_expression::= member_name*

INSERT [INTO] class_name member_list VALUES value_list

member_list ::= member_name | member_name , member_list
value_list ::= value | value , value_list

UPDATE class_name SET member_value_list WHERE search_condition

member_value_list ::= member_value | member_value , member_value_list
member_value ::= member_name = value
DELETE [FROM] class_name WHERE search_condition

制限

クエリの構文には、次の制限が適用されます。

  • すべてのクエリにおいて、すべてのメンバは完全修飾名で指定されている必要があります。

  • Active Directory では、より小さい (<) またはより大きい (>) の演算子はサポートされていません。詳細については、「RFC 2254, "The String Representation of LDAP Search Filters"」を参照してください。

  • Active Directory に複数のプロパティが保存されている場合、これらのプロパティによって並べ替えることはできません。

  • Membership Directory は並べ替えをサポートしていません。

  • 印字できない文字はサポートされません。

  • SELECT クエリからの結果は、元になるデータ ストアがデータを返す順番で返されます。

  • WHERE 句または ORDER BY 句のメンバは、同じデータ ストアに属している必要があります。WHERE 句と ORDER BY 句の両方がある場合、両方の句のすべてのメンバが同じデータ ストアにマップする必要があります。

  • WHERE 句では、Number (Integer、Float)、文字列、Currency、Date、Time、または Date/Time の各データ型について単一の値だけがサポートされます。

  • LIKE 句では、% を通してのみ、ワイルドカード検索をサポートします。LIKE 句のメンバは、文字列型である必要があります。

  • 複数の値を持つプロパティの区切り文字にはセミコロン (;) が使用されます。このため、複数の値を持つプロパティの値にセミコロンを含むことはできません。

  • INSERT コマンドと UPDATE コマンドでは、複数の値を持つプロパティ値が使用できます。次に、複数の値を持つプロパティを使用する例を示します。
    INSERT INTO UserObject (Name, Interests)
VALUES ('Joe', ('Basketball', 'Baseball'))

UPDATE UserObject
SET (Interests = ('Basketball', Baseball'))
WHERE Name = 'Joe'


ビジネス デスク リファレンス

Commerce Server ビジネス デスクには、サード パーティの開発者が独自の機能を内部に追加できるフレームワークが用意されています。フレームワークにはさまざまな性質があり、それらは次のように分類することができます。

  • 新しいモジュールを認識させるための洗練された手段。

  • データの表示と操作を行うためのインターフェイスを標準化するための、数多くの HTML コンポーネント (HTC)。

  • モジュール開発のための標準インフラを提供する、多くの定数、グローバル変数、およびユーティリティ ルーチン。

ここでは、ビジネス デスク フレームワークが持つこれらの性質について、リファレンス形式で詳しく説明します。

新しいビジネス デスク モジュールの構築に関する概念的な説明については、「ビジネス デスク モジュールを構築する」を参照してください。

ビジネス デスクの外観を制御するカスケード スタイル シートについては、「スタイル シート リファレンス」を参照してください。

ここでは、次のトピックについて説明します。

  • XML 構造 : ビジネス デスクにおいて、モジュール、カタログ、および HTC の構成を行うために使われる拡張マークアップ言語 (XML) 構造について説明します。ここには、各 XML 構造の詳細を示した XML リファレンス セクションへのリンクが用意されています。

  • HTML コンポーネント : ビジネス デスクでデータの表現と操作のために使われる、HTML コンポーネントについて説明します。ここには、これらの HTC に関連付けられた各種のプロパティ、メソッド、およびイベントについて詳しく説明し、それらの構成情報の構造を説明した XML リファレンスの各トピックへのリンクが用意されています。

  • インクルード ファイル : 定数、グローバル変数、および多くのビジネス デスク フレームワークを構成するユーティリティ ルーチンが定義されているインクルード ファイルについて説明します。これらのファイルのそれぞれについて、どのようなときにインクルードし、どのようなときにインクルードしないかを解説しています。

  • 定数 : さまざまなビジネス デスク インクルード ファイルで定義されている、定数について説明します。クライアント側スクリプトで利用できる定数と、サーバー側スクリプトで利用できる定数を示します。

  • グローバル変数 : さまざまなビジネス デスク インクルード ファイルで定義されている、グローバル変数について説明します。クライアント側スクリプトで利用できるグローバル変数と、サーバー側スクリプトで利用できるグローバル変数を示します。

  • ユーティリティ ルーチン : さまざまなビジネス デスク インクルード ファイルで定義されているルーチンについて説明します。クライアント側スクリプトで利用できるルーチンと、サーバー側スクリプトで利用できるルーチンを示します。

  • ビジネス デスクをデバッグする : HTC とフレームワーク ルーチンに組み込まれているデバッグ支援機能について説明しています。


XML 構造

Commerce Server ビジネス デスクのフレームワークと HTML コンポーネント (HTC) では、特定の構造を持つ定義済み拡張マークアップ言語 (XML) をさまざまな場面で利用しています。次の表は、これらの XML 構造の概要、および「ビジネス デスクの XML 構造」にあるより詳しい情報へのリンクを示しています。

XML 構造 | 説明
マスター構成ファイル | ほかのすべてのモジュール構成ファイルを 1 つに集成する、マスター構成ファイルの XML 構造です。
モジュール構成ファイル | 個々のモジュールの詳細を指定する、モジュール構成ファイルの XML 構造です。
標準 XML データ レコード形式 | データを表現するために、多くの HTC で必要となる XML 構造です。これらの HTC としては、DynamicTable、EditField、EditSheet、ListEditor、および ListSheet があります。
DynamicTable の構成 | DynamicTable HTC の構成情報の XML 構造です。
EditField の構成 | 1 つ以上の EditField HTC の構成情報の XML 構造です。
EditSheet の構成 | EditSheet HTC の構成情報の XML 構造です。
ExpressionBuilder の構成 | ExpressionBuilder HTC の構成情報の XML 構造です。
ListEditor の構成 | ListEditor HTC の構成情報の XML 構造です。
ListSheet の構成 | ListSheet HTC の構成情報の XML 構造です。
QueryBuilder の構成 | QueryBuilder HTC の構成情報の XML 構造です。
TreeView の構成 | TreeView HTC で使われる、集成済みデータと構成情報の XML 構造です。


HTML コンポーネント

Commerce Server のビジネス デスク フレームワークには、いくつもの HTML コンポーネント (HTC) が用意されています。これらの HTC は、Commerce Server に含まれているモジュールで幅広く使われています。すべてのモジュールの外観と操作性に統一感を持たせるために、新しいビジネス デスク モジュールでもできる限りこれらの HTC を使ってください。

ここでは、次のトピックについて説明します。

  • DynamicTable : 表形式のデータを編集するための HTC について説明します。この HTC では、表示中の列のみ編集できるようになっています。レコードの編集は、列見出しの上にある特別な行で実行します。

  • EditField : さまざまなデータ型の個々のデータ項目を編集するために使う HTC について説明します。このコントロールは、テーブルの個々のセルを編集する機能を持たせるために、ほかの表形式コントロールに埋め込まれた形でよく使われます。

  • EditSheet : ほかのデータ編集用 HTC を 1 つにまとめるために使う HTC について説明します。

  • ExpressionBuilder : 対象を指定するために使う、名前付き式を作成するための HTC について説明します。ExpressionBuilder HTC では、埋め込み版の QueryBuilder HTC を利用します。

  • ListEditor : 表形式のデータを編集するための HTC について説明します。この HTC では、リストを含むテーブルの下にある個々のテーブルで、それぞれのレコードを編集します。レコード編集に使うテーブルでは、リスト テーブルに表示されたフィールド以外のフィールドを編集することができます。ListEditor HTC では、埋め込み版の EditSheet HTC と ListSheet HTC を利用しています。

  • ListSheet : レコードのリストを表示するための読み取り専用 HTC について説明します。この HTC を使うと、1 つ以上のレコードを選択し、編集することができます。編集自体は、常にほかの HTC の内部で実行されます。

  • QueryBuilder : 簡単なクエリを作成するために使う HTC について説明します。

  • TreeView : 展開可能なツリー構造を表示するための HTC について説明します。このツリー構造によって、移動と選択の手段を提供します。


DynamicTable

DynamicTable HTML コンポーネント (HTC) は、データ テーブルを表示するためのコンポーネントです。このテーブルでは、行はレコードを表し、列はレコードが持つ特定のフィールドを表しています。テーブル内の各列の上に配置されているのが、EditField HTC です。この EditField HTC により、選択したレコードが持っている、対応するフィールドを編集できるようになっています。キーとして指定された列は、1 番目の列として表示されます。残りの列は、構成データに指定した順序で表示されます。

DynamicTable HTC では、ListEditor HTC とは異なり、テーブルの列に表示されたデータしか編集できません。ListEditor HTC と同様に、DynamicTable HTC は結果を XML リスト ドキュメントとして返します。

データは、XML データアイランドの形式で DynamicTable HTC に渡されます。このデータアイランドには、データ列の表示名などの構成データが含まれています。データ自体も、別の XML データアイランドの中に格納されます。構成データは、各種の HTC が持つそれぞれに固有の特性に応じて決まるので、HTC ごとに異なります。それとは対照的に、データ自体は、本質的にはどれも同じ構造です。1 つ以上のレコードがあり、それぞれのレコードの中にはデータ フィールドが含まれています。このため、ほとんどの HTCは、汎用できる形式に変換された同一形式のデータを受け付けるようになっています。このデータ形式の詳細については、「クライアント用データを入手する」を参照してください。

注

  • DynamicTable HTC の高さは、カスタマイズ可能なスタイル シート ファイルである Bizdesk.css の内部にある設定を変更することで変更できます。".dtTableStyle DIV.dtContainer" というスタイル設定を検索し、既定で "70" になっている HEIGHT 設定を目的の値に変更してください。

ここでは、次のトピックについて説明します。

  • OverX 機能 : DynamicTable HTC でサポートされている OverX 機能について説明します。

  • イベント : DynamicTable HTC でサポートされているイベントについて説明します。

  • プロパティ : DynamicTable HTC でサポートされているプロパティについて説明します。

  • メソッド : DynamicTable HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : DynamicTable HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : MetaXML コンテナ属性の値として使われる ID を介して DynamicTable HTC に渡すデータについて説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで DynamicTable HTC のインスタンスを作成する方法を示します。


OverX 機能

DynamicTable HTC の OverX 機能は、主に Commerce Server ビジネス デスクの送付方法モジュール内で使うことを想定しています。OverX 機能はきわめて特殊な機能であり、厳しい制約があるため、ほかのページでの利用には向いていません。

すべての行に対して設定されている最大値よりもキーの値のほうが大きい場合、ビジネス デスクの送付方法モジュールは、送付方法データ テーブル内の特殊な行を使って送料を計算します。

たとえば、注文の小計に応じて送料を設定する送付方法では、次のような送料になります。

  • 小計が 0 ～ 5.00 ドルの場合は 0.50 ドル

  • 小計が 5.00 ～ 20.00 ドルの場合は 2.00 ドル

  • 小計が 20.00 ～ 50.00 ドルの場合は 5.00 ドル

  • 小計が 50.00 ドルを超える場合は 10.00 ドル

小計が 50.00 ドルを超えた場合の料金設定に、DynamicTable HTC の OverX 機能が使われます。"over $50.00" 行の小計の値は、基になるデータ内では "-1" で表現されます。

この機能には、次のような制約があります。

  • DynamicTable HTC を有効にするには、OverX 行のすべてのフィールドが必須です。これは、注文処理パイプラインの送付コンポーネントが正しく機能するためには、この行にデータが存在しなければならないからです。

  • OverX 行は、常にテーブル内の最後の行として表示されます。

  • OverX 機能を正しく動作させるためには、キーで並べ替えを行うように DynamicTable HTC を設定する必要があります。これは、キーが昇順になっていて、かつ、テーブル内で最大のキーよりも大きいキー値を持つすべての項目の値を表す OverX 行で最大になっているという前提条件があるためです。

  • OverX 行をコントロールに表示すると、キー フィールドは "Over X" と表示されます。X は、テーブル内で OverX 行の上にある最後の行の値 (ほかの行がない場合は 0) です。

  • DynamicTable HTC から XMLList オブジェクトが返される場合、OverX 行のキーには常に "-1" が格納されます。

  • OverX 行は内部では "-1" という値で表現されるので、OverX 機能を使う DynamicTable HTC のキー値は 0 以上の数値にする必要があります。OverX 機能を使う場合、Date、Time、Text、Boolean、および Select のキー フィールドはサポートされません。

  • OverX 機能が有効な場合は、コントロールに渡された元のデータに OverX 行が表現されていない場合でも、OverX 行が追加されます。これは、OverX 行が必須であるためです。


イベント

DynamicTable HTC は次のイベントをサポートしています。

  • OnChange

  • OnError

  • OnRequire

  • OnValid

OnChange

OnChange イベントは、ユーザーが [Done] ボタンまたは [Remove] ボタンをクリックしたときに発生します。

イベント オブジェクト プロパティ window.event.XMLlist は、record 要素内に state 属性を含む標準 XMLlist オブジェクト階層です。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

OverX 機能を使っている場合、OverX レコードのキーの値は "-1" になります。OverX 機能の詳細については、「OverX 機能」を参照してください。

トップに戻る

OnError

OnError イベントは、HTC が開発者エラー状態に遭遇した場合に発生します。HTC 内の m_bDebug 変数が True に設定されている場合は、このほかに警告ボックスも表示されます。このスイッチが特に役立つのは、"コントロールを読み込めませんでした。" というエラー メッセージを受け取った後に、発生した問題に対処するためのデバッグを行うときです。

エラーの詳細は、このイベント オブジェクト プロパティ window.event.error に記録されます。

トップに戻る

OnRequire

OnRequire イベントは、リストが必須から不要に変化した場合、または不要から必須に変化した場合に発生します。

HTC 構成データ内の global 要素の required 属性が "Yes" に設定されており、かつテーブル表示に行が存在しない場合には、イベント オブジェクト プロパティ window.event.required が True に設定されます。それ以外の場合は False に設定されます。

OverX 機能を使っている場合は、OverX 行が完全に満たされていない限り、テーブルに行があってもテーブルが必要です。OverX 機能の詳細については、「OverX 機能」を参照してください。

トップに戻る

OnValid

OnValid イベントは、ユーザーが行の編集を開始すると常に発生し、編集が完了したときにもう一度発生します。

このイベント オブジェクト プロパティ window.event.valid は、イベントの発生時には False に設定されます。これは行が編集中であるためです。編集を完了すると、つまり [Cancel] ボタンまたは [Accpet] ボタンをクリックすると、値は True になります。

このように設定することで、ユーザーが編集している間は HTC が保存されないようにします。

トップに戻る


プロパティ

DynamicTable HTC は次のプロパティをサポートしています。

  • dirty

  • required

  • XMLlist

dirty

dirty プロパティは、行が追加、削除、または編集されていた場合には True を返し、それ以外の場合は False を返します。

このプロパティは読み取り専用です。

トップに戻る

required

required プロパティは、HTC が必須とマークされていて、かつテーブル表示に現時点で行が存在しない場合には True を返し、それ以外の場合は False を返します。

OverX 機能を使っている場合は、OverX 行が完全に満たされていない限り、テーブル表示に行が存在しても required プロパティは False になります。OverX 機能の詳細については、「OverX 機能」を参照してください。

このプロパティは読み取り専用です。

トップに戻る

XMLlist

XMLlist プロパティは標準の XMLlist オブジェクト階層で、HTC が現在使用中のリストが含まれるほか、record 要素内に state 属性が含まれています。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

このプロパティは読み取り専用です。

トップに戻る


メソッド

DynamicTable HTC は次のメソッドをサポートしています。

  • cleanup

  • field

cleanup

cleanup メソッドは、state 属性に削除済みとマークされているレコードをすべて削除し、残りのレコードすべての state 属性をクリアします。

例 : elDynamicTable.cleanup

トップに戻る

field(sFieldId)

field メソッドは、DynamicTable HTC に埋め込まれている特定の EditField HTC を取得します。EditField HTC は、必須パラメータである sFieldId パラメータの値によって識別されます。このパラメータは、MetaXML データアイランドにある fields 要素の 1 つの子要素の id 属性の値によって指定されます。

返された HTMLElement には、EditField HTC が添付されています。パラメータがどの id 属性とも一致しない場合は、Null が返されます。

返された HTMLElement を使うと、EditField HTC の任意のプロパティおよびメソッドにアクセスできます。

例 : set elEditField = elDynamicTable.field(sFieldId)

トップに戻る


コンテナ属性

DynamicTable HTC にデータを渡すには、DynamicTable の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

DataXML

この属性の値は、表示対象データが含まれている XML データアイランドの id 属性の値に設定する必要があります。

MetaXML

この属性の値は、DynamicTable HTC のインスタンスに関する構成情報が含まれている XML データアイランドの id 属性の値に設定する必要があります。


構成データ

DynamicTable HTC の構成情報は、XML データアイランドの形式で DynamicTable HTC に渡す必要があります。この情報の主な構成要素は、表示されるそれぞれの列の詳細です。たとえば、列のデータ型、列見出しに使う名前、DataXML データアイランド内の対応するデータに使う要素名などです。このほかには、New 処理や Remove 処理を利用できるかどうかなど、いくつかのグローバル構成情報があります。

この XML データアイランドの構造の詳細については、「DynamicTable の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での DynamicTable HTC のインスタンス化について、一般的な例を示しています。Class 属性は、DynamicTable HTC の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で DynamicTable HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

DataXML 属性と MetaXML 属性は、ドキュメント内の別の場所で定義されている、データと構成データアイランドをそれぞれ指定します。Language 属性は、DynamicTable HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、DynamicTable HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。

最後に、DynamicTable HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myDynamicTable'
       Class='DynamicTable'
       Language='VBScript'
       DataXML='DataIslandID'
       MetaXML='MetaDataIslandID'
       OnChange='ChangeHandler()'
       OnError='ErrorHandler()'
       OnRequire='RequireHandler()'
       OnValid='ValidHandler()'
  >Loading DynamicTable, please wait...</DIV>


EditField

EditField HTML コンポーネント (HTC) は、単純なデータ型を編集するための手段を提供します。指定した制限事項に基づいて、入力が評価されます。EditField HTC はさまざまな形態で利用されます。DynamicTable、EditSheet、ListEditor などの HTC に埋め込んだり、ページ上で独立して使ったりします。入力の評価はコントロールに組み込まれています。

データは、XML データアイランドの形式で EditField HTC に渡されます。このデータアイランドには、評価した入力の最小値と最大値を提供する構成データが含まれています。データ自体も、別の XML データアイランドの中に格納されます。構成データは、各種の HTC が持つそれぞれに固有の特性に応じて決まるので、HTC ごとに微妙に異なります。それとは対照的に、データ自体は、本質的にはどれも同じ構造です。1 つ以上のレコードがあり、それぞれのレコードの中にはデータ フィールドが含まれています。このため、ほとんどの HTCは、汎用できる形式に変換された同一形式のデータを受け付けるようになっています。このデータ形式の詳細については、「クライアント用データを入手する」を参照してください。

ここでは、次のトピックについて説明します。

  • データ型 : EditField HTC でサポートされている各種のデータ型について説明します。データ型ごとに異なっている、コントロールについても説明します。

  • イベント : EditField HTC でサポートされているイベントについて説明します。

  • プロパティ : EditField HTC でサポートされているプロパティについて説明します。

  • メソッド : EditField HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : EditField HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : MetaXML コンテナ属性の値として使われる ID を介して EditField HTC に渡すデータについて説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで EditField HTC のインスタンスを作成する方法を示します。


データ型

EditField HTC は、指定したデータ型に基づいて、データを編集するためのさまざまなユーザー インターフェイスを提供します。データの基本型は、そのデータの構成情報を指定する要素の名前で指定します。一部の基本型は、内部処理形式も持っていることがあります。

EditField HTC は、次のデータ型、コントロール タイプ、および内部処理形式をサポートします。

  • Boolean

  • Date

  • Numeric (Currency)

  • Numeric (Float)

  • Numeric (Integer)

  • Select

  • Text (long)

  • Text (Password)

  • Text (Short)

  • Time

Boolean

左側にチェック ボックスがあり、何らかの状態について説明したラベルが後に続くボックスです。この値は、チェック ボックスがオンの場合は True になり、チェック ボックスがオフの場合は False になります。このコントロールは、チェック ボックスがオンの場合に値を返すだけの HTML のチェック ボックス コントロールとは異なり、チェック ボックスがオンの場合は常に 1 を返し、オフの場合は常に 0 を返します。

トップに戻る

Date

構成可能ないくつかの定義済み書式のうち、いずれかの書式で日付を格納しているボックスです。日付を入力するためのプロンプトを持つこともあります。ボックスの右端には下向き矢印の付いたボタンがあり、このボタンを押すと、日付を選択するためのカレンダー コントロールが表示されます。有効期間の検証に使う開始日付と終了日付を指定することができます。

トップに戻る

Numeric (Currency)

Currency 型値、またはCurrency 型値を入力するためのプロンプトを持つボックスです。Currency 型値は、構成可能ないくつかの書式のうち、いずれかの書式を使って入力できます。書式が無効である場合は、入力として受け付けられないか、エラーとして捕捉されます。有効性の検証に使う最小と最大の Currency 型値を指定することができます。

トップに戻る

Numeric (Float)

10 進数を持っているか、または数値を入力するためのプロンプトを持っているボックスです。10 進数は、構成可能ないくつかの書式のうち、いずれかの書式を使って入力できます。書式が無効である場合は、入力として受け付けられないか、エラーとして捕捉されます。有効性の検証に使う最小と最大の 10 進数を指定することができます。

トップに戻る

Numeric (Integer)

自然数を持っているか、または数値を入力するためのプロンプトを持っているボックスです。自然数は、構成可能ないくつかの書式のうち、いずれかの書式を使って入力できます。書式が無効である場合は、入力として受け付けられないか、エラーとして捕捉されます。有効性の検証に使う最小と最大の自然数を指定することができます。

トップに戻る

Select

選択肢の中から 1 つの数値を選択できる、または選択のためのプロンプトを持つボックスです。ボックスの右端には下向き矢印の付いたボタンがあり、このボタンを押すと、選択可能な項目を提示するドロップダウン リストが表示されます。通常の HTML 選択肢コントロールとは違って、このコントロールはウィンドウ表示されないため、Dynamic Hypertext Markup Language (DHTML) を使って描画することができます。

データが選択肢リストの項目を指定していない場合は、プロンプトが表示されます。

トップに戻る

Text (long)

改行文字を入力できる、スクロール可能な 4 行のテキスト ボックスです。最大長と最小長を指定することができます。

文字マスクを指定して、特定の形式に従った入力を強制する際の有効性確認に使うことができます。文字マスクを指定しない場合は、既定の文字マスクが使われます。

長いテキストを表現する正規表現では、<、>、& という文字は既定では入力できません。

^[^<>&]*$

トップに戻る

Text (Password)

改行文字を入力できない 1 行テキスト ボックスです。パスワードを隠すために、入力した文字はボックス内ではアスタリスク (*) で表示されます。最大長と最小長を指定することができます。

文字マスクを指定して、特定の形式に従った入力を強制する際の有効性確認に使うことができます。文字マスクを指定しない場合は、既定の文字マスクが使われます。

パスワード テキストを表現する正規表現では、<、>、& という文字は既定では入力できません。

^[^<>&]*$

トップに戻る

Text (Short)

改行文字を入力できない 1 行テキスト ボックスです。最大長と最小長を指定することができます。

文字マスクを指定して、特定の形式に従った入力を強制する際の有効性確認に使うことができます。文字マスクを指定しない場合は、既定の文字マスクが使われます。

短いテキストを表現する正規表現では、<、>、& という文字は既定では入力できません。

^[^<>&]*$

トップに戻る

Time

24 時間制の HH:MM という書式で表現された時刻を格納しているボックスです。時刻を入力するためのプロンプトを持っていることもあります。有効性の確認に使う開始時刻と終了時刻を指定することができます。

トップに戻る


イベント

EditField HTC は次のイベントをサポートしています。

  • OnBrowse

  • OnChange

  • OnError

  • OnRequire

  • OnValid

OnBrowse

OnBrowse イベントは、入力ボックスの右側の [Browse] ボタンがクリックされた場合に発生します。[Browse] ボタンが有効になり、表示されるのは、onbrowse 属性または browse 属性のどちらかを設定して、参照が有効になっている場合に限られます。

イベント オブジェクト プロパティ window.event.value には、EditField HTC の現在の値が含まれます。

どの EditField タイプでも、[Browse] ボタンを持つように構成したり、カスタム参照機能を利用できるあらゆるコンポーネントを持つように構成したりできますが、通常、[Browse] ボタンは特定の EditField タイプのみに関連付けることがほとんどです。たとえば、Boolean のフィールドに [Browse] ボタンが必要になることは、まずありません。

トップに戻る

OnChange

OnChange イベントは、EditField HTC 内の値が変化した後、フォーカスを失った場合に発生します。EditField HTC が無効になっている場合には、このイベントは発生しません。

トップに戻る

OnError

OnError イベントは、EditField HTC が開発者エラー状態に遭遇した場合に発生します。EditField HTC 内の m_bDebug 変数が True に設定されている場合は、このほかに警告ボックスも表示されます。このスイッチが特に役立つのは、"コントロールを読み込めませんでした。" というエラー メッセージを受け取った後に、発生した問題に対処するためのデバッグを行うときです。

エラーの詳細は、このイベント オブジェクト プロパティ window.event.error に記録されます。

トップに戻る

OnRequire

OnRequire イベントは、EditField HTC が必須から不要に変化した場合、または不要から必須に変化した場合に発生します。

EditField HTC が必須として構成されていて、かつ空である場合、イベント オブジェクト プロパティ window.event.required は True に設定されます。それ以外の場合は False に設定されます。このイベントは、EditField HTC の表示スタイル プロパティが "none" に設定され、EditField HTC が非表示になっている場合には発生しません。

トップに戻る

OnValid

OnValid イベントは、EditField HTC が有効から無効に変化した場合、または無効から有効に変化した場合に発生します。

EditField HTC 内の値が有効である場合は、イベント オブジェクト プロパティ window.event.valid が True に設定されます。それ以外の場合は False に設定されます。このイベントは、EditField HTC の表示スタイル プロパティが "none" に設定され、EditField HTC が非表示になっている場合には発生しません。

トップに戻る


プロパティ

EditField HTC は次のプロパティをサポートしています。

  • dirty

  • disabled

  • displayvalue

  • options

  • prompt

  • readonly

  • required

  • selected

  • valid

  • value

dirty

dirty プロパティは、EditField HTC 内の値が変更されたかどうかを記録します。有効な値は True と False です。値が True の場合は、EditField HTC の値が変更されていることを表し、False の場合は変更されていないことを表します。

このプロパティは読み取り専用です。

トップに戻る

disabled

disabled プロパティは、EditField HTC が無効にされているかどうかを記録します。有効な値は True と False です。値が True の場合は、EditField HTC が無効にされていることを表し、False の場合は無効にされていないことを表します。

無効にされたコントロールは、テキスト入力部分やボタン部分があればそれらも含めて淡色表示され、入力を受け付けなくなります。

このプロパティは読み取りと書き込みが可能です。

トップに戻る

displayvalue

displayvalue プロパティは、現在の値の表示名を格納します。このプロパティにアクセスする必要があるのは、EditField HTC のタイプが Select である場合だけです。

このプロパティは読み取り専用です。

トップに戻る

options

options プロパティは、反復ループで使う選択肢要素 (HTML の Div 要素) のコレクションを格納します。このプロパティにアクセスする必要があるのは、EditField HTC のタイプが Select である場合だけです。

このプロパティは読み取り専用です。

トップに戻る

prompt

prompt プロパティは、EditField HTC に値がない場合に表示するプロンプトを設定したり、プロンプトを取得したりするために使います。

Select の EditField HTC によってプロンプトが表示されるのは、どの選択肢オプションにも現在値が関連付けられていない場合に限られます。

prompt プロパティは、既定では EditField のタイプごとにそれぞれ別の既定値を持っています。プロンプトが不要な場合には、prompt プロパティに空の文字列を設定します。

このプロパティは読み取りと書き込みが可能です。

トップに戻る

readonly

readonly プロパティは、EditField HTC が読み取り専用に設定されているかどうかを記録します。有効な値は True と False です。値が True の場合は、EditField HTC が読み取り専用に設定されていることを表し、False の場合は読み取り専用に設定されていないことを表します。

読み取り専用コントロールの背景色は灰色になり、そのコントロールにボタン部分がある場合は非表示になります。

このプロパティは読み取りと書き込みが可能です。

トップに戻る

required

required プロパティは、EditField HTC にユーザー入力が必要かどうかを記録します。必須入力は、必須 (required) として構成し、既定の値を指定しないことによって定義します。有効な値は True と False です。値が True の場合、ユーザー入力が必須であることを示します。値が False の場合は、ユーザー入力が必須ではないことを示します。

空の値を持つ必須コントロールは、背景色が黄色になります。

このプロパティの値が変更されると、必ず OnRequire イベントが発生します。

このプロパティは読み取り専用です。

トップに戻る

selected

selected プロパティは、選択肢リスト内で現在選択されている選択肢要素 (HTML の Div 要素) を返します。このプロパティにアクセスする必要があるのは、EditField HTC のタイプが Select である場合だけです。

このプロパティは読み取り専用です。

トップに戻る

valid

valid プロパティは、構成情報によって課せられている制約と照らし合わせて、EditField の現在値が有効であるかどうかを記録します。有効な値は True と False です。値が True の場合は現在値が有効であることを表し、False の場合は現在値が無効であることを表します。

無効な値を持つコントロールは、フォーカスを失った後に背景色が黄色になります。

このプロパティの値が変更されると、必ず OnValid イベントが発生します。

このプロパティは読み取り専用です。

トップに戻る

value

value プロパティは、現時点で EditField に値がある場合に、その値を格納します。

このプロパティの値が変更された後に EditField HTC がフォーカスを失うと、OnChange イベントが発生します。

このプロパティは読み取りと書き込みが可能です。

トップに戻る


メソッド

EditField HTC は次のメソッドをサポートしています。

  • addItem

  • focus

  • reload

  • removeItem

  • resetDefault

addItem(sValue, sDisplayValue)

addItem メソッドは、ドロップダウン リストに新しい選択肢を追加するために使います。コントロール タイプを Select に設定していない場合は、このメソッドを呼び出さないでください。

必須パラメータ sValue には、新しい項目の基本値を指定します。必須パラメータ sDisplayValue には、新しい項目の表示値を指定します。

このメソッドには戻り値がありません。

トップに戻る

focus

focus メソッドは、EditField HTC にフォーカスを設定してその内容を選択します。ただし、コントロールが無効になっていないことが条件です。EditField のタイプが Select の場合は、ドロップダウン ボタンがフォーカスを取得し、そのボックスの内容は選択されません。

EditField HTC の構成で browsereadonly 属性が "Yes" に設定されている場合も、同様の動作になります。[Browse] ボタンがフォーカスを取得し、そのボックスの内容は選択されません。

このメソッドはパラメータをとらず、戻り値もありません。

トップに戻る

reload(sDataID)

reload メソッドは、選択肢を提示するドロップダウン リストにある、一連のさまざまな列挙値をもう一度読み込むために使います。コントロール タイプを Select に設定していない場合は、このメソッドを呼び出さないでください。

パラメータ sDataID には、MetaXML コンテナ属性で指定されたデータアイランド内のフィールドを指定します。新しい一連の列挙値は、ここから取得されます。

このメソッドには戻り値がありません。

トップに戻る

removeItem(sValue)

removeItem メソッドは、ドロップダウン リストから選択肢を削除するために使います。コントロール タイプを Select に設定していない場合は、このメソッドを呼び出さないでください。

必須パラメータ sValue には、削除する項目の基本値を指定します。

このメソッドには戻り値がありません。

トップに戻る

resetDefault

resetDefault メソッドは、コントロールの値をリセットして既定値に戻すために使います。

このメソッドには戻り値がありません。

トップに戻る


コンテナ属性

EditField にデータを渡すには、EditField の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

DataXML

この属性の値は、表示対象データが含まれている拡張マークアップ言語 (XML) データアイランドの id 属性の値に設定する必要があります。EditField HTC は、常に DataXML データアイランドにある最初のレコードのフィールドの値にアクセスし、それを表示します。

MetaXML

この属性の値は、DynamicTable HTC のインスタンスに関する構成情報が含まれている XML データアイランドの id 属性の値に設定する必要があります。

ID

この属性の値は、EditField HTC のインスタンスに対応する MetaXML データアイランド内の fields 要素の、いずれかの子要素の id 属性の値に設定する必要があります。

子要素は、設定された Boolean、Date、Numeric、Select、Text、および Time のいずれかになります。これは、EditField HTC のタイプを設定する要素の型です。

ID 属性の値も、DataXML データアイランドの最初のレコード内にある、対応するデータを含む要素の名前と同じになります。


構成データ

EditField HTC の構成情報は、XML データアイランドの形式で EditField HTC に渡す必要があります。この情報の主な構成要素は、表示されるそれぞれの列の詳細です。たとえば、列のデータ型、検証に使う最小長や最大長、DataXML データアイランド内の対応するデータに使われる要素名などです。

構成 XML データアイランドは、複数の EditField の構成情報を持つことができます。ID コンテナ属性を使うことで、EditField HTC の各インスタンスに使う EditField 構成情報を識別できます。

この XML データアイランドの構造の詳細については、「EditField の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での EditField HTC のインスタンス化について、一般的な例を示しています。Class 属性は、EditField の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で EditField HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

DataXML 属性と MetaXML 属性は、ドキュメント内の別の場所で定義されている、データおよび構成データのデータアイランドをそれぞれ指定します。ID 属性が指定している値は、MetaXML データアイランド内にある fields 要素の特定の子要素の id 属性に割り当てられている値と同じものです。この ID 属性は、DataXML データアイランド内にある、対応するデータ値を格納するための要素の名前として使う文字列でもあります。Language 属性は、EditField HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、EditField HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。OnBrowse イベント ハンドラを定義する必要があるのは、[Browse] ボタンを使うように EditField HTC を構成している場合だけです。

最後に、EditField HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myEditField'
       Class='EditField'
       Language='VBScript'
       DataXML='DataIslandID'
       MetaXML='MetaDataIslandID'
       ID='FieldIdInMetaXML'
       OnChange='ChangeHandler()'
       OnError='ErrorHandler()'
       OnRequire='RequireHandler()'
       OnBrowse='BrowseHandler()'
       OnValid='ValidHandler()'
  >Loading EditField, please wait...</DIV>


EditSheet

EditSheet HTML コンポーネント (HTC) は、編集ページで必要になる各種の機能を提供します。書式設定されたテーブルの中に、編集可能なフォームを表示することができます。また、構成データに指定された順序に従って、フィールドも表示されます。編集可能なフォームは、任意の形式の Dynamic Hypertext Markup Language (DHTML) のテンプレートに基づいて、体裁を整えて表示することもできます。EditSheet HTC を使うと、各フィールドを細部まで制御することも可能になります。

データは、拡張マークアップ言語 (XML) データアイランドの形式で EditSheet HTC に渡されます。このデータアイランドには、データ フィールドの表示名などの構成データが含まれています。データ自体も、別の XML データアイランドの中に格納されます。構成データは、各種の HTC が持つそれぞれに固有の特性に応じて決まるので、HTC ごとに異なります。それとは対照的に、データ自体は、本質的にはどれも同じ構造です。1 つ以上のレコードがあり、それぞれのレコードの中にはデータ フィールドが含まれています。このため、EditSheet HTC を初めとするほとんどの HTCは、汎用できる形式に変換された同一形式のデータを受け付けるようになっています。このデータ形式の詳細については、「クライアント用データを入手する」を参照してください。

EditSheet HTC では、ただ 1 つのレコードが操作され、書式設定されたテーブルの中に 1 行あたり 1 つのフィールドとして表示されます。テンプレートを使う場合には、任意の書式が設定されます。

ここでは、次のトピックについて説明します。

  • イベント : EditSheet HTC でサポートされているイベントについて説明します。

  • プロパティ : EditSheet HTC でサポートされているプロパティについて説明します。

  • メソッド : EditSheet HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : EditSheet HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : MetaXML コンテナ属性の値として使われる ID を介して EditSheet HTC に渡すデータについて説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで EditSheet HTC のインスタンスを作成する方法を示します。


イベント

EditSheet HTC は次のイベントをサポートしています。

  • OnChange

  • OnError

  • OnRequire

  • OnValid

OnChange

OnChange イベントは、埋め込みフィールド内の値が変更された場合に発生します。

トップに戻る

OnError

OnError イベントは、EditSheet HTC が開発者エラー状態に遭遇した場合に発生します。HTC 内の m_bDebug 変数が True に設定されている場合は、このほかに警告ボックスも表示されます。このスイッチが特に役立つのは、"コントロールを読み込めませんでした。" というエラー メッセージを受け取った後に、発生した問題に対処するためのデバッグを行うときです。

エラーの詳細は、このイベント オブジェクト プロパティ window.event.error に記録されます。

トップに戻る

OnRequire

OnRequire イベントは、埋め込みフィールドが必須から不要に変化した場合、または不要から必須に変化した場合に発生します。

埋め込みフィールドが必須としてマークされていて、かつ値を持っていない場合、イベント オブジェクト プロパティ window.event.required は True に設定されます。それ以外の場合は False に設定されます。

トップに戻る

OnValid

OnValid イベントは、埋め込みフィールドが有効から無効に変化した場合、または無効から有効に変化した場合に発生します。

埋め込まれた EditField HTC 内の値が無効である場合は、イベント オブジェクト プロパティ window.event.valid が False に設定されます。それ以外の場合は True に設定されます。

トップに戻る


プロパティ

EditSheet HTC は次のプロパティをサポートしています。

  • dirty

  • required

  • valid

dirty

dirty プロパティは、埋め込みフィールド内の値が変更されたかどうかを記録します。有効な値は True と False です。値が True の場合は、何らかの埋め込みフィールドの値が変更されていることを表し、False の場合は変更されていないことを表します。

このプロパティは読み取り専用です。

トップに戻る

required

required プロパティは、埋め込みフィールドにユーザー入力が必要かどうかを記録します。必須入力は、必須 (required) として構成し、既定の値を指定しないことによって定義します。有効な値は True と False です。値が True の場合、ユーザー入力が必須であることを示します。値が False の場合は、ユーザー入力が必須ではないことを示します。

このプロパティの値が変更されると、必ず OnRequire イベントが発生します。

このプロパティは読み取り専用です。

トップに戻る

valid

valid プロパティは、構成情報によって課せられている制約と照らし合わせて、すべての埋め込みフィールドの現在値が有効であるかどうかを記録します。有効な値は True と False です。値が False の場合は、少なくとも 1 つの現在値が無効であることを表し、True はすべての現在値が有効であることを表します。

このプロパティの値が変更されると、必ず OnValid イベントが発生します。

このプロパティは読み取り専用です。

トップに戻る


メソッド

EditSheet HTC は次のメソッドをサポートしています。

  • field

  • focus

  • hidden

  • hide

  • resetDefault

  • resetDirty

  • show

field(sFieldId)

field メソッドは、EditSheet HTC に埋め込まれている特定のフィールド要素を取得します。フィールド要素は、必須パラメータである sFieldId パラメータの値によって識別されます。このパラメータは、MetaXML データアイランドにある fields 要素の 1 つの子要素の id 属性の値によって指定されます。

返された HTMLElement には、フィールド要素が添付されています。パラメータがどの id 属性とも一致しない場合は、Null が返されます。

返された HTMLElement を使うと、フィールド要素の任意のプロパティおよびメソッドにアクセスできます。

例 : set elEditField = elEditSheet.field(sFieldId)

トップに戻る

focus

focus メソッドは、EditSheet HTC にフォーカスを設定します。ただし、EditSheet HTC が無効になっていないことが条件です。

このメソッドには、パラメータおよび戻り値はありません。

トップに戻る

hidden(sFieldId)

hidden メソッドは、指定されたフィールドが非表示の場合には True を返し、非表示でない場合には False を返します。

フィールド要素は、必須パラメータである sFieldId パラメータの値によって識別されます。このパラメータは、MetaXML データアイランドにある fields 要素の 1 つの子要素の id 属性の値によって指定されます。

このメソッドは、標準的なテーブル レイアウトに対してのみ使うことができます。テンプレート内のフィールドが非表示かどうかを報告することはできません。

トップに戻る

hide(sFieldId)

hide メソッドは、標準的なテーブル レイアウト内のフィールドが持つラベルとコントロールを非表示にします。

フィールド要素は、必須パラメータである sFieldId パラメータの値によって識別されます。このパラメータは、MetaXML データアイランドにある fields 要素の 1 つの子要素の id 属性の値によって指定されます。

このメソッドは、標準的なテーブル レイアウトに対してのみ使うことができます。テンプレート内のフィールドを非表示にすることはできません。フィールドが非表示になっていると、フィールドの値がプログラムによって変更された場合にも onRequire イベントおよび onValid イベントは発生しません。

このメソッドには戻り値がありません。

トップに戻る

resetDefault

resetDefault メソッドは、EditSheet HTC のすべてのフィールドを既定値に戻します。dirty プロパティも False にリセットされます。

このメソッドには、パラメータおよび戻り値はありません。

トップに戻る

resetDirty

resetDirty メソッドは、dirty プロパティを False にリセットします。

このメソッドには、パラメータおよび戻り値はありません。

トップに戻る

show(sFieldId)

show メソッドは、標準的なテーブル レイアウト内のフィールドが持つラベルとコントロールを表示させます。

フィールド要素は、必須パラメータである sFieldId パラメータの値によって識別されます。このパラメータは、MetaXML データアイランドにある fields 要素の 1 つの子要素の id 属性の値によって指定されます。

このメソッドは、標準的なテーブル レイアウトに対してのみ使うことができます。テンプレート内のフィールドを表示させることはできません。

このメソッドには戻り値がありません。

トップに戻る


コンテナ属性

EditSheet HTC にデータを渡すには、EditSheet の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

DataXML

この属性の値は、表示対象データが含まれている拡張マークアップ言語 (XML) データアイランドの id 属性の値に設定する必要があります。

MetaXML

この属性の値は、EditSheet HTC のインスタンスに関する構成情報が含まれている XML データアイランドの id 属性の値に設定する必要があります。


構成データ

EditSheet HTC の構成情報は、拡張マークアップ言語 (XML) データアイランドの形式で EditSheet HTC に渡す必要があります。この情報の主な構成要素は、表示されるそれぞれの編集可能フィールドの詳細です。たとえば、フィールドのデータ型、フィールド ラベルに使う名前、DataXML データアイランド内の対応するデータに使う要素名などです。このほかには、EditSheet を初めて表示するときに開いているかどうかなど、いくつかのグローバル構成情報があります。

構成 XML データアイランドは、MetaXML データアイランドとも言います。

この XML データアイランドの構造の詳細については、「EditSheet の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での EditSheet HTC のインスタンス化について、一般的な例を示しています。Class 属性は、EditSheet の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で EditSheet HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

DataXML 属性と MetaXML 属性は、ドキュメント内の別の場所で定義されている、データとメタデータ データアイランドを指定します。Language 属性は、EditSheet HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、EditSheet HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。

最後に、EditSheet HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myEditSheet'
       Class='EditSheet'
       Language='VBScript'
       DataXML='DataIslandID'
       MetaXML='MetaDataIslandID'
       OnChange='ChangeHandler()'
       OnError='ErrorHandler()'
       OnRequire='RequireHandler()'
       OnValid='ValidHandler()'
  >Loading EditSheet, please wait...</DIV>


ExpressionBuilder

ExpressionBuilder HTML コンポーネント (HTC) を使うと、対象を指定するために使う式を簡単かつ直感的な操作で作成できます。これらの式には名前を付け、拡張マークアップ言語 (XML) の表現形式で式ストアに保存します。ExpressionBuilder HTC は、QueryBuilder HTC を利用して式を処理します。

ここでは、次のトピックについて説明します。

  • イベント : ExpressionBuilder HTC でサポートされているイベントについて説明します。

  • プロパティ : ExpressionBuilder HTC でサポートされているプロパティについて説明します。

  • メソッド : ExpressionBuilder HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : ExpressionBuilder HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : XMLCfgID コンテナ属性の値として使われる ID を介して ExpressionBuilder HTC に渡すデータについて説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで ExpressionBuilder HTC のインスタンスを作成する方法を示します。


イベント

ExpressionBuilder HTC は次のイベントをサポートしています。

  • OnComplete

  • OnError

  • OnReady

OnComplete

OnComplete イベントは、ExpressionBuilder HTC が正常に終了した時点で発生します。このイベントが発生するのは、ユーザーが [Save] ボタンまたは [Cancel] ボタンを押した後、それに対応する処理でエラーが発生しなかった場合です。

トップに戻る

OnError

OnError イベントは、ExpressionBuilder HTC のアクティブ化に失敗した場合に発生します。このイベントは、正常に終了した Activate メソッド呼び出しから復帰した後に発生することがあります。これは、アクティブ化プロセスの終盤で、予期しないエラーが発生したことを表します。

トップに戻る

OnReady

OnReady イベントは、ExpressionBuilder HTC が完全に読み込まれて初期化された場合に発生し、その ExpressionBuilder HTC のプログラム インターフェイスが使用可能な状態になっていることを示します。このイベントが発生するまで、ExpressionBuilder HTC のメソッドまたはプロパティは使用しないでください。

トップに戻る


プロパティ

ExpressionBuilder HTC は次のプロパティをサポートしています。

  • IsActive

  • IsReady

IsActive

IsActive プロパティは、ExpressionBuilder HTC が現在アクティブかどうかを表します。ExpressionBuilder HTC がアクティブな場合、このプロパティの値は True です。ExpressionBuilder HTC が "アクティブである" とは、ユーザーがこの HTC と対話できることを指します。コントロールが非アクティブの場合、値は False になります。

このプロパティは読み取り専用です。

トップに戻る

IsReady

IsReady プロパティは、ExpressionBuilder HTC が使用可能な状態であるかどうかを示します。このプロパティの値は、OnReady イベントが発生するまでは False で、イベントが発生した後に True になります。ExpressionBuilder HTC コントロールが使用可能であるかどうかの判定には、ポーリングを使います。

このプロパティは読み取り専用です。

トップに戻る


メソッド

ExpressionBuilder HTC は次のメソッドをサポートしています。

  • Activate

  • Deactivate

  • GetResults

  • Save

  • Cancel

Activate(strMode, nExprID)

Activate メソッドは、ExpressionBuilder HTC をアクティブにします。戻り値が True の場合は成功を示し、False の場合は失敗を示します。

必須パラメータ strMode は、必須パラメータ nExprID によって指定された式がある場合に適用される、式の読み込みモードを示します。有効な値は、create、createfrom、edit、および view です。strMode の値が create である場合、nExprID パラメータの値は無視されます。それ以外の場合には、nExprID パラメータの値は、式ストアにある式の ID でなければなりません。

例 :

bResult = elExpBuilder.Activate("create", -1)

Activate メソッドを呼び出した後は、IsReady イベントが発生するか、IsReady プロパティが True になるまで待機する必要があります。先に OnError イベントが発生した場合は、非同期アクティブ化エラーが発生しています。

トップに戻る

Deactivate

Deactivate メソッドは、ExpressionBuilder HTC を非アクティブにします。このメソッドはパラメータをとらず、現在の式情報はクリアされません。

トップに戻る

GetResults

GetResults メソッドは、Scripting.Dictionary オブジェクトを使って現在の ExpressionBuilder HTC の状態と結果を返します。この Dictionary オブジェクトには、次のエントリがあります。

  • SavedExpr ディクショナリ エントリは、現在の式が正常に保存された場合は True に設定され、それ以外の場合は False に設定されます。式が保存されるのは、作成と保存の処理が正常に実行された場合です。

  • ExprID ディクショナリ エントリには、処理される式の ID が含まれています。式がまだ保存されていない場合は、-1 (EXPR_INVALID) に設定されます。

  • ExprName ディクショナリ エントリには、式の編集が完了しているかどうかにかかわらず、式の現時点での名前が格納されます。

  • ExprBody ディクショナリ エントリには、式の編集が完了しているかどうかにかかわらず、式の現時点での XML 表現が格納されます。

GetResults メソッドはパラメータをとりません。

例 : oDictionary = elExpBuilder.GetResults()

トップに戻る

Save

Save メソッドは、現在の式を保存します。ただし、アクティブ化モードが view でないことが条件です。保存処理が成功した場合は True を返し、失敗した場合は False を返します。

このメソッド呼び出しは、ユーザーが [Save] ボタンをクリックすることに相当します。成功した場合は、OnComplete イベントが発生します。

トップに戻る

Cancel

Cancel メソッドは、現在の式について、保存していない編集内容を破棄し、式ビルダのユーザー インターフェイスを無効にします。このメソッドは値を返しません。

このメソッド呼び出しは、ユーザーが [Cancel] ボタンをクリックすることに相当します。ユーザーがキャンセルを中止しなかった場合は、OnComplete イベントが発生します。

トップに戻る


コンテナ属性

ExpressionBuilder HTC にデータを渡すには、ExpressionBuilder の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

XMLCfgID

この属性の値は、ExpressionBuilder HTC の構成情報が含まれている拡張マークアップ言語 (XML) データアイランドの ID に設定する必要があります。


構成データ

ExpressionBuilder HTC の構成情報は、拡張マークアップ言語 (XML) データアイランドの形式で ExpressionBuilder HTC に渡す必要があります。この情報は、一部は埋め込まれた QueryBuilder HTC 固有の構成情報、一部は ExpressionBuilder HTC 固有の構成情報で構成されたものです。QueryBuilder HTC 固有の構成情報は、ExpressionBuilder HTC には無視されます。

この XML データアイランドの構造の詳細については、「ExpressionBuilder の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での ExpressionBuilder HTC のインスタンス化について、一般的な例を示しています。Style 属性は、ExpressionBuilder の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で ExpressionBuilder HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

XMLCfgID 属性は、ドキュメント内のほかの場所で定義されている構成データアイランドを指定します。Language 属性は、ExpressionBuilder HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、ExpressionBuilder HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。

最後に、ExpressionBuilder HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myExpressionBuilder'
       Class='clsExprBldr'
       Style='behavior:url(/widgets/exprbldrHTC/ExprBldr.htc); width:100%'
       Language='VBScript'
       XMLCfgID='DataIslandID'
       OnComplete='CompleteHandler()'
       OnError='ErrorHandler()'
       OnReady='ReadyHandler()'
  >Loading ExpressionBuilder, please wait...</DIV>


ListBox

ListBox HTML コンポーネント (HTC) を使うと、ネストされた DIV 要素に対するリスト処理を簡単に実行することができます。よくある ListBox HTC の使い方は、2 つの ListBox HTC を並べて、左側の ListBox HTC に選択可能な項目のリストを表示し、右側の ListBox HTC に選択済みの項目のリストを表示するというものです。リストの間にいくつかのボタンを配置して、一方のリストから他方へと項目を移動できるようにするのが普通です。

まず、属性値およびデータ値として ListBox HTC に入れるデータを、Class 属性の ListBox の値を指定する DIV 要素内でネストした、DIV 要素に指定します。その後、適切なメソッドを使って、そのほかのデータを ListBox HTC に追加するか、ListBox HTC からデータを削除します。ListBox HTC は、Commerce Server のほかの HTC とは異なり、構成情報を提供するための XML データアイランドを用意しておく必要がありません。

ここでは、次のトピックについて説明します。

  • イベント : ListBox HTC でサポートされているイベントについて説明します。

  • プロパティ : ListBox HTC でサポートされているプロパティについて説明します。

  • メソッド : ListBox HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : ListBox HTC を含む要素に対して設定する必要がある属性について説明します。

  • 初期データ生成 : ListBox HTC に入れる初期生成データを提供する方法について説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで ListBox HTC のインスタンスを作成する方法を示します。


イベント

ListBox HTC は次のイベントをサポートしています。

  • OnChange

  • OnSelect

  • OnSelectAll

  • OnUnselect

  • OnUnselectAll

OnChange

OnChange イベントは、1 つ以上の項目がリストに追加されるか、リストから削除された場合に発生します。

このイベントに関連付けられたイベント オブジェクト プロパティはありません。

トップに戻る

OnSelect

OnSelect イベントは、1 つ以上の項目が選択された場合に発生します。

このイベントに関連付けられたイベント オブジェクト プロパティはありません。

トップに戻る

OnSelectAll

OnSelectAll イベントは、SelectAll メソッドを介してすべての項目が選択された場合に発生します。

このイベントに関連付けられたイベント オブジェクト プロパティはありません。

トップに戻る

OnUnselect

OnUnselect イベントは、項目の選択が解除された場合に発生します。

このイベントに関連付けられたイベント オブジェクト プロパティはありません。

トップに戻る

OnUnselectAll

OnUnselectAll イベントは、UnselectAll イベントを介してすべての項目の選択が解除された場合に発生します。

このイベントに関連付けられたイベント オブジェクト プロパティはありません。

トップに戻る


プロパティ

ListBox HTC は次のプロパティをサポートしています。

  • disabled

  • selected

  • text

  • value

disabled

disabled プロパティは、ListBox HTC が無効である場合は True を返し、有効である場合には False を返します。無効になっている間は、ListBox HTC は淡色表示され、Tab キーによるフォーカス切り替えからも除外されます。

このプロパティは読み取りと書き込みが可能です。

トップに戻る

selected

selected プロパティは、選択されている HTML 要素を返します。

複数選択モードになっていて複数の要素が選択されている場合でも、HTML 要素は 1 つしか返されません。返されるのは、リストで最初に選択された項目か、最後に選択された項目のどちらかです。このため、複数選択モードの場合はこのプロパティを利用しないでください。

このプロパティは読み取り専用です。

トップに戻る

text

text プロパティは、現在選択されている項目に関連付けられた表示名を返します。

複数選択モードになっていて複数の項目が選択されている場合でも、表示名は 1 つしか返されません。返されるのは、リストで最初に選択された項目の表示名か、最後に選択された項目の表示名のどちらかです。このため、複数選択モードの場合はこのプロパティを利用しないでください。

このプロパティは読み取りと書き込みが可能です。

トップに戻る

value

value プロパティは、現在選択されている項目に関連付けられた値を文字列として返します。複数選択モードの場合は、リストで最初に選択された項目または最後に選択された項目のうち、どちらかに関連付けられた値を返します。

このプロパティは読み取りと書き込みが可能です。

トップに戻る


メソッド

ListBox HTC は次のメソッドをサポートしています。

  • add

  • addItem

  • movedown

  • moveup

  • remove

  • select

  • SelectAll

  • unselect

  • UnselectAll

add(xmlNodes)

add メソッドは、必須パラメータ xmlNodes を介して渡された xmlNodes オブジェクトに含まれるデータを基にして、リストに 1 つ以上の項目を追加します。この xmlNodes オブジェクトの形式は、remove メソッドによって返されるものと同じ形式でなければなりません。このほかには、形式に関する前提条件はありません。

このメソッドは値を返しません。

このメソッドが特に役立つのは、ある ListBox HTC からほかの ListBox HTC に 1 つ以上の項目を移動するときです。

トップに戻る

addItem(sValue, sText)

addItem メソッドは、必須パラメータである sValue と sText の値を基にして、リストに 1 つの項目を追加します。sValue パラメータには新しい項目に関連付けられた値を指定し、sText パラメータには新しい項目の表示名を指定します。

このメソッドは値を返しません。

トップに戻る

movedown

movedown メソッドは、選択された項目をリスト内で 1 つ下の位置に移動します。

複数選択モードになっていて複数の項目が選択されている場合でも、選択された項目は 1 個しか移動されません。一覧にある最初または最後の項目のうち、いずれか 1 つが移動されます。このため、複数選択モードの場合はこのメソッドを利用しないでください。

このメソッドは値を返しません。

トップに戻る

moveup

moveup メソッドは、選択された項目をリスト内で 1 つ上の位置に移動します。

複数選択モードになっていて複数の項目が選択されている場合でも、選択された項目は 1 個しか移動されません。一覧にある最初または最後の項目のうち、いずれか 1 つが移動されます。このため、複数選択モードの場合はこのメソッドを利用しないでください。

このメソッドは値を返しません。

トップに戻る

remove

remove メソッドは、選択されている項目をリストからすべて削除し、それらの項目を XML 表現で返します。返される xmlNodes オブジェクトの形式は、add メソッドで必要とされる形式と同じものになります。このほかには、形式に関する前提条件はありません。

このメソッドが特に役立つのは、ある ListBox HTC からほかの ListBox HTC に 1 つ以上の項目を移動するときです。

例 : set xmlNodes = elListBox.remove

トップに戻る

select(sValue)

select メソッドは、必須パラメータ sValue と等しい値を持つ項目のうち、最初に見つかった項目を選択します。何も見つからなかった場合は、何も選択されません。これはエラーとは見なされないため、エラーが返されることはありません。

このメソッドは値を返しません。

トップに戻る

SelectAll

SelectAll メソッドは、リスト内のすべての項目を選択します。このメソッドには、パラメータおよび戻り値はありません。

トップに戻る

unselect(sValue)

unselect メソッドは、必須パラメータ sValue と等しい値を持つ項目のうち、最初に見つかった項目の選択を解除します。何も見つからなかった場合は、選択は解除されません。これはエラーとは見なされないため、エラーが返されることはありません。

このメソッドは値を返しません。

トップに戻る

UnselectAll

UnselectAll メソッドは、リスト内のすべての項目の選択を解除します。このメソッドには、パラメータおよび戻り値はありません。

トップに戻る


コンテナ属性

ListBox HTC は、Commerce Server のその他多くの HTC とは異なり、データおよび構成情報に、コンテナ属性を使って指定された拡張マークアップ言語 (XML) データアイランドを使用しません。いくつかの単純な構成については、次のコンテナ属性と追加の Class 属性値を使っています。

selection

この属性の値は、ListBox HTC で単一選択と複数選択のどちらを利用するのかを指定します。有効な値は single と multi です。既定のモードは単一選択です。

lbDisabled

"ListBox" Class 属性値に加えてこの Class 属性値を指定すると、ListBox HTC が無効になった状態で表示されるようになります。


初期データ生成

ListBox HTC では、DIV 要素を使ってデータの初期セットを指定することができます。DIV 要素は項目ごとに 1 つずつ用意し、ListBox HTC 自体を指定する DIV 要素の中にネストさせます。これらの内側の DIV 要素は、VALUE 属性を含んでいる必要があります。この属性は、リスト項目に関連付ける値を指定するための値です。また、これらの DIV 要素は、ListBox HTC 内にあるそれぞれの項目の内容を表示する文字列も含んでいる必要があります。次に示したのは、この DIV 要素の構造の例です。

  <DIV Class='ListBox'   . . . >
      <DIV VALUE='value1'>display value 1</DIV>
      <DIV VALUE='value2'>display value 2</DIV>
      . . .
      <DIV VALUE='valueN'>display value N</DIV>
  </DIV>


インスタンスの作成例

次の HTML コードは、DIV 要素内での ListBox HTC のインスタンス化について、一般的な例を示しています。最初の Class 属性値は、ListBox の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で ListBox HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

ネストされた DIV 要素では、リスト ボックスの初期データを指定しています。2 番目の Class 属性値は、リスト ボックスを最初は無効にしておくことを指定し、Selection 属性は複数選択を許可しています。Language 属性は、ListBox HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、ListBox HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。

  <DIV Class='ListBox lbDisabled'
       Language='VBScript'
       Selection='multi'
       OnChange='ChangeHandler()'
       OnSelect='SelectHandler()'
       OnSelectAll='SelectAllHandler()'
       OnUnselect='UnselectHandler()'
       OnUnselectAll='UnselectAllHandler()'>
         <DIV VALUE='value1'>display value 1</DIV>
         <DIV VALUE='value2'>display value 2</DIV>
         . . .
         <DIV VALUE='valueN'>display value N</DIV>
  </DIV>


ListEditor

ListEditor HTML コンポーネント (HTC) は、リスト領域と呼ばれるデータ テーブルを表示します。この領域では、各行が 1 つのレコードを表し、各列がレコードの特定のフィールドを表しています。このテーブルの下には、編集領域という別のテーブルがあります。この領域には最初のテーブルで選択したレコードが表示され、そのレコードを編集できるようになっています。この 2 番目のテーブルには 2 つの列があります。1 番目の列にはフィールド名が格納され、2 番目の列にはフィールド データ自体が格納されます。これらは、適切な埋め込み EditField HTC に表示されます。

データは、拡張マークアップ言語 (XML) データアイランドの形式で ListEditor HTC に渡されます。このデータアイランドには、リスト領域の列の表示名などを指定する構成データや、編集領域に表示されるフィールドの各種の特性などが含まれています。データ自体も、別の XML データアイランドの中に格納されます。構成データは、各種の HTC が持つそれぞれに固有の特性に応じて決まるので、HTC ごとに異なります。それとは対照的に、データ自体は、本質的にはどれも同じ構造です。1 つ以上のレコードがあり、それぞれのレコードの中にはデータ フィールドが含まれています。このため、ListEditor HTC を初めとするほとんどの HTCは、汎用できる形式に変換された同一形式のデータを受け付けるようになっています。このデータ形式の詳細については、「クライアント用データを入手する」を参照してください。

ListEditor HTC では、DynamicTable HTC とは異なり、リスト テーブルの列に表示されていないデータを編集できるように構成することができます。DynamicTable HTC と同様に、ListEditor HTC は結果を XML リスト ドキュメントとして返します。

ここでは、次のトピックについて説明します。

  • イベント : ListEditor HTC でサポートされているイベントについて説明します。

  • プロパティ : ListEditor HTC でサポートされているプロパティについて説明します。

  • メソッド : ListEditor HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : ListEditor HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : MetaXML コンテナ属性の値として使われる ID を介して ListEditor HTC に渡すデータについて説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで ListEditor HTC のインスタンスを作成する方法を示します。


イベント

ListEditor HTC は次のイベントをサポートしています。

  • OnCancel

  • OnChange

  • OnEdit

  • OnError

  • OnNew

  • OnValid

OnCancel

OnCancel イベントは、ユーザーが [Cancel] ボタンをクリックしたか、リスト テーブルの行の選択を解除した場合に発生します。

トップに戻る

OnChange

OnChange イベントは、ユーザーが [Done] ボタンまたは [Remove] ボタンをクリックしたときに発生します。

イベント オブジェクト プロパティ window.event.XMLlist は、record 要素内に state 属性を含む標準 XMLlist オブジェクト階層です。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

イベント オブジェクト プロパティ window.event.recordNumber には、最後に変更されたレコードの相対的な位置を表す正の整数が含まれます。この整数は 0 から始まります。

トップに戻る

OnEdit

OnEdit イベントは、編集するためにユーザーが行をクリックし、対応する値を編集領域内でフィールドに入力した場合に発生します。

イベント オブジェクト プロパティ window.event.recordNumber には、編集中のレコードの相対的な位置を表す正の整数が含まれます。この整数は 0 から始まります。

イベント オブジェクト プロパティ window.event.XMLrecord は、編集中の行に対応する標準 XMLrecord オブジェクト階層です。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

トップに戻る

OnError

OnError イベントは、ListEditor HTC が開発者エラー状態に遭遇した場合に発生します。HTC 内の m_bDebug 変数が True に設定されている場合は、このほかに警告ボックスも表示されます。このスイッチが特に役立つのは、"コントロールを読み込めませんでした。" というエラー メッセージを受け取った後に、発生した問題に対処するためのデバッグを行うときです。

エラーの詳細は、このイベント オブジェクト プロパティ window.event.error に記録されます。

トップに戻る

OnNew

OnNew イベントは、ユーザーが [New] ボタンをクリックして、編集領域のフィールドをクリアした場合に発生します。

イベント オブジェクト プロパティ window.event.recordNumber には、新しいレコードを追加中であることを表す値 -1 が格納されます。新しいレコードは、常にリストの末尾に追加されます。

イベント オブジェクト プロパティ window.event.XMLrecord は、新しい空の record 要素で構成される標準 XMLrecord オブジェクト階層です。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

トップに戻る

OnValid

OnValid イベントは、ユーザーが行の編集を開始すると常に発生し、編集が完了したときにもう一度発生します。

このイベント オブジェクト プロパティ window.event.valid は、イベントの発生時には False に設定されます。これは行が編集中であるためです。編集を完了すると、つまり [Cancel] ボタンまたは [Accpet] ボタンをクリックすると、値は True に設定されます。

このように設定することで、ユーザーが編集している間は HTC が保存されないようにします。

トップに戻る


プロパティ

ListEditor HTC は次のプロパティをサポートしています。

  • dirty

  • XMLlist

dirty

dirty プロパティは、行が追加、削除、または編集されていた場合には True を返し、それ以外の場合は False を返します。

このプロパティは読み取り専用です。

トップに戻る

XMLlist

XMLlist プロパティは標準の XMLlist オブジェクト階層で、HTC が現在使用中のリストが含まれるほか、record 要素内に state 属性が含まれています。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

このプロパティは読み取り専用です。

トップに戻る


メソッド

ListEditor HTC は次のメソッドをサポートしています。

field(sFieldId)

field メソッドは、ListEditor HTC で使われている特定のフィールド要素を取得します。フィールドは、必須パラメータである sFieldId パラメータの値によって識別されます。このパラメータは、MetaXML データアイランドにある fields 要素の 1 つの子要素の id 属性の値によって指定されます。

返された HTMLElement には、EditField HTC が添付されています。パラメータがどの id 属性とも一致しない場合は、Null が返されます。

返された HTMLElement を使うと、EditField HTC の任意のプロパティおよびメソッドにアクセスできます。

例 : set elEditField = elListEditor.field(sFieldId)


コンテナ属性

ListEditor HTC にデータを渡すには、ListEditor の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

DataXML

この属性の値は、表示対象データが含まれている XML データアイランドの id 属性の値に設定する必要があります。

MetaXML

この属性の値は、DynamicTable HTC のインスタンスに関する構成情報が含まれている XML データアイランドの id 属性の値に設定する必要があります。


構成データ

ListEditor HTC の構成情報は、拡張マークアップ言語 (XML) データアイランドの形式で ListEditor HTC に渡す必要があります。この情報は、各列および各行の詳細で構成されています。これらは、それぞれリスト領域と編集領域に表示されます。たとえば、列や行のデータ型、検証に使う最小長や最大長、DataXML データアイランド内の対応するデータに使われる要素名などです。

この XML データアイランドの構造の詳細については、「ListEditor の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での ListEditor HTC のインスタンス化について、一般的な例を示しています。Class 属性は、ListEditor の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で ListEditor HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

DataXML 属性と MetaXML 属性は、ドキュメント内の別の場所で定義されている、データと構成データアイランドを指定します。Language 属性は、ListEditor HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、ListEditor HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。

最後に、ListEditor HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myListEditor'
       Class='ListEditor'
       Language='VBScript'
       DataXML='DataIslandID'
       MetaXML='MetaDataIslandID'
       OnCancel=CancelHandler()'
       OnChange=ChangeHandler()'
       OnEdit='EditHandler()'
       OnError='ErrorHandler()'
       OnNew='NewHandler()'
       OnValid='ValidHandler()'
  >Loading ListEditor, please wait...</DIV>


ListSheet

ListSheet HTML コンポーネント (HTC) は、一覧ページにデータを表示するための主要コントロールです。主に、表示および選択のためのデータを提供する目的で使われます。構成可能な表形式でデータを表示するため、データのページ振り分けと並べ替えが可能です。複数選択を許可するように構成することも、単一選択のみ許可することもできます。

使用できるほとんどのモードにおいて、データは階層的に表示され、高レベルの情報を含む行をクリックすることで詳細の表示/非表示を切り替えることができます。矢印が右方向を指している場合は詳細が隠されていて、矢印が下を指している場合は詳細が表示されています。

データは、拡張マークアップ言語 (XML) データアイランドの形式で ListSheet HTC に渡されます。このデータアイランドには、データ列の表示名などの構成データが含まれています。データ自体も、別の XML データアイランドの中に格納されます。構成データは、各種の HTC が持つそれぞれに固有の特性に応じて決まるので、HTC ごとに異なります。それとは対照的に、データ自体は、本質的にはどれも同じ構造です。1 つ以上のレコードがあり、それぞれのレコードの中にはデータ フィールドが含まれています。このため、ListSheet HTC を初めとするほとんどの HTCは、汎用できる形式に変換された同一形式のデータを受け付けるようになっています。このデータ形式の詳細については、「クライアント用データを入手する」を参照してください。

ここでは、次のトピックについて説明します。

  • 操作モード : ListSheet HTC を使用できる各種のモードについて説明します。

  • イベント : ListSheet HTC でサポートされているイベントについて説明します。

  • プロパティ : ListSheet HTC でサポートされているプロパティについて説明します。

  • メソッド : ListSheet HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : ListSheet HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : MetaXML コンテナ属性の値として使われる ID を介して ListSheet HTC に渡すデータについて説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで ListSheet HTC のインスタンスを作成する方法を示します。


操作モード

ListSheet HTC で利用できるモードは 5 種類あり、これらは構成データの XML データアイランドの設定に基づいて構成されます。これらの 5 つのモードは、フラット リスト、同種グループ リスト、異種グループ リストという 3 つの基本タイプのいずれかに分類できます。5 つのモードの内訳は次のとおりです。

  • フラット リスト

  • 2 レベル同種グループ リスト

  • 3 レベル同種グループ リスト

  • リスト形式異種グループ リスト

  • プロパティ形式異種グループ リスト

フラット リスト

これは、ListSheet HTC の最も基本的なモードです。データは、展開/折りたたみの機能を持たない単純なテーブルとして表示されます。column 要素の id2 属性と id3 属性は使用されません。columns 要素の subobject 要素も使用されません。

このモードでは、ListSheet HTC には 1 層の DataXML データアイランドが必要です。余分な層はすべて無視されます。

トップに戻る

2 レベル同種グループ リスト

2 レベル同種グループ リストが適しているのは、表示するデータが 2 レベルあり、その両方のレベルで同じ一連の列 (特に列見出し) を使用できる場合です。

列に両方のレベルのデータを含める必要はなく、空白にしたり、そのレベルでは列にデータが必要ないことを示すデータで埋めたりできます。既存の Commerce Server ビジネス デスク モジュールには、ダッシュ記号 (-) を使ってデータのないことを表しているものがあります。

2 レベル同種グループ リストでは、columns 要素の子要素である column 要素の id2 属性を使って、DataXML データアイランド内のレコードの第 2 層にある詳細データを識別しています。subobject 要素と、その中に埋め込まれた column 要素は使われません。

このモードでは、ListSheet HTC には 2 層の DataXML データアイランドが必要です。余分な層はすべて無視されます。

トップに戻る

3 レベル同種グループ リスト

3 レベル同種グループ リストが適しているのは、表示するデータが 3 レベルあり、そのすべてのレベルで同じ一連の列 (特に列見出し) を使用できる場合です。

列に 3 つのレベルすべてのデータを含める必要はなく、空白にしたり、そのレベルでは列にデータが必要ないことを示すデータで埋めたりできます。既存の Commerce Server ビジネス デスク モジュールには、ダッシュ記号 (-) を使ってデータのないことを表しているものがあります。

3 レベル同種グループ リストでは、columns の子要素である column 要素の id2 属性と id3 属性を使って、DataXML データアイランド内のレコードの第 2 層と第 3 層にある詳細データをそれぞれ識別しています。subobject 要素と、その中に埋め込まれた column 要素は使われません。

このモードでは、ListSheet HTC には 3 層の DataXML データアイランドが必要です。サポートされている層の数は、最大で 3 層までです。

トップに戻る

リスト形式異種グループ リスト

異種リストは、グループ行の列に表示されているデータが詳細データと異なっていて、列見出しを共有することが適切でない場合に適しています。リスト形式異種グループ リストでは、詳細データは埋め込まれた ListSheet HTC と同じ形式で表示され、通常は複数のレコードが表示されます。異種リスト内の下位項目を選択することはできません。

表示される詳細データ列の説明として、subobject 要素とその column 要素が使われます。ここには、表示される詳細データの識別情報が含まれています。詳細データは、DataXML データアイランド内のレコードの第 2 層に存在します。columns 要素/column 要素の id2 属性と id3 属性は使われません。

このモードでは、ListSheet HTC には 2 層の DataXML データアイランドが必要です。余分な層はすべて無視されます。

トップに戻る

プロパティ形式異種グループ リスト

異種リストは、グループ行の列に表示されているデータが詳細データと異なっていて、列見出しを共有することが適切でない場合に適しています。プロパティ形式異種グループ リストでは、詳細データは埋め込まれた EditSheet HTC と同じ形式で表示され、単一のレコードが表示されます。異種リスト内の下位項目を選択することはできません。

表示される詳細データ行の説明として、subobject 要素とその column 要素が使われます。ここには、表示される詳細データの識別情報が含まれています。詳細データは、DataXML データアイランド内のレコードの第 2 層に存在します。columns 要素/column 要素の id2 属性と id3 属性は使われません。

このモードでは、ListSheet HTC には 2 層の DataXML データアイランドが必要です。余分な層はすべて無視されます。

トップに戻る


イベント

ListSheet HTC は次のイベントをサポートしています。

  • OnAllRowsSelect

  • OnAllRowsUnselect

  • OnError

  • OnGroupOpen

  • OnHeaderClick

  • OnNewPage

  • OnRowSelect

  • OnRowUnselect

OnAllRowsSelect

OnAllRowsSelect イベントは、[Select All] ボタンを使って全行をまとめて選択した場合に発生します。

このイベントには、イベント オブジェクト プロパティは設定されていません。

このイベントが発生したということは、現在表示されていないページの行も含めて、すべての行が選択されたことを示します。

トップに戻る

OnAllRowsUnselect

OnAllRowsUnselect イベントは、[Deselect All] ボタンを使って全行の選択をまとめて解除した場合に発生します。

このイベントには、イベント オブジェクト プロパティは設定されていません。

このイベントが発生したということは、現在表示されていないページの行も含めて、すべての行の選択が解除されたことを示します。

トップに戻る

OnError

OnError イベントは、ListSheet HTC が開発者エラー状態に遭遇した場合に発生します。HTC 内の m_bDebug 変数が True に設定されている場合は、このほかに警告ボックスも表示されます。このスイッチが特に役立つのは、"コントロールを読み込めませんでした。" というエラー メッセージを受け取った後に、発生した問題に対処するためのデバッグを行うときです。

エラーの詳細は、このイベント オブジェクト プロパティ window.event.error に記録されます。

トップに戻る

OnGroupOpen

OnGroupOpen イベントは、下位項目の行または下位オブジェクトのテーブルを表示するためにグループ行が開かれた場合に発生します。

イベント オブジェクト プロパティ window.event.XMLrecord は、開かれたグループ行に対応する標準 XMLrecord オブジェクト階層です。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

トップに戻る

OnHeaderClick

OnHeaderClick イベントは、列見出しの 1 つをクリックした場合に発生し、並べ替えルーチンを呼び出せるようにします。このイベントは、メタ データで sort 属性を "no" に設定して、並べ替えを無効にしている場合には発生しません。

このイベントが発生すると、2 つのイベント オブジェクト プロパティが設定されます。window.event.sortcol プロパティには、クリックされた見出しに対応する (columns 要素の) column 要素の id 属性の値が設定された文字列が格納されます。

注

  • XMLHTTP の並べ替え処理を利用する場合は、自動的に並べ替えが実行されるので、このイベントをトラップする必要はありません。

イベント オブジェクト プロパティ window.event.sortdir には、新しい並べ替え順序を表す asc または desc のいずれかの文字列が格納されます。asc が昇順で、desc が降順です。

トップに戻る

OnNewPage

OnNewPage イベントは、いずれかのページ移動ボタン ([First]、[Previous]、[Next]、[Last]) がクリックされたか、ページ番号が明示的に変更された場合に発生します。

注

  • XMLHTTP のページ処理を利用する場合は、自動的にページ処理が実行されるので、このイベントをトラップする必要はありません。

イベント オブジェクト プロパティ window.event.page には、表示される新しいページのページ番号を表す正の整数が格納されます。ページ番号は、0 からではなく 1 から始まります。

トップに戻る

OnRowSelect

OnRowSelect イベントは、行が選択された場合に発生します。

イベント オブジェクト プロパティ window.event.XMLrecord は、選択された行に対応する標準 XMLrecord オブジェクト階層です。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

トップに戻る

OnRowUnselect

OnRowUnselect イベントは、行の選択が解除された場合に発生します。

イベント オブジェクト プロパティ window.event.XMLrecord は、選択が解除された行に対応する標準 XMLrecord オブジェクト階層です。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

トップに戻る


プロパティ

ListSheet HTC は次のプロパティをサポートしています。

  • page

  • recordcount

  • XMLlist

page

page プロパティは、ページ コントロールに表示されるページ番号を読み書きします。

新しい page プロパティを書き込んでも、OnNewPage イベントは発生しません。つまり、新しいページに関連付けられたデータ取得関連の処理は何も実行されません。

このプロパティは読み取りと書き込みが可能です。

トップに戻る

recordcount

recordcount プロパティは、現在のレコード数の読み取りと書き込みを行います。書き込みが行われると、ListSheet HTC がページ コントロールを再計算します。

このプロパティを -1 に設定すると [Last] ボタンが無効になります。これはレコード数が不明なことを表します。

このプロパティを 0 (ゼロ)、またはページ サイズ以下の値に設定すると、ページ コントロールが非表示になります。

このプロパティは読み取りと書き込みが可能です。

トップに戻る

XMLlist

XMLlist プロパティは標準の XMLlist オブジェクト階層で、現在 HTC で使われているリストを含んでいます。詳細については、「XMLlist および XMLrecord プロパティ」を参照してください。

このプロパティは読み取り専用です。

トップに戻る


メソッド

ListSheet HTC は次のメソッドをサポートしています。

  • reload

  • selectAllRows

  • unselectAllRows

reload(sOp, sArgs)

reload メソッドは、MetaXML データアイランドに構成されている操作を使って、ListSheet HTC にデータを再び読み込みます。この種の操作 (XMLHTTP 操作) では、現在のページの再読み込みを行わずに、サーバーから新しいデータを取得し、表示します。

操作は必須パラメータ sOp によって特定されます。この sOp パラメータは、MetaXML データアイランドにある operations 要素の子要素の名前を指定します。要素名は、定義済みの操作である page、sort、sublist のいずれか、または完全なカスタム操作です。

この操作の結果として送信されるフォームは、対応する操作要素の formid 属性によって識別されます。フォームの送信先となるページは、フォームの action 属性によって指定されます。

フォームは XML 形式で送信されるので、応答ページでは、送信された XML を Dictionary オブジェクトとして取得するために、ユーティリティ ルーチン dGetRequestXMLAsDict を使う必要があります。さらに、応答ページに BDXMLHeader.asp ファイルを含める必要があります。このファイルは、response.contentType を text/xml に設定し、処理命令ノードを挿入して、XML のバージョンと文字セットを設定します。

sArgs パラメータは、URL にエンコードされたページ引数のリストを指定します。これらのページ引数は、送信されるページに渡されるものです。それに加えて、フォームのすべての子要素が、フォームの送信と共に送られます。

最後に、定義済みの操作は、定義済みの特定の引数を含めます。

  • Page 操作の場合 : op、prevpage、page、column、および direction

  • Sort 操作の場合 : op、page、column、および direction

  • SubList 操作の場合 : op および xmlrecord

このメソッドは、返された XML にエラー ノードがある場合、または何も返されなかった場合に False を返します。有効な XML レコード リストが返され、エラー ノードがなかった場合は、True を返します。

例 :

bRetVal = elListSheet.reload("double_sort")

Sort 操作は現在のページ番号を自動的に 1 にリセットし、列見出しがクリックされたときに自動的に実行されます。Page 操作は、現在のページ番号を、新しいページが要求されるいずれかの番号に自動的にリセットし、任意のページ コントロールがクリックされたとき、またはページ番号入力フィールドに新しいページ番号が入力されたときに自動的に実行されます。カスタム操作によっては、reload メソッドを呼び出す前に、そのカスタム操作の性質に基づいて、ListSheet HTC の現在のページ番号を新しい値に設定しなければならないことがあります。ListSheet HTC の page プロパティは、このために用意されています。page プロパティの詳細については、「page」を参照してください。

トップに戻る

selectAllRows

selectAllRows メソッドは、リスト内のすべての行を選択します。このメソッドはパラメータをとらず、戻り値もありません。

このメソッドは、現在表示されていないページのものを含め、すべての行を選択します。

トップに戻る

unselectAllRows

unselectAllRows メソッドは、リスト内のすべての行の選択を解除します。このメソッドはパラメータをとらず、戻り値もありません。

このメソッドは、現在表示されていないページのものを含め、すべての行の選択を解除します。

トップに戻る


コンテナ属性

ListSheet HTC にデータを渡すには、ListSheet の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

DataXML

この属性の値は、表示対象データが含まれている拡張マークアップ言語 (XML) データアイランドの id 属性の値に設定する必要があります。

ListSheet HTC に構成されている実行モードに応じて、このデータアイランドは、1 つ、または 2 つ、または 3 つの層のある record 要素を内部に持ちます。

MetaXML

この属性の値は、ListSheet HTC のインスタンスに関する構成情報が含まれている XML データアイランドの id 属性の値に設定する必要があります。


構成データ

ListSheet HTC の構成情報は、XML データアイランドの形式で ListSheet HTC に渡す必要があります。この情報の主な構成要素は、表示されるそれぞれの列の詳細です。たとえば、列のデータ型、検証に使う最小長や最大長、DataXML データアイランド内の対応するデータに使われる要素名などです。

この XML データアイランドの構造の詳細については、「ListSheet の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での ListSheet HTC のインスタンス化について、一般的な例を示しています。Class 属性は、ListSheet の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で ListSheet HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

DataXML 属性と MetaXML 属性は、ドキュメント内の別の場所で定義されている、データと構成データアイランドを指定します。Language 属性は、ListSheet HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、ListSheet HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。

最後に、ListSheet HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myListSheet'
       Class='ListSheet'
       Language='VBScript'
       DataXML='DataIslandID'
       MetaXML='MetaDataIslandID'
       OnAllRowsSelect='AllRowsSelectHandler()'
       OnAllRowsUnselect='AllRowsUnselectHandler()'
       OnError='ErrorHandler()'
       OnHeaderClick='HeaderClickHandler()'
       OnGroupOpen='GroupOpenHandler'
       OnNewPage='NewPageHandler()'
       OnRowSelect='RowSelectHandler()'
       OnRowUnselect='RowUnselectHandler()'
  >Loading ListSheet, please wait...</DIV>


QueryBuilder

QueryBuilder HTML コンポーネント (HTC) を使うと、簡単かつ直感的にクエリを作成できます。

クエリは、1 つ以上の句を論理演算子で結合して作成します。句は、1 つ以上のプロファイルに対して実行する操作または比較です。QueryBuilder HTC では現在、さまざまな種類のプロパティと演算子をサポートしています。QueryBuilder HTC でサポートされているプロパティと演算子をカスタマイズすることもできます。

クエリは拡張マークアップ言語 (XML) 形式で表現され、そのまま使ったり、実際のデータベースに対して使用可能な SQL などのほかの形式に (Extensible Stylesheet Language (XSL) による変換やほかの方法を使って) 変換したりできます。

ここでは、次のトピックについて説明します。

  • イベント : QueryBuilder HTC でサポートされているイベントについて説明します。

  • プロパティ : QueryBuilder HTC でサポートされているプロパティについて説明します。

  • メソッド : QueryBuilder HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : QueryBuilder HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : XMLCfgID コンテナ属性の値として使われる ID を介して QueryBuilder HTC に渡すデータについて説明します。

  • インスタンスの作成例 : ASP ページのスクリプトで QueryBuilder HTC のインスタンスを作成する方法を示します。


イベント

QueryBuilder HTC は次のイベントをサポートしています。

  • OnActive

  • OnError

  • OnQueryChange

  • OnReady

OnActive

OnActive イベントは、Activate メソッドが呼び出されて正常に実行された結果として QueryBuilder HTC がアクティブな状態になった場合に発生します。このイベントが最も役に立つのは、すべてのサブ コントロールのアクティブ化に成功しない限り正常にアクティブ化できないコンテナ コントロールをアクティブ化する一環として、QueryBuilder HTC をアクティブ化する場合です。

トップに戻る

OnError

OnError イベントは、QueryBuilder HTC のアクティブ化に失敗した場合に発生します。

トップに戻る

OnQueryChange

OnQueryChange イベントは、現在のクエリが変更された場合 (句が追加、削除、または変更された場合など) に発生します。

トップに戻る

OnReady

OnReady イベントは、QueryBuilder HTC が完全に読み込まれて初期化された場合に発生し、その QueryBuilder HTC のプログラム インターフェイスが使用可能な状態になっていることを示します。このイベントが発生するまでは、(Activate メソッドも含めて) QueryBuilder HTC のプロパティまたはメソッドを呼び出さないようにしてください。

トップに戻る


プロパティ

QueryBuilder HTC は次のプロパティをサポートしています。

  • IsActive

  • IsReady

IsActive

IsActive プロパティは、QueryBuilder HTC が現在アクティブかどうかを示します。このプロパティの値は、QueryBuilder コントロールがアクティブな場合、つまり、ユーザーが QueryBuilder コントロールと対話できる場合に、True になります。コントロールが非アクティブの場合、値は False になります。

このプロパティは読み取り専用です。

トップに戻る

IsReady

IsReady プロパティは、QueryBuilder HTC がプログラムでアクセスできる状態になっているかどうかを示します。このプロパティの値は、OnReady イベントが発生するまでは False で、イベントが発生した後に True になります。コントロールの準備ができているかどうかの判定には、ポーリングを使います。

このプロパティは読み取り専用です。

トップに戻る


メソッド

QueryBuilder HTC は次のメソッドをサポートしています。

  • Activate

  • Deactivate

  • GetExprBody

  • GetExprBodyXML

  • GetProfileList

  • SetExprBody

  • SetExprBodyXML

  • SetExprListXML

Activate(bEdit)

Activate メソッドは QueryBuilder HTC をアクティブにします。bEdit パラメータが True の場合は、表示されているクエリを編集できます。bEdit パラメータが False の場合は、編集できません。

このメソッドは、致命的エラーが発生した場合は False を返し、それ以外の場合は True を返します。

トップに戻る

Deactivate

Deactivate メソッドは、現在のクエリをクリアせずに、QueryBuilder HTC のユーザー インターフェイスを非アクティブにします。このメソッドはパラメータをとらず、戻り値もありません。

トップに戻る

GetExprBody

GetExprBody メソッドは、現在のクエリの XML 表現を含む文字列を返します。現在のクエリがない場合は、Null を返します。

トップに戻る

GetExprBodyXML

GetExprBodyXML メソッドは、現在のクエリを表現する XML DOMDocument オブジェクトを返します。現在のクエリがない場合は、何も返しません。

トップに戻る

GetProfileList

GetProfileList メソッドは、Microsoft Visual Basic Scripting Edition (VBScript) の SAFEARRAY を返します。この SAFEARRAY には、現在 QueryBuilder HTC に読み込まれているすべてのプロファイルの名前が含まれています。このメソッドはパラメータをとりません。

トップに戻る

SetExprBody(strExprBody)

SetExprBody メソッドは、現在のクエリを設定できます。パラメータは、設定対象のクエリを指定する XML を含んでいる 1 つの文字列だけです。クエリを正常に解析できる場合は True を返し、解析が失敗する場合は False を返します。

空の文字列または Null を渡すと、現在のクエリをクリアできます。

トップに戻る

SetExprBodyXML(xmlExprBody)

SetExprBodyXML メソッドは、現在のクエリを設定できます。パラメータは、設定対象のクエリを指定する XML DOMDocument オブジェクトだけです。クエリを正常に解析できる場合は True を返し、解析が失敗する場合は False を返します。

空の XML DOMDocument オブジェクト (つまり、"Nothing" キーワード) を渡すと、現在のクエリをクリアできます。

トップに戻る

SetExprListXML

SetExprListXML メソッドを使うと、呼び出し元は名前付きの式のリストを QueryBuilder HTC に提供でき、QueryBuilder HTC はこのリストからほかの式を作成できます。QueryBuilder HTC 自体が QueryBuilder HTC を使う場合は、通常、このメソッドは使われません。このメソッドは、主に、QueryBuilder HTC に名前付き式のリストを提供する必要がある場合に ExpressionBuilder HTC で使うために用意されているものです。

トップに戻る


コンテナ属性

QueryBuilder HTC にデータを渡すには、QueryBuilder の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

XMLCfgID

この属性の値は、QueryBuilder HTC のインスタンスに関する構成情報が含まれている拡張マークアップ言語 (XML) データアイランドの id 属性の値に設定する必要があります。

AutoActivate

この属性の値は、読み込みの完了時に QueryBuilder HTC を自動的にアクティブにするかどうかを制御します。有効な値は True と False です。値が True の場合は自動アクティブ化が行われ、False の場合は自動アクティブ化は行われません。既定値は False です。

自動アクティブ化では、表示されたクエリを編集できます。


構成データ

QueryBuilder HTC の構成情報は、拡張マークアップ言語 (XML) データアイランドの形式で QueryBuilder HTC に渡す必要があります。この情報は、QueryBuilder HTC の動作を制御する構成情報 (クエリの作成で使用可能なプロファイルやサイト用語など) から成っています。

この XML データアイランドの構造の詳細については、「QueryBuilder の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での QueryBuilder HTC のインスタンス化について、一般的な例を示しています。Style 属性は、QueryBuilder の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で QueryBuilder HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

XMLCfgID 属性は、ドキュメント内のほかの場所で定義されている構成データアイランドを指定します。Language 属性は、QueryBuilder HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、QueryBuilder HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。AutoActivate 属性がないので、Activate メソッドを明示的に呼び出す必要があります。

最後に、QueryBuilder HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myQueryBuilder'
       Class='clsQueryBldr'
       Style='behavior:url(/widgets/exprbldrHTC/QueryBuilder.htc); width:100%'
       Language='VBScript'
       XMLCfgID='DataIslandID'
       OnAction='ActionHandler()'
       OnError='ErrorHandler()'
       OnQueryChange='QueryChangeHandler()'
       OnReady='ReadyHandler()'
  >Loading QueryBuilder, please wait...</DIV>


TreeView

TreeView HTML コンポーネント (HTC) は、拡張マークアップ言語 (XML) 階層を、選択で使う展開可能なツリー構造に直接変換します。

TreeView HTC では、選択されているツリー項目とアクティブなツリー項目は区別されるので、注意が必要です。選択はユーザーに対して透過です。最後にクリックした項目がアクティブな項目であり、項目は選択されることもあれば、選択されないこともあります。選択された項目が変更されることなく、アクティブな項目がプログラムで変更される場合もあります。アクティブなノードをプログラムで設定すると、その後でいくつかのメソッド (enableActive や expandActive など) を使うのに、ノードを再指定しないで済みます。

ここでは、次のトピックについて説明します。

  • イベント : TreeView HTC でサポートされているイベントについて説明します。

  • メソッド : TreeView HTC でサポートされているメソッドについて説明します。

  • コンテナ属性 : TreeView HTC を含む要素に対して設定する必要がある属性について説明します。

  • 構成データ : DataXML コンテナ属性の値として使われる ID を介して TreeView HTC に渡すデータについて説明します。

  • インスタンスの作成例 : Active Server Pages (ASP) ページのスクリプトで TreeView HTC のインスタンスを作成する方法を示します。

TreeView HTC では、プロパティは公開されません。


イベント

TreeView HTC は次のイベントをサポートしています。

  • OnError

  • OnItemClose

  • OnItemExecute

  • OnItemOpen

  • OnItemSelect

  • OnItemUnselect

OnError

OnError イベントは、TreeView HTC が開発者エラー状態に遭遇した場合に発生します。HTC 内の m_bDebug 変数が True に設定されている場合は、このほかに警告ボックスも表示されます。このスイッチが特に役立つのは、"コントロールを読み込めませんでした。" というエラー メッセージを受け取った後に、発生した問題に対処するためのデバッグを行うときです。

エラーの詳細は、このイベント オブジェクト プロパティ window.event.error に記録されます。

トップに戻る

OnItemClose

OnItemClose イベントは、ツリー内のコンテナ項目が閉じられた場合に発生します。

イベント オブジェクト プロパティ window.event.XMLitem には、閉じられた項目の XML ノードが含まれます。

トップに戻る

OnItemExecute

OnItemExecute イベントは、ツリー内の項目がダブルクリックされた場合に発生します。

イベント オブジェクト プロパティ window.event.XMLitem には、ダブルクリックされた項目の XML ノードが含まれます。

トップに戻る

OnItemOpen

OnItemOpen イベントは、ツリー内のコンテナ項目が開かれた場合に発生します。

イベント オブジェクト プロパティ window.event.XMLitem には、開かれた項目の XML ノードが含まれます。

開かれた項目に従属要素 expand が含まれていて、そのほかの従属要素は含まれていない場合、このイベントのイベント処理ルーチンは、対応する form 要素に引数を添付する必要があります。そのイベント処理ルーチンが完了すると、TreeView HTC が sOp パラメータを expand に設定して、reload メソッドを呼び出します。次に、フォームの応答で返されたツリー データで DataXML データアイランド内の expand 要素自体が置き換えられ、ツリーのそのセクションの、遅延していた読み込みが完了します。

トップに戻る

OnItemSelect

OnItemSelect イベントは、ツリー内の項目が選択された場合に発生します。

イベント オブジェクト プロパティ window.event.XMLitem には、選択された項目の XML ノードが含まれます。

トップに戻る

OnItemUnselect

OnItemUnselect イベントは、ツリー内で選択されていた項目の選択が解除された場合に発生します。

イベント オブジェクト プロパティ window.event.XMLitem には、選択が解除された項目の XML ノードが含まれます。

トップに戻る


メソッド

TreeView HTC は次のメソッドをサポートしています。

  • areRelated

  • enableActive

  • expandActive

  • expandAll

  • hideActive

  • reload

  • selectNode

  • setActive

  • unselectAll

areRelated(sFrom, sTo)

areRelated メソッドは、必須パラメータ sFrom と sTo に指定した 2 つのツリー項目が関連しているかどうか、つまり、一方が他方から派生しているかどうかを判定するのに使います。関連している場合は True が返されます。関連していない場合は False が返されます。

パラメータ sFrom と sTo は、項目に含まれているデータか、DataXML データアイランドの caption 属性の値のどちらかです。

トップに戻る

enableActive(bEnable)

enableActive メソッドは、必須パラメータ bEnable の値に基づいて、アクティブな項目を有効にしたり無効にしたりするのに使います。bEnable パラメータで有効とされる値は、True と False です。値が True の場合、アクティブなノードが有効になります。値が False の場合は、アクティブなノードが無効になります。

トップに戻る

expandActive(bExpand)

expandActive メソッドは、必須パラメータ bExpand の値に基づいて、アクティブな項目を展開したり折りたたんだりするのに使います。bExpand パラメータで有効とされる値は、True と False です。値が True の場合、アクティブなノードが展開されます。値が False の場合は、アクティブなノードが折りたたまれます。

トップに戻る

expandAll(bExpand)

expandAll メソッドは、必須パラメータ bExpand の値に基づいて、ツリー全体を展開したり折りたたんだりするのに使います。bExpand パラメータで有効とされる値は、True と False です。値が True の場合、ツリー全体が展開されます。値が False の場合は、ツリー全体が折りたたまれます。

トップに戻る

hideActive(bHide)

hideActive メソッドは、必須パラメータ bHide の値に基づいて、アクティブな項目とその子を非表示にしたり表示したりするのに使います。bHide パラメータで有効とされる値は、True と False です。値が True の場合、アクティブなノードとその子が非表示になります。値が False の場合は、アクティブなノードとその子が表示されます。

トップに戻る

reload(sOp)

reload メソッドは、DataXML データアイランドに構成されている操作を使って、TreeView HTC にデータを再び読み込みます。

操作は必須パラメータ sOp によって特定されます。この sOp パラメータは、DataXML データアイランドにある operations 要素の子要素の名前を指定します。通常、要素名は、カスタム操作に関連付けられた任意の名前です。

例外が、expand 要素に示される特別な操作です。この特別な操作では、ツリー全体は再読み込みされません。代わりに、expand 要素の特定のオカレンスが、サーバーから返されるデータで置き換えられ、以前に閉じられたツリー セクションが結果的に展開されます。通常、このような展開は、expand 要素ごとに 1 回だけ行われます。

この操作の結果として送信されるフォームは、対応する操作要素の formid 属性によって識別されます。フォームの送信先となるページは、フォームの action 属性によって指定されます。

フォームのすべての子要素は、フォームの送信と共に送られます。

このメソッドには戻り値がありません。

例 :

elTreeView.reload("alpha_sort")

トップに戻る

selectNode(sValue)

selectNode メソッドは、必須パラメータ sValue で渡された文字列と一致するデータ値またはキャプションを持つ、ツリー内の最初の項目を選択します。一致するものが見つからない場合は、項目は選択されません。このメソッドには戻り値がありません。

トップに戻る

setActive(sValue)

setActive メソッドは、必須パラメータ sValue で渡された文字列と一致するデータ値またはキャプションを持つ項目をツリー内で探し、該当する最初の項目をアクティブな項目として設定します。一致するものが見つからない場合は、現在アクティブな項目があれば、それがアクティブのままになります。このメソッドには戻り値がありません。

トップに戻る

unselectAll

unselectAll メソッドは、ツリー内のすべての項目の選択を解除します。このメソッドはパラメータをとらず、戻り値もありません。

トップに戻る


コンテナ属性

TreeView HTC にデータを渡すには、TreeView の動作を使っている要素に対して次の属性を設定する必要があります (この要素は通常は DIV です)。

DataXML

この属性の値は、操作の構成と表示対象データの組み合わせが含まれている拡張マークアップ言語 (XML) データアイランドの id 属性の値に設定する必要があります。


構成データ

TreeView HTC では、表示するツリーを、拡張マークアップ言語 (XML) データアイランドの形式で TreeView HTC に渡す必要があります。このデータアイランドには、ツリーに表示するデータ、そのデータの表示方法に関する構成属性、および TreeView HTC のこのインスタンス用に定義されたカスタム操作に関する構成情報が含まれています。コンテナ属性 DataXML は、このデータアイランドの id 属性の値に設定されます。

TreeView HTC は、データ自体と同じデータアイランドに構成情報が統合される Commerce Server ビジネス デスク HTC にすぎないので、注意が必要です。つまり、TreeView HTC 用に指定する MetaXML コンテナ属性はありません。データと構成情報は、DataXML コンテナ属性によって指定される単一のデータアイランドで提供されます。要素はネストされるので、表示されるツリーでネスト構造を見ることができます。

TreeView HTC のデータアイランドにあるすべての要素の名前は任意です。ただし、要素名自体がユーザーに表示される場合はあります。TreeView HTC 構成内の XML の要素と属性は、大文字または小文字で表現されます。任意の要素はデータを持つことができますが、なくてもかまいません。

この XML データアイランドの構造の詳細については、「TreeView の構成」を参照してください。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。


インスタンスの作成例

次の HTML コードは、DIV 要素内での TreeView HTC のインスタンス化について、一般的な例を示しています。Class 属性は、TreeView の動作をこの DIV 要素に関連付けることを指定します。

注

  • Class 属性で TreeView HTC を適切に特定するには、ページで Bizdesk.css スタイル シートを使う必要があります。

DataXML 属性は、ツリーの構造と動作、およびツリーに定義された特別な操作を指定するデータアイランドの ID を指定します。このデータアイランドは、ドキュメント内のほかの場所で定義されている必要があります。Language 属性は、TreeView HTC のイベント ハンドラが Microsoft Visual Basic Scripting Edition (VBScript) で実装されていることを指定します。そのほかの属性は、TreeView HTC でサポートされている特定のイベントに、ほかの場所で定義されているメソッドを関連付けます。

最後に、TreeView HTC を読み込んでいることをユーザーに通知する一時テキストを指定します。

  <DIV Id='myTreeView'
       Class='TreeView'
       Language='VBScript'
       DataXML='DataIslandID'
       OnError='ErrorHandler()'
       OnItemSelect='ItemSelectHandler()'
       OnItemUnselect='ItemUnselectHandler()'
       OnItemExecute='ExecuteHandler()'
       OnItemOpen='OpenHandler()'
       OnItemClose='CloseHandler()'
  >Loading TreeView, please wait...</DIV>


インクルード ファイル

Commerce Server ビジネス デスクの Include ディレクトリには、ビジネス デスク モジュールで使う各種の機能を提供するファイルが多数あります。中には、ビジネス デスク モジュールの作成には関係のないファイルもあります。次の表は、Include ディレクトリ内のモジュール作成に関連するファイルについて簡単に説明しています。

ファイル名 | 説明
ActionPageUtil.asp | この Active Server Pages (ASP) ファイルには、ビジネス デスク フレームワークの多くの実装が含まれています。これには、モジュール開発に役立つ、サーバー側とクライアント側の両方のユーティリティ関数、定数、およびグローバル変数が含まれています。タスクバーの表示といった、汎用的な操作ページ初期化タスクも実行します。 ネストされたインクルード ファイル : BizDeskPaths.asp、HTTPXMLUtil.htm、BizDeskStrings.asp、および SharedStrings.asp。
ASPUtil.asp | この ASP ファイルには、ActionPageUtil.asp ファイルにある表示関連のコードのすべては必要としないページで役に立つ、さまざまな関数が含まれています。たとえば、サーバー側の処理を実行してから別のページへリダイレクトするページです。 このファイルには、ローカライズ可能な文字列が含まれています。 ネストされたインクルード ファイル : なし。ASPUtil.asp ファイルは、ほかのどのファイルのコードにも依存しません。
BDHALUtil.htm | この ASP ファイルには、ボタンのサイズを変更し、コントロールを選択してサイズを統一するコードが含まれています。主に、HTML ダイアログ ボックスで使うことを目的としたものです。 ネストされたインクルード ファイル : なし。BDHALUtil.asp ファイルは、ほかのどのファイルのコードにも依存しません。
BDHeader.asp | この ASP ファイルには、HTML ページのコードページ、応答ヘッダー、およびスクリプト言語を設定するコードが含まれています。このファイルは、ビジネス デスクのコンテンツ ウィンドウに HTML を表示するすべてのページで、先頭にインクルードする必要があります。 ネストされたインクルード ファイル : なし。BDHeader.asp ファイルは、ほかのどのファイルのコードにも依存しません。
BDXMLHeader.asp | この ASP ファイルには、XML を返すページのコードページ、応答ヘッダー、スクリプト言語、および XML 宣言ノードを設定するコードが含まれています。このファイルは、XMLHTTP 操作を実行するいずれかのビジネス デスク HTML コンポーネント (HTC) (たとえば、ListSheet HTC や TreeView HTC) に XML を返すすべてのページで、先頭にインクルードする必要があります。 ネストされたインクルード ファイル : なし。BDXMLHeader.asp ファイルは、ほかのどのファイルのコードにも依存しません。
BizDesk.css | このファイルは、ビジネス デスクのカスケード スタイル シートです。ビジネス デスクで使う色やフォントなどの表示に対するグローバルな変更は、このファイル内で行う必要があります。すべてのモジュール操作ページでは、このファイルをスタイル シートとして指定して、このようなグローバルな変更が適用されるようにする必要があります。新しいモジュールを追加しても、これによってビジネス デスク全体での一貫性が保持されます。
BizDeskObjects.asp | このファイルのルーチンは、内部的なフレームワークで使うことだけを目的としたものです。 このファイルには、ビジネス デスク開発者エラーについてのローカライズ可能な文字列が含まれています。これらの文字列は、アプリケーションを最初に DEVELOPER モードで読み込むときにだけ表示されます。 ネストされたインクルード ファイル : なし。BizDeskObjects.asp ファイルは、ほかのどのファイルのコードにも依存しません。
BizDeskPaths.asp | この ASP ファイルには、モジュール コードに役立つビジネス デスクのパスと Internet Information Server (IIS) 仮想ルートを格納する、多数のサーバー側グローバル変数の宣言が含まれています。これらのグローバル変数の詳細については、「サーバー側グローバル変数」を参照してください。 ネストされたインクルード ファイル : なし。BizDeskPaths.asp ファイルは、ほかのどのファイルのコードにも依存しません。
BizDeskStrings.asp | この ASP ファイルには、ビジネス デスク フレームワークで使う文字列定数の定義が含まれており、ビジネス デスク フレームワークをほかの言語に変換するために必要な作業が大幅に減ります。 特定の定数やそれに対応する文字列については、インクルード ファイル自体の中身を参照してください。それらの定数に使われている名前付け規則については、ドキュメントを参照してください。 このファイルには、ローカライズ可能な文字列が含まれています。 ネストされたインクルード ファイル : なし。BizDeskStrings.asp ファイルは、ほかのどのファイルのコードにも依存しません。
BizDeskUtil.asp | この ASP ファイルは、通常、ビジネス デスク モジュールの操作ページにインクルードします。主な用途は、ほかのいくつかのファイルをまとめてインクルードすることです。 モジュールの操作ページがビジネス デスク フレームワークの外部で参照されることを防ぐためのコードも含まれています。このコードがビジネス デスク フレームワークを検出しなかった場合、ページはビジネス デスクにリダイレクトされます。 ネストされたインクルード ファイル : DBUtil.asp、ASPUtil.asp、BDHALUtil.asp、および ActionPageUtil.asp。
DBUtil.asp | この ASP ファイルには、ActiveX Data Objects (ADO) の接続を作成し、SQL クエリを実行し、結果の Recordset オブジェクト内のデータを XML データアイランドに変換するための、多数のサーバー側関数が含まれています。ADO の定数定義も多数あります。 ネストされたインクルード ファイル : なし。DBUtil.asp ファイルは、ほかのどのファイルのコードにも依存しません。
DialogUtil.asp | この ASP ファイルは、通常、ビジネス デスク モジュールのダイアログ ページにインクルードします。主な用途は、BizDeskUtil.asp ファイル内のリダイレクト コードを使わないで、ほかのいくつかのファイルをまとめてインクルードすることです。 ネストされたインクルード ファイル : DBUtil.asp、ASPUtil.asp、BDHALUtil.asp、および ActionPageUtil.asp。
dlg_confirm.asp | この ASP ファイルは、標準の確認ダイアログ ボックスを表示するために役立ち、引数として showModalDialog DOM メソッドに渡すことができます。使用例については、ActionPageUtil.asp ファイルを参照してください。 ネストされたインクルード ファイル : BDHeader.asp、SharedStrings.asp、BizDeskStrings.asp、BizDeskPaths.asp、および ASPUtil.asp。
dlg_debug.htm | この ASP ファイルは、標準のデバッグ ダイアログ ボックスを表示するために役立ち、引数として showModalDialog DOM メソッドに渡すことができます。使用例については、HTTPXMLUtil.htm ファイルを参照してください。 ネストされたインクルード ファイル : なし。dlg_debug.htm ファイルは、ほかのどのファイルのコードにも依存しません。
dlg_error.asp | この ASP ファイルは、標準のエラー ダイアログ ボックスを表示するために役立ち、引数として showModalDialog DOM メソッドに渡すことができます。使用例については、ActionPageUtil.asp ファイルを参照してください。 ネストされたインクルード ファイル : BDHeader.asp、SharedStrings.asp、BizDeskPaths.asp、および ASPUtil.asp。
dlg_warn.asp | この ASP ファイルは、標準の警告ダイアログ ボックスを表示するために役立ち、引数として showModalDialog DOM メソッドに渡すことができます。使用例については、ActionPageUtil.asp ファイルを参照してください。 ネストされたインクルード ファイル : BDHeader.asp、SharedStrings.asp、BizDeskStrings.asp、BizDeskPaths.asp、および ASPUtil.asp。
HTTPXMLUtil.asp | この ASP ファイルには、XML ドキュメントの作成、標準的な方法でのドキュメントへのノードの追加、および XML ドキュメントと Dictionary オブジェクト間での変換のために使う、サーバー側関数が多数含まれています。XMLHTTP 応答ページへ送信された XML を取得するための関数もあります。 ネストされたインクルード ファイル : なし。HTTPXMLUtil.asp ファイルは、ほかのどのファイルのコードにも依存しません。
HTTPXMLUtil.htm | この HTM ファイルには、XML ドキュメントの作成、標準的な方法でのドキュメントへのノードの追加、および XML ドキュメントと Dictionary オブジェクト間での変換のために使う、クライアント側関数が多数含まれています。XMLHTTP 応答ページへ XML を送信する関数と、(response_session.asp 応答ページを使う) 各種のサーバー側状態ルーチンもあります。 ネストされたインクルード ファイル : なし。HTTPXMLUtil.htm ファイルは、ほかのどのファイルのコードにも依存しません。
NavTree.css | このスタイル シート ファイルはナビゲーション ペイン フレームで使われます。ほかのビジネス デスク ファイルでリンクすることを目的としたものではありません。
response_session.asp | このファイルには、XMLHTTP を介してサーバーの状態を設定、取得、クリアするために使うコードが含まれています。このファイルのルーチンは、内部的なフレームワークで使うことだけを目的としたものです。
SharedStrings.asp | この ASP ファイルには、Commerce Server 2000 の一部として配布される複数のビジネス デスク モジュール内で使われている文字列定数の定義が含まれています。このような文字列定数を集中化しておくと、それらの定数をほかの言語に変換するために必要な作業が大幅に減ります。 特定の定数やそれに対応する文字列については、インクルード ファイル自体の中身を参照してください。それらの定数に使われている名前付け規則については、ドキュメントを参照してください。 文字列や関数を共有する複数のモジュールを記述しているモジュール作成者は、共有するコードを含む別のファイルを、そのために用意されている Common フォルダに簡単に追加できます。各サード パーティで異なるバージョンが複数作成されることになるので、SharedStrings.asp ファイルにはコードを追加しないでください。 このファイルには、ローカライズ可能な文字列が含まれています。 ネストされたインクルード ファイル : なし。SharedStrings.asp ファイルは、ほかのどのファイルのコードにも依存しません。


定数

Commerce Server ビジネス デスク フレームワークでは、クライアント側とサーバー側の各種の定数が定義されています。これにより、ビジネス デスク モジュールを記述するために役立つ値をシンボリックに表現できます。モジュール開発者は、独自の同等の定数を定義したり、基になる値を直接使ったりせずに、可能な限りこれらの定数を使ってください。

ここでは、次のトピックについて説明します。

  • クライアント側定数 : ビジネス デスク フレームワークで提供されるすべてのクライアント側定数の一覧を、アルファベット順に示します。

  • サーバー側定数 : ビジネス デスク フレームワークで提供されるすべてのサーバー側定数の一覧を、アルファベット順に示します。


クライアント側定数

Commerce Server ビジネス デスク フレームワークでは、次のクライアント側定数が定義されています。

エラーの種類に関する定数 (ActionPageUtil.asp ファイルで定義)

クライアント側ルーチン ShowErrorDlg の nErrorType パラメータとして使う定数です。渡された値は、エラーの種類と、ルーチンによって表示されるエラー アイコンの種類を表しています。

定数

ERROR_ICON_ALERT、ERROR_ICON_CRITICAL、ERROR_ICON_QUESTION、ERROR_ICON_INFORMATION

Webdings フォント矢印に関する定数 (ActionPageUtil.asp ファイルで定義)

Webdings FONT-FAMILY を使って書式設定された要素の文字コード定数です。これらの定数は、上下左右の矢印に対応します。

定数

LEFT_ARROW、RIGHT_ARROW、UP_ARROW、DOWN_ARROW


サーバー側定数

Commerce Server ビジネス デスク フレームワークでは、次のサーバー側定数が定義されています。

環境モードに関する定数 (BizDeskUtil.asp ファイルで定義)

Global.asa ファイル内で MSCSEnv 変数を設定するために使う定数です。PRODUCTION モードでは、すべてのデバッグ フラグが、運用環境でビジネス デスクに使う必要がある値に設定されます。DEVELOPMENT モードでは、新しいビジネス デスク モジュールを開発する場合に役立つフィードバックと機能を向上させるデバッグ フラグが設定されます。

定数

PRODUCTION、DEVELOPMENT

エラーの種類に関する定数 (ASPUtil.asp ファイルで定義)

サーバー側ルーチン SetError の nErrorType パラメータとして使う定数です。渡された値は、エラーの種類と、ルーチンによって表示されるエラー アイコンの種類を表しています。

定数

ERROR_ICON_ALERT、ERROR_ICON_CRITICAL、ERROR_ICON_QUESTION、ERROR_ICON_INFORMATION

ADO に関する定数 (DBUtil.asp ファイルで定義)

ActiveX Data Objects (ADO) で使う定数です。

定数

詳細については、DBUtils.asp ファイルを参照してください。

日付分割に関する特別な定数 (DBUtil.asp ファイルで定義)

レコードセットと XML 間の変換を行うルーチンに渡される書式設定 Dictionary オブジェクトで使う特別な定数です。日付と時刻の各 EditField HTC で個別に編集するために、単一の ADO datatime フィールドを 2 つの別々のフィールドに分割する必要があることを示すために使います。日付部分は date_colId という拡張マークアップ言語 (XML) 要素に配置され、時刻部分は time_colId という XML 要素に配置されます。

定数

COMMERCE_SPLIT_DATE

XML 変換ルーチンに関する定数 (DBUtil.asp ファイルで定義)

レコードセットと XML 間の変換を行うルーチンの recordcount パラメータとして使う定数で、レコードセットをカウントしてはならないことを示します。

定数

TOO_BIG_TO_COUNT

ロケールに関する定数 (DBUtil.asp ファイルで定義)

DataFunctions オブジェクトの GetLocaleInfo メソッドで使う定数です。

定数

LOCALE_SDECIMAL、LOCALE_STHOUSAND


グローバル変数

Commerce Server ビジネス デスク フレームワークでは、クライアント側とサーバー側の各種のグローバル変数が定義されています。これらの変数は、ビジネス デスク モジュールを記述する場合に役立つ値に初期化されます。モジュール開発者は、同等のものを独自に作成せずに、可能な限り、これらのグローバル変数にすでに格納されている値を使ってください。

ここでは、次のトピックについて説明します。

  • クライアント側グローバル変数 : ビジネス デスク フレームワークで提供されるすべてのクライアント側グローバル変数の一覧を、アルファベット順に示します。

  • サーバー側グローバル変数 : ビジネス デスク フレームワークで提供されるすべてのサーバー側グローバル変数の一覧を、アルファベット順に示します。


クライアント側グローバル変数

Commerce Server ビジネス デスク フレームワークでは、次のクライアント側グローバル変数が定義されています。

g_bDirty

前回の保存操作以降、ページ上のフィールドで、変更されたものがあるかどうかを示す Boolean です。値が True の場合は前回の保存操作以降に変更が行われたことを、値が False の場合は変更が行われていないことを示します。

この変数は ActionPageUtil.asp ファイル内で宣言され、False に初期化されています。スコープは操作ページ自体です。

g_bRequired

ページ上のいずれかのフィールドに値の設定が必要であるかどうかを示す Boolean です。戻り値が True の場合は、まだ値を持っていない必須フィールドが少なくとも 1 つあることを示し、戻り値が False の場合は、すべての必須フィールドが値を持っていることを示します。

この変数は ActionPageUtil.asp ファイル内で宣言され、False に初期化されています。スコープは操作ページ自体です。

g_bUnloading

タスク ボタンがクリックされたことにより、ページがアンロードされることを示すために使う Boolean です。これによってフレームワークは、ビジネス デスクの [Close] ボタンをユーザーがクリックした後で表示される、Internet Explorer の通常のアンロード ページの警告を表示しないようになります。

g_bValid

ページ上のいずれかのフィールドに無効な値が含まれているかどうかを示す Boolean です。戻り値が False の場合は、1 つ以上のフィールドに有効でない値が含まれていることを示し、戻り値が True の場合はすべてのフィールドの値が有効なことを示します。

この変数は ActionPageUtil.asp ファイル内で宣言され、True に初期化されています。スコープは操作ページ自体です。

g_nFindByHeight

検索ペインの高さをピクセル単位で表す整数です。最初は 55 ピクセルに設定されています。この変数は、検索ペインを表示するために ShowFindBy ルーチンを呼び出す前に、SetFindByHeight ルーチンで設定します。


サーバー側グローバル変数

Commerce Server ビジネス デスク フレームワークでは、次のサーバー側グローバル変数が定義されています。

ALLOW_CONTEXT_MENUS

ビジネス デスク内で通常の右クリック メニューを無効にするかどうかを制御する Boolean です。値が True の場合は通常の右クリック メニューを許可し、値が False の場合は通常の右クリック メニューを禁止します。

Global.asa ファイルで変数 MSCSEnv が PRODUCTION に設定されている場合、変数 ALLOW_CONTEXT_MENUS は False に設定されます。変数 MSCSEnv が DEVELOPMENT に設定されている場合、変数 ALLOW_CONTEXT_MENUS は True に設定されます。

Application オブジェクトには、このグローバル変数と同じ名前を持つ変数が存在します。

AUTO_REDIRECT_ENABLED

ビジネス デスク フレームワークの外部で操作ページを表示できるかどうかを制御する Boolean です。値が True の場合、そのような試みはすべてビジネス デスクへリダイレクトされ、値が False の場合は、リダイレクトは行われません。

Global.asa ファイルで変数 MSCSEnv が PRODUCTION に設定されている場合、変数 AUTO_REDIRECT_ENABLED は True に設定されます。変数 MSCSEnv が DEVELOPMENT に設定されている場合、変数 AUTO_REDIRECT_ENABLED は False に設定されます。

Application オブジェクトには、このグローバル変数と同じ名前を持つ変数が存在します。

FORCE_HTA_ONLY

HTML アプリケーション (HTA) 環境の外部でビジネス デスクを実行しようとした場合にエラーを表示するかどうかを制御する Boolean です。値が True の場合、そのような実行を試みるとエラーが表示され、値が False の場合は、エラーは表示されません。

Global.asa ファイルで変数 MSCSEnv が PRODUCTION に設定されている場合、変数 FORCE_HTA_ONLY は True に設定されます。変数 MSCSEnv が DEVELOPMENT に設定されている場合、変数 FORCE_HTA_ONLY は False に設定されます。

Application オブジェクトには、このグローバル変数と同じ名前を持つ変数が存在します。

g_dActionPage

現在のページの構成情報 (ページで実装されているアクションに関連付けられたタスクなど) を含む Dictionary オブジェクトへの参照です。

このグローバル変数を通じてアクセスされる Dictionary オブジェクトは、ルーチン dGetAction を呼び出すことにより、ActionPageUtil.asp ファイル内に作成されます。この変数のスコープは操作ページ自体です。

g_imgInvalid

編集ページで値が無効なことを示すために使うアイコンを表示する HTML を含む文字列です。

g_imgLoadingAnimation

読み込み時のアニメーション アイコンを表示する HTML を含む文字列です。

g_imgRequired

編集ページで使う必須アイコンを表示する HTML を含む文字列です。

g_MSCSAdminEventLog

エラーをイベント ログへ書き込むメカニズムを提供するオブジェクト (ProgID = Commerce.AdminEventLog) への参照です。詳細については、「AdminEventLog オブジェクト」を参照してください。

この共有オブジェクトについては、Initialize メソッドを呼び出さないでください。

このグローバル変数を介してアクセスするオブジェクトは、Global.asa ファイル内で作成され、初期化されています。スコープはアプリケーションです。

g_MSCSAppConfig

アプリケーションの構成値を読み取るメカニズムを提供するオブジェクト (ProgID = Commerce.AppConfig) への参照です。詳細については、「AppConfig オブジェクト」を参照してください。

この共有オブジェクトについては、Initialize メソッドを呼び出さないでください。

このグローバル変数を介してアクセスするオブジェクトは、Global.asa ファイル内で作成され、初期化されています。スコープはアプリケーションです。

g_MSCSBizDeskRoot

ビジネス デスクの現在のインスタンスの仮想ルート名を含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。変数 MSCSBizDeskRoot を設定する Application オブジェクトの値に初期化されます。変数 MSCSBizDeskRoot は、Global.asa ファイル内で Csapp.ini ファイルから読み取られます。

g_MSCSBizDeskSecurity

ユーザーの ID に基づいてナビゲーション フレームのコンテンツをフィルタ処理するメカニズムを提供するオブジェクト (ProgID = Commerce.BizDeskSecurity) への参照です。詳細については、「BizDeskSecurity オブジェクト」を参照してください。

このグローバル変数を介してアクセスするオブジェクトは、Global.asa ファイル内で作成され、初期化されています。スコープはアプリケーションです。

g_MSCSConfiguration

サイト名を使ってインスタンスが作成され、サイト ストアから構成情報を取得するために使われるオブジェクト (ProgID = Commerce.SiteConfigReadOnly) への参照です。詳細については、「SiteConfigReadOnly オブジェクト」を参照してください。

この共有オブジェクトについては、Initialize メソッドを呼び出さないでください。

このグローバル変数を介してアクセスするオブジェクトは、Global.asa ファイル内で作成され、初期化されています。スコープはアプリケーションです。

g_MSCSCurrencyLocale

サイト構成ストアから取得される通貨のロケール ID (LCID) です。

この変数は ActionPageUtil.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。変数 MSCSCurrencyLocale を設定する Application オブジェクトの値に初期化されます。変数 MSCSCurrencyLocale は、Global.asa ファイル内でサイト ストアから読み取られます。

DBUtil.asp ファイルで設定されるグローバル変数 g_DBCurrencyLocale にも、同じ値が含まれます。

g_MSCSDataFunctions

データの書式設定や評価などに使う汎用的なデータ関数を提供するオブジェクト (ProgID = Commerce.DataFunctions) への参照です。詳細については、「DataFunctions オブジェクト」を参照してください。

この共有オブジェクトについては、locale プロパティをリセットしないでください。

このグローバル変数を介してアクセスするオブジェクトは、Global.asa ファイル内で作成され、初期化されています。スコープはアプリケーションです。

g_MSCSDefaultLocale

サイト構成ストアから取得される既定の LCID です。

この変数は ActionPageUtil.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。変数 MSCSDefaultLocale を設定する Application オブジェクトの値に初期化されます。変数 MSCSDefaultLocale は、Global.asa ファイル内でサイト ストアから読み取られます。

DBUtil.asp ファイルで設定されるグローバル変数 g_DBDefaultLocale にも、同じ値が含まれます。

g_MSCSEnv

PRODUCTION か DEVELOPMENT のいずれかのサーバー側定数に設定される数値です。

Global.asa ファイル内の MSCSEnv 変数の設定に基づいて、次のグローバル変数の既定値が設定されます。

VERBOSE_OUTPUT

SHOW_OBJECT_ERRORS

AUTO_REDIRECT_ENABLED

FORCE_HTA_ONLY

ALLOW_CONTEXT_MENU

このグローバル変数は、BizDeskUtil.asp ファイルで定義され、初期化されています。Application オブジェクトの変数 MSCSEnv の値に初期化されます。変数 MSCSEnv は Global.asa ファイルで設定されます。

g_MSCSMessageManager

集中化した場所からユーザー インターフェイス文字列を取得するメカニズムを提供するオブジェクト (ProgID = Commerce.MessageManager) への参照を含みます。詳細については、「MessageManager オブジェクト」を参照してください。

この共有オブジェクトについては、DefaultLanguage プロパティをリセットしないでください。

このグローバル変数を介してアクセスするオブジェクトは、Global.asa ファイル内で作成され、初期化されています。スコープはアプリケーションです。

g_mscsPage

便利なページ ヘルパ関数を含むオブジェクト (ProgID = Commerce.Page) への参照です。詳細については、「Page オブジェクト」を参照してください。

このグローバル変数を介してアクセスするオブジェクトは、ActionPageUtil.asp ファイル内で作成され、初期化されています。スコープは操作ページ自体です。

g_MSCSSiteName

ビジネス デスクのこのインスタンスに対応するサイトの名前を含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。変数 MSCSSiteName を設定する Application オブジェクトの値に初期化されます。変数 MSCSSiteName は、Global.asa ファイル内で Csapp.ini ファイルから読み取られます。

g_sActionId

ビジネス デスクのルート フォルダに対して相対的な、現在のページの Uniform Resource Locator (URL) パスとクエリ文字列を含む文字列です。この文字列を操作 ID といいます。この値は、いずれかのモジュール構成ファイルにある、いずれかの action 要素の id 属性に対応しています。

この変数は ActionPageUtil.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。

g_sBDAssetRoot

すべての共有イメージを格納するビジネス デスクの Assets フォルダへの完全な URL パスを含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。この文字列は、グローバル変数 g_sBizDeskRoot に格納されている文字列の末尾にアセット フォルダ名 (Assets) を追加することで作成されます。

g_sBDConfigPath

ビジネス デスクのすべての XML 構成ファイルを格納するビジネス デスク構成フォルダへの完全なファイル システム パスを含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。これは、グローバル変数 g_sBizDeskRoot で指定される仮想パスに相当するファイル システム パスです。

g_sBDConfigRoot

すべての XML 構成ファイルを格納するビジネス デスク構成フォルダへの完全な URL パスを含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。この文字列は、グローバル変数 g_sBizDeskRoot に格納されている文字列の末尾に構成フォルダ名 (Config) を追加することで作成されます。

g_sBDIncludeRoot

ビジネス デスクのインクルード フォルダへの完全な URL パスを含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。この文字列は、グローバル変数 g_sBizDeskRoot に格納されている文字列の末尾にインクルード フォルダ名 (Include) を追加することで作成されます。

g_sBizDeskRoot

Business Desk フォルダへの完全な URL パスを含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。この文字列は、グローバル変数 g_MSCSBizDeskRoot に格納されている文字列の先頭と末尾にスラッシュ (/) を追加することで作成されます。

g_sBizDeskRootPage

ビジネス デスクのマスター開始ページへの完全な URL パスを含む文字列です。

この変数は BizDeskPaths.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。この文字列は、グローバル変数 g_sBizDeskRoot に格納されている文字列の末尾にマスター開始ページ名 (Bizdesk.asp) を追加することで作成されます。

g_sMSCSCurrencyFormat

HTML コンポーネント (HTC) のメタデータにある通貨サブタイプの numeric 要素内の format 要素に関連付けられたデータとして使う通貨書式を含む文字列です。

この変数は ActionPageUtil.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。MSCSCurrencyFormat を設定する Application オブジェクトの値に初期化されます。MSCSCurrencyFormat は、Global.asa ファイル内でサイト ストアから読み取られます。

g_sMSCSDateFormat

HTML コンポーネント (HTC) のメタデータにある date 要素内の format 要素に関連付けられたデータとして使う日付書式を含む文字列です。

この変数は ActionPageUtil.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。MSCSDateFormat を設定する Application オブジェクトの値に初期化されます。MSCSDateFormat は、Global.asa ファイル内でサイト ストアから読み取られます。

g_sMSCSNumberFormat

HTML コンポーネント (HTC) のメタデータにある整数または浮動小数点数のサブタイプの numeric 要素内の format 要素に関連付けられたデータとして使う数値書式を含む文字列です。

この変数は ActionPageUtil.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。変数 MSCSNumberFormat を設定する Application オブジェクトの値に初期化されます。MSCSNumberFormat は、Global.asa ファイル内でサイト ストアから読み取られます。

g_sMSCSWeekStartDay

HTML コンポーネント (HTC) のメタデータにある date 要素の firstday 属性に関連付けられたデータとして使う、週の 1 日目を指定する文字列です。

この変数は ActionPageUtil.asp ファイル内で宣言され、初期化されています。スコープは操作ページ自体です。変数 MSCSWeekStartDay を設定する Application オブジェクトの値に初期化されます。MSCSWeekStartDay は、サイトの既定のロケールを使って DataFunctions オブジェクトから取得されます。

SHOW_DEBUG_TEXT

特定のルーチンの途中でデバッグ テキストを表示するかどうかを制御する Boolean です。値が True の場合はデバッグ テキストが表示され、値が False の場合はデバッグ テキストは表示されません。

Global.asa ファイルで変数 MSCSEnv が PRODUCTION に設定されている場合、SHOW_DEBUG_TEXT は False に設定されます。MSCSEnv が DEVELOPMENT に設定されている場合は、SHOW_DEBUG_TEXT は True に設定されます。

Application オブジェクトには、このグローバル変数と同じ名前を持つ変数が存在します。

SHOW_OBJECT_ERRORS

読み込み完了時にオブジェクトの読み込みエラーをダイアログ ボックスに表示するかどうかを制御する Boolean です。値が True の場合はダイアログ ボックスが表示され、値が False の場合はダイアログ ボックスは表示されません。

Global.asa ファイルで変数 MSCSEnv が PRODUCTION に設定されている場合、SHOW_OBJECT_ERRORS は False に設定されます。MSCSEnv が DEVELOPMENT に設定されている場合は、SHOW_OBJECT_ERRORS は True に設定されます。

Application オブジェクトには、このグローバル変数と同じ名前を持つ変数が存在します。

VERBOSE_OUTPUT

インターネット インフォメーション サービス (IIS) のリセット後に初めてページ オブジェクトを読み込む場合に、詳細出力を提供するかどうかを制御する Boolean です。値が True の場合は詳細出力が提供され、値が False の場合は詳細出力は提供されません。

既定では、Global.asa ファイル内の変数 MSCSEnv で可能な両方の設定 (PRODUCTION と DEVELOPMENT) で、VERBOSE_OUTPUT は False に設定されます。この変数を True に設定するには、適宜 Global.asa ファイルを変更します。

Application オブジェクトには、このグローバル変数と同じ名前を持つ変数が存在します。


ユーティリティ ルーチン

Commerce Server ビジネス デスク フレームワークでは、クライアント側とサーバー側の各種のユーティリティ ルーチンが定義されています。これらのユーティリティ ルーチンにより、ビジネス デスク モジュールに標準の機能が提供されます。モジュール開発者は、独自のルーチンを記述せずに、可能な限り、これらのユーティリティ ルーチンを使ってください。

ここでは、次のトピックについて説明します。

  • クライアント側ルーチン : ビジネス デスク フレームワークで提供されるすべてのクライアント側ユーティリティ ルーチンの一覧を、アルファベット順に示します。

  • サーバー側ルーチン : ビジネス デスク フレームワークで提供されるすべてのサーバー側ユーティリティ ルーチンの一覧を、アルファベット順に示します。


クライアント側ルーチン

Commerce Server ビジネス デスク フレームワークでは、モジュール開発者が使うための、次のクライアント側ルーチンが定義されています。

ルーチン | 説明
AddCDATANode | 指定された拡張マークアップ言語 (XML) ドキュメントに CDATA 型の項目ノードを追加します。 HTTPXMLUtil.htm ファイルの中で定義されています。
AddClass | 追加のカスタマイズ可能なスタイル シート (CSS) クラスを HTML 要素に追加します。 ActionPageUtil.asp ファイルの中で定義されています。
AddItemNode | 指定された XML ドキュメントに項目ノードを追加します。 HTTPXMLUtil.htm ファイルの中で定義されています。
bHasClass | HTML 要素に特定の CSS クラスが関連付けられているかどうかを判定します。 ActionPageUtil.asp ファイルの中で定義されています。
bIsDate | 文字列に有効な日付が含まれているかどうかを判定します。 ActionPageUtil.asp ファイルの中で定義されています。
ClearStatusText | ステータス バーのテキストをクリアします。 ActionPageUtil.asp ファイルの中で定義されています。
ClearTemp | クライアント状態ディクショナリから値を削除します。 ActionPageUtil.asp ファイルの中で定義されています。
dClearServerState | サーバー上の Session オブジェクトに格納されているサーバー状態 Dictionary オブジェクトをクリアします。 HTTPXMLUtil.htm ファイルの中で定義されています。
dDictFromXML | 標準 XML ドキュメントを Dictionary オブジェクトに変換します。 HTTPXMLUtil.htm ファイルの中で定義されています。
dGetServerState | サーバー上の Session オブジェクトに格納されているサーバー状態 Dictionary オブジェクトのクライアント側コピーを作成します。 HTTPXMLUtil.htm ファイルの中で定義されています。
DisableTask | 指定されたタスクを無効にします。 ActionPageUtil.asp ファイルの中で定義されています。
DisableTaskMenuItem | 指定されたタスク メニュー項目を無効にします。 ActionPageUtil.asp ファイルの中で定義されています。
dSetServerState | サーバー上の Session オブジェクトに格納されているサーバー状態 Dictionary オブジェクトのクライアント側バージョンを保存します。 HTTPXMLUtil.htm ファイルの中で定義されています。
dtGetDate | 日付文字列を日付バリアントに書式設定します。 ActionPageUtil.asp ファイルの中で定義されています。
elGetTaskBtn | 指定されたタスク ボタン要素を返します。 ActionPageUtil.asp ファイルの中で定義されています。
EnableAllTaskMenuItems | 指定されたタスクのすべてのメニュー項目を有効または無効にします。 ActionPageUtil.asp ファイルの中で定義されています。
EnableAllTasks | すべてのタスクを有効または無効にします。 ActionPageUtil.asp ファイルの中で定義されています。
EnableTask | 指定されたタスクを有効にします。 ActionPageUtil.asp ファイルの中で定義されています。
EnableTaskMenuItem | 指定されたタスク メニュー項目を有効にします。 ActionPageUtil.asp ファイルの中で定義されています。
GetTemp | クライアント状態ディクショナリから特定の値を返します。 ActionPageUtil.asp ファイルの中で定義されています。
HideFindBy | 検索ペインを非表示にします。 ActionPageUtil.asp ファイルの中で定義されています。
HideStatusAnimation | 状態アニメーションとテキストを非表示にします。 ActionPageUtil.asp ファイルの中で定義されています。
HideStatusLegend | ステータス バーの状態を示す凡例を非表示にします。 ActionPageUtil.asp ファイルの中で定義されています。
HideWaitDisplay | 待機表示を非表示にします。 ActionPageUtil.asp ファイルの中で定義されています。
nGetDay | 日を日付文字列から数値として返します。 ActionPageUtil.asp ファイルの中で定義されています。
nGetMonth | 月を日付文字列から数値として返します。 ActionPageUtil.asp ファイルの中で定義されています。
nGetYear | 年を日付文字列から数値として返します。 ActionPageUtil.asp ファイルの中で定義されています。
OpenEditPage | ネストされた編集ページを開きます。 ActionPageUtil.asp ファイルの中で定義されています。
OpenHelp | ヘルプ ウィンドウを開き、指定されたトピックを表示します。 ActionPageUtil.asp ファイルの中で定義されています。
RemoveClass | 指定された CSS クラスを HTML 要素から削除します。 ActionPageUtil.asp ファイルの中で定義されています。
ReplaceClass | HTML 要素内の 1 つの CSS クラスを別の CSS クラスに置き換えます。 ActionPageUtil.asp ファイルの中で定義されています。
ResetSaveBtns | ダーティ、有効、必須の各状態に応じて保存ボタン ([Save]、[SaveBack]、および [SaveNew]) を有効または無効にします。 ActionPageUtil.asp ファイルの中で定義されています。
SetDirty | ページのダーティ フラグを設定し、確認メッセージを設定します。 ActionPageUtil.asp ファイルの中で定義されています。
SetFindByHeight | 検索ペインの高さを設定します。 ActionPageUtil.asp ファイルの中で定義されています。
SetPageTitleText | ページ タイトルを設定します。 ActionPageUtil.asp ファイルの中で定義されています。
SetRequired | ページの必須フラグを設定し、警告メッセージを設定します。 ActionPageUtil.asp ファイルの中で定義されています。
SetStatusText | 指定された文字列をステータス領域に表示します。 ActionPageUtil.asp ファイルの中で定義されています。
SetTaskTooltip | 指定されたタスクのツール ヒント文字列を設定します。 ActionPageUtil.asp ファイルの中で定義されています。
SetTemp | クライアント状態ディクショナリに値を格納します。 ActionPageUtil.asp ファイルの中で定義されています。
SetValid | ページの有効フラグを設定し、警告メッセージを設定します。 ActionPageUtil.asp ファイルの中で定義されています。
SetWaitDisplayText | 待機表示に新しいテキストを設定します。 ActionPageUtil.asp ファイルの中で定義されています。
sFormatString | 変数挿入位置を指定した書式設定文字列を使って、文字列に書式を設定します。C++ 言語の printf 関数と似ています。 ActionPageUtil.asp ファイルの中で定義されています。
sGetFormattedDate | 日、月、年を表す数値で構成されている日付文字列を返します。 ActionPageUtil.asp ファイルの中で定義されています。
sGetScriptError | スクリプト エラーに書式を設定して、HTML の表書式設定ディレクティブを含む文字列にします。 ActionPageUtil.asp ファイルの中で定義されています。
sGetXMLError | XML エラーに書式を設定して、HTML の表書式設定ディレクティブを含む文字列にします。 ActionPageUtil.asp ファイルの中で定義されています。
ShowErrorDlg | 標準のエラー ダイアログ ボックスを表示します。 ActionPageUtil.asp ファイルの中で定義されています。
ShowFindBy | 検索ペインを表示します。 ActionPageUtil.asp ファイルの中で定義されています。
ShowWaitDisplay | 待機表示を表示します。 ActionPageUtil.asp ファイルの中で定義されています。
ShowXMLNodeErrors | 指定された XML ドキュメントのエラー ノードごとにエラー ダイアログ ボックスを 1 つ表示します。 HTTPXMLUtil.htm ファイルの中で定義されています。
sMergeGroups2 | 標準 XML データ レコード形式の単層 XML ドキュメント 2 つをマージして、同一形式の 1 つの 2 層構造 XML ドキュメントにします。マージ結果は文字列として返されます。 ActionPageUtil.asp ファイルの中で定義されています。
sMergeGroups3 | 標準 XML データ レコード形式の単層 XML ドキュメント 3 つをマージして、同一形式の 1 つの 3 層構造 XML ドキュメントにします。マージ結果は文字列として返されます。 ActionPageUtil.asp ファイルの中で定義されています。
ToggleFindBy | 検索ペインの表示/非表示の状態を切り替えます。 ActionPageUtil.asp ファイルの中で定義されています。
ToggleTask | 指定されたタスクの有効/無効の状態を切り替えます。 ActionPageUtil.asp ファイルの中で定義されています。
xmlGetSiteTermsValue | 標準の [Site Terms Picker] ダイアログ ボックスを表示し、特定のプロパティの値のうちの 1 つをユーザーが選択できるようにします。 ActionPageUtil.asp ファイルの中で定義されています。
xmlGetXMLDOMDoc | 空の XML DOM ドキュメントを返します。 HTTPXMLUtil.htm の中で定義されています。
xmlMergeGroups2 | 標準 XML データ レコード形式の単層 XML ドキュメント 2 つをマージして、同一形式の 1 つの 2 層構造 XML ドキュメントにします。マージ結果は XML ドキュメント ノードとして返されます。 ActionPageUtil.asp ファイルの中で定義されています。
xmlMergeGroups3 | 標準 XML データ レコード形式の単層 XML ドキュメント 3 つをマージして、同一形式の 1 つの 3 層構造 XML ドキュメントにします。マージ結果は XML ドキュメント ノードとして返されます。 ActionPageUtil.asp ファイルの中で定義されています。
xmlMergeGroupsByID2 | 標準の XML データ レコード形式の単層 XML データアイランド 2 つをマージして、同一形式の 1 つの 2 層構造 XML ドキュメントにします。マージ結果は XML ドキュメント ノードとして返されます。 ActionPageUtil.asp ファイルの中で定義されています。
xmlMergeGroupsByID3 | 標準の XML データ レコード形式の単層 XML データアイランド 3 つをマージして、同一形式の 1 つの 3 層構造 XML ドキュメントにします。マージ結果は XML ドキュメント ノードとして返されます。 ActionPageUtil.asp ファイルの中で定義されています。
xmlPostFormViaXML | XMLHTTP 転送によってフォームを送信し、操作ページから XML 応答を返します。 HTTPXMLUtil.htm ファイルの中で定義されています。
xmlXMLFromDict | Dictionary オブジェクトを標準 XML ドキュメントに変換します。 HTTPXMLUtil.htm ファイルの中で定義されています。
xmlXMLFromForm | form 要素内の要素値を標準の XML 形式に変換します。 HTTPXMLUtil.htm ファイルの中で定義されています。

次に示すクライアント側ルーチンは、モジュール コードで呼び出すためのものではありません。これらのルーチンを含むインクルード ファイルごとに、アルファベット順に示します。

ActionPageUtil.asp

bCheckTask、CloseMenu、DoTask、ExecuteTask、GotoAction、nGetDatePart、PosttoAction、RemoveSelection、SetEditMode、SetSelection、doc_onContextMenu、doc_onDragStart、doc_onKeyDown、doc_onSelectStart、menu_onClick、menu_onKeyDown、menu_onMouseMove、menu_onMouseOver、task_onKeyDown、task_onMouseDown、task_onMouseOut、task_onMouseOver、taskWindow_onBeforeUnload、taskWindow_onLoad、taskWindow_onMouseOver

dlg_confirm.asp

closeWindow

dlg_error.asp

closeWindow、sFormatString、toggleDetails

dlg_warn.asp

closeWindow

HTTPXMLUtil.asp

xmlUpdateServerState


AddCDATANode (クライアント側)

このルーチンは、CDATA 型の item 要素を指定された XML ドキュメントに追加し、渡された文字列でその item 要素を初期化するために使います。

定義

AddCDATANode(byRef xmlDoc,

               byVal sName,

               byVal sValue)

パラメータ

xmlDoc

新しいノードを追加する XML DOMDocument オブジェクトへの参照です。

sName

新しい item 要素の name 属性に割り当てる値を含む文字列です。

sValue

item 要素のテキストとして割り当てられた CDATA 構成体に配置する値を含む文字列です。

戻り値

なし。

解説

追加された要素の文字列バージョンは、次のような形式になります。

<item name="sName"><![CDATA[sValue]]></item>

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、HTTPXMLUtil.asp ファイルの中で定義されています。このサーバー側ルーチンは xmlDoc パラメータを利用せず、その代わりに、グローバルにアクセス可能な XML ドキュメントに CDATA ノードを追加します。

関連項目

クライアント側ルーチン

AddItemNode (クライアント側)

xmlGetXMLDOMDoc (クライアント側)

サーバー側ルーチン

AddCDATANode (サーバー側)


AddClass (クライアント側)

このルーチンは、特定の HTML 要素の className 属性に関連付けられたクラスのスペース区切りのリストに、カスタマイズ可能なスタイル シート (CSS) クラスを追加するために使います。

定義

AddClass(elItem,

          sNewClass)

パラメータ

elItem

指定した CSS クラスの追加先である HTML 要素です。

sNewClass

指定した HTML 要素に追加する CSS クラスの名前を含む文字列です。

戻り値

なし。

解説

新しい CSS クラスは既存の CSS クラスに追加され、後者の CSS クラスは影響を受けません。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

bHasClass (クライアント側)

RemoveClass (クライアント側)

ReplaceClass (クライアント側)

サーバー側ルーチン


AddItemNode (クライアント側)

このルーチンは、渡されたパラメータを使って、指定された XML ドキュメントに item 要素を追加するために使います。

定義

AddItemNode(byRef xmlDoc,

              byVal sName,

              byVal sValue)

パラメータ

xmlDoc

新しい item 要素の追加先である XML DOMDocument オブジェクトへの参照です。

sName

新しい item 要素の name 属性に割り当てる値を含む文字列です。

sValue

新しい item 要素の value 属性に割り当てる値を含む文字列です。

戻り値

なし。

解説

追加された要素の文字列バージョンは、次のような形式になります。

<item name="sName" value="sValue"/>

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、HTTPXMLUtil.asp ファイルの中で定義されています。このサーバー側ルーチンは xmlDoc パラメータを利用せず、その代わりに、グローバルにアクセス可能な XML ドキュメントに CDATA ノードを追加します。

関連項目

クライアント側ルーチン

AddCDATANode (クライアント側)

xmlGetXMLDOMDoc (クライアント側)

サーバー側ルーチン

AddItemNode (サーバー側)


bHasClass (クライアント側)

このルーチンは、指定したカスタマイズ可能なスタイル シート (CSS) クラスが特定の HTML 要素に関連付けられているかどうかを判定するために使います。

定義

bHasClass(elItem,

            sClass)

パラメータ

elItem

指定した CSS クラスでの確認対象である HTML 要素です。

sClass

確認対象の CSS クラスの名前を含む文字列です。

戻り値

指定した CSS クラスが特定の HTML 要素に関連付けられているかどうかを示す Boolean です。値が True の場合、その HTML 要素の className 属性に CSS クラスが見つかったことを示し、値が False の場合は、見つからなかったことを示します。

解説

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

AddClass (クライアント側)

RemoveClass (クライアント側)

ReplaceClass (クライアント側)

サーバー側ルーチン


bIsDate (クライアント側)

このルーチンは、指定した文字列に、サイトの既定のロケールの形式で有効な値が含まれているかどうかを評価するために使います。

定義

bIsDate(sValue)

パラメータ

sValue

グローバル変数 g_sMSCSDateFormat で示される形式に対して評価する日付を含む文字列です。

戻り値

渡された日付文字列がサイトの既定のロケールに適した形式になっているかどうかを示す Boolean です。値が True の場合、日付が有効であることを示します。値が False の場合は、日付が無効であることを示します。

解説

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

dtGetDate (クライアント側)

nGetDay (クライアント側)

nGetMonth (クライアント側)

nGetYear (クライアント側)

sGetFormattedDate (クライアント側)

サーバー側ルーチン


ClearStatusText (クライアント側)

このルーチンは、ステータス領域のテキストをクリアするために使います。

定義

ClearStatusText

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出して、タスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

HideStatusAnimation (クライアント側)

HideStatusLegend (クライアント側)

SetStatusText (クライアント側)

サーバー側ルーチン


ClearTemp (クライアント側)

このルーチンは、親フレームに格納されているクライアント状態ディクショナリから値またはオブジェクトを削除するために使います。値またはオブジェクトを指定するには、特定のキーを渡します。

定義

ClearTemp(sName)

パラメータ

sName

クライアント状態ディクショナリから削除する値またはオブジェクトのキーとして使う文字列です。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出して、タスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

GetTemp (クライアント側)

SetTemp (クライアント側)

サーバー側ルーチン


dClearServerState (クライアント側)

このルーチンは、サーバー上の Session オブジェクトに格納されているサーバー状態 Dictionary オブジェクトをクリアするために使います。

定義

dClearServerState(byVal sDictName)

パラメータ

sDictName

サーバー状態 Dictionary オブジェクトが関連付けられているセッション変数の名前を含む文字列です。

戻り値

空の Dictionary オブジェクトです。

解説

このルーチンは、XML 要求をサーバーに送信し、次に Commerce Server の状態を示す Dictionary オブジェクトをセッションから削除してから、空のスクリプト実行 Dictionary オブジェクトを返すことで、Dictionary オブジェクトをクリアします。このルーチンは、response_session.asp ファイルに対して送信を行います。

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

関連項目

クライアント側ルーチン

dGetServerState (クライアント側)

dSetServerState (クライアント側)

サーバー側ルーチン


dDictFromXML (クライアント側)

このルーチンは、<item name="keyname" value="value"/> という形式の子ノードを持つ XML ドキュメントを Dictionary オブジェクトに変換するために使います。

定義

dDictFromXML(byRef xmlDOMDoc)

パラメータ

xmlDOMDoc

変換する XML DOMDocument オブジェクトです。

戻り値

変換した XML ドキュメント コンテンツを含む Dictionary オブジェクトです。

解説

各 name 属性と value 属性は、Dictionary オブジェクトのエントリになります。名前はキーになり、value 属性は値になります。

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、HTTPXMLUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

xmlXMLFromDict (クライアント側)

xmlXMLFromForm (クライアント側)

サーバー側ルーチン

dDictFromXML (サーバー側)


dGetServerState (クライアント側)

このルーチンは、サーバー上の Session オブジェクトに格納されているサーバー状態 Dictionary オブジェクトのクライアント側コピーを作成するために使います。

定義

dGetServerState(byVal sDictName)

パラメータ

sDictName

サーバー状態 Dictionary オブジェクトに関連付けられているセッション変数の名前です。

戻り値

サーバー上の Session オブジェクトに格納されている、指定した Dictionary オブジェクト内で設定されている現在の値を使って初期化された Dictionary オブジェクトです。

解説

このルーチンは、サーバーに XML 要求を送信し、次に Session オブジェクトに格納されている、Commerce Server の状態を示す Dictionary オブジェクトを XML に変換してから、それをクライアントに返すことで、Dictionary オブジェクトを取得します。クライアントに返された XML は、そこでスクリプト実行 Dictionary オブジェクトに再変換されます。このルーチンは、response_session.asp ファイルに対して送信を行います。

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

関連項目

クライアント側ルーチン

dClearServerState (クライアント側)

dSetServerState (クライアント側)

サーバー側ルーチン


DisableTask (クライアント側)

このルーチンは、特定のタスクを無効にして、そのタスクに割り当てられたボタンを淡色表示にするために使います。

定義

DisableTask(sID)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列です。

戻り値

なし。

解説

タスク ボタン要素の ID を受け取ると、このルーチンは、task 要素の属性を次のように設定して、タスクを無効にします。

  • disabled を True に設定

  • className に "bdtaskdisabled" を付加

このルーチンは、InsertTaskBar メソッドまたは InsertEditTaskBar メソッドを呼び出してタスクバーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

EnableAllTasks (クライアント側)

EnableTask (クライアント側)

ToggleTask (クライアント側)

サーバー側ルーチン


DisableTaskMenuItem (クライアント側)

このルーチンは、特定のタスク メニュー項目を無効にするために使います。

定義

DisableTaskMenuItem(sID,

                      nItem)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列です。

nItem

無効にするメニュー項目の位置を示す数値です。1 ではなく 0 からカウントします。

戻り値

なし。

解説

タスク ボタン メニュー要素の ID と、メニュー内の項目の 0 から始まる位置を受け取ると、このルーチンは、タスク要素メニューの属性を次のように設定して、タスク メニュー項目を無効にします。

  • className に "bdtaskdisabled" を付加

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

EnableAllTaskMenuItems (クライアント側)

EnableTaskMenuItem (クライアント側)

サーバー側ルーチン


dSetServerState (クライアント側)

このルーチンは、サーバー上の Session オブジェクトに保存されているサーバー側 Dictionary オブジェクトに、クライアント側 Dictionary オブジェクトのコンテンツを格納するために使います。

定義

dSetServerState(byVal sDictName,

                  byRef dServerState)

パラメータ

sDictName

格納されている Dictionary オブジェクトに関連付けるセッション変数名を含む文字列です。

dServerState

サーバー上の対応する Dictionary オブジェクトにコピーするエントリを含む Dictionary オブジェクトです。

戻り値

Session オブジェクト内のサーバー状態ディクショナリの現在の状態のコピーを含む Dictionary オブジェクトです。

解説

このルーチンは、Dictionary オブジェクトを転送するために、まずその Dictionary オブジェクトを XML に変換して、サーバーに送信し、次にその XML を Commerce Server の状態を示す Dictionary オブジェクトに変換し、指定された名前を使ってその Dictionary オブジェクトを Session オブジェクトに追加します。このルーチンは、response_session.asp ファイルに対して送信を行います。

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

関連項目

クライアント側ルーチン

dClearServerState (クライアント側)

dGetServerState (クライアント側)

サーバー側ルーチン


dtGetDate (クライアント側)

このルーチンは、日付文字列を日付バリアントに変換するために使います。

定義

dtGetDate(sValue)

パラメータ

sValue

g_sMSCSDateFormat グローバル変数で指定されている形式の日付を含む文字列です。日はこの変数から取得されます。

戻り値

渡された文字列で指定されているのと同じ日付に初期化された日付バリアントです。エラーがあった場合、日付バリアントは現在の日付に初期化されます。

解説

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

bIsDate (クライアント側)

nGetDay (クライアント側)

nGetMonth (クライアント側)

nGetYear (クライアント側)

sGetFormattedDate (クライアント側)

サーバー側ルーチン


elGetTaskBtn (クライアント側)

このルーチンは、特定のタスク ボタン要素を取得するために使います。

定義

elGetTaskBtn(sID)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列識別子です。

戻り値

指定した識別子に対応するタスク ボタン要素です。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

サーバー側ルーチン


EnableAllTaskMenuItems (クライアント側)

このルーチンは、指定したタスクのすべてのメニュー項目を有効または無効にするために使います。メニュー項目は、渡された Boolean 型のパラメータに応じて有効または無効になります。

定義

EnableAllTaskMenuItems(sID,

                          bEnable)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列識別子です。

bEnable

指定したタスクのすべてのメニュー項目を有効にするか、無効にするかを指定する Boolean です。値が True の場合は、すべてのメニュー項目が有効になり、False の場合は、すべてのメニュー項目が無効になります。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

DisableTaskMenuItem (クライアント側)

EnableTaskMenuItem (クライアント側)

サーバー側ルーチン


EnableAllTasks (クライアント側)

このルーチンは、すべてのタスクを有効または無効にするために使います。タスクは、渡された Boolean 型のパラメータに応じて有効または無効になります。

定義

EnableAllTasks(bEnable)

パラメータ

bEnable

すべてのタスクを有効にするか、無効にするかを指定する Boolean です。値が True の場合は、すべてのタスクが有効になり、False の場合は、すべてのタスクが無効になります。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

DisableTask (クライアント側)

EnableTask (クライアント側)

ToggleTask (クライアント側)

サーバー側ルーチン


EnableTask (クライアント側)

このルーチンは、指定したタスクを有効にして、そのタスクに関連付けられたボタンの淡色表示を解除するために使います。

定義

EnableTask(sID)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列識別子です。

戻り値

なし。

解説

タスク ボタン要素の ID を受け取ると、このルーチンは、task 要素の属性を次のように設定して、タスクを有効にします。

  • disabled を False に設定

  • className から "bdtaskdisabled" を除去

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

DisableTask (クライアント側)

DisableTaskMenuItem (クライアント側)

EnableAllTaskMenuItems (クライアント側)

EnableAllTasks (クライアント側)

EnableTaskMenuItem (クライアント側)

ToggleTask (クライアント側)

サーバー側ルーチン


EnableTaskMenuItem (クライアント側)

このルーチンは、特定のタスク メニュー項目を有効にするために使います。

定義

EnableTaskMenuItem(sID,

                      nItem)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列識別子です。

nItem

有効にするメニュー項目の位置を表す数値です。1 ではなく 0 からカウントします。

戻り値

なし。

解説

タスク ボタン メニュー要素の ID と、メニュー内の項目の 0 から始まる位置を受け取ると、このルーチンは、タスク要素メニューの属性を次のように設定して、タスク メニュー項目を無効にします。

  • className から "bdtaskdisabled" を除去

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

DisableTaskMenuItem (クライアント側)

EnableAllTaskMenuItems (クライアント側)

EnableTask (クライアント側)

サーバー側ルーチン


GetTemp (クライアント側)

このルーチンは、親フレームに格納されているクライアント状態ディクショナリから値またはオブジェクトを取得するために使います。値またはオブジェクトを指定するには、特定のキーをパラメータとして渡します。

定義

GetTemp(sName)

パラメータ

sName

クライアント状態ディクショナリから取得する値またはオブジェクトのキーとして使う文字列です。

戻り値

クライアント状態ディクショナリから取得される値またはオブジェクトです。キーが見つからなかった場合は、Nothing が返されます。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出して、タスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

ClearTemp (クライアント側)

SetTemp (クライアント側)

サーバー側ルーチン


HideFindBy (クライアント側)

このルーチンは、検索ペインを非表示にするために使います。

定義

HideFindBy

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

ShowFindBy (クライアント側)

ToggleFindBy (クライアント側)

SetFindByHeight (クライアント側)

サーバー側ルーチン


HideStatusAnimation (クライアント側)

このルーチンは、ステータス領域の状態アニメーション アイコンとテキストを非表示にするために使います。

定義

HideStatusAnimation

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、タスク バーの読み込み中に自動的に呼び出されます。

ページがビジー状態のときに状態アニメーションを表示して、ページがアイドル状態になったら、このルーチンを使って状態アニメーションを再び非表示にすることができます。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

ClearStatusText (クライアント側)

HideStatusLegend (クライアント側)

SetStatusText (クライアント側)

サーバー側ルーチン


HideStatusLegend (クライアント側)

このルーチンは、ステータス領域の状態を示す凡例を非表示にするために使います。

定義

HideStatusLegend

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

ClearStatusText (クライアント側)

HideStatusAnimation (クライアント側)

SetStatusText (クライアント側)

サーバー側ルーチン


HideWaitDisplay (クライアント側)

このルーチンは、待機表示を非表示にするために使います。

定義

HideWaitDisplay

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、タスク バーの読み込み中に自動的に呼び出されます。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

SetWaitDisplayText (クライアント側)

ShowWaitDisplay (クライアント側)

サーバー側ルーチン


nGetDay (クライアント側)

このルーチンは、指定した日付文字列から日の部分を取得するために使います。取得した値は 1 ～ 31 の数値として返されます。

定義

nGetDay(sValue)

パラメータ

sValue

g_sMSCSDateFormat グローバル変数で指定されている形式の日付を含む文字列です。日はこの変数から取得されます。

戻り値

指定した日付文字列の日の部分を表す数値です。戻り値が -1 の場合は、エラーを示しています。

解説

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

bIsDate (クライアント側)

dtGetDate (クライアント側)

nGetMonth (クライアント側)

nGetYear (クライアント側)

sGetFormattedDate (クライアント側)

サーバー側ルーチン


nGetMonth (クライアント側)

このルーチンは、指定した日付文字列から月の部分を取得するために使います。取得した値は 1 ～ 12 の数値として返されます。

定義

nGetMonth(sValue)

パラメータ

sValue

g_sMSCSDateFormat グローバル変数で指定されている形式の日付を含む文字列です。月はこの変数から取得されます。

戻り値

指定した日付文字列の月の部分を表す数値です。戻り値が -1 の場合は、エラーを示しています。

解説

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

bIsDate (クライアント側)

dtGetDate (クライアント側)

nGetDay (クライアント側)

nGetYear (クライアント側)

sGetFormattedDate (クライアント側)

サーバー側ルーチン


nGetYear (クライアント側)

このルーチンは、指定した日付文字列から年の部分を取得するために使います。取得した値は 4 桁の数値として返されます。

定義

nGetYear(sValue)

パラメータ

sValue

g_sMSCSDateFormat グローバル変数で指定されている形式の日付を含む文字列です。年はこの変数から取得されます。

戻り値

指定した日付文字列の年の部分を表す数値です。戻り値が -1 の場合は、エラーを示しています。

解説

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

bIsDate (クライアント側)

dtGetDate (クライアント側)

nGetDay (クライアント側)

nGetMonth (クライアント側)

sGetFormattedDate (クライアント側)

サーバー側ルーチン


OpenEditPage (クライアント側)

このルーチンは、呼び出し元編集ページのフレームを非表示にして、ネストした編集ページを新しいフレームに表示するために使います。このルーチンでは、ネストした編集ページを閉じたときに呼び出すコールバック ルーチンも記録されます。

定義

OpenEditPage(sPage,

               fnCallback)

パラメータ

sPage

ネストした編集ページの URL です。付加する引数を含みます。URL は相対 URL と絶対 URL のどちらでもかまいません。

fnCallback

ネストした編集ページを閉じたときに呼び出すコールバック ルーチンの名前です。

戻り値

なし。

解説

このルーチンはフォームへの送信をサポートしていないため、ネストした編集ページで必要な引数は、そのページの URL に付加する必要があります。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

OpenHelp (クライアント側)

dGetServerState (クライアント側)

dSetServerState (クライアント側)

dClearServerState (クライアント側)

サーバー側ルーチン


OpenHelp (クライアント側)

このルーチンは、指定したトピックのヘルプ ウィンドウを開くために使います。

定義

OpenHelp(sHelpTopicPage)

パラメータ

sHelpTopicPage

bizdesk\docs\htm フォルダ内のヘルプ トピック ページの (パスなしの) 名前です。

戻り値

なし。

解説

トピック文字列が空の場合は、ヘルプ ウィンドウの最初のページが開かれます。

ヘルプ トピック ページの名前には、拡張子 .htm を含める必要があります。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

サーバー側ルーチン


RemoveClass (クライアント側)

このルーチンは、特定の HTML 要素の className 属性に関連付けられたクラスのスペース区切りのリストから、クラスを削除するために使います。

定義

RemoveClass(elItem,

              sClass)

パラメータ

elItem

指定したクラスを削除する HTML 要素です。

sClass

指定した HTML 要素から削除するクラスの名前を含む文字列です。

戻り値

なし。

解説

指定したクラスは、ほかのクラスに影響を及ぼすことなく、既存のクラスのセットから削除されます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

AddClass (クライアント側)

bHasClass (クライアント側)

ReplaceClass (クライアント側)

サーバー側ルーチン


ReplaceClass (クライアント側)

このルーチンは、特定の HTML 要素の className 属性に関連付けられたクラスのスペース区切りのリスト内で、クラスの置き換えを行うために使います。

定義

ReplaceClass(elItem,

               sOldClass,

               sNewClass)

パラメータ

elItem

既存のクラスを新しいクラスに置き換える HTML 要素です。

sOldClass

指定した HTML 要素内の置き換えられるクラスの名前を含む文字列です。

sNewClass

sOldClass パラメータで指定したクラスを置き換えるクラスの名前を含む文字列です。

戻り値

なし。

解説

既存のほかのクラスに影響を及ぼすことなく、指定された古いクラスは新しいクラスに置き換えられます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

AddClass (クライアント側)

bHasClass (クライアント側)

RemoveClass (クライアント側)

サーバー側ルーチン


ResetSaveBtns (クライアント側)

ダーティ、有効、必須の現在の各状態に応じて保存ボタン ([Save]、[SaveBack]、および [SaveNew]) を有効または無効にします。

定義

ResetSaveBtns

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、SetDirty、SetRequired、SetValid の各ルーチンがそれぞれの対応するフラグを更新した後で、これらのルーチンによって自動的に呼び出されます。

ページがダーティとしてマークされていない場合、および必要なデータがすべて揃っていて有効な場合に、保存ボタンが有効になります。それ以外の場合は、保存ボタンは無効になります。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

SetDirty (クライアント側)

SetRequired (クライアント側)

SetValid (クライアント側)

サーバー側ルーチン


SetDirty (クライアント側)

このルーチンは、ページのダーティ フラグを設定して、ページを保存せずに閉じようとした場合に表示する確認メッセージを設定するために使います。

定義

SetDirty(sConfirmMsg)

パラメータ

sConfirmMsg

"ページを移動する前に、XXX を保存しますか?" という確認メッセージを含む文字列です。たとえば、"ページを移動する前に、商品説明を保存しますか?" などです。

戻り値

なし。

解説

このルーチンを呼び出す方法としては、一般に次の 3 つがあります。

  • ページを閉じる前に保存しなければならないものがあるとページ ロジックが判断したときに、ページのスクリプト コードから直接呼び出します。

  • EditSheet HTC のコンテナ要素の属性として設定されたページに対するマスタ EditSheet の OnChange イベントのハンドラとして呼び出します。
    onchange='SetDirty("Save product description before exiting?")'
  • ページに対するマスタ EditSheet の OnChange イベントのハンドラ内から呼び出します。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

SetRequired (クライアント側)

SetValid (クライアント側)

サーバー側ルーチン


SetFindByHeight (クライアント側)

このルーチンは、検索ペインの高さを、指定したピクセル数に設定します。

定義

SetFindByHeight(nNewHeight)

パラメータ

nNewHeight

検索ペインの新しい高さをピクセル単位で指定する整数です。

戻り値

なし。

解説

検索ペインの規定の高さは 55 ピクセルです。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

HideFindBy (クライアント側)

ShowFindBy (クライアント側)

サーバー側ルーチン


SetPageTitleText (クライアント側)

このルーチンは、ページのタイトル バーに特定のテキストを表示するために使います。

定義

SetPageTitleText(sText)

パラメータ

sText

ページのタイトル バーに表示するテキストを含む文字列です。

戻り値

なし。

解説

表示するページ タイトルに HTML タグを含めることはできません。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

SetStatusText (クライアント側)

SetWaitDisplayText (クライアント側)

サーバー側ルーチン


SetRequired (クライアント側)

このルーチンは、ページの必須フラグを設定して、1 つ以上の必須フィールドを空にしたままページを保存しようとした場合に表示する警告メッセージを設定するために使います。

定義

SetRequired(sWarnMsg)

パラメータ

sWarnMsg

"プロパティの変更は完了していません。変更を破棄し、ページを移動するには、[OK] をクリックします。" という警告メッセージを含む文字列です。

戻り値

なし。

解説

このルーチンを呼び出す方法としては、一般に次の 2 つがあります。

  • EditSheet HTC のコンテナ要素の属性として設定されたページに対するマスタ EditSheet の OnRequire イベントのハンドラとして呼び出します。
    sWarnMsg = "You have made incomplete changes to properties. " & _
           "Click 'OK' to discard the changes and exit."
. . .
onrequire="SetRequired(sWarnMsg)"
  • ページに対するマスタ EditSheet の OnRequire イベントのハンドラ内から呼び出します。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

SetDirty (クライアント側)

SetValid (クライアント側)

サーバー側ルーチン


SetStatusText (クライアント側)

このルーチンは、指定したテキストをページのステータス領域に表示するために使います。

定義

SetStatusText(sText)

パラメータ

sText

ステータス領域に表示する状態メッセージを含む文字列です。

戻り値

なし。

解説

表示する状態メッセージに HTML タグを含めることはできません。

表示された状態テキストは、約 10 秒後に自動的にクリアされます。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

ClearStatusText (クライアント側)

HideStatusAnimation (クライアント側)

HideStatusLegend (クライアント側)

サーバー側ルーチン


SetTaskTooltip (クライアント側)

このルーチンは、特定のタスクに関する新しいヒントを設定するために使います。

定義

SetTaskTooltip(sID,

                 sTooltip)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列識別子です。

sTooltip

指定したタスクに関連付ける新しいヒントを含む文字列です。

戻り値

なし。

解説

このルーチンは、指定した task 要素の title 属性を、指定した文字列に設定します。この文字列が、関連付けられたタスク ボタンのヒントとして表示されます。

sTooltip パラメータとして渡す文字列には、HTML マークアップ ディレクティブを含めることはできません。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

SetPageTitleText (クライアント側)

SetStatusText (クライアント側)

SetWaitDisplayText (クライアント側)

サーバー側ルーチン


SetTemp (クライアント側)

このルーチンは、親フレームに格納されているクライアント状態ディクショナリに値またはオブジェクトを保存するために使います。

定義

SetTemp(sName,

         oValue)

パラメータ

sName

保存する値のディクショナリ キーとして使う文字列です。このキーは、後で値を取得するときに使います。

oValue)

後で取得するためにクライアント状態ディクショナリに保存するバリアント値 (文字列、数値、配列、オブジェクトなど) です。

戻り値

なし。

解説

指定したキーを持つ別の値がすでにディクショナリにある場合、その値は新しい値で上書きされます。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

ClearTemp (クライアント側)

GetTemp (クライアント側)

サーバー側ルーチン


SetValid (クライアント側)

このルーチンは、ページの有効フラグを設定して、無効な値を 1 つ以上のフィールドに入れたままページを保存しようとした場合に表示する警告メッセージを設定するために使います。

定義

SetValid(sWarnMsg)

パラメータ

sWarnMsg

"プロパティの変更は完了していません。変更を破棄し、ページを移動するには、[OK] をクリックします。" という警告メッセージを含む文字列です。

戻り値

なし。

解説

このルーチンを呼び出す方法としては、一般に次の 2 つがあります。

  • EditSheet HTC のコンテナ要素の属性として設定されたページに対するマスタ EditSheet の OnValid イベントのハンドラとして呼び出します。
    sWarnMsg = "You have made incomplete changes to properties. " & _
           "Click 'OK' to discard the changes and exit."
. . .
onvalid="SetValid(sWarnMsg)"
  • ページに対するマスタ EditSheet の OnValid イベントのハンドラ内から呼び出します。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

SetDirty (クライアント側)

SetRequired (クライアント側)

サーバー側ルーチン


SetWaitDisplayText (クライアント側)

このルーチンは、待機表示の新しいテキストを設定するために使います。

定義

SetWaitDisplayText(sWaitText)

パラメータ

sWaitText

表示する新しいテキストを含む文字列です。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

HideWaitDisplay (クライアント側)

ShowWaitDisplay (クライアント側)

SetStatusText (クライアント側)

サーバー側ルーチン


sFormatString (クライアント側)

このルーチンは、文字列中に引数を挿入するために使います。やり方は C++ 言語の printf 関数の場合と似ています。このルーチンが役立つのは、文字列に書式を設定する場合です。ハードコーディングなどを行うほかの方法と比べると、ローカライズがかなり容易になります。

定義

sFormatString(sFormat,

                aArgs)

パラメータ

sFormat

テキストと、%1、%2 という形式の連番が付けられた変数とを組み合わせた文字列です。これらの変数は、aArgs 配列内の、連番に対応する位置から取得される要素と置き換えられます。

aArgs

sFormat パラメータで指定された文字列に挿入される文字列の配列です。挿入位置は、連番が付けられた変数の数字部分が表す位置です。余分な引数はすべて無視されます。文字列内に余分な引数がある場合、その引数は置き換えられないまま残ります。

戻り値

sFormat パラメータの内容物を含む文字列です。変数は適切な文字列に置き換えられています。

解説

次の例は、どのように "A and B" という文字列が返され、sFormattedString 変数に代入されるかを示しています。

sFormattedString = sFormatString("%1 and %2", Array("A", "B"))

書式文字列を "%2 and %1" に変更すると、返される文字列を簡単に "B and A" に変更できます (配列は変更されません)。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、ASPUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

sGetFormattedDate (クライアント側)

サーバー側ルーチン

sFormatString (サーバー側)


sGetFormattedDate (クライアント側)

このルーチンは、年月日を表す整数値から日付文字列を作成するために使います。返される文字列は、既定のロケールの形式になります。

定義

sGetFormattedDate(nYear,

                    nMonth,

                    nDay)

パラメータ

nYear

作成する日付の年の部分を表す数値です。

nMonth

作成する日付の月の部分を表す数値です。

nDay

作成する日付の日の部分を表す数値です。

戻り値

作成された日付を含む文字列です。または、有効な日付文字列を作成できなかった場合は空の文字列になります。

解説

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

bIsDate (クライアント側)

dtGetDate (クライアント側)

nGetDay (クライアント側)

nGetMonth (クライアント側)

nGetYear (クライアント側)

サーバー側ルーチン


sGetScriptError (クライアント側)

このルーチンは、Microsoft Visual Basic Scripting Edition (VBScript) の Err グローバル オブジェクトの特定のプロパティを HTML の表に書式設定するために使います。この表には、ASPCode、number、description、source、fileName、および lineNumber というオブジェクトのプロパティ値が、このとおりの順序で含まれています。表は HTML 形式の文字列として返されます。このルーチンは、通常は ShowErrorDlg ルーチンの sErrorDetail パラメータとして使う文字列を作成するために呼び出します。

定義

sGetScriptError(oErr)

パラメータ

oErr

書式設定の対象となる VBScript Err オブジェクトです。

戻り値

書式設定された表を表示するための HTML 文を含む文字列です。

解説

次に示したのは、表示される表の例です。

Script Error
Number | 0x345
Description | xxx
Source | xxx
Help file | xxx
Help context | xxx

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、ASPUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

sGetXMLError (クライアント側)

ShowErrorDlg (クライアント側)

サーバー側ルーチン

sGetADOError (サーバー側)

sGetASPError (サーバー側)

sGetErrorById (サーバー側)

sGetScriptError (サーバー側)

sGetXMLError (サーバー側)


sGetXMLError (クライアント側)

このルーチンは、XMLDOMParseError オブジェクトの特定のプロパティを HTML の表に書式設定するために使います。この表には、errorCode、filePos、line、linePos、reason、srcText、および URL というオブジェクトのプロパティ値が、このとおりの順序で含まれています。表は HTML 形式の文字列として返されます。このルーチンは、通常は ShowErrorDlg ルーチンの sErrorDetail パラメータとして使う文字列を作成するために呼び出します。

定義

sGetXMLError(oXMLDocParseError)

パラメータ

oXMLDocParseError

書式設定の対象となる XMLDOMParseError オブジェクトです。

戻り値

書式設定された表を表示するための HTML 文を含む文字列です。

解説

XMLDOMParseError オブジェクトは、XML ドキュメントの parseError メソッドを呼び出すことで取得されます。

次に示したのは、表示される表の例です。

XML Error
Error code | 123
File pos | 456
Line | 789
Line pos | 123
Source text | xxx
URL | xxx

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、ASPUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

sGetScriptError (クライアント側)

ShowErrorDlg (クライアント側)

サーバー側ルーチン

sGetADOError (サーバー側)

sGetASPError (サーバー側)

sGetErrorById (サーバー側)

sGetScriptError (サーバー側)

sGetXMLError (サーバー側)


ShowErrorDlg (クライアント側)

このルーチンは、エラー ダイアログ ボックスを表示するために使います。文字列とエラー タイプを渡すことによってエラーの詳細を指定します。

定義

ShowErrorDlg(sErrorTitle,

               sFriendlyError,

               sErrorDetails,

               nErrorType)

パラメータ

sErrorTitle

エラー ダイアログ ボックスのタイトル バーに表示される文字列です。

sFriendlyError

発生したエラーについて説明する文章を含む文字列です。

sErrorDetails

発生したエラーの詳細情報を含む文字列です。通常は、sGetScriptError または sGetXMLError エラー書式設定ルーチンによって HTML の表として書式設定されます。これ以外のメソッドを使って書式設定することも可能です。

nErrorType

エラーの重要度を表す数値です。この数値によって、エラー ダイアログ ボックスに表示されるアイコンの種類が決まります。このパラメータとして使うために用意されている定数の詳細については、"解説" を参照してください。

戻り値

なし。

解説

nErrorType パラメータで有効とされる値として、次の定数が用意されています。

ERROR_ICON_ALERT、ERROR_ICON_CRITICAL、

ERROR_ICON_INFORMATION、ERROR_ICON_QUESTION

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

sGetScriptError (クライアント側)

sGetXMLError (クライアント側)

サーバー側ルーチン

SetError (サーバー側)


ShowFindBy (クライアント側)

このルーチンは、検索ペインを表示するために使います。

定義

ShowFindBy

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

HideFindBy (クライアント側)

SetFindByHeight (クライアント側)

ToggleFindBy (クライアント側)

サーバー側ルーチン


ShowWaitDisplay (クライアント側)

このルーチンは、待機表示を表示するために使います。

定義

ShowWaitDisplay

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

HideWaitDisplay (クライアント側)

SetWaitDisplayText (クライアント側)

サーバー側ルーチン


ShowXMLNodeErrors (クライアント側)

このルーチンは、XML エラー ノードの情報をエラー ダイアログ ボックスに表示するために使います。

定義

ShowXMLNodeErrors(xmlErrorNodes)

パラメータ

xmlErrorNodes

XML ドキュメントのエラー ノードのコレクションです。

戻り値

なし。

解説

このルーチンは、エラー ノードごとに 1 つのエラー ダイアログ ボックスを表示します。

このルーチンでは、XML は、サーバー ルーチン AddErrorNode で出力される形式でなければなりません。通常、この AddErrorNode ルーチンは、ListSheet XMLHTTP 操作に対する応答、または xmlPostFormViaXML ルーチンからのフォーム送信に対する応答として、エラー ノードを追加して XML を返すために使われます。

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

関連項目

クライアント側ルーチン

xmlPostFormViaXML (クライアント側)

サーバー側ルーチン

AddErrorNode (サーバー側)


sMergeGroups2 (クライアント側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、2 セットの XML レコードをマージするために使います。結果は XML タグを含む文字列として返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。もう 1 つのレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについてのより詳しい情報が含まれます。レコードのセットは両方とも XML ドキュメントに格納されます。

各セットから取得されたレコードは結合され、マージされて 2 層構造のレコードのセットになります。1 番目の層には高レベルの情報が含まれ、2 番目の層には詳細情報が含まれています。

定義

sMergeGroups2(xmlMaster,

                xmlDetail,

                sKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常はより詳細な情報です。

sKeyId

別パラメータとして渡される 2 つの XML ドキュメントの両方に存在するフィールド要素がある場合に、その要素名に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 2 層構造のレコードのセットを含む文字列です。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、2 レベルの ListSheet HTC によって使われる、2 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層および 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、ASPUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

sMergeGroups3 (クライアント側)

xmlMergeGroups2 (クライアント側)

xmlMergeGroups3 (クライアント側)

xmlMergeGroupsByID2 (クライアント側)

xmlMergeGroupsByID3 (クライアント側)

サーバー側ルーチン

sMergeGroups2 (サーバー側)


sMergeGroups3 (クライアント側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、3 セットの XML レコードをマージするために使います。結果は XML タグを含む文字列として返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。2 番目のレコードのセットはグループ セットと呼ばれ、同じ一連のエンティティについて、より詳しい情報が含まれています。3 番目のレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについて、最も詳しい情報が含まれています。レコードのセットは、3 種類ともすべて XML ドキュメントに入れられます。

各セットから取得したレコードは結合され、マージされて 3 層構造のレコードのセットになります。1 番目の層には高レベルの情報、2 番目の層にはグループ レベルの詳細情報、3 番目の層には最も詳しい情報が含まれています。

定義

sMergeGroups3(xmlMaster,

                xmlGroup,

                xmlDetail,

                sMasterKeyId,

                sDetailKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlGroup

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常は中程度の詳細情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 3 番目の層に現れるデータが含まれています。含まれているデータは、通常は最も詳細な情報です。

sMasterKeyId

xmlMaster ドキュメントと xmlGroup ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

sDetailKeyId

xmlGroup ドキュメントと xmlDetail ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 3 層構造のレコードのセットを含む文字列です。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、3 レベルの ListSheet HTC によって使われる、3 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層および 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、ASPUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

sMergeGroups2 (クライアント側)

xmlMergeGroups2 (クライアント側)

xmlMergeGroups3 (クライアント側)

xmlMergeGroupsByID2 (クライアント側)

xmlMergeGroupsByID3 (クライアント側)

サーバー側ルーチン

sMergeGroups3 (サーバー側)


ToggleFindBy (クライアント側)

このルーチンは、検索ペインの表示/非表示の状態を切り替えるために使います。つまり、現在、検索ペインが非表示にされている場合は表示し、表示されている場合は非表示にします。

定義

ToggleFindBy

パラメータ

なし。

戻り値

なし。

解説

このルーチンは、現在の状態に応じて ShowFindBy ルーチンまたは HideFindBy ルーチンを呼び出すことで検索ペインの表示状態を切り替えます。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

HideFindBy (クライアント側)

ShowFindBy (クライアント側)

SetFindByHeight (クライアント側)

サーバー側ルーチン


ToggleTask (クライアント側)

このルーチンは、タスクの有効/無効の状態を切り替えて、有効から無効または無効から有効に変更するために使います。タスクのボタンは、変更後の状態が反映され、無効の場合は淡色表示になります。

定義

ToggleTask(sID)

パラメータ

sID

関連するモジュール構成ファイル内にある task 要素の id 属性と一致する文字列識別子です。

戻り値

なし。

解説

このルーチンは、現在の状態に応じて EnableTask ルーチンまたは DisableTask ルーチンを呼び出すことでタスクの有効/無効の状態を切り替えます。

このルーチンは、InsertTaskBar または InsertEditTaskBar を呼び出してタスク バーを挿入した後のみ利用できます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

DisableTask (クライアント側)

EnableAllTasks (クライアント側)

EnableTask (クライアント側)

サーバー側ルーチン


xmlGetSiteTermsValue (クライアント側)

このルーチンは、特定のサイト用語のプロパティを使って [Site Terms Picker] ダイアログ ボックスを表示するために使います。既定の選択を指定できます。

定義

xmlGetSiteTermsValue(xmlSiteTermNode,

                        sSelected)

パラメータ

xmlSiteTermNode

サイト用語の PROPERTY 要素 (XML XMLDOMElement オブジェクト) と、その選択肢である従属 ATTRIBUTE 要素 (同様に XML XMLDOMElement オブジェクト) です。

sSelected

子である各 ATTRIBUTE 要素の displayvalue 属性に対して照合する文字列です。一致するものが見つかると、その属性が選択済みとして初期表示されます。

戻り値

ユーザーが選択したサイト用語の ATTRIBUTE 要素 (XML XMLDOMElement オブジェクト) です。

解説

[Site Terms Picker] ダイアログ ボックスで初期選択をしないようにするには、特定の PROPERTY 要素内のどの ATTRIBUTE 要素の displayname 属性にも一致しない文字列を、sSelected パラメータで渡します。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

サーバー側ルーチン


xmlGetXMLDOMDoc (クライアント側)

このルーチンは、documentElement プロパティが空になっている XML の DOMDocument オブジェクトを作成するために使います。

定義

xmlGetXMLDOMDoc

パラメータ

なし。

戻り値

documentElement プロパティが空になっている、XML の DOMDocument オブジェクトです。

解説

返されるドキュメントの文字列バージョンは、次の形式になります。

<document />

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、HTTPXMLUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

AddCDATANode (クライアント側)

AddItemNode (クライアント側)

サーバー側ルーチン

xmlGetXMLDOMDoc (サーバー側)


xmlMergeGroups2 (クライアント側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、2 セットの XML レコードをマージするために使います。結果は XML ドキュメントとして返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。もう 1 つのレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについてのより詳しい情報が含まれます。レコードのセットは両方とも XML ドキュメントに格納されます。

各セットから取得されたレコードは結合され、マージされて 2 層構造のレコードのセットになります。1 番目の層には高レベルの情報が含まれ、2 番目の層には詳細情報が含まれています。

定義

xmlMergeGroups2(xmlMaster,

                  xmlDetail,

                  sKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常はより詳細な情報です。

sKeyId

別パラメータとして渡される 2 つの XML ドキュメントの両方に存在するフィールド要素がある場合に、その要素名に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 2 層構造のレコードのセットを含む XML ドキュメントです。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、2 レベルの ListSheet HTC によって使われる、2 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層または 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、ASPUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

sMergeGroups2 (クライアント側)

sMergeGroups3 (クライアント側)

xmlMergeGroups3 (クライアント側)

xmlMergeGroupsByID2 (クライアント側)

xmlMergeGroupsByID3 (クライアント側)

サーバー側ルーチン

xmlMergeGroups2 (サーバー側)


xmlMergeGroups3 (クライアント側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、3 セットの XML レコードをマージするために使います。結果は XML ドキュメントとして返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。2 番目のレコードのセットはグループ セットと呼ばれ、同じ一連のエンティティについて、より詳しい情報が含まれています。3 番目のレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについて、最も詳しい情報が含まれています。レコードのセットは、3 種類ともすべて XML ドキュメントに入れられます。

各セットから取得したレコードは結合され、マージされて 3 層構造のレコードのセットになります。1 番目の層には高レベルの情報、2 番目の層にはグループ レベルの詳細情報、3 番目の層には最も詳しい情報が含まれています。

定義

xmlMergeGroups3(xmlMaster,

                  xmlGroup,

                  xmlDetail,

                  sMasterKeyId,

                  sDetailKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlGroup

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常は中程度の詳細情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 3 番目の層に現れるデータが含まれています。含まれているデータは、通常は最も詳細な情報です。

sMasterKeyId

xmlMaster ドキュメントと xmlGroup ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

sDetailKeyId

xmlGroup ドキュメントと xmlDetail ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 3 層構造のレコードのセットを含む XML の DOMDocument オブジェクトです。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、3 レベルの ListSheet HTC によって使われる、3 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層または 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、ASPUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

sMergeGroups2 (クライアント側)

sMergeGroups3 (クライアント側)

xmlMergeGroups2 (クライアント側)

xmlMergeGroupsByID2 (クライアント側)

xmlMergeGroupsByID3 (クライアント側)

サーバー側ルーチン

xmlMergeGroups3 (サーバー側)


xmlMergeGroupsByID2 (クライアント側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、2 セットの XML レコードをマージするために使います。結果は XML ドキュメントとして返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。もう 1 つのレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについてのより詳しい情報が含まれます。これらのレコードのセットは両方とも、現在のドキュメント内の XML データアイランドに格納されます。

各セットから取得されたレコードは結合され、マージされて 2 層構造のレコードのセットになります。1 番目の層には高レベルの情報が含まれ、2 番目の層には詳細情報が含まれています。

定義

xmlMergeGroupsByID2(sMaster,

                       sDetail,

                       sKeyId)

パラメータ

sMaster

一連の record 要素とそれに関連付けられたデータ要素が含まれている、標準 XML データ レコード構造を持つ XML データアイランドの id 属性と一致する文字列です。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

sDetail

一連の record 要素とそれに関連付けられたデータ要素が含まれている、標準 XML データ レコード形式で表現された XML データアイランドの id 属性と一致する文字列です。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常はより詳細な情報です。

sKeyId

id 属性が別パラメータとして渡される 2 つの XML データアイランドの両方に存在するフィールド要素がある場合に、その要素名に対応付けられる文字列です。この要素の値は、一方の XML データアイランドから取得したレコードを、もう一方の XML データアイランドのレコードと結合するために使われます。

戻り値

マージされた 2 層構造のレコードのセットを含む XML の DOMDocument オブジェクトです。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、2 レベルの ListSheet HTC によって使われる、2 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層または 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

sMergeGroups2 (クライアント側)

sMergeGroups3 (クライアント側)

xmlMergeGroups2 (クライアント側)

xmlMergeGroups3 (クライアント側)

xmlMergeGroupsByID3 (クライアント側)

サーバー側ルーチン


xmlMergeGroupsByID3 (クライアント側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、3 セットの XML レコードをマージするために使います。結果は XML ドキュメントとして返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。2 番目のレコードのセットはグループ セットと呼ばれ、同じ一連のエンティティについて、より詳しい情報が含まれています。3 番目のレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについて、最も詳しい情報が含まれています。レコードのセットは、3 種類ともすべて、現在のドキュメント内の XML データアイランドに格納されます。

各セットから取得したレコードは結合され、マージされて 3 層構造のレコードのセットになります。1 番目の層には高レベルの情報、2 番目の層にはグループ レベルの詳細情報、3 番目の層には最も詳しい情報が含まれています。

定義

xmlMergeGroupsByID3(sMaster,

                       sGroup,

                       sDetail,

                       sMasterKeyId,

                       sDetailKeyId)

パラメータ

sMaster

一連の record 要素とそれに関連付けられたデータ要素が含まれている、標準 XML データ レコード構造を持つ XML データアイランドの id 属性と一致する文字列です。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

sGroup

一連の record 要素とそれに関連付けられたデータ要素が含まれている、標準 XML データ レコード形式で表現された XML データアイランドの id 属性と一致する文字列です。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常は中程度の詳細情報です。

sDetail

一連の record 要素とそれに関連付けられたデータ要素が含まれている、標準 XML データ レコード形式で表現された XML データアイランドの id 属性と一致する文字列です。これらの record 要素には、生成された標準 XML データ レコード構造の 3 番目の層に現れるデータが含まれています。含まれているデータは、通常は最も詳細な情報です。

sMasterKeyId

xmlMaster ドキュメントと xmlGroup ドキュメントの両方に存在するフィールド要素がある場合に、それらのフィールド要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

sDetailKeyId

xmlGroup ドキュメントと xmlDetail ドキュメントの両方に存在するフィールド要素がある場合に、それらのフィールド要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 3 層構造のレコードのセットを含む XML の DOMDocument オブジェクトです。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、3 レベルの ListSheet HTC によって使われる、3 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層または 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

クライアント側ルーチン

sMergeGroups2 (クライアント側)

sMergeGroups3 (クライアント側)

xmlMergeGroups2 (クライアント側)

xmlMergeGroups3 (クライアント側)

xmlMergeGroupsByID2 (クライアント側)

サーバー側ルーチン


xmlPostFormViaXML (クライアント側)

このルーチンは、指定した form 要素内の要素を XML ドキュメントとしてサーバーに送信するために使います。

定義

xmlPostFormViaXML(byRef elForm)

パラメータ

elForm

ページ上の form 要素です。

戻り値

form 要素の ACTION 属性で指定されているページから返された XML DOMDocument オブジェクトです。

解説

form 要素を XML に変換します。ドキュメントの item 子要素では、各要素名が name 属性になり、各要素値が value 属性になります。これらの項目が XML として操作ページに送信され、それからルーチンが応答 XML を返します。

このルーチンは、HTTPXML 応答ページへ引数を送信する場合に役立ちます。

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

関連項目

クライアント側ルーチン

サーバー側ルーチン

dGetRequestXMLAsDict (サーバー側)


xmlXMLFromDict (クライアント側)

このルーチンは、Dictionary オブジェクトを XML ドキュメントに変換するために使います。

定義

xmlXMLFromDict(byRef dDict)

パラメータ

dDict

XML に変換する Dictionary オブジェクトです。

戻り値

Dictionary オブジェクト内の各エントリに対応する item 要素が含まれた XML の DOMDocument オブジェクトです。

解説

それぞれの item 要素には name 属性と value 属性という 2 つの属性が与えられており、それらの属性は、Dictionary オブジェクト内の各エントリが持つ名前と値を使って初期化されています。

<item name="keyname" value="value"/>

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはサーバー側で使うためのもので、HTTPXMLUtil.asp ファイルの中で定義されています。

関連項目

クライアント側ルーチン

xmlXMLFromForm (クライアント側)

サーバー側ルーチン

dDictFromXML (サーバー側)

xmlXMLFromDict (サーバー側)


xmlXMLFromForm (クライアント側)

このルーチンは、form 要素を XML ドキュメント内の項目に変換するために使います。

定義

xmlXMLFromForm(byRef elForm)

パラメータ

elForm

ページ上の form 要素です。

戻り値

form 要素のコピーされたコンテンツを含む XML DOMDocument オブジェクトです。

解説

このルーチンは、form 要素の子要素を XML に変換します。ドキュメントの item 子要素では、各要素名が name 属性になり、各要素値が value 属性になります。

このルーチンは、インクルード ファイル HTTPXMLUtil.htm の中にあります。

関連項目

クライアント側ルーチン

xmlPostFormViaXML (クライアント側)

xmlXMLFromDict (クライアント側)

サーバー側ルーチン

xmlXMLFromDict (サーバー側)


サーバー側ルーチン

Commerce Server ビジネス デスク フレームワークでは、次のサーバー側ルーチンが定義されます。

ルーチン名 | 説明
AddCDATANode | 指定された XML ドキュメントに CDATA 型の項目ノードを追加します。 HTTPXMLUtil.asp ファイルの中で定義されています。
AddErrorNode | 指定された XML ドキュメントにエラー ノードを追加して、ListSheet HTC でエラー ダイアログ ボックスが表示されるようにします。 HTTPXMLUtil.asp ファイルの中で定義されています。
AddItemNode | 指定された XML ドキュメントに項目ノードを追加します。 HTTPXMLUtil.asp ファイルの中で定義されています。
AddWarningNode | 指定された XML ドキュメントに警告ノードを追加して、ListSheet HTC で警告ダイアログ ボックスが表示されるようにします。 HTTPXMLUtil.asp ファイルの中で定義されています。
BDHALsizeButtons | 指定されたコレクション内にあり、指定されたクラス名を持つすべてのボタン要素の幅を同じにします。 BDHALUtil.htm ファイルの中で定義されています。
BDHALsizeSelects | 指定されたコレクション内にあり、指定されたクラス名を持つ、'選択' 型のすべての EditField 要素の幅を同じにします。 BDHALUtil.htm ファイルの中で定義されています。
dDictFromXML | 標準 XML ドキュメントを Dictionary オブジェクトに変換します。 HTTPXMLUtil.asp ファイルの中で定義されています。
dGetAction | Dictionary オブジェクトを作成し、特定の操作ページの構成情報を使ってそのオブジェクトを初期化します。 ActionPageUtil.asp ファイルの中で定義されています。
dGetRequestXMLAsDict | 要求とともに送信された XML を Dictionary オブジェクトとして返します。 HTTPXMLUtil.asp ファイルの中で定義されています。
GetSiteConfigField | サイト構成ストアから値を取得します。 ASPUtil.asp ファイルの中で定義されています。
InsertEditTaskBar | ナビゲーション フレームを非表示にした状態で、ビジネス デスクの操作ページを編集モードで表示します。タスク ボタンと初期状態メッセージも表示します。 ActionPageUtil.asp ファイルの中で定義されています。
InsertTaskBar | ナビゲーション フレームを表示した状態で、ビジネ スデスクの操作ページをリスト モードで表示します。タスク ボタンと初期状態メッセージも表示します。 ActionPageUtil.asp ファイルの中で定義されています。
oGetADOCommand | ADO Command オブジェクトを作成し、初期化します。 DBUtil.asp ファイルの中で定義されています。
oGetADOConnection | ADO Connection オブジェクトを作成し、開きます。 DBUtil.asp ファイルの中で定義されています。
rsGetRecordset | 指定された接続文字列、クエリ、カーソル、およびロック タイプに基づいて、ADO Recordset オブジェクトを取得します。 DBUtil.asp ファイルの中で定義されています。
SetError | クライアント内で同期して表示するために、サーバー側エラー情報を保存します。 ASPUtil.asp ファイルの中で定義されています。
sFormatString | 変数挿入位置を指定した書式設定文字列を使って、文字列に書式を設定します。C++ 言語の printf 関数と似ています。 ASPUtil.asp ファイルの中で定義されています。
sGetADOError | ADO エラーに書式を設定して、HTML の表書式設定ディレクティブを含む文字列にします。 ASPUtil.asp ファイルの中で定義されています。
sGetASPError | ASP エラーに書式を設定して、HTML の表書式設定ディレクティブを含む文字列にします。 ASPUtil.asp ファイルの中で定義されています。
sGetErrorById | メッセージ マネージャからエラー メッセージを取得します。 ASPUtil.asp ファイルの中で定義されています。
sGetScriptError | スクリプト エラーに書式を設定して、HTML の表書式設定ディレクティブを含む文字列にします。 ASPUtil.asp ファイルの中で定義されています。
sGetXMLError | XML エラーに書式を設定して、HTML の表書式設定ディレクティブを含む文字列にします。 ASPUtil.asp ファイルの中で定義されています。
sMergeGroups2 | 標準 XML データ レコード形式の単層 XML ドキュメント 2 つをマージして、同一形式の 1 つの 2 層構造 XML ドキュメントにします。マージ結果は文字列として返されます。 ASPUtil.asp ファイルの中で定義されています。
sMergeGroups3 | 標準 XML データ レコード形式の単層 XML ドキュメント 3 つをマージして、同一形式の 1 つの 3 層構造 XML ドキュメントにします。マージ結果は文字列として返されます。 ASPUtil.asp ファイルの中で定義されています。
sRelURL2AbsURL | 操作ページのフォルダに対して相対的な URL を、同等の絶対 URL に変換します。 ASPUtil.asp ファイルの中で定義されています。
xmlGetRequestXML | 要求とともに送信された XML を XML DOMDocument オブジェクトとして返します。 HTTPXMLUtil.asp ファイルの中で定義されています。
xmlGetXMLDOMDoc | 空の XML DOMDocument オブジェクトを返します。 HTTPXMLUtil.asp ファイルの中で定義されています。
xmlGetXMLFromQuery | XML ドキュメント ノードを作成し、指定されたクエリで返されるすべてのレコードに対応するレコード ノードをその XML ドキュメント ノードに入れます。 DBUtil.asp ファイルの中で定義されています。
xmlGetXMLFromQueryEx | XML ドキュメント ノードを作成し、指定されたクエリで返されるすべてまたは一部のレコードに対応するレコード ノードをその XML ドキュメント ノードに入れます。 DBUtil.asp ファイルの中で定義されています。
xmlGetXMLFromRS | XML ドキュメント ノードを作成し、指定された ADO Recordset オブジェクト内のすべてのレコードに対応するレコード ノードをその XML ドキュメント ノードに入れます。 DBUtil.asp ファイルの中で定義されています。
xmlGetXMLFromRSEx | XML ドキュメント ノードを作成し、指定された ADO Recordset オブジェクト内のすべてまたは一部のレコードに対応するレコード ノードをその XML ドキュメント ノードに入れます。 DBUtil.asp ファイルの中で定義されています。
xmlMergeGroups2 | 標準 XML データ レコード形式の単層 XML ドキュメント 2 つをマージして、同一形式の 1 つの 2 層構造 XML ドキュメントにします。マージ結果は XML ドキュメント ノードとして返されます。 ASPUtil.asp ファイルの中で定義されています。
xmlMergeGroups3 | 標準 XML データ レコード形式の単層 XML ドキュメント 3 つをマージして、同一形式の 1 つの 3 層構造 XML ドキュメントにします。マージ結果は XML ドキュメント ノードとして返されます。 ASPUtil.asp ファイルの中で定義されています。
xmlXMLFromDict | Dictionary オブジェクトを標準 XML ドキュメントに変換します。 HTTPXMLUtil.asp ファイルの中で定義されています。

次に示すサーバー側ルーチンは、モジュール コードで呼び出すためのものではありません。これらのルーチンを含むインクルード ファイルごとに、アルファベット順に示します。

ActionPageUtil.asp

InsertHelpIconBtn、InsertIconBtn、InsertIconBtns、InsertNonClientArea

ASPUtil.asp

dGetErrorDict、sESCErrorText、sStripHTML

BizDeskObjects.asp

BDError、dGetCategory、DumpDict、DumpList、DumpResults、DumpSubObject、LoadActions、LoadCategories、LoadModuleConfigs、LoadModules、LoadObjects、LoadTasks、PutObjectsInApp、SetDumpStyles、sGetChildText、ShowProgress、ValidateActions、VBError、XMLError、xmlLoadConfig

DBUtil.asp

AddEmptyRecordNode、AddField、AddFormattedNode、sESCText、sStripGroupName

response_session.asp

xmlGetResponseFromRequest、xmlGetResponseXML


AddCDATANode (サーバー側)

このルーチンは、CDATA 型の項目ノードをグローバルな XML ドキュメントに追加し、渡された値を name 属性と要素データに設定するために使います。

定義

AddCDATANode(byVal sName,

               byVal sValue)

パラメータ

sName

項目の名前を含む文字列です。

sValue

項目の値を含む文字列です。

戻り値

なし。

解説

新しい項目は、g_xmlReturn グローバル変数によって参照される DOMDocument オブジェクトの documentElement プロパティから取得した XML ドキュメントに追加されます。

追加された要素の文字列バージョンは、次のような形式になります。

<item name="sName"><![CDATA[sValue]]></item>

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、HTTPXMLUtil.htm ファイルの中で定義されています。このクライアント側ルーチンは、グローバルにアクセス可能な XML ドキュメントに CDATA ノードを追加しません。その代わりに、このルーチンに対して、ノード追加先となる XML ドキュメントを参照している xmlDoc パラメータが渡されます。

関連項目

サーバー側ルーチン

AddErrorNode (サーバー側)

AddItemNode (サーバー側)

AddWarningNode (サーバー側)

xmlGetXMLDOMDoc (サーバー側)

クライアント側ルーチン

AddCDATANode (クライアント側)


AddErrorNode (サーバー側)

このルーチンは、指定された XML ドキュメントに ERROR 要素を追加するために使います。

定義

AddErrorNode(byRef xmlDOMDoc,

               byVal sId,

               byVal sSource,

               byVal sDetail)

パラメータ

xmlDOMDoc

ERROR 要素を追加する XML DOMDocument オブジェクトへの参照です。

sId

要素の id 属性の値を含む文字列です。

sSource

要素の source 属性の値を含む文字列です。

sDetail

要素の innerHTML として割り当てられ、エラーの詳細を含む HTML 文字列です。

戻り値

なし。

解説

このルーチンは、次の形式を持つノードを追加します。

<ERROR id="id" source="source">detail</ERROR>

これが、クライアント ルーチン ShowXMLNodeErrors で要求される形式です。

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

関連項目

サーバー側ルーチン

AddCDATANode (サーバー側)

AddItemNode (サーバー側)

AddWarningNode (サーバー側)

xmlGetXMLDOMDoc (サーバー側)

クライアント側ルーチン

ShowXMLNodeErrors (クライアント側)


AddItemNode (サーバー側)

このルーチンは、項目要素をグローバルな XML ドキュメントに追加し、渡されたパラメータを使って name 属性と value 属性を設定するために使います。

定義

AddItemNode(byVal sName,

              byVal sValue)

パラメータ

sName

項目の name 属性の値を含む文字列です。

sValue

項目の value 属性の値を含む文字列です。

戻り値

なし。

解説

新しい項目は、g_xmlReturn グローバル変数によって参照される DOMDocument オブジェクトの documentElement プロパティから取得した XML ドキュメントに追加されます。

追加された要素の文字列バージョンは、次のような形式になります。

<item name="sName" value="sValue"/>

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、HTTPXMLUtil.htm ファイルの中で定義されています。このクライアント側ルーチンは、グローバルにアクセス可能な XML ドキュメントに CDATA ノードを追加しません。その代わりに、このルーチンに対して、ノード追加先となる XML ドキュメントを参照している xmlDoc パラメータが渡されます。

関連項目

サーバー側ルーチン

AddCDATANode (サーバー側)

AddErrorNode (サーバー側)

AddWarningNode (サーバー側)

xmlGetXMLDOMDoc (サーバー側)

クライアント側ルーチン

AddItemNode (クライアント側)


AddWarningNode (サーバー側)

このルーチンは、指定された XML ドキュメントに WARNING 要素を追加するために使います。

定義

AddWarningNode(byRef xmlDoc,

                 byVal sMessage)

パラメータ

xmlDoc

WARNING 要素を追加する XML DOMDocument オブジェクトへの参照です。

要素のテキストとして割り当てられ、エラーの詳細を含む文字列です。

sMessage

要素のテキストとして割り当てられ、警告メッセージを含む文字列です。

戻り値

なし。

解説

このルーチンは、次の形式を持つノードを追加します。

<WARNING>sMessage</WARNING>

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

関連項目

サーバー側ルーチン

AddCDATANode (サーバー側)

AddErrorNode (サーバー側)

AddItemNode (サーバー側)

xmlGetXMLDOMDoc (サーバー側)

クライアント側ルーチン


BDHALsizeButtons (サーバー側)

このルーチンは、指定されたコレクション内にあり、指定されたクラス名を持つすべてのボタン要素の幅を同じにするために使います。

定義

BDHALsizeButtons(elButtons,

                   sButtonClass,

                   bEnforceMinWidth)

パラメータ

elButtons

HTML ボタン要素のコレクションです。

sButtonClass

幅を調整するボタン要素のクラスの名前を含む文字列です。

bEnforceMinWidth

Boolean です。True は強制的に最小幅にすることを表し、False は最小幅を強制しないことを表します。

戻り値

なし。

解説

ボタンの標準最小幅は 74 ピクセルです。

このルーチンは、インクルード ファイル BDHALUtil.htm の中にあります。

関連項目

サーバー側ルーチン

BDHALsizeSelects (サーバー側)

クライアント側ルーチン


BDHALsizeSelects (サーバー側)

このルーチンは、指定されたコレクション内にあり、指定されたクラス名を持つ、"選択" 型のすべての EditField の幅を同じにするために使います。

定義

BDHALsizeSelects(elSelects,

                   sSelectClass)

パラメータ

elSelects

"選択" 型の EditField HTC を含む要素のコレクションです。

sSelectClass

幅を調整する、"選択" 型の EditField HTC を含む要素のクラスの名前を含む文字列です。

戻り値

なし。

解説

このルーチンは、インクルード ファイル BDHALUtil.htm の中にあります。

関連項目

サーバー側ルーチン

BDHALsizeButtons (サーバー側)

クライアント側ルーチン


dDictFromXML (サーバー側)

このルーチンは、<item name="keyname" value="value"/> という形式の子ノードを持つ XML ドキュメントを Dictionary オブジェクトに変換するために使います。

定義

dDictFromXML(byRef xmlDOMDoc)

パラメータ

xmlDOMDoc

変換対象の XML DOMDocument オブジェクトです。

戻り値

変換した XML ドキュメント コンテンツを含む Dictionary オブジェクトです。

解説

各 name 属性と value 属性は、Dictionary オブジェクトのエントリになります。名前はキーになり、value 属性は値になります。

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、HTTPXMLUtil.htm ファイルの中で定義されています。

関連項目

サーバー側ルーチン

xmlXMLFromDict (サーバー側)

クライアント側ルーチン

dDictFromXML (クライアント側)

xmlXMLFromDict (クライアント側)


dGetAction (サーバー側)

このルーチンは、操作ページの構成情報を含む Dictionary オブジェクトを作成するために使います。

定義

dGetAction(byVal sLookupActionID)

パラメータ

sLookupActionID

操作 ID を含む文字列です。これは、Commerce Server ビジネス デスクのルートに対して相対的な、操作ページのパスとファイル名です。

戻り値

操作ページの構成を含む Dictionary オブジェクトです。

解説

このルーチンは、操作ページのすべての構成情報 (名前、ヒント、関連付けられたタスクなど) を含む Dictionary オブジェクトを返します。この操作ページに関連付けられるタスクは比較的複雑であり、従属オブジェクト SimpleList を使って返されます。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

サーバー側ルーチン

クライアント側ルーチン


dGetRequestXMLAsDict (サーバー側)

このルーチンは、要求内の XML を Dictionary オブジェクトとして取得するために使います。

定義

dGetRequestXMLAsDict

パラメータ

なし。

戻り値

要求内の XML を使って表現された値を含む Dictionary オブジェクトです。

解説

このルーチンの XML は、クライアント ルーチン xmlPostFormViaXML で送信される形式でなければなりません。返された Dictionary オブジェクトは、インターネット インフォメーション サービス (IIS) の Request オブジェクトのように取り扱うことができます。

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

関連項目

サーバー側ルーチン

dDictFromXML (サーバー側)

xmlGetRequestXML (サーバー側)

クライアント側ルーチン

xmlPostFormViaXML (クライアント側)


GetSiteConfigField (サーバー側)

このルーチンは、サイト構成ストアからフィールド値を取得するために使います。

定義

GetSiteConfigField(sResourceName,

                     sPropertyName)

パラメータ

sResourceName

要求されるフィールドに関連付けられているリソースの名前を含む文字列です。

sPropertyName

要求されるフィールドに対応するプロパティの名前を含む文字列です。

戻り値

サイト構成ストア内の sResourceName リソースの sPropertyName プロパティに現在関連付けられている値です。

解説

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

関連項目

サーバー側ルーチン

クライアント側ルーチン


InsertEditTaskBar (サーバー側)

このルーチンは、構成済みのタスクバーを挿入して、ページを編集モードで表示するために使います。つまり、モジュール ナビゲーション フレームを非表示にして、操作ページ フレームを左に拡大します。

定義

InsertEditTaskBar(sPageTitle,

                     sStatusText)

パラメータ

sPageTitle

拡大された操作ページ フレーム上部のタイトル バーに表示するテキストを含む文字列です。

sStatusText

拡大された操作ページ フレーム下部のステータス バーに最初に表示するテキストを含む文字列です。

戻り値

なし。

解説

タイトル バーとステータス バーは赤い色で表示され、Commerce Server ビジネス デスクが、データ値の変更が可能な編集モードになっていることが示されます。

操作ページでは、通常は SetStatusText ルーチンを使って初期状態テキストを上書きします。

このルーチンは、操作ページ中の開始 BODY 要素の直後で呼び出してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

サーバー側ルーチン

InsertTaskBar (サーバー側)

クライアント側ルーチン


InsertTaskBar (サーバー側)

このルーチンは、構成済みのタスクバーを挿入して、ページをリスト モードで表示するために使います。つまり、モジュール ナビゲーション フレームを操作ページ フレームの左側に表示します。

定義

InsertTaskBar(sPageTitle,

                sStatusText)

パラメータ

sPageTitle

操作ページ フレーム上部のタイトル バーに表示するテキストを含む文字列です。

sStatusText

操作ページ フレーム下部のステータス バーに最初に表示するテキストを含む文字列です。

戻り値

なし。

解説

タイトル バーとステータス バーは青い色で表示され、Commerce Server ビジネス デスクが、データ値の変更ができないリスト モードになっていることが示されます。

操作ページでは、通常は SetStatusText ルーチンを使って初期状態テキストを上書きします。

このルーチンは、操作ページ中の開始 BODY 要素の直後で呼び出してください。

このルーチンは、インクルード ファイル ActionPageUtil.asp の中にあります。

関連項目

サーバー側ルーチン

InsertEditTaskBar (サーバー側)

クライアント側ルーチン


oGetADOCommand (サーバー側)

このルーチンは、ActiveX Data Object (ADO) の Command オブジェクトを作成し、指定された接続タイプとコマンド タイプを使ってその Command オブジェクトを初期化するために使います。

定義

oGetADOCommand(oConn,

                 nCommandType)

パラメータ

oConn

新しく作成された Command オブジェクトのアクティブな接続として設定する ADO Connection オブジェクトです。通常、これは、oGetADOConnection ルーチンの呼び出しで返されるオブジェクトです。

nCommandType

新しく作成された Command オブジェクトに設定する ADO コマンド タイプを表す有効な値を含む数値です。

戻り値

使用可能な状態になっている ADO Command オブジェクトです。

解説

DBUtil.asp ファイルの中に、ADO パラメータ値として使うための次の定数が定義されています。

コマンド タイプ

AD_CMD_TEXT

AD_CMD_TABLE

AD_CMD_STORED_PROC

AD_CMD_UNKNOWN

このルーチンは、インクルード ファイル DBUtil.asp の中にあります。

関連項目

サーバー側ルーチン

oGetADOConnection (サーバー側)

rsGetRecordset (サーバー側)

クライアント側ルーチン


oGetADOConnection (サーバー側)

このルーチンは、ActiveX Data Object (ADO) の接続を作成して開き、15 秒の接続タイムアウトと 30 秒のコマンド タイムアウトを設定するために使います。

定義

oGetADOConnection(sConnectionString)

パラメータ

sConnectionString

接続先データベースについて説明した ADO 接続文字列を含む文字列です。これは、通常の場合、サイト構成ストア内のリソースから ASPUtil.asp ファイルの GetSiteConfigField ルーチンを使って取得したプロパティです。

戻り値

使用可能な状態になっている ADO Connection オブジェクトです。

解説

このルーチンは、インクルード ファイル DBUtil.asp の中にあります。

関連項目

サーバー側ルーチン

oGetADOCommand (サーバー側)

rsGetRecordset (サーバー側)

クライアント側ルーチン


rsGetRecordset (サーバー側)

このルーチンは、指定された接続文字列、クエリ、カーソル、およびロック タイプに基づいて、ActiveX Data Object (ADO) レコードセットを取得するために使います。

定義

rsGetRecordset(sConnectionString,

                 sQuery,

                 nCursorType,

                 nLockType)

パラメータ

sConnectionString

接続先データベースについて説明した ADO 接続文字列を含む文字列です。これは、通常の場合、サイト構成ストア内のリソースから ASPUtil.asp ファイルの GetSiteConfigField ルーチンを使って取得したプロパティです。

sQuery

有効な SQL クエリを含む文字列です。

nCursorType

ADO のカーソル タイプを表す有効な値を含む数値です。

nLockType

ADO のロック タイプを表す有効な値を含む数値です。

戻り値

クエリの結果を含む ADO Recordset オブジェクトです。

解説

DBUtil.asp ファイルの中に、ADO パラメータ値として使うための次の定数が定義されています。

カーソル タイプ

AD_OPEN_FORWARD_ONLY

AD_OPEN_KEYSET

AD_OPEN_DYNAMIC

AD_OPEN_STATIC

ロック タイプ

AD_LOCK_READ_ONLY

AD_LOCK_PESSIMISTIC

AD_LOCK_OPTIMISTIC

AD_LOCK_BATCH_OPTIMISTIC

このルーチンは、インクルード ファイル DBUtil.asp の中にあります。

関連項目

サーバー側ルーチン

xmlGetXMLFromRS (サーバー側)

xmlGetXMLFromRSEx (サーバー側)

クライアント側ルーチン


SetError (サーバー側)

このルーチンは、サーバー側コードで発生したエラーについての情報をユーザーへの表示用に保存するために使います。エラー情報は Active Server Pages (ASP) の Session オブジェクトに保存され、タスクバーを次に表示するときに自動的にクライアント側ルーチン ShowErrorDialog を呼び出すために使われます。

定義

SetError(sErrorTitle,

          sFriendlyError,

          sErrorDetails,

          nErrorType)

パラメータ

sErrorTitle

エラー ダイアログ ボックスのタイトル バーに表示される文字列です。

sFriendlyError

発生したエラーについて説明する文章を含む文字列です。

sErrorDetails

発生したエラーの詳細情報を含む文字列です。通常は、sGetASPError、sGetADOError、sGetScriptError、または sGetXMLError エラー書式設定ルーチンによって HTML の表として書式設定されます。これ以外のメソッドを使って書式設定することも可能です。

nErrorType

エラーの重要度を表す数値です。この数値によって、エラー ダイアログ ボックスに表示されるアイコンの種類が決まります。このパラメータとして使うために用意されている定数の詳細については、"解説" を参照してください。

戻り値

なし。

解説

nErrorType パラメータで有効とされる値として、次の定数が用意されています。

ERROR_ICON_ALERT、ERROR_ICON_CRITICAL、

ERROR_ICON_INFORMATION、ERROR_ICON_QUESTION

エラー タイプが ERROR_ICON_ALERT または ERROR_ICON_CRITICAL の場合は、アプリケーション イベント ログにエラーが記録されます。

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

関連項目

サーバー側ルーチン

sGetADOError (サーバー側)

sGetASPError (サーバー側)

sGetErrorById (サーバー側)

sGetScriptError (サーバー側)

sGetXMLError (サーバー側)

クライアント側ルーチン

ShowXMLNodeErrors (クライアント側)


sFormatString (サーバー側)

このルーチンは、文字列中に引数を挿入するために使います。やり方は C++ 言語の printf 関数の場合と似ています。このルーチンが役立つのは、文字列に書式を設定する場合です。ハードコーディングなどを行うほかの方法と比べると、ローカライズがかなり容易になります。

定義

sFormatString(sFormat,

                aArgs)

パラメータ

sFormat

テキストと、%1、%2 という形式の連番が付けられた変数とを組み合わせた文字列です。これらの変数は、aArgs 配列内の、連番に対応する位置から取得される要素と置き換えられます。

aArgs

sFormat パラメータで指定された文字列に挿入される文字列の配列です。挿入位置は、連番が付けられた変数の数字部分が表す位置です。余分な引数はすべて無視されます。文字列内に余分な引数がある場合、その引数は置き換えられないまま残ります。

戻り値

sFormat パラメータの内容物を含む文字列です。変数は適切な文字列に置き換えられています。

解説

次の例は、どのように "A and B" という文字列が返され、sFormattedString 変数に代入されるかを示しています。

sFormattedString = sFormatString("%1 and %2", Array("A", "B"))

書式文字列を "%2 and %1" に変更すると、返される文字列を簡単に "B and A" に変更できます (配列は変更されません)。

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、ActionPageUtil.asp ファイルの中で定義されています。

関連項目

サーバー側ルーチン

クライアント側ルーチン

sFormatString (クライアント側)


sGetADOError (サーバー側)

このルーチンは、ADO Error オブジェクトの特定のプロパティを HTML の表に書式設定するために使います。この表には、number、description、source、SQLState、および NativeError というオブジェクトのプロパティ値が、このとおりの順序で含まれています。表は HTML 形式の文字列として返されます。このルーチンは、通常は SetError ルーチンの sErrorDetail パラメータとして使う文字列を作成するために呼び出します。

定義

sGetADOError(oConnectionErrorsError)

パラメータ

oConnectionErrorsError

書式設定の対象となる ADO Error オブジェクトです。

戻り値

書式設定された表を表示するための HTML 文を含む文字列です。

解説

次に示したのは、表示される表の例です。

ADO Error
Number | 0x456
Description | xxx
Source | xxx
SQL state | xxx
Native error | xxx

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

関連項目

サーバー側ルーチン

SetError (サーバー側)

sGetASPError (サーバー側)

sGetScriptError (サーバー側)

sGetXMLError (サーバー側)

クライアント側ルーチン

sGetScriptError (クライアント側)


sGetASPError (サーバー側)

このルーチンは、インターネット インフォメーション サービス (IIS) ルーチンの GetLastError の呼び出しによって返されるオブジェクトの特定のプロパティを HTML の表に書式設定するために使います。この表には、number、description、source、helpFile、および helpContext というオブジェクトのプロパティ値が、このとおりの順序で含まれています。表は HTML 形式の文字列として返されます。このルーチンは、通常は SetError ルーチンの sErrorDetail パラメータとして使う文字列を作成するために呼び出します。

定義

sGetASPError(oServerGetLastError)

パラメータ

oServerGetLastError

IIS ルーチンの GetLastError によって返され、このルーチンで HTML の表を書式設定するために使うオブジェクトです。

戻り値

書式設定された表を表示するための HTML 文を含む文字列です。

解説

次に示したのは、表示される表の例です。

ASP Error
Asp code | xxx
Number | 345
Description | xxx
Source | xxx
File name | xxx
Line number | 432

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

関連項目

サーバー側ルーチン

SetError (サーバー側)

sGetADOError (サーバー側)

sGetScriptError (サーバー側)

sGetXMLError (サーバー側)

クライアント側ルーチン


sGetErrorById (サーバー側)

このルーチンは、特定の識別子に対応するグローバルな MessageManager オブジェクトからエラー文字列を取得するために使います。このルーチンは、通常は SetError ルーチンの sFriendlyError パラメータとして使う文字列を取得するために呼び出します。

定義

sGetErrorById(sErrorId)

パラメータ

sErrorId

グローバルな MessageManager オブジェクト内の特定のエラー文字列を一意に識別する文字列です。

戻り値

取得されたエラー テキストを含む文字列です。

解説

このルーチンでは、集中化されたメッセージ ストアへのアクセスを提供してコードと切り離してローカライズできるようにし、Web サイトのローカライズを簡単に行えるようにします。

このルーチンは、グローバル変数 g_MSCSMessageManager で参照されているグローバルな MessageManager オブジェクトから文字列を取得します。

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

関連項目

サーバー側ルーチン

SetError (サーバー側)

sFormatString (サーバー側)

クライアント側ルーチン


sGetScriptError (サーバー側)

このルーチンは、Microsoft Visual Basic Scripting Edition (VBScript) の Err オブジェクトの特定のプロパティを HTML の表に書式設定するために使います。この表には、number、description、source、helpFile、および helpContext というオブジェクトのプロパティ値が、このとおりの順序で含まれています。表は HTML 形式の文字列として返されます。このルーチンは、通常は SetError ルーチンの sErrorDetail パラメータとして使う文字列を作成するために呼び出します。

定義

sGetScriptError(oErr)

パラメータ

oErr

書式設定の対象となる VBScript Err オブジェクトです。

戻り値

書式設定された表を表示するための HTML 文を含む文字列です。

解説

次に示したのは、表示される表の例です。

Script Error
Number | 0x345
Description | xxx
Source | xxx
Help file | xxx
Help context | xxx

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、ActionPageUtil.asp ファイルの中で定義されています。

関連項目

サーバー側ルーチン

SetError (サーバー側)

sFormatString (サーバー側)

sGetADOError (サーバー側)

sGetASPError (サーバー側)

sGetXMLError (サーバー側)

クライアント側ルーチン

sGetScriptError (クライアント側)


sGetXMLError (サーバー側)

このルーチンは、XML parseError オブジェクトの特定のプロパティを HTML の表に書式設定するために使います。この表には、errorCode、filePos、line、linePos、reason、srcText、および URL というオブジェクトのプロパティ値が、このとおりの順序で含まれています。表は HTML 形式の文字列として返されます。このルーチンは、通常は SetError ルーチンの sErrorDetail パラメータとして使う文字列を作成するために呼び出します。

定義

sGetXMLError(oXMLDocParseError)

パラメータ

oXMLDocParseError

書式設定の対象となる XML parseError オブジェクトです。

戻り値

書式設定された表を表示するための HTML 文を含む文字列です。

解説

XML parseError オブジェクトは、XML ドキュメントの parseError メソッドを呼び出すことで取得されます。

次に示したのは、表示される表の例です。

XML Error
Error code | 123
File pos | 456
Line | 789
Line pos | 123
Source text | xxx
URL | xxx

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、ActionPageUtil.asp ファイルの中で定義されています。

関連項目

サーバー側ルーチン

SetError (サーバー側)

sGetADOError (サーバー側)

sGetASPError (サーバー側)

sGetScriptError (サーバー側)

クライアント側ルーチン

sGetXMLError (クライアント側)


sMergeGroups2 (サーバー側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、2 セットの XML レコードをマージするために使います。結果は XML 文字列として返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。もう 1 つのレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについてのより詳しい情報が含まれます。レコードのセットは両方とも XML ドキュメントに格納されます。

各セットから取得されたレコードは結合され、マージされて 2 層構造のレコードのセットになります。1 番目の層には高レベルの情報が含まれ、2 番目の層には詳細情報が含まれています。

定義

sMergeGroups2(xmlMaster,

                xmlDetail,

                sKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常はより詳細な情報です。

sKeyId

別パラメータとして渡される 2 つの XML ドキュメントの両方に存在するデータ要素がある場合に、その要素名に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 2 層構造のレコードのセットを含む文字列です。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、2 レベルの ListSheet HTC によって使われる、2 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層および 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、ActionPageUtil.asp ファイルの中で定義されています。

関連項目

サーバー側ルーチン

sMergeGroups3 (サーバー側)

xmlMergeGroups2 (サーバー側)

xmlMergeGroups3 (サーバー側)

クライアント側ルーチン

sMergeGroups2 (クライアント側)


sMergeGroups3 (サーバー側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、3 セットの XML レコードをマージするために使います。結果は XML 文字列として返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。2 番目のレコードのセットはグループ セットと呼ばれ、同じ一連のエンティティについて、より詳しい情報が含まれています。3 番目のレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについて、最も詳しい情報が含まれています。レコードのセットは、3 種類ともすべて XML ドキュメントに入れられます。

各セットから取得したレコードは結合され、マージされて 3 層構造のレコードのセットになります。1 番目の層には高レベルの情報、2 番目の層にはグループ レベルの詳細情報、3 番目の層には最も詳しい情報が含まれています。

定義

sMergeGroups3(xmlMaster,

                xmlGroup,

                xmlDetail,

                sMasterKeyId,

                sDetailKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlGroup

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常は中程度の詳細情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 3 番目の層に現れるデータが含まれています。含まれているデータは、通常は最も詳細な情報です。

sMasterKeyId

xmlMaster ドキュメントと xmlGroup ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

sDetailKeyId

xmlGroup ドキュメントと xmlDetail ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 3 層構造のレコードのセットを含む文字列です。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、3 レベルの ListSheet HTC によって使われる、3 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層および 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、ActionPageUtil.asp ファイルの中で定義されています。

関連項目

サーバー側ルーチン

sMergeGroups2 (サーバー側)

xmlMergeGroups2 (サーバー側)

xmlMergeGroups3 (サーバー側)

クライアント側ルーチン

sMergeGroups3 (クライアント側)


sRelURL2AbsURL (サーバー側)

このルーチンは、現在の操作ページのフォルダに対して相対的な Uniform Resource Locator (URL) を絶対的な URL に変換するために使います。

定義

sRelURL2AbsURL(sRelURL)

パラメータ

sRelURL

現在の操作ページのフォルダに対して相対的な URL を含む文字列です。

戻り値

sRelURL パラメータで渡された相対的な URL と機能的に同等である絶対的な URL を含む文字列です。

解説

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

関連項目

サーバー側ルーチン

クライアント側ルーチン


xmlGetRequestXML (サーバー側)

このルーチンは、要求内の XML を XML ドキュメントにコピーするために使います。

定義

xmlGetRequestXML

パラメータ

なし。

戻り値

要求内の XML を含む XML DOMDocument オブジェクトです。

解説

このルーチンの XML は、クライアント ルーチン xmlPostFormViaXML で送信される形式でなければなりません。

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

関連項目

サーバー側ルーチン

dGetRequestXMLAsDict (サーバー側)

クライアント側ルーチン

xmlPostFormViaXML (クライアント側)


xmlGetXMLDOMDoc (サーバー側)

このルーチンは、documentElement プロパティが空になっている XML の DOMDocument オブジェクトを作成するために使います。

定義

xmlGetXMLDOMDoc

パラメータ

なし。

戻り値

documentElement プロパティが空になっている、XML の DOMDocument オブジェクトです。

解説

返されるドキュメントの文字列バージョンは、次の形式になります。

<document />

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、HTTPXMLUtil.htm ファイルの中で定義されています。

関連項目

サーバー側ルーチン

AddCDATANode (サーバー側)

AddErrorNode (サーバー側)

AddItemNode (サーバー側)

AddWarningNode (サーバー側)

クライアント側ルーチン

xmlGetXMLDOMDoc (クライアント側)


xmlGetXMLFromQuery (サーバー側)

このルーチンは、XML document 要素を作成し、指定されたクエリで返されるすべてのレコードに対応する record 要素をその XML document 要素に入れるために使います。

この変換の結果として、標準 XML データ レコード形式をとる XML の XMLDOMElement オブジェクトが作成されます。

定義

xmlGetXMLFromQuery(sConnectionString,

                     sQuery)

パラメータ

sConnectionString

接続先データベースについて説明した ADO (ActiveX Data Objects) 接続文字列を含む文字列です。これは、通常の場合、サイト構成ストア内のリソースから ASPUtil.asp ファイルの GetSiteConfigField ルーチンを使って取得したプロパティです。

sQuery

有効な SQL クエリを含む文字列です。

戻り値

指定されたクエリで返されるデータを反映するレコード ノードを含む XMLDOMElement オブジェクトです。

解説

変換により、指定されたクエリで返されるすべてのデータが、いくつもの record 要素 (複数の XMLDOMElement オブジェクト) を含む 1 つの XML document 要素 (1 つの XMLDOMElement オブジェクト) として表現されます。

このルーチンは、インクルード ファイル DBUtil.asp の中にあります。

関連項目

サーバー側ルーチン

xmlGetXMLFromQueryEx (サーバー側)

xmlGetXMLFromRS (サーバー側)

xmlGetXMLFromRSEx (サーバー側)

クライアント側ルーチン


xmlGetXMLFromQueryEx (サーバー側)

このルーチンは、XML document 要素を作成し、指定されたクエリで返されるすべてまたは一部のレコードに対応する record 要素をその XML document 要素に入れるために使います。

この変換の結果として、標準 XML データ レコード形式をとる XML の XMLDOMElement オブジェクトが作成されます。

定義

xmlGetXMLFromQueryEx(sConnectionString,

                       sQuery,

                       nStartRecord,

                       nPageSize,

                       nExRecordCount,

                       dFormats)

パラメータ

sConnectionString

接続先データベースについて説明した ADO (ActiveX Data Objects) 接続文字列を含む文字列です。これは、通常の場合、サイト構成ストア内のリソースから ASPUtil.asp ファイルの GetSiteConfigField ルーチンを使って取得したプロパティです。

sQuery

有効な SQL クエリを含む文字列です。

nStartRecord

変換する最初のレコードについて、クエリの結果内での位置を指定する数値です。位置は 0 からカウントされます。値が -1 の場合、このパラメータは無視されます。これは 0 を渡した場合と同様の効果です。

nPageSize

変換対象となる連続レコードの数を指定する数値です。値が -1 の場合、レコードセット内のすべてのレコードが変換されます。

nExRecordCount

レコードセットから取得される数を無効にして、レコードの数を指定するための数値です。値が -1 の場合、このパラメータは無視され、Recordset オブジェクトから取得されたレコードの数が使われます。レコードの数が多すぎて、すべてをカウントすることが合理的でない場合には、TOO_BIG_TOO_COUNT という値を渡します。

dFormats

ADO の日付/時刻形式と Commerce Server ビジネス デスクの日付/時刻形式との間で、特殊な日付/時刻マッピングを行うために使う情報を含む Dictionary オブジェクトです。

戻り値

指定されたクエリで返されるすべてまたは一部のデータを反映する record 要素を含む XML の XMLDOMElement オブジェクトです。

解説

変換により、指定されたクエリで返されるすべてまたは一部のデータが、いくつもの record 要素 (複数の XMLDOMElement オブジェクト) を含む 1 つの XML document 要素 (1 つの XMLDOMElement オブジェクト) として表現されます。

dFormats パラメータは、日付および時刻に関して特殊なマッピングを行うために使われる Dictionary オブジェクトを指定しています。この Dictionary オブジェクトにおけるキーはフィールドの名前で、値は ADO (ActiveX Data Object) データ型値、または定数 COMMERCE_SPLIT_DATE に対応付けられた特殊な値のいずれかです。この Dictionary オブジェクトのフィールド名を調べることによって、AddFormattedNode ルーチンの sType パラメータとして渡すための適切な値が決まります。次の表は、これらのマッピングを示しています。

フィールド名キーのディクショナリ値 | sType 値と処理
AD_DATE、AD_DB_DATE、AD_DB_TIMESTAMP、AD_DB_TIME | sType パラメータは、対応する Dictionary オブジェクトの値に設定されます。
COMMERCE_SPLIT_DATE 次のパラメータを指定して、AddFormattedNode ルーチンが 2 回呼び出されます。
  1. sName = <ADO フィールド名>_date
    sValue = <ADO フィールド値>
    sType = AD_DB_DATE

  2. sName = <ADO フィールド名>_time
    sValue = <ADO フィールド値>
    sType = AD_DB_TIME
その他すべて | sType パラメータは、対応する ADO フィールドの type プロパティに設定されます。

このルーチンは、インクルード ファイル DBUtil.asp の中にあります。

関連項目

サーバー側ルーチン

xmlGetXMLFromQuery (サーバー側)

xmlGetXMLFromRS (サーバー側)

xmlGetXMLFromRSEx (サーバー側)

クライアント側ルーチン


xmlGetXMLFromRS (サーバー側)

このルーチンは、XML document 要素を作成し、指定されたActiveX Data Object (ADO) Recordset オブジェクトのすべてのレコードに対応する record 要素をその XML document 要素に入れるために使います。

この変換の結果として、標準 XML データ レコード形式をとる XML の XMLDOMElement オブジェクトが作成されます。

定義

xmlGetXMLFromRS(rsQuery)

パラメータ

rsQuery

変換対象レコードの取得元となる ADO Recordset オブジェクトです。

戻り値

指定された ADO Recordset オブジェクト内のデータを反映する record 要素を含む XML の XMLDOMElement オブジェクトです。

解説

変換により、指定した ADO レコードセット内のすべてのデータが、いくつもの record 要素 (複数の XMLDOMElement オブジェクト) を含む 1 つの XML document 要素 (1 つの XMLDOMElement オブジェクト) として表現されます。

このルーチンは、インクルード ファイル DBUtil.asp の中にあります。

関連項目

サーバー側ルーチン

xmlGetXMLFromQuery (サーバー側)

xmlGetXMLFromQueryEx (サーバー側)

xmlGetXMLFromRSEx (サーバー側)

クライアント側ルーチン


xmlGetXMLFromRSEx (サーバー側)

このルーチンは、XML document 要素を作成し、指定されたActiveX Data Object (ADO) Recordset オブジェクトの一部またはすべてのレコードに対応する record 要素をその XML document 要素に入れるために使います。

この変換の結果として、標準 XML データ レコード形式をとる XML の XMLDOMElement オブジェクトが作成されます。

定義

xmlGetXMLFromRSEx(rsQuery,

                    nStartRecord,

                    nPageSize,

                    nExRecordCount,

                    dFormats)

パラメータ

rsQuery

変換対象レコードの取得元となる ADO Recordset オブジェクトです。

nStartRecord

変換する最初のレコードについて、レコードセット内での位置を指定する数値です。位置は 0 からカウントされます。値が -1 の場合、このパラメータは無視されます。これは 0 を渡した場合と同様の効果です。

nPageSize

変換対象となる連続レコードの数を指定する数値です。値が -1 の場合、レコードセット内のすべてのレコードが変換されます。

nExRecordCount

レコードセットから取得される数を無効にして、レコードの数を指定するための数値です。値が -1 の場合、このパラメータは無視され、Recordset オブジェクトから取得されたレコードの数が使われます。レコードの数が多すぎて、すべてをカウントすることが合理的でない場合には、TOO_BIG_TOO_COUNT という値を渡します。

dFormats

ADO の日付/時刻形式と Commerce Server ビジネス デスクの日付/時刻形式との間で、特殊な日付/時刻マッピングを行うために使う情報を含む Dictionary オブジェクトです。

戻り値

指定された ADO Recordset オブジェクト内のすべてまたは一部データを反映する record 要素を含む XML の XMLDOMElement オブジェクトです。

解説

変換により、指定した ADO レコードセット内のすべてまたは一部のデータが、いくつもの record 要素 (複数の XMLDOMElement オブジェクト) を含む 1 つの XML document 要素 (1 つの XMLDOMElement オブジェクト) として表現されます。

dFormats パラメータは、日付および時刻に関して特殊なマッピングを行うために使われる Dictionary オブジェクトを指定しています。この Dictionary オブジェクトにおけるキーはフィールドの名前で、値は ADO (ActiveX Data Object) データ型値、または定数 COMMERCE_SPLIT_DATE に対応付けられた特殊な値のいずれかです。この Dictionary オブジェクトのフィールド名を調べることによって、AddFormattedNode ルーチンの sType パラメータとして渡すための適切な値が決まります。次の表は、これらのマッピングを示しています。

フィールド名キーのディクショナリ値 | sType 値と処理
AD_DATE、AD_DB_DATE、AD_DB_TIMESTAMP、AD_DB_TIME | sType パラメータは、対応する Dictionary オブジェクトの値に設定されます。
COMMERCE_SPLIT_DATE 次のパラメータを指定して、AddFormattedNode ルーチンが 2 回呼び出されます。
  1. sName = <ADO フィールド名>_date
    sValue = <ADO フィールド値>
    sType = AD_DB_DATE

  2. sName = <ADO フィールド名>_time
    sValue = <ADO フィールド値>
    sType = AD_DB_TIME
その他すべて | sType パラメータは、対応する ADO フィールドの type プロパティに設定されます。

このルーチンは、インクルード ファイル DBUtil.asp の中にあります。

関連項目

サーバー側ルーチン

xmlGetXMLFromQuery (サーバー側)

xmlGetXMLFromQueryEx (サーバー側)

xmlGetXMLFromRS (サーバー側)

クライアント側ルーチン


xmlMergeGroups2 (サーバー側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、2 セットの XML レコードをマージするために使います。結果は XML ドキュメントとして返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。もう 1 つのレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについてのより詳しい情報が含まれます。レコードのセットは両方とも XML ドキュメントに格納されます。

各セットから取得されたレコードは結合され、マージされて 2 層構造のレコードのセットになります。1 番目の層には高レベルの情報が含まれ、2 番目の層には詳細情報が含まれています。

定義

xmlMergeGroups2(xmlMaster,

                  xmlDetail,

                  sKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常はより詳細な情報です。

sKeyId

別パラメータとして渡される 2 つの XML ドキュメントの両方に存在するデータ要素がある場合に、その要素名に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 2 層構造のレコードのセットを含む XML の DOMDocument オブジェクトです。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、2 レベルの ListSheet HTC によって使われる、2 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML のデータ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層および 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、ActionPageUtil.asp ファイルの中で定義されています。

関連項目

サーバー側ルーチン

sMergeGroups2 (サーバー側)

sMergeGroups3 (サーバー側)

xmlMergeGroups3 (サーバー側)

クライアント側ルーチン

xmlMergeGroups2 (クライアント側)


xmlMergeGroups3 (サーバー側)

このルーチンは、同一エンティティに関するそれぞれ別の情報を含んでいる、3 セットの XML レコードをマージするために使います。結果は XML ドキュメントとして返されます。

1 番目のレコードのセットはマスター セットと呼ばれ、セット内の各エンティティについての高レベルの情報が含まれます。2 番目のレコードのセットはグループ セットと呼ばれ、同じ一連のエンティティについて、より詳しい情報が含まれています。3 番目のレコードのセットは詳細セットと呼ばれ、同じ一連のエンティティについて、最も詳しい情報が含まれています。レコードのセットは、3 種類ともすべて XML ドキュメントに入れられます。

各セットから取得したレコードは結合され、マージされて 3 層構造のレコードのセットになります。1 番目の層には高レベルの情報、2 番目の層にはグループ レベルの詳細情報、3 番目の層には最も詳しい情報が含まれています。

定義

xmlMergeGroups3(xmlMaster,

                  xmlGroup,

                  xmlDetail,

                  sMasterKeyId,

                  sDetailKeyId)

パラメータ

xmlMaster

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード構造を持つ XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 1 番目の層に現れるデータが含まれています。含まれているデータは、通常は高レベルの情報です。

xmlGroup

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 2 番目の層に現れるデータが含まれています。含まれているデータは、通常は中程度の詳細情報です。

xmlDetail

一連の record 要素とそれに関連付けられたデータが含まれている、標準 XML データ レコード形式で表現された XML DOMDocument オブジェクトです。これらの record 要素には、生成された標準 XML データ レコード構造の 3 番目の層に現れるデータが含まれています。含まれているデータは、通常は最も詳細な情報です。

sMasterKeyId

xmlMaster ドキュメントと xmlGroup ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

sDetailKeyId

xmlGroup ドキュメントと xmlDetail ドキュメントの両方に存在するデータ要素がある場合に、それらのデータ要素の名前に対応付けられる文字列です。この要素の値は、一方の XML ドキュメントから取得したレコードを、もう一方の XML ドキュメントのレコードと結合するために使われます。

戻り値

マージされた 3 層構造のレコードのセットを含む XML の DOMDocument オブジェクトです。標準 XML データ レコード形式で表現されています。

解説

このルーチンは、3 レベルの ListSheet HTC によって使われる、3 層から成る XML データ レコード構造を準備するときに役立ちます。ListSheet HTC において、単層、2 層、および 3 層の各データ レコード構造が必要となる条件の詳細については、「ListSheet」と「標準 XML データ レコード形式」を参照してください。

単層 XML データ レコード構造がマージされ、2 層および 3 層の XML データ レコード構造が作成される過程の詳細については、「XML データのマージ」を参照してください。

このルーチンは、インクルード ファイル ASPUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、ActionPageUtil.asp ファイルの中で定義されています。

関連項目

サーバー側ルーチン

sMergeGroups2 (サーバー側)

sMergeGroups3 (サーバー側)

xmlMergeGroups2 (サーバー側)

クライアント側ルーチン

xmlMergeGroups3 (クライアント側)


xmlXMLFromDict (サーバー側)

このルーチンは、Dictionary オブジェクトを XML ドキュメントに変換するために使います。

定義

xmlXMLFromDict(byRef dDict)

パラメータ

dDict

XML に変換する Dictionary オブジェクトです。

戻り値

Dictionary オブジェクト内の各エントリに対応する item 要素が含まれた XML の DOMDocument オブジェクトです。

解説

それぞれの item 要素には name 属性と value 属性という 2 つの属性が与えられており、それらの属性は、Dictionary オブジェクト内の各エントリが持つ名前と値を使って初期化されています。

<item name="keyname" value="value"/>

このルーチンは、インクルード ファイル HTTPXMLUtil.asp の中にあります。

このルーチンには、同等の機能を持つ別のバージョンが存在します。これはクライアント側で使うためのもので、HTTPXMLUtil.htm ファイルの中で定義されています。

関連項目

サーバー側ルーチン

dDictFromXML (サーバー側)

クライアント側ルーチン

dDictFromXML (クライアント側)

xmlXMLFromDict (クライアント側)

xmlXMLFromForm (クライアント側)


ビジネス デスクをデバッグする

ビジネス デスク フレームワークには、覚えておく必要があるデバッグ機能が多々あります。また、心に留めておく必要があるその他の要素もいくつかあります。これらは次のカテゴリに分類できます。

  • XML 構成ファイルを変更する

  • HTC の問題をデバッグする

  • フレームワーク ルーチンで XMLHTTP をデバッグする

  • ListSheet HTC と TreeView HTC で XMLHTTP をデバッグする

  • デバッグ用のグローバル フラグ

XML 構成ファイルを変更する

Config フォルダの XML 構成ファイルを変更後、変更をユーザー インターフェイスに反映させるには、インターネット インフォメーション サービス (IIS) アプリケーションを再起動する必要があることを覚えておいてください。

SHOW_OBJECT_ERRORS フラグと VERBOSE_OUTPUT フラグによって生成された出力が表示されるのは、IIS アプリケーションを再起動した後で初めて Commerce Server ビジネス デスクを実行したときだけです。詳細については、「デバッグ用のグローバル フラグ」を参照してください。

HTC の問題をデバッグする

各 HTC ファイル内の m_bDebug 変数を True に設定すると、警告として開発者エラーが表示されます。HTC がページの読み込みに失敗する場合は、この方法を試してみる必要があります。

HTC の設定を変更したら、Internet Explorer の構成が、ページが要求されるたびに読み込みが行われるようになっていることを毎回確認してください。

ページが要求されるたびに読み込みが行われるよう Internet Explorer が構成されていることを確認するには

  1. Internet Explorer で、[ツール] メニューの [インターネット オプション] をクリックします。

  2. [全般] タブで、[インターネット一時ファイル] の [設定] をクリックします。

  3. [設定] ダイアログ ボックスで、[ページを表示するごとに確認する] が選択されていることを確認します。

フレームワーク ルーチンで XMLHTTP をデバッグする

HTTPXMLUtil.htm ファイル内の xmlPostFormViaXML ルーチンと xmlUpdateServerState ルーチンにある bDebug 変数を True に設定すると、XMLHTTP を使ってサーバーに送信する場合に送受信されるデータが表示されます。これらのデバッグ メッセージは、dlg_debug.htm ページを使って表示されます。

ListSheet HTC と TreeView HTC で XMLHTTP をデバッグする

ListSheet.htc と TreeView.htc の各 HTC ファイルにある m_bDebugHTTPXML 変数を True に設定すると、xmlPostToServer ルーチン内からデバッグ情報が表示されます。この場合、XMLHTTP 操作を使って送受信されるデータが表示されます。また、XMLHTTP のフェッチ操作ごとに、3 つの警告が表示されます。送信されるデータについて 1 つ、返されたテキストについて 1 つ、および返された XML について 1 つです。

HTC の設定を変更したら、Internet Explorer の構成が、ページが要求されるたびに読み込みが行われるようになっていることを毎回確認してください。

ページが要求されるたびに読み込みが行われるよう Internet Explorer が構成されていることを確認するには

  1. Internet Explorer で、[ツール] メニューの [インターネット オプション] をクリックします。

  2. [全般] タブで、[インターネット一時ファイル] の [設定] をクリックします。

  3. [設定] ダイアログ ボックスで、[ページを表示するごとに確認する] が選択されていることを確認します。

デバッグ用のグローバル フラグ

ビジネス デスクの Global.asa ファイル内の MSCSEnv 変数を PRODUCTION から DEVELOPMENT に変更するか、この逆に変更すると、次の多くのデバッグ フラグが一度に変更されます。

VERBOSE_OUTPUT

True に設定されている場合、アプリケーションを起動するときの XML 構成の読み込み中に詳細出力が表示され、アプリケーション内に格納されている Dictionary オブジェクトを表すテーブルが表示されます。出力を確認し終わったら、[最新の情報に更新] をクリックしてビジネス デスクを読み込みます。

SHOW_OBJECT_ERRORS

True に設定されている場合、XML 構成の読み込み時に、XML とその他のエラーがモードレス ダイアログ ボックスに表示されます。

AUTO_REDIRECT_ENABLED

True に設定されている場合、ユーザーは、通常のビジネス デスク フレーム構造の外部でビジネス デスク ページを読み込めなくなります (これは、BizDeskUtil.asp ファイル内で適用されます)。

FORCE_HTA_ONLY

True に設定されている場合、クライアント インストールで提供される HTML アプリケーション (HTA) の外部でのビジネス デスクの参照が禁止されます。この変数の設定を False にすると、URL "//servername/bizdeskrootname/bizdesk.asp" を使って、通常のブラウザでビジネス デスクを実行できるようになります。

ALLOW_CONTEXT_MENUS

True に設定されている場合、右クリックで表示されるショートカット メニューが使用可能になり、[最新の情報に更新] と [ソースの表示] を使ってページの障害を調べることができます。

SHOW_DEBUG_TEXT

True に設定されている場合、さまざまな方法で次のような各種のデバッグ情報が表示されます。

1. マウスオーバーを対象にしたタスクとモジュール。

2. ERROR (通常は不明のファイル) または FILTERED (ユーザー ACL によって) として無効にされているモジュール。

3. ステータス バーの凡例領域における Request、Session、Application の各オブジェクトの内容。

4. ページのタイトル バーにおけるダーティ、必須、有効の各フラグの状態。


XML のリファレンス

Microsoft Commerce Server 2000 では、さまざまな部分で拡張マークアップ言語 (XML) を利用しています。XML の利用形態は機能ごとに異なっているため、数多くの定義済み XML 構造が存在しています。ここでは、それらの各種 XML 構造に関する参考資料を提供します。

ここでは、次のトピックについて説明します。

  • 分析とレポートのための XML 構造 : Commerce Server の分析機能でレポートを作成する際に使われる XML 構造について説明します。

  • カタログの XML 構造 : 商品カタログ システムに商品カタログをインポートするためのXML 構造について説明します。インポートする場合、商品カタログはこの構造で表現されている必要があります。

  • ビジネス デスクの XML 構造 : Commerce Server ビジネス デスクで使われるさまざまな XML 構造について説明します。カテゴリやモジュールの構造を定義するための XML 構造、各種の HTML コンポーネント (HTC) によって使われる XML 構造などがあります。

  • 式の XML 構造 : 式アーキテクチャで使われる XML 構造について説明します。

  • プロファイルの XML 構造 : プロファイル サービスで使われる XML スキーマとデータ構造について説明します。


分析とレポートのための XML 構造

ここでは、動的レポートを作成するために必要な最小限の拡張マークアップ言語 (XML) 構造体について説明します。

オンライン分析処理 (OLAP) レポートには、キューブ名を指定する必要があります。SQL レポートには、クエリを提供する必要があります。

レポートが表示されると、レイアウトを動的に修正でき、Commerce Server ビジネス デスクからの結果を格納できます。

レポートを新規作成後、XML 構造を直接編集しないでください。ビジネス デスクを通してピボット コントロールを使い、レポートを修正してください。

XML 構造

<xml xmlns:x=''urn:schemas-microsoft-com:office:excel''>
<x:PivotTable>
   <x:OWCVersion>9.0.0.3821</x:OWCVersion>
   <x:DisplayFieldList/>
      <x:FieldListTop>300</x:FieldListTop>
      <x:FieldListLeft>800</x:FieldListLeft>
      <x:FieldListBottom>700</x:FieldListBottom>
      <x:FieldListRight>1000</x:FieldListRight>
   <x:CacheDetails/>
   <x:ConnectionString>ConnectionString</x:ConnectionString>
   [<x:CommandText>QueryString</x:CommandText>]
   [<x:DataMember>CubeName</x:DataMember>]
</x:PivotTable>
</xml>

CommandText 要素は SQL レポートにだけ使われ、SQL クエリを含みます。

DataMember 要素は OLAP レポートにだけ使われ、キューブ名を含みます。

ConnectionString は次のどちらかになります。

  • SQL レポートでは"Provider=SQLOLEDB;Data Source=;Initial Catalog=;Integrated Security=SSPI" です。

  • MDX レポートでは"Provider=MSOLAP;Data Source=;Initial Catalog=;Client Cache Size=25;Auto Synch Period=10000" です。

Data Source 属性と Initial Catalog 属性の値は、接続文字列には指定されません。これらの値は、レポート実行時に管理データベースから取得します。

関連項目

分析とレポート作成のためのスキーマ

AsyncRpt オブジェクト

カスタム レポートを作成する

ReportRenderer オブジェクト

レポートを実行する


カタログの XML 構造

Microsoft Commerce Catalog の拡張マークアップ言語 (XML) 形式は、アプリケーション間での交換やインターネットを介した転送に適した形式で商品カタログを表すことができるように設計されています。

この形式自体は XML データ スキーマで定義されているので、BizTalk Server のマッピング ツールなどの XML データ対応ツールと共に使用できます。

Commerce Catalog XML 形式は、多様な商品カタログを表すために設計されています。このため、"メタスキーマ" という考え方を採用しています。メタスキーマとは、特定の商品をスキーマ定義セクションで定義できる形式で表す方法です。このスキーマ定義セクションは、商品とカテゴリの両方を説明し、さまざまな種類の商品とカテゴリに属性を定義するために、カタログ (またはカタログ コレクション) が格納する属性の種類を定義します。

Commerce Catalog XML 形式は、特定の種類の商品を決まった形式で表すのではなく、ほとんどすべての商品に関する説明を詳しい形式で記録できる手段を提供します。

また、この形式では、複数のカタログを 1 つの XML ファイルで表すことができます。

ここでは、次のトピックについて説明します。

  • XML 構造 : XML 構造を表示します。

  • XML 要素 : XML 要素とその関連について説明します。

  • インポート セマンティクス : Commerce Server カタログの XML ファイルをインポートするときに適用されるセマンティクスについて説明します。

  • XDR スキーマ : XML の要素、属性、および関連を定義するために使用する XML Data-Reduced (XDR) スキーマについて示します。


XML 構造

ここでは、Microsoft Commerce カタログの拡張マークアップ言語 (XML) 構造、要素、および属性について説明します。次の例では、斜体でない名前は XML 構造の要素を表します。最初に出現する各要素は、その要素を説明するトピックにリンクしています。斜体になっている名前は、各要素に関連する属性です。

<MSCommerceCatalogCollection>
   <CatalogSchema>
      <AttributeDefinition name DataType Id />
      <Definition Name DefinitionType properties variantProperties />
      <PropertiesDefinition>
         <Property name DataType MinValue MaxValue DisplayName id
                   AssignAll DefaultValue DisplayInProductsList
                   DisplayOnSite ExportToDW IncludeInSpecSearch
                   IsFreeTextSearchable />
            <PropertyValue DisplayName />
         </Property>
      </PropertiesDefinition>
   </CatalogSchema>
   <Catalog catalogName description locale startDate endDate
            productIdentifier productVariantIdentifier currency>
      <Category name Definition isSearchable id parentCategories
                listprice>
         <Field fieldID fieldValue />
         <Relationship name description relation />
      </Category>
      <Product definition listprice id parentCategories pricingCategory>
         <Field fieldID fieldValue />
         <ProductVariant Id>
            <Field fieldID fieldValue />
         </ProductVariant>
         <Relationship name description relation />
      </Product>
   </Catalog>
</MSCommerceCatalogCollection>


XML 要素

Microsoft Commerce カタログの拡張マークアップ言語 (XML) 要素は、次の 3 つのグループに分割されます。

  • MSCommerceCatalogCollection : Commerce Catalog XML ファイルのルート ノードです。

  • カタログ スキーマ要素 : 次の要素はカタログを拡張するために使用されます。CatalogSchema、AttributeDefinition、Definition、PropertiesDefinition、Property、PropertyValue

  • カタログ データ要素 : 次の要素は、実際のカタログとそのメンバに使用されます。Catalog、Category、Field、Product、ProductVariant、Relationship

AttributeDefinition

"表示名" など、プロパティの性質を表すための属性を定義します。この要素を使用すると、組み込みの属性の最上位のフィールドに、name、maxSize、defaultValue などの追加の属性を定義できます。

親要素 : CatalogSchema

子要素 : なし

属性 :

名前 | 説明
DataType | 有効なデータ型は次のとおりです。 Date/Time Money Number 文字列 BigNumber Real Float Currency Boolean
id | ドキュメント内の各ノードに一意な ID です。スペースを含むことはできません (XML の要件)。
name | 属性の定義の名前です。

Catalog

個々のカタログを定義します。

親要素 : MSCommerceCatalogCollection

子要素 : Category、Product

属性 :

名前 | 説明
catalogName | カタログの名前です。
currency | カタログで使用する通貨です。3 文字の ISO 4217 通貨コードで表されます。"USD"、"AUD"、"CDN"、"GBP"、"DEM"、"JPY" などがあります。
description | カタログの説明です。
endDate | カタログの有効期間が終了する日付です。参照のみの目的で使用されます。Commerce Server では、この値に対して何のロジックも適用されません。
locale | カタログのロケールです。Windows Locale ID (LCID) を使用して指定します。どのロケール用のカタログかを示すヘルプの目的に使用されます。
productIdentifier | カタログ内の商品 (または商品グループ) を一意に識別するプロパティの名前です。
productVariantIdentifier | カタログ内の商品バリエーションを一意に識別するプロパティの名です。バリエーションを持つ商品がカタログに含まれない場合は、この属性を、productIdentifier 属性と同じ値に設定します。
startDate | カタログが有効になる日付です。参照のみの目的で使用されます。Commerce Server では、この値に対して何のロジックも適用されません。

CatalogSchema

カタログ コレクションに対するスキーマ定義要素が含まれます。

親要素 : MSCommerceCatalogCollection

子要素 : AttributeDefinition、Definition、PropertiesDefinition

属性 : なし

Category

カテゴリの種類のインスタンスを定義します。

親要素 : Catalog

子要素 : Field、Relationship

属性 :

名前 | 説明
Definition | カテゴリの基本カテゴリ定義の名前です。
id | カテゴリ要素の XML ID です。
isSearchable | このカテゴリを条件指定検索の開始点として使用するかどうかを示します。True の場合、このカテゴリは、ProductCatalog.GetSearchableCategories オブジェクトの呼び出しによって返されるレコード セットに含まれます。 値は、0 が False、1 が True です。
name | カテゴリの名前です。この名前は、同一のカタログ内のカテゴリすべてにわたって一意である必要があります。
parentCategories | このカテゴリのすぐ上の親であるカテゴリの XML ID です。
listprice | このカテゴリを価格カテゴリとして参照する商品すべてに適用される価格です。この値の単位は、含んでいるカタログの通貨属性によって決まります。

Definition

商品またはカテゴリの種類を定義します。

親要素 : CatalogSchema

子要素 : なし

属性 :

名前 | 説明
DefinitionType | 定義の種類です。"product" または "category" のいずれかになります。
Name | プロパティの名前です。この名前は、XML ドキュメント内で一意である必要があります。
properties | この商品定義またはカテゴリ定義に含まれるプロパティの XML ノード ID です。
variantProperties | この商品定義のバリエーション プロパティとして含まれるプロパティの XML ノード ID です。この属性は、定義の種類が "product" である場合にのみ使用します。

Field

フィールドの名前と値の組み合わせを定義します。

親要素 : Category、Product、ProductVariant

子要素 : なし

属性 :

名前 | 説明
fieldID | 値が提供されているプロパティの名前です。
fieldValue | プロパティの値です。

MSCommerceCatalogCollection

Commerce Catalog XML ファイルのルート ノードです。

親要素 : なし

子要素 : CatalogSchema、Catalog

属性 : なし

Product

商品の種類のインスタンスを定義します。

親要素 : Catalog

子要素 : Field、ProductVariant、Relationship

属性 :

名前 | 説明
definition | 商品の基本商品定義の名前です。
id | 商品要素の XML ID です。
listprice | 商品の価格です。この値の単位は、含んでいるカタログの通貨属性によって決まります。
parentCategories | 商品が属しているカテゴリの XML ID です。
pricingCategory | 商品が価格を継承するカテゴリの XML ID です。 この属性は省略可能です。

ProductVariant

商品のバリエーションのインスタンスを定義します。

親要素 : Product

子要素 : Field

属性 :

名前 | 説明
id | バリエーション要素の XML ID です。

PropertiesDefinition

個々のプロパティ定義のコンテナです。

親要素 : CatalogSchema

子要素 : Property

属性 : なし

Property

商品またはカテゴリの性質を表すためのプロパティを定義します。

親要素 : PropertiesDefinition

子要素 : PropertyValue

属性 :

名前 | 説明
AssignAll | Commerce Server ビジネス デスクを使用して商品定義を作成するときに、このプロパティを商品定義に自動的に割り当てるかどうかを示します。 値 : "1" (True) または "0" (False)。
DataType | 有効な値は次のとおりです。 Date/Time Enumeration FileName Float Money Number 文字列 BigNumber Currency Boolean Real
DefaultValue | プロパティのインスタンスの既定値です。この値は、このプロパティに指定されているデータ型に従って変換されます。Date/Time の値は、XML 日付形式で指定する必要があります。
DisplayInProductsList | このプロパティを、ビジネス デスク カタログ エディタの商品の要約リストに表示するか、そのほかの商品リストが表示されている領域に表示するかを示します。 値 : "1" (True) または "0" (False)。
DisplayName | プロパティの表示名です。サイト ユーザーに対してこのプロパティの値の横に表示されるラベルなどがあります。
DisplayOnSite | Web サイトを訪問しているユーザーにこのプロパティを表示するかどうかを示します。 値 : "1" (True) または "0" (False)。
ExportToDW | カタログ DTS タスクでこのプロパティをデータ ウェアハウスにエクスポートするかどうかを示します。この属性を True に設定したプロパティは、レポートやデータ分析に利用できます。 値 : "1" (True) または "0" (False)。
id | ドキュメント内の各ノードに一意な ID です。スペースを含むことはできません (XML の要件)。
IncludeInSpecSearch | このプロパティに対して条件指定検索を実行するかどうかを示します。 値 : "1" (True) または "0" (False)。
IsFreeTextSearchable | このプロパティをフルテキスト インデックスに含めるかどうか、つまりフリー テキスト検索を可能にするかどうかを示します。 値 : "1" (True) または "0" (False)。
MaxValue | Number 型の最大有効値、および文字列型の最大文字数です。
MinValue | Number 型の最小有効値、および文字列型の最小文字数です。
name | プロパティの一意の名前です。

PropertyValue

プロパティの有効な値を定義します。

親要素 : Property

子要素 : なし

属性 :

名前 | 説明
DisplayName | 含まれるプロパティの有効な値です。

Relationship

2 つの商品またはカテゴリの間の関連を定義します。

親要素 : Category、Product

子要素 : なし

属性 :

名前 | 説明
description | 関連付けの説明です。
name | 関連付けの名前です。
relation | 同一のカタログ内の商品またはカテゴリの XML ID です。そのカタログに含まれる商品またはカテゴリを関連付けます。


インポート セマンティクス

ここでは、Commerce Server Catalog の XML ファイルをインポートするときに適用されるセマンティクスについて説明します。

カタログ スキーマ セマンティクス

カタログ データ セマンティクス

カタログ スキーマ セマンティクス

XML ファイルで定義されているスキーマは、カタログ データベースで既に定義されているスキーマ要素 (商品、カテゴリ、およびプロパティ定義) と競合してはなりません。競合している場合、アプリケーション イベント ログに説明エラーが記録され、インポートは放棄されます。スキーマが競合するのは次のような場合です。

  • 既に定義されているデータ型と異なるデータ型を使用するためにプロパティを再定義した場合

  • 別のメンバ プロパティのセットが含まれるように商品またはカテゴリを再定義した場合

Commerce Catalog XML のインポートを実行してもスキーマ要素は削除されません。新しいスキーマが追加されるだけです。

Commerce Catalog XML 形式で参照されるデータ型は、次に示すように SQL Server のデータ型にマップされます。

Catalog XML のデータ型 | SQL のデータ型
文字列 | nvarchar
Number | int
BigNumber * | bigint *
Date/Time | datetime
Currency | money
Money | money
Boolean | bit
Enumeration | nvarchar(128)
Real | real
Float | decimal
FileName | nvarchar(256)

注

  • アスタリスク (*) は、SQL Server 2000 でのみサポートされているデータ型を示します。

  • データ型の BigNumber、Boolean、および Real は、現在、Commerce Server ビジネス デスクではサポートされていません。

カタログ データ セマンティクス

Catalog XML ファイルでは、新しいカタログを定義したり、カタログ データベースの既存のカタログに対して更新を定義したりすることができます。

インポートするカタログがデータベースに既に存在する場合、インポートしたカタログで既存のカタログを上書きするか、または 2 つのカタログを結合してインポートすることができます。2 つのカタログを結合してインポートする場合は、次の規則に従います。

  • 商品の変更や追加は可能ですが、削除はできません。

  • 商品のバリエーションの変更や追加は可能ですが、削除はできません。

  • カテゴリの変更や追加は可能ですが、削除はできません。

  • 既存の商品と同じ識別プロパティを持つ商品要素は、既存の商品を更新することに注意します。特定のプロパティ (説明プロパティや価格など) だけを更新する場合、この商品要素では、その商品に適用されるフィールドのサブセットしか指定できません。

  • インポートする商品がデータべースに既に存在し (その商品が既存の商品と同じ識別子を持っている場合など)、異なる定義に基づいている場合、データベース内の既存の商品は削除されて新しい商品に置き換えられます。

  • インポートする商品がデータベースに既に存在する場合、商品をインポートするたびに親カテゴリとその関連をすべて指定する必要があります。そのようにしないと、それらの関連は削除されます。


XDR スキーマ

XML-Data Reduced (XDR) スキーマは、XML 構造で使用する個々の要素、属性、および関連を定義します。

<Schema name="MSCommerceCatalogCollection" xmlns="urn:schemas-microsoft-
        com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">
   <AttributeType name="name" dt:type="string" required="yes" />
   <AttributeType name="id" dt:type="id" required="yes" />
   <AttributeType name="dataType" dt:type="enumeration" dt:values="string
                  number bignumber datetime money real float currency
                  boolean enumeration filename" required="yes" />
   <AttributeType name="value" />
   <AttributeType name="parentCategories" dt:type="idrefs" />
   <AttributeType name="Definition" dt:type="string" required="yes" />
   <ElementType name="MSCommerceCatalogCollection">
      <element type="CatalogSchema" minOccurs="1" maxOccurs="1" />
      <element type="Catalog" minOccurs="0" maxOccurs="*" />
   </ElementType>
   <ElementType name="PropertiesDefinition">
      <element type="Property" minOccurs="0" maxOccurs="*" />
   </ElementType>
   <ElementType name="CatalogSchema">
      <element type="PropertiesDefinition" minOccurs="0" maxOccurs="1" />
      <element type="Definition" minOccurs="0" maxOccurs="*" />
      <element type="AttributeDefinition" minOccurs="0" maxOccurs="*" />
   </ElementType>
   <ElementType name="AttributeDefinition">
      <attribute type="name" />
      <attribute type="id" />
      <attribute type="dataType" />
   </ElementType>
   <ElementType name="PropertyValue">
      <AttributeType name="displayName" dt:type="string" required="yes" />
      <attribute type="displayName" />
   </ElementType>
   <ElementType name="Property" model="open">
      <AttributeType name="DefaultValue" dt:type="string" />
      <AttributeType name="MinValue" dt:type="string" />
      <AttributeType name="MaxValue" dt:type="string" />
      <AttributeType name="IsFreeTextSearchable" dt:type="boolean" />
      <AttributeType name="IncludeInSpecSearch" dt:type="boolean" />
      <AttributeType name="DisplayOnSite" dt:type="boolean" />
      <AttributeType name="DisplayName" dt:type="string" />
      <AttributeType name="AssignAll" dt:type="boolean" />
      <AttributeType name="ExportToDW" dt:type="boolean" />
      <AttributeType name="DisplayInProductsList" dt:type="boolean" />
      <attribute type="DefaultValue" />
      <attribute type="MinValue" />
      <attribute type="MaxValue" />
      <attribute type="IsFreeTextSearchable" />
      <attribute type="IncludeInSpecSearch" />
      <attribute type="DisplayOnSite" />
      <attribute type="DisplayName" />
      <attribute type="AssignAll" />
      <attribute type="ExportToDW" />
      <attribute type="DisplayInProductsList" />
      <attribute type="name" />
      <attribute type="DataType" />
      <attribute type="id" />
      <element type="PropertyValue" minOccurs="0" maxOccurs="*" />
   </ElementType>
   <ElementType name="Definition">
      <AttributeType name="properties" dt:type="idrefs" />
      <AttributeType name="variantProperties" dt:type="idrefs" />
      <AttributeType name="DefinitionType" required="yes" dt:type=
                     "enumeration" values="product category" />
      <attribute type="name" />
      <attribute type="DefinitionType" />
      <attribute type="properties" />
      <attribute type="variantProperties" />
   </ElementType>
   <ElementType name="Catalog">
      <AttributeType name="currency" required="yes" />
      <AttributeType name="locale" dt:type="string" />
      <AttributeType name="startDate" dt:type="string" />
      <AttributeType name="endDate" dt:type="string" />
      <AttributeType name="productIdentifier" required="yes" dt:type="string" />
      <AttributeType name="productVariantIdentifier" required="yes" dt:type="string" />
      <AttributeType name="weight_measuring_unit" dt:type="string" />
      <element type="Category" minOccurs="0" maxOccurs="*" />
      <element type="Product" minOccurs="0" maxOccurs="*" />
      <attribute type="catalogName" />
      <attribute type="description" />
      <attribute type="currency" />
      <attribute type="locale" />
      <attribute type="startDate" />
      <attribute type="endDate" />
      <attribute type="productIdentifier" />
      <attribute type="productVariantIdentifier" />
   </ElementType>
   <ElementType name="Field">
      <AttributeType name="fieldID" dt:type="idref" />
      <AttributeType name="fieldValue" dt:type="string" required="yes" />
      <attribute type="fieldID" />
      <attribute type="fieldValue" />
   </ElementType>
   <ElementType name="Category">
      <AttributeType name="isSearchable" dt:type="string" />
      <AttributeType name="listprice" dt:type="string" />
      <AttributeType name="image" dt:type="string" />
      <AttributeType name="description" dt:type="string" />
      <attribute type="listprice" />
      <attribute type="id" />
      <attribute type="name" />
      <attribute type="parentCategories" />
      <attribute type="Definition" />
      <attribute type="isSearchable" />
      <element type="Field" minOccurs="1" maxOccurs="*" />
      <element type="Relationship" minOccurs="0" maxOccurs="*" />
   </ElementType>
   <ElementType name="Product">
      <AttributeType name="pricingCategory" />
      <AttributeType name="listprice" dt:type="string" required="yes" />
      <attribute type="listprice" />
      <attribute type="id" />
      <attribute type="definition" />
      <attribute type="pricingCategory" />
      <attribute type="parentCategories" />
      <element type="Field" minOccurs="1" maxOccurs="*" />
      <element type="Relationship" minOccurs="1" maxOccurs="*" />
      <element type="ProductVariant" minOccurs="0" maxOccurs="*" />
   </ElementType>
   <ElementType name="ProductVariant">
      <attribute type="Id" />
      <element type="Field" minOccurs="1" maxOccurs="*" />
   </ElementType>
   <ElementType name="Relationship">
      <AttributeType name="description" dt:type="string" />
      <AttributeType name="relation" required="yes" dt:type="idref" />
      <attribute type="name" />
      <attribute type="description" />
      <attribute type="relation" />
   </ElementType>
</Schema>


ビジネス デスクの XML 構造

Commerce Server ビジネス デスクが使う拡張マークアップ言語 (XML) 構造は 3 つのカテゴリに分類できます。

  • モジュール構成 : カテゴリおよびモジュールを構成するために使われる XML 構造です。ビジネス デスクに新しいモジュールが追加されたときか、既存のモジュールが再編集または削除されたときだけに変更が必要です。

  • HTML コンポーネント (HTC) データ : ビジネス デスク フレームワークの一部として提供される各種のHTC 内に表示されるデータを表すために使用される XML 構造です。多くの場合、1 つの標準フォーマットしか使われませんが、一部のコントロールはほかのコントロールよりも深くネストされます。通常、この構造を持つ XML データアイランドは、ある特定の HTC が正しく動作するために必要な 2 つのデータアイランドのうちの 1 つです。

    このカテゴリのほかの XML 構造は、TreeView HTC のノードを表すために使用されます。データと構成情報が同じ XML 構造に埋め込まれるので、この構造は一意です。

  • HTC 構成 : 表示するデータに関するメタデータを提供するために使用される XML 構造です。たとえば、データを列内に表示する場合、この構造は、各列に関する情報を指定します。列見出し、データ書式化の方法、列幅、列の並べ替えを許容するかどうか、といった情報です。通常、このタイプの XML データアイランドは、ある特定の HTC が正しく動作するために必要な 2 つのデータアイランドのうちの 1 つです。

ここでは、次のトピックについて説明します。

  • マスター構成ファイル : マスター モジュール構成ファイルの XML 構造について説明します。この構造は、マスター モジュール構成ファイル以外のすべてのモジュール構成ファイルを 1 つに集成し、モジュール構成ファイルの組織をカテゴリへ含めます。

  • モジュール構成ファイル : 個々のモジュールの詳細を指定する、モジュール構成ファイルの XML 構造について説明します。

  • 標準 XML のデータ レコード形式 : データを表現するために、多くの HTC で必要となる XML 構造について説明します。これらの HTC としては、DynamicTable、EditField、EditSheet、ListEditor、および ListSheet があります。

  • DynamicTable の構成 : DynamicTable HTC への構成情報の XML 構造について説明します。DynamicTable HTC は埋め込み EditField HTC を使うため、構成情報の多くはこの 2 つの HTC の間で共有されます。詳細については、「EditField の構成」を参照してください。

  • EditField の構成 : 1 つ以上の EditField HTC に対する構成情報の XML 構造について説明します。

  • EditSheet の構成 : EditSheet HTC への構成情報の XML 構造について説明します。EditSheet HTC は埋め込み EditField HTC を使うため、構成情報の多くはこの 2 つの HTC の間で共有されます。詳細については、「EditField の構成」を参照してください。

  • ExpressionBuilder の構成 : ExpressionBuilder HTC への構成情報の XML 構造について説明します。

  • ListEditor の構成 : ListEditor HTC への構成情報の XML 構造について説明します。ListEditor HTC は埋め込み EditField HTC を使うため、構成情報の多くはこの 2 つの HTC の間で共有されます。詳細については、「EditField の構成」を参照してください。

  • ListSheet の構成 : ListSheet HTC への構成情報の XML 構造について説明します。

  • QueryBuilder の構成 : QueryBuilder HTC への構成情報の XML 構造について説明します。

  • TreeView の構成 : TreeView HTC で使われる、集成済みデータと構成情報の XML 構造について説明します。


マスター構成ファイル

マスター構成ファイルは XML を格納し、Commerce Server ビジネス デスクへのカテゴリおよびモジュール構成の中心です。モジュール化の実現のために、各モジュールやモジュール群の特定の構成は、モジュール構成ファイルと呼ばれる、ほかの XML 構成ファイルに分離されます。各モジュール構成ファイルは、マスター構成ファイル内の moduleconfig 要素によって参照されます。モジュール構成ファイルは、マスター構成ファイルのインクルード ファイルと考えることができます。

ここでは、マスター構成ファイルの内容について説明します。XML 構造については詳細に説明します。各要素にはその内容に関連した名前が付けられています。各要素の属性はイタリック体で表し、通常属性に付く等号と値は省略しています。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

マスター構成ファイルへの XML スキーマは、ビジネス デスクの Config フォルダにある Bdconfig-schema.xml ファイルにあります。

注

  • マスター構成ファイルの XML 要素および属性は小文字を使う必要があります。

XML 構造

<?xml version = '1.0' encoding='windows-1252' ?>
<config>
  <categories>
    <category id>
      <name>name with underlined access key</name>
      <key>access key from above</key>
      <tooltip>category tooltip</tooltip>
    </category>
    ...
    <category id>
      <name>name with underlined access key</name>
      <key>access key from above</key>
      <tooltip>category tooltip</tooltip>
    </category>
  </categories>
  <moduleconfigs>
    <moduleconfig category id />
    ...
    <moduleconfig category id />
  </moduleconfigs>
</config>

config

この必須要素は、マスター構成ファイル内の構成情報をすべて含んでいます。

親要素

なし (ドキュメント ルート)。

必須の子要素

categories と moduleconfigs

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

categories

この必須要素は 1 つまたは複数の category 要素を含みます。

親要素

config

必須の子要素

category (少なくとも 1 つは必要ですが、通常は複数です)。

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

category

この必須要素は、Commerce Server ビジネス デスクのカテゴリを識別し、説明します。

親要素

categories

必須の子要素

name、key、tooltip

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
id | カテゴリの識別子を指定します。 必須。 有効な値 : 通常、すべて英小文字で、下線やその他の特殊文字を含まない 1 ワードです。 既定値 : なし。 この識別子は、モジュール構成ファイルをそれぞれの定義済みカテゴリに関連付けるために moduleconfig 要素の category 要素の値としても使われます。 各カテゴリの id 属性の値は一意でなければなりません。

XML 構造に戻る

name

この必須要素は、Commerce Server ビジネス デスクのユーザーが参照するカテゴリ名を指定します。

親要素

category

必須の子要素

なし。

省略可能な子要素

なし。

データ

ビジネス デスクのユーザーが参照するカテゴリ名です。

属性

なし。

解説

指定されたカテゴリ名の 1 文字に下線を付けて、ショートカット キーを指定する必要があります。下線を付けるためには、適切なエスケープ HTML を使う必要があります。下線を付ける文字の前に文字列 &lt;U&gt; を付加し、後に文字列 &lt;/U&gt; を付加します。

たとえば、カテゴリ名が Content で、ショートカット キーが "c" の場合、&lt;U&gt;C&lt;/U&gt;ontent と指定する必要があります。その結果、 HTML 文字列 <U>C</U>ontent が生成され、ブラウザには "Content" と表示されます。

XML 構造に戻る

key

この必須要素は、カテゴリに関連付けられたショートカット キーとして機能する文字を指定します。

親要素

category

必須の子要素

なし。

省略可能な子要素

なし。

データ

ショートカット キーは、カテゴリ名の下線付き文字として Commerce Server ビジネス デスクのユーザーが参照します。

属性

なし。

解説

カテゴリへのショートカット キーは、カテゴリ名の中の下線付き文字と同じ文字を指定します。たとえば、カテゴリ名を文字列 Content のように指定する場合は、文字 "c" を <key> タグと </key> タグで囲む必要があります。

XML 構造に戻る

tooltip

この必須要素は、カテゴリに含まれるモジュールの目的に関する短い説明を指定します。カテゴリ名自体より詳しく説明します。

親要素

category

必須の子要素

なし。

省略可能な子要素

なし。

データ

カテゴリ tooltip 文字列は、カーソルがカテゴリ名を指したとき、Commerce Server ビジネス デスクのユーザーが参照します。

属性

なし。

XML 構造に戻る

moduleconfigs

この必須要素は、Commerce Server ビジネス デスクのインスタンスへ指定された各種のモジュール構成ファイルの参照を含んでいます。

親要素

config

必須の子要素

moduleconfig (通常は、categories 要素内に定義された category 各要素に対して少なくとも 1 つ含みます)。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

カテゴリごとに複数のモジュールを定義するためには、次の 2 つの方法があります。最初の方法は、同じカテゴリで異なるモジュール構成ファイルを指定する複数の moduleconfig 要素を定義します。モジュールは、moduleconfig 要素と同じ順序でカテゴリ内に表示されます。

2 番目の方法は、複数のモジュールを 1 つのモジュール構成ファイルで定義し、1 つの moduleconfig 要素で複数のモジュールを 1 つのカテゴリに結び付けます。

この 2 つの方法は組み合わせて使用できます。

XML 構造に戻る

moduleconfig

この必須要素は、Commerce Server ビジネス デスクのインスタンスで使う特定のモジュール構成ファイルを指定します。

親要素

moduleconfigs

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
category | id 属性で指定されたモジュール構成ファイルで定義されたモジュールに関連付けられたカテゴリの識別子を指定します。 必須。 有効な値 : この識別子は、category 要素の １ つの要素に指定された id 属性の値と一致する必要があります。 既定値 : なし。
id | 指定したカテゴリのモジュールの構成情報が格納された XML ファイルの (パスなしの) 名前を指定します。 必須。 有効な値 : 既存のモジュール構成ファイルの名前です。 既定値 : なし。

XML 構造に戻る


モジュール構成ファイル

モジュール構成ファイルはXML を格納し、Commerce Server ビジネス デスクへのモジュール レベルの構成情報を指定します。各モジュール構成ファイルは、マスター構成ファイルの moduleconfig 要素によって参照され、ビジネス デスクの特定のインスタンスへのカテゴリおよびモジュールの全体を構成します。モジュール構成ファイルは、マスター構成ファイルのインクルード ファイルと考えることができます。

ここでは、モジュール構成ファイルの内容について説明します。XML 構造については詳細に説明します。構造の各要素にはその内容に関連した名前が付けられています。また、各要素の属性はイタリック体で表し、通常それに付く等号と値は省略しています。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

マスター構成ファイルへの XML スキーマは、ビジネス デスクの Config フォルダにある Bdmodule-schema.xml ファイルにあります。

注

  • モジュール構成ファイル内の XML 要素および属性は小文字を使う必要があります。

XML 構造

<?xml version = '1.0' encoding='windows-1252' ?>
<config>
  <actions>
    <action id helptopic>
      <name>action name</name>
      <tooltip>action tooltip</tooltip>
      <tasks>
        <task icon id type>
          <goto action>menu item name</goto>
          <postto action formname>menu item name</postto>
          <name>task name</name>
          <key>access key from above</key>
          <tooltip>task tooltip</tooltip>
        </task>
        ...
        <task icon id type>
          ...
        </task>
      </tasks>
    </action>
    ...
    <action id helptopic>
      ...
    </action>
  </actions>
  <modules>
    <module id>
      <name>module name</name>
      <tooltip>module tooltip</tooltip>
    </module>
    ...
    <module id>
      ...
    </module>
  </modules>
</config>

config

この必須要素には、モジュール構成ファイル内の構成情報をすべて含んでいます。

親要素

なし (ドキュメント ルート)。

必須の子要素

actions、modules

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

actions

この必須要素は、モジュール構成ファイルで定義されたモジュールで指定された 1 つまたは複数の action 要素を含みます。

親要素

config

必須の子要素

action (少なくとも 1 つ)

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

action

この必須要素は、モジュール内で使用できる特定のアクションを指定します。この要素は、操作に関連付けられる ASP ページの URL を指定し、該当のヘルプ トピックおよびアクション内で使用できるタスクを指定します。

親要素

actions

必須の子要素

name、tooltip、tasks

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
helptopic | このアクションに対応するヘルプ ファイルの名前を指定します。 必須。 有効な値 : パスまたはファイル拡張子なしで指定された、既存の HTML ヘルプ ファイルの名前です。 既定値 : なし。
id | このアクションのエントリ ポイント ASP ページの URL を指定します。 必須。 有効な値 : 既存のエントリ ポイント ASP ページの URL。Commerce Server ビジネス デスク ルートからの相対パスとして指定します。 既定値 : なし。

解説

タスク、またはモジュールの対象として参照されるすべての ASP ページを action 要素で指定する必要があります。これは、ビジネス デスク フレームワークがモジュール間、およびモジュール内の操作ページ間の移動を適切に管理するために必須です。

XML 構造に戻る

name

この必須要素は、このアクションの名前を指定します。

親要素

action

必須の子要素

なし。

省略可能な子要素

なし。

データ

アクションの名前です。

属性

なし。

解説

特定のアクション名に HTML 書式ディレクティブが含まれる場合、適切なエスケープを使用する必要があります。たとえば、文字 "<" には文字列 &lt; を、文字 ">" には文字列 &gt; を、文字 "&" には文字列 &amp; を、それぞれ使用する必要があります。

XML 構造に戻る

tooltip

この必須要素は、アクションへの title 属性として使われるテキストを指定します。

親要素

action

必須の子要素

なし。

省略可能な子要素

なし。

データ

タスク ボタンをカーソルで指したときに表示される、アクションに関連付けられた tooltip 文字列です。

属性

なし。

XML 構造に戻る

tasks

この必須要素は、アクションに定義された 0 個以上の task 要素を含みます。

親要素

action

必須の子要素

なし。

省略可能な子要素

task

データ

なし。

属性

なし。

解説

通常は、tasks 要素で 0 個の要素を指定しません。要素を 0 個指定するのは、操作ページにタスクがないときです。

tasks 要素で最大 22 個まで task 要素を指定できます。

XML 構造に戻る

task

この必須要素は、アクションから使用できる特定のタスクを指定します。この要素は、タスクへのエントリ ポイントとして機能する 1 つまたは複数の ASP ページを指定し、タスク名、および tooltip 情報を指定します。

親要素

tasks

必須の子要素

name、key、tooltip、goto、postto

(goto と postto は、同時に選択できません)。

省略可能な子要素

task

データ

なし。

属性

属性 | 説明
icon | タスク ボタン対応して表示するアイコン ファイルの (パスなしの) 名前を指定します。 省略可。 有効な値 : パスなしで指定された、既存のアイコン ファイルの名前です。 既定値 : なし。 アイコン ファイルを指定しない場合は、task 要素に含まれる name 要素の値をボタン テキストとして使います。
id | タスクの識別子を指定します。識別子は通常、icon 属性と同じ値が設定されますが、"task" プレフィックスは付加されません。 必須。 有効な値 : タスクをほかのタスクと区別する一意の文字列です。 既定値 : なし。 次の id 属性では、特殊なフレームワーク動作が行われます。"save"、"saveback"、"savenew"、"back"、および "find" です。 find :同一ページ上の検索ウィンドウの表示を切り替えます。 back :タスクを実行した後、再び有効になります。 save、saveback、savenew :マスター EditSheet HTC で関連付けられたイベントに対する適切なイベント ハンドラが 設定されている場合、フレームワークによって自動的に有効、または無効になります。
type | タスク メニューを使って、複数のサブタスクを区別できるように指定します。 省略可。 有効な値 : 文字列 "menu" だけが有効な値です。 既定値 : なし。 複数の goto 要素、または postto 要素を指定し、タスク メニューを使って複数のサブタスクを区別する場合は、この属性に "menu" を設定します。それ以外の場合、この属性があってはいけません。

解説

操作ページを表示すると、各タスクはページの先頭に、タスク ボタンとして表示されます。

XML 構造に戻る

goto

この要素は、このタスクへのエントリ ポイントとして機能するいくつかの ASP ページの 1 つを指定します。各タスクは、少なくとも 1 つの goto 要素、または postto 要素を指定する必要があり、複数の要素を指定できます。ただし、同じタスク内で goto 要素と postto 要素の両方を指定することはできません。

親要素

task

必須の子要素

なし。

省略可能な子要素

なし。

データ

タスク メニューが使用されると、この選択肢に対応するタスク メニュー項目として要素データが使用されます。

属性

属性 | 説明
action | このタスクのいくつかのエントリ ポイント ASP ページの 1 つの URL を指定します。 必須。 有効な値 : 既存のエントリ ポイント ASP ページの URL。Commerce Server ビジネス デスク ルートからの相対パスとして指定します。 既定値 : なし。 この値は、このモジュール構成ファイルに指定された action 要素の 1 つの id 属性の値に対応する必要があります。

解説

複数の goto 要素を指定するには、タスク メニューを使って選択する方法をお勧めします。task 要素の type 属性は値 "menu" を設定し、複数の goto 要素は対応するドロップダウン タスク メニューの名前として使うデータを指定する必要があります。

タスク メニューを使って、icon 属性を指定するアイコンは、そのタスクがタスク メニューであることを指定する必要があります。タスク アイコン、特にタスク メニュー アイコンの詳細については、「アイコン」を参照してください。

タスク メニューを使う場合、最大 30 個のタスク メニュー項目 (goto 要素) が指定できます。

モジュールが提供する選択ダイアログ ボックスで選択する方法もあります。ただし、時には、ListSheet HTC で選択された項目の種類など、ほかの要因によって選択肢が決定されます。

XML 構造に戻る

postto

この要素は、このタスクへのエントリ ポイントとして機能するいくつかの ASP ページの 1 つを指定します。各タスクは、少なくとも 1 つの postto 要素、または goto 要素を指定する必要があり、複数の要素を指定できます。ただし、同じタスク内で postto 要素と goto 要素の両方を指定することはできません。

親要素

task

必須の子要素

なし。

省略可能な子要素

なし。

データ

タスク メニューが使用されると、この選択肢に対応するタスク メニュー項目として要素データが使用されます。

属性

属性 | 説明
action | このタスクのいくつかのエントリ ポイント ASP ページの 1 つの URL を指定します。 必須。 有効な値 : 既存のエントリ ポイント ASP ページの URL。Commerce Server ビジネス デスク ルートからの相対パスとして指定します。 既定値 : なし。 この値は、このモジュール構成ファイルに指定された action 要素の 1 つの id 属性の値に対応する必要があります。
formname | action 属性で指定した URL に送信するフォームの名前を指定します。 必須。 有効な値 : 既存の form 要素の名前です。 既定値 : なし。

解説

複数の postto 要素を指定するには、タスク メニューを使って選択する方法をお勧めします。task 要素の type 属性は値 "menu" を設定し、複数の postto 要素は対応するドロップダウン タスク メニューの名前として使うデータを指定する必要があります。

タスク メニューを使って、icon 属性で指定するアイコンは、そのタスクがタスク メニューであることを指定する正しい型にする必要があります。タスク アイコン、特にタスク メニュー アイコンの詳細については、「アイコン」を参照してください。

タスク メニューを使う場合、最大 30 個のタスク メニュー項目 (postto 要素) が指定できます。

モジュールが提供する選択ダイアログ ボックスで選択する方法もあります。ただし、時には、ListSheet HTC で選択された項目の種類など、ほかの要因によって選択肢が決定されます。

XML 構造に戻る

name

この必須要素は、このタスクの名前を指定します。

親要素

task

必須の子要素

なし。

省略可能な子要素

なし。

データ

タスクの名前です。

属性

なし。

解説

タスクへアイコン ファイルが指定されていなければ、この名前をボタン テキストとして使います。それ以外の場合、この名前は使用されません。

特定のタスク名に HTML 書式ディレクティブが含まれる場合、適切なエスケープを使用する必要があります。たとえば、文字 "<" には文字列 &lt; を、文字 ">" には文字列 &gt; を、文字 "&" には文字列 &amp; を、それぞれ使用する必要があります。

XML 構造に戻る

key

この必須要素は、タスクに関連付けられたショートカット キーとして機能する文字を指定します。

親要素

task

必須の子要素

なし。

省略可能な子要素

なし。

データ

タスクのショートカット キーとして機能する 1 文字です。タスク名の下線付き文字と同じ文字にします。

属性

なし。

解説

タスクへのショートカット キーは、タスク名の中の下線付き文字と同じ文字を指定します。たとえば、タスク名を文字列 Delete のように指定する場合は、文字 "d" を <key> タグと </key> タグで囲む必要があります。

XML 構造に戻る

tooltip

このオプション要素は、タスクの目的に関するごく短い説明を指定します。タスク名自体より詳しく説明します。指定したテキストはタスク ボタンの title 属性として設定され、タスクをカーソルで指したときに表示します。

親要素

task

必須の子要素

なし。

省略可能な子要素

なし。

データ

タスク ボタンをカーソルで指したとき表示されるタスク tooltip です。

属性

なし。

XML 構造に戻る

modules

この必須要素は 1 つまたは複数の module 要素を含みます。

親要素

config

必須の子要素

module

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

module

この必須要素は、ナビゲーション ウィンドウ内のカテゴリの下にあるモジュール エントリを表示するために使う情報を指定します。また、この要素は対応するアクションを指定します。.さらに、この情報はモジュールへのエントリ ポイントを定義します。

親要素

modules

必須の子要素

name、tooltip

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
id | このモジュールのエントリ ポイント ASP ページの URL を指定します。 必須。 有効な値 : 既存のエントリ ポイント ASP ページの URL。Commerce Server ビジネス デスク ルートからの相対パスとして指定します。 既定値 : なし。 この値は、このモジュール構成ファイルに指定された action 要素の 1 つの id 属性の値に対応する必要があります。

解説

特定の (概念) モジュールは、関連付けられた複数のエントリ ポイント アクションを持つことができます。

XML 構造に戻る

name

この必須要素は、Commerce Server ビジネス デスクのユーザーがナビゲーション ウィンドウを参照するモジュール名を指定します。

親要素

module

必須の子要素

なし。

省略可能な子要素

なし。

データ

ユーザーが参照するモジュール名です。

属性

なし。

解説

特定のモジュール名に HTML 書式ディレクティブが含まれている場合、適切なエスケープを使用する必要があります。たとえば、文字 "<" には文字列 &lt; を、文字 ">" には文字列 &gt; を、文字 "&" には文字列 &amp; を、それぞれ使用する必要があります。

XML 構造に戻る

tooltip

このオプション要素は、モジュールの目的に関するごく短い説明を指定します。モジュール名自体より詳しく説明します。提供されたテキストは、ナビゲーション ウィンドウ内のモジュール エントリへの title 属性として設定されます。

親要素

module

必須の子要素

なし。

省略可能な子要素

なし。

データ

モジュール名をカーソルで指したとき表示されるモジュール tooltip です。

属性

なし。

XML 構造に戻る


標準 XML のデータ レコード形式

Commerce Server ビジネス デスク フレームワークの HTML コンポーネント (HTC) の多くは、表示するデータが標準 XML データ レコード フォーマットで提供されることを予想しています。表示するデータは、ページ上の XML ドキュメントとして使用できます。これらの HTC としては、DynamicTable、EditField、EditSheet、ListEditor、および ListSheet があります。通常、この XML 構造は単層の record 要素を含み、各 record 要素は同じ子要素のセットを含みます。子要素の名前は任意 (以下の構造は dataidN) ですが、問題となる HTC に対する構成情報に対応した特定の id 属性の値にする必要があります。

注

  • ListSheet HTC の特定の種類は、以下で説明するように、単層の record 要素が複数指定することを想定しています。

XML ドキュメントが (XML データアイランドを作成する) ページに含まれる方法の詳細については、「XML データアイランド」を参照してください。

ここでは、次のトピックについて説明します。

  • データをメタデータにマップする : DataXML データアイランドからのデータ項目が、MetaXML データアイランドで提供されるデータの説明へどのようにマップされるかを説明します。

  • 多層データ レコード フォーマット : 2 層および 3 層のデータ レコード フォーマットの概要を説明し、各 ListSheet HTC がどのフォーマットを想定しているかを説明します。

  • 標準データ レコード XML 構造 : 標準データ レコード フォーマットの要素および属性に関する詳細情報について説明します。

  • XMLlist および XMLrecord プロパティ : DynamicTable HTC、ListEditor HTC、および ListSheet HTC によってイベント オブジェクト プロパティ、および標準 HTC プロパティとして使われる 2 種類の標準データ レコード フォーマットについて説明します。


データをメタデータにマップする

次の表に、record 要素の子要素の名前と、各種 HTC の構成情報における属性設定の対応を示します。

単層 XML データを使う HTC データ マッピング
DynamicTable

EditField

EditSheet

ListEditor

 XML データの record 要素に含まれる dataid 要素の名前は、XML メタデータの fields 要素の子要素への id 属性の値に対応しています。

fields 要素の子要素は、boolean、date、numeric、select、text、time です。
ListSheet

ListEditor

 XML データの record 要素に含まれる dataid 要素の名前は、XML メタデータの column 要素の子要素への id 属性の値に対応しています。

注

  • ListSheet HTC では、columns 要素の子要素が column 要素であり、subobject 要素の子要素は column 要素ではありません。

ListSheet HTC は、データのフォームをフラット リストに表示するために使っています。この場合、メタデータ subobject 要素は使用できません。

注

  • ListEditor HTC は ListSheet HTC と EditSheet HTC の両方を埋め込むので、そのメタデータにはフィールド要素とカラム要素の両方が含まれているため、dataid 要素は 2 通りに解釈されます。


多層データ レコード フォーマット

ListSheet HTC のさらに複雑なフォームは、それらのデータに2 層または 3 層の XML 構造を使っています。これらの代替構造は、基本的にレコード要素を 2 レベルまたは 3 レベルまで、それぞれネストできます。以下に、代替構造を示します。

次の表に、ListSheet HTC は各 ListSheet HTC に対する 2 層または 3 層の XML 構造の使用方法を示します。ListSheet HTC のメタデータには 2 種類の column 要素 (columns 要素の子要素と subobject 要素の子要素) があるので、次の表は、column 要素のインスタンスに続くかっこ内に、対応する親要素を示します。

ListSheet HTC の種類 | データ マッピング
フラット リスト | 上で説明したとおり、データに単層の XML 構造を使います。
2 レベル同種グループリスト | XML データ内の第 2 レベルの record 要素に含まれる dataid 要素の名前は、XML メタデータの column (columns) 要素への id2 属性の値に対応しています。 このデータの XML 構造に第 3 レベルはないので、メタデータの column (columns) 要素の id3 属性は使いません。 この場合、メタデータ subobject 要素は使用できません。
3 レベル同種グループ化リスト | XML データ内の第 2 レベルおよび第 3 レベルの record 要素に含まれる dataid 要素の名前は、XML メタデータの column (columns) 要素の id2 属性および id3 属性の値に、それぞれ対応しています。 この場合、メタデータ subobject 要素は使用できません。
リスト形式異種グループ化リスト および プロパティ形式異種グループ化リスト | XML データ内の第 2 レベルの record 要素に含まれる dataid 要素の名前は、XML メタデータの column (subobject) 要素の id 属性の値に対応しています。 このデータの XML 構造に第 3 レベルはないので、column (columns) 要素の id2 属性および id3 属性は使いません。


標準データ レコード XML 構造

次に示す XML 構造は、単層、2 層、および 3 層のデータ レコード フォーマットを示します。構造の各要素にはその内容に関連した名前が付けられています。また、各要素の属性はイタリック体で表し、通常それに付く等号と値は省略しています。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • 標準データ レコード フォーマットの XML 要素および属性は小文字を使う必要があります。

XML 構造

単層フォーマット

<document recordcount>
    <record>
        <dataid1>Value</dataid1>
        <dataid2>Value</dataid2>
        <dataid3>Enumeration value</dataid3>
        <dataid3_displayname>Display name for value</dataid3_displayname>
        ...
        <dataidN>Value</dataidN>
    </record>
    ...
    <record>
        <dataid1>Value</dataid1>
        <dataid2>Value</dataid2>
        <dataid3>Enumeration value</dataid3>
        <dataid3_displayname>Display name for value</dataid3_displayname>
        ...
        <dataidN>Value</dataidN>
    </record>
</document>

2 層フォーマット

<document recordcount>
    <record>
        <dataid1>Value</dataid1>
        <dataid2>Value</dataid2>
        <record>
            <dataid21>Value</dataid21>
            <dataid22>Value</dataid22>
        </record>
    </record>
</document>

3 層フォーマット

<document recordcount>
    <record>
        <dataid1>Value</dataid1>
        <dataid2>Value</dataid2>
        <record>
            <dataid21>Value</dataid21>
            <dataid22>Value</dataid22>
            <record>
                <dataid31>Value</dataid31>
                <dataid32>Value</dataid32>
            </record>
        </record>
    </record>
</document>

document

この必須要素は、XML データアイランドの XML ルート要素で、3 レベルの深さまでネストできる record 要素を含んでいます。

親要素

なし (ドキュメント ルート)。

必須の子要素

record (1 つまたは複数)

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
recordcount | この要素に含まれる (最上位レベルの) record 要素の数を指定します。 ListSheet HTC だけ、必須な属性です。この属性により、ListSheet HTC は HTTP フェッチ操作を使うときにページ コントロールを適切に更新できます。この属性はほかの HTC には使いません。指定しても無視されます。 有効な値 : 整数、0、および -1 です。 値が 0 の場合、リストが空であることを示します。空のリストは、空のサブ要素を含んだレコード要素を 1 つ含む必要があります。 値 -1 はサイズが不明のリストを示します。ListSheet HTC はサイズが不明のリストを、ページ数が不明の複数ページ リストとして表示します。 既定値 : なし。

XML 構造に戻る

record

この必須要素は、特定のレコードに対するデータをすべて含んでいます。このデータは、内部に含まれた一連の要素として表され、要素はレコードの各フィールドに 1 つずつ格納されます。

親要素

document

必須の子要素

なし。

省略可能な子要素

dataid、record

データ

なし。

属性

なし。

解説

record 要素は 1 つまたは複数指定できます。record 要素は dataid 要素を含み、2 層および 3 層の XML 構造には、ほかの record 要素が含まれます。

XML 構造に戻る

dataid

これらの要素は、関連付けられている HTC の特定のフィールドに表示されるデータを含みます。特定の名前の要素を指定する必要はありませんが、dataid 要素を含んでいない record 要素は重要なレコードではありません。

親要素

record

必須の子要素

なし。

省略可能な子要素

なし。

データ

実際のデータ値。

属性

なし。

解説

通常、これらの要素の名前は、この XML 構造の派生元である ADO の Recordset オブジェクトのフィールド名に基づいています。ADO の Recordset オブジェクトを XML に変換するための標準関数セットは、作成された XML に対応する要素名として Recordset のフィールド名を使います。

これらの名前は、各データ値と特定の HTC 内に表示される特定の列を関連付けるためにも使われます。このフォーマットのデータアイランドが渡される HTC はすべて、対応する MetaXML コンテナ属性により指定されたデータアイランドにも渡されます。この文字型のデータアイランドは、表示されたデータに対応する要素を含みます。これらの要素は、データ型などの情報を含んだデータを説明します。これらの情報には id 属性も含まれます。id 属性の値は、DataXML コンテナ属性に関連付けられたデータアイランドの dataid 要素の名前と同じにします。

次の表は、このフォーマットの DataXML データアイランドを使った 各 HTC ごとに、データアイランドの dataid 要素の名前に対応した id 属性を持つ MetaXML 要素を示します。

HTC | MetaXML 要素 | 注
DynamicTable | boolean、date、numeric、select、text、および time 要素の id 属性。 | DataXML データ アイランドのdataid 要素に対応する、fields 要素の子要素の 1 つの id 属性の値。
EditField | boolean、date、numeric、select、text、および time 要素の id 属性。 | DataXML データ アイランドのdataid 要素に対応する、fields 要素の子要素の 1 つの id 属性の値。 この値は、DataID コンテナ属性の値にも対応しています。
EditSheet | boolean、date、numeric、select、text、および time 要素の id 属性。 | DataXML データ アイランドのdataid 要素に対応する、fields 要素の子要素の 1 つの id 属性の値。
ListEditor | boolean、date、numeric、select、text、および time 要素の id 属性。 | DataXML データ アイランドのdataid 要素に対応する、fields 要素の子要素の 1 つの id 属性の値。
ListSheet | column (columns) 要素の id 属性。 column (columns) 要素の id2 属性。 column (columns) 要素の id3 属性。 column (subobject) 要素の id 属性。 | dataid 要素の値は、使われる ListSheet HTC の種類に応じて、対応する MetaXML データアイランドの 4 つの個別の場所に格納されます。 詳細については、最初の説明を参照してください。

XML 構造に戻る

dataid、dataid_displayname

これらの要素は、関連付けられている HTC の特定のフィールドに表示される列挙データを含みます。特定の名前ルート (dataid) を共有する要素の組み合わせは不要です。

親要素

record

必須の子要素

なし。

省略可能な子要素

なし。

データ

dataid :実際のデータ値。

dataid_displayname :dataid 要素に関連付けられる表示名。

属性

なし。

解説

列挙型データは、DataXML コンテナ属性に対応するデータアイランド内のほかのデータ型とは処理が多少違います。データ値自体は、ほかの型のデータと同じように書式設定されます。ほかの型のデータとは、データを識別する名前が付けられた要素を含んだデータです。

列挙型と関連付けらる表示名は、ほかの同種の XML 要素のデータとしてデータアイランドで提供されます。同種要素の名前は対応する値と同じです。末尾に文字列 "_displayname" が付加されます。

たとえば、EditSheet HTC に関連付けられる MetaXML データアイランドの select 要素 (または、ListSheet HTC に関連付けられる MetaXML データアイランドの format 属性が "Select" に設定されている column 要素) の場合、id 属性は "eyecolor" に設定されます。それに対応する DataXML データアイランドでは、次の例の 1 行目のような要素があります。必要に応じて、2 行目のような行が加えられます。

    <eyecolor>3</eyecolor>
    <eyecolor_displayname>Blue</eyecolor_displayname>

この例では、値 "3" が blue eyes に対応しており、文字列 "Blue" が表示されます。

DataXML データアイランドが _displayname が付加された各種の要素を含んでいない場合、HTC はそれらの要素を DataXML データアイランドへ挿入します。この処理は以下の手順で行われます。

  1. DataXML データアイランドのデータ要素名と一致する id 属性を持った select 要素に対し、MetaXML データアイランドを検索します。

  2. この select 要素が見つかった場合、その option 要素の中から、DataXML データアイランドの実データと同じ値の value 属性を持った要素を検索します。

  3. この option 要素が見つかった場合、そのデータ値を、新しく挿入した data_element_name_displayname 要素に含まれるデータとして使います。

検索する MetaXML データアイランドで、検索条件に一致する select 要素が複数存在する場合があるため、ページはそれ自身で適切な _displayname 要素を設定する必要もあります。どの要素を使うかはページ上のそのほかの設定に応じて決められることが多く、それらの設定内容を認識できるのはそのページだけです。この動作の例については、Tax モジュールの Regionaltax.asp ページを参照してください。このページは、同期させる必要がある 2 つの select フィールドのある DynamicTable HTC を含んでいます。

XML 構造に戻る


XMLlist および XMLrecord プロパティ

HTML コンポーネント (HTC) イベントに関連付けられるプロパティと、HTC 自体に関連付けられるプロパティは、XMLDOMElement オブジェクトなどのネストした XML DOM オブジェクトと同様、2 つの異なる種類の標準データ レコード フォーマットを返します。2 つの種類とは、複数のレコードが含んだ XMLlist と、レコードが 1 つだけ含む XMLrecord です。

次の表は、それぞれの HTC がこれらのフォームのプロパティを使う状況を示します。

HTC XMLlist および XMLrecord の利用状況
DynamicTable HTC XMLlist :
  • OnChange イベントの window.event オブジェクトの XMLlist プロパティ。

  • XMLlist HTC プロパティ。

XMLrecord : 使用されません。
ListEditor HTC XMLlist :
  • OnChange イベントの window.event オブジェクトの XMLlist プロパティ。

  • XMLlist HTC プロパティ。

XMLrecord :

  • OnEdit イベントの window.event オブジェクトの XMLrecord プロパティ。

  • OnNew イベントの window.event オブジェクトの XMLrecord プロパティ。
ListSheet HTC XMLlist :
  • XMLlist HTC プロパティ。

XMLrecord :

  • OnRowSelect イベントの window.event オブジェクトの XMLrecord プロパティ。

  • OnRowUnselect イベントの window.event オブジェクトの XMLrecord プロパティ。

XMLlist 構造

XMLlist プロパティの構造は次のとおりです。最上位ノードは、XMLDOMELement オブジェクトの tagName プロパティの "document" に設定されています。

<document>
    <record>
        <dataid1>data</dataid1>
        <dataid2>data</dataid2>
        . . .
    </record>
    <record>
        <dataid1>data</dataid1>
        <dataid2>data</dataid2>
        . . .
    </record>
    . . .
</document>

追加属性の名前付き state を DynamicTable HTC および ListEditor HTC のプロパティとして使う場合、どちらの HTC でもデータが変更できるので、state は各 record 要素に関連付けられます。state 属性は 4 つの値のどれかを設定します。空文字列はレコードが変更されていないこと、"new" はレコードが新規であること、"changed" はレコードが変更されたこと、"deleted" はレコードが削除されたことを、それぞれ示します。

XMLrecord 構造

XMLrecord プロパティの構造は次のとおりです。最上位ノードは、XMLDOMELement オブジェクトの tagName プロパティの "record" に設定されています。

<record>
    <dataid1>data</dataid1>
    <dataid2>data</dataid2>
    . . .
</record>


DynamicTable の構成

MetaXML コンテナ属性により指定される XML データアイランドは、DynamicTable HTML コンポーネント (HTC) によって使われる構成情報を含みます。

XML ドキュメントが (XML データ アイランドを作成する) ページに含まれる方法の詳細については、「XML データ アイランド」を参照してください。

このデータ アイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • DynamicTable HTC に対する MetaXML データアイランドの XML 要素および属性は小文字を使う必要があります。

XML 構造

<dynamictable>
  <global removebutton keycol newbutton overx
          required sortbykey uniquekey />
  <fields>
    <boolean browse browsereadonly default disabled hide
             id onbrowse onchange onerror readonly width
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <name>Column heading name</name>
      <label>Checkbox label</label>
    </boolean>
    <date browse browsereadonly default disabled firstday
          hide id max min onbrowse onchange onerror
          onrequire onvalid readonly required width
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <format>Date format to use</format>
      <error>Validation error message</error>
      <name>Column heading name</name>
      <prompt>Empty control prompt</prompt>
    </date>
    <numeric browse browsereadonly default disabled hide id
             max min onbrowse onchange onerror onrequire
             onvalid readonly required subtype width
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <format>Number format to use</format>
      <error>Validation error message</error>
      <name>Column heading name</name>
      <prompt>Empty control prompt</prompt>
    </numeric>
    <select browse browsereadonly default disabled hide id
            onbrowse onchange onerror onvalid readonly width
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <name>Column heading name</name>
      <prompt>Empty control prompt</prompt>
      <select id>
        <option value>Item display name</option>
      </select>
      ...
      <select id>
        <option value>Item display name</option>
      </select>
    </select>
    <text browse browsereadonly default disabled hide id
          maxlen minlen onbrowse onchange onerror onrequire
          onvalid readonly required subtype width
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <charmask>Validation character mask</charmask>
      <error>Validation error message</error>
      <name>Column heading name</name>
      <prompt>Empty control prompt</prompt>
    </text>
    <time browse browsereadonly default disabled hide
          id max min onbrowse onchange onerror
          onrequire onvalid readonly required width
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <error>Validation error message</error>
      <name>Column heading name</name>
      <prompt>Empty control prompt</prompt>
    </time>
  </fields>
</dynamictable>

dynamictable

この必須要素は、DynamicTable 構成データのコンテナとして機能します。この要素により、DynamicTable 構成データは DynamicTable HTC で使うことが識別されます。

親要素

なし (ドキュメント ルート)。

必須の子要素

global、fields

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

global

この必須要素は、DynamicTable HTC の一般的な動作に関係する構成情報を提供します。

親要素

dynamictable

必須の子要素

なし。

省略可能な子要素

なし。

Data

なし。

属性

属性 | 説明
removebutton | [削除] ボタンを表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。 既定値 : "yes"。 値 "no" を指定した場合、[削除] ボタンは表示されません。
keycol | 並べ替え、一意キーチェックなどのレコード キーとして使うフィールドの ID を指定します。 必須。 並べ替えできるフィールドの型(数値型とテキスト型のみ) にはそれぞれ必須の属性 id があります。この属性には id 値の 1 つを設定する必要があります。
newbutton | [新規作成] ボタンを表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。 既定値 : "yes"。 値 "no" を指定した場合、[新規作成] ボタンは表示されません。
overx | テーブルの最後の行の表示を制御します。 省略可。 有効な値 : "yes" および "no"。 既定値 : "no"。 値を "yes" にすると、テーブルの最終の行が keycol 属性で指定されたフィールド値に基づいた並び替え処理後ごとに操作されます。最終の行のフィールド値が "–1" のとき、フィールドは、"Over X" と表示されます。"X" は、同じフィールドの 1 行上の値です。最終の行のフィールド値が "-1" でないとき、フィールドの新しい行には "Over X" が挿入され、ほかのフィールドはすべて空になります。 行がない場合は、キー列に "Over 0" と表示された行が挿入されます。 DynamicTable HTC の OverX 機能の詳細については、「OverX 機能」を参照してください。
required | テーブルを空にできるかどうか、および "必須" アイコンの表示を制御するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。 既定値 : "no"。 値 "yes" を指定した場合、テーブルは空にできません。
sortbykey | [終了] ボタンをクリックしたときに keycol 属性で指定したフィールド値に基づいてテーブルを再び並べ替えるかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。 既定値 : "no"。 値 "yes" を指定した場合、テーブルを再び並べ替えします。
uniquekey | キー列の値を一意にするかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。 既定値 : "no"。 値 "yes" を指定した場合、一意性を検証します。

XML 構造に戻る

fields

この必須要素は、DynamicTable HTC に表示するフィールドを指定する要素を含みます。

親要素

dynamictable

必須の子要素

なし。

省略可能な子要素

boolean、date、numeric、select、text、time

データ

なし。

属性

なし。

解説

fields 要素は少なくとも 1 つの子要素が含む必要がありますが、通常は複数の子要素を含み、複数の列を持つ DynamicTable HTC に対応しています。

fields 要素内の子要素は、DynamicTable HTC 内の列として表示されます。キーとして指定されるフィールドは必ず最初の列として表示され、その他のすべてのフィールドは fields 要素内の順序に沿って表示されます。

fields 要素の子要素は、EditField HTC の構成データにeditfield 要素の子要素として定義できる要素と、実質的に同じです。主な相違点は、これらの子要素が DynamicTable HTC のコンテキストに含まれていれば、子要素に対して追加属性が定義できる場合があることです。共有の属性については、「共有の EditField 属性」を参照してください。

XML 構造に戻る

boolean

このオプション要素は、Boolean 値を含む DynamicTable HTC の特定の列に関する構成および評価情報を提供します。

親要素

fields

必須の子要素

name

省略可能な子要素

browsetooltip、label

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
width | この要素に対応する列幅の初期値を、全体の幅に対するパーセンテージとして指定します。 省略可。 有効な値 : 0 ～ 100 の整数。 既定値 : 幅の合計を表示される列の数で割った数。

XML 構造に戻る

date

このオプション要素は、Date を含む DynamicTable HTC 内の特定の列に関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

name

省略可能な子要素

browsetooltip、error、format、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
firstday | 週の初めとする曜日を指定します。 省略可。 有効な値 : 0 (日曜日) ～ 6 (土曜日) の整数。 既定値 : 0 (日曜日)
width | この要素に対応する列幅の初期値を、全体の幅に対するパーセンテージとして指定します。 省略可。 有効な値 : 0 ～ 100 の整数。 既定値 : 幅の合計を表示される列の数で割った数。

XML 構造に戻る

numeric

このオプション要素は、Numeric を含む DynamicTable HTC の特定の列に関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

name

省略可能な子要素

browsetooltip、error、format、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required、subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
width | この要素に対応する列幅の初期値を、全体の幅に対するパーセンテージとして指定します。 省略可。 有効な値 : 0 ～ 100 の整数。 既定値 : 幅の合計を表示される列の数で割った数。

XML 構造に戻る

select

このオプション要素は、選択の固定セットを含む DynamicTable HTC の特定の列に関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

name、select

省略可能な子要素

browsetooltip、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、onvalid、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
width | この要素に対応する列幅の初期値を、全体の幅に対するパーセンテージとして指定します。 省略可。 有効な値 : 0 ～ 100 の整数。 既定値 : 幅の合計を表示される列の数で割った数。

XML 構造に戻る

text

このオプション要素は、text を含む DynamicTable HTC の特定の列に関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

name

省略可能な子要素

browsetooltip、charmask、error、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、maxlen、minlen、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required、subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
width | この要素に対応する列幅の初期値を、全体の幅に対するパーセンテージとして指定します。 省略可。 有効な値 : 0 ～ 100 の整数。 既定値 : 幅の合計を表示される列の数で割った数。

XML 構造に戻る

time

このオプション要素は、Time を含む DynamicTable HTC 内の特定の列に関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

name

省略可能な子要素

browsetooltip、error、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
width | この要素に対応する列幅の初期値を、全体の幅に対するパーセンテージとして指定します。 省略可。 有効な値 : 0 ～ 100 の整数。 既定値 : 幅の合計を表示される列の数で割った数。

解説

time 要素に関連付けられているフィールドの形式は固定されています。時と分は、コロン (":") で区切られ、24 時間形式で表示されます。秒はサポートされていません。

XML 構造に戻る

browsetooltip、charmask、error、format、label、name、prompt、select、option

これらの 9 つの要素は、DynamicTable HTC 内に埋め込まれている、各種のデータ型の 1 つまたは複数の EditField 要素の動作を限定または拡張するために使われます。詳細については、「共有 EditField 子要素」を参照してください。

XML 構造に戻る


EditField の構成

MetaXML コンテナ属性により指定される XML データアイランドは、1 つまたは複数の EditField HTML コンポーネント (HTC) によって使われる構成情報を含みます。

XML ドキュメントが (XML データアイランドを作成する) ページに含まれる方法の詳細については、「XML データアイランド」を参照してください。

このデータアイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • EditField HTC に対する MetaXML データアイランドの XML 要素および属性は小文字を使う必要があります。

XML 構造

<editfield>
  <boolean browse browsereadonly default disabled hide
           id onbrowse onchange onerror readonly
    <browsetooltip>Tooltip for browse button</browsetooltip>
    <label>Checkbox label</label>
  </boolean>
  <date browse browsereadonly default disabled firstday
        hide id max min onbrowse onchange onerror
        onrequire onvalid readonly required
    <browsetooltip>Tooltip for browse button</browsetooltip>
    <error>Validation error message</error>
    <format>Date format to use</format>
    <prompt>Empty control prompt</prompt>
  </date>
  <numeric browse browsereadonly default disabled hide id
           max min onbrowse onchange onerror onrequire
           onvalid readonly required subtype
    <browsetooltip>Tooltip for browse button</browsetooltip>
    <error>Validation error message</error>
    <format>Number format to use</format>
    <prompt>Empty control prompt</prompt>
  </numeric>
  <select browse browsereadonly default disabled hide id
          onbrowse onchange onerror onvalid readonly
    <browsetooltip>Tooltip for browse button</browsetooltip>
    <prompt>Empty control prompt</prompt>
    <select id>
      <option value>Item display name</option>
    </select>
    ...
    <select id>
      <option value>Item display name</option>
    </select>
  </select>
  <text browse browsereadonly default disabled hide id
        maxlen minlen onbrowse onchange onerror
        onrequire onvalid readonly required subtype
    <browsetooltip>Tooltip for browse button</browsetooltip>
    <charmask>Validation character mask</charmask>
    <error>Validation error message</error>
    <prompt>Empty control prompt</name>
  </text>
  <time browse browsereadonly default disabled hide
        id max min onbrowse onchange onerror
        onrequire onvalid readonly required
    <browsetooltip>Tooltip for browse button</browsetooltip>
    <error>Validation error message</error>
    <prompt>Empty control prompt</prompt>
  </time>
</editfield>

editfield

この必須要素は、1 つまたは複数の EditField HTC に関連付けられた構成データのコンテナを提供します。これにより、複数の EditField HTC が 1 つの XML editfield データアイランドを共有できるため、異なる id 属性値を使って異なる構成情報にアクセスできます。

親要素

なし (ドキュメント ルート)。

必須の子要素

なし。

省略可能な子要素

boolean、date、numeric、select、text、time

(少なくとも 1 つ指定する必要がありますが、順序は重要ではありません)。

データ

なし。

属性

なし。

XML 構造に戻る

boolean

このオプションの要素は、Boolean 型の EditField HTC に関する構成、および評価情報を提供します。

親要素

editfield

必須の子要素

なし。

省略可能な子要素

browsetooltip、label

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

date

このオプション要素は、Date 型の EditField HTC に関する構成、および評価情報を提供します。

親要素

editfield

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、format、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
firstday | 週の初めとする曜日を指定します。 省略可。 有効な値 : 0 (日曜日) ～ 6 (土曜日) の整数。 既定値 : 0 (日曜日)

XML 構造に戻る

numeric

このオプションの要素は、Numeric 型の EditField HTC に関する構成、および評価情報を提供します。

親要素

editfield

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、format、prompt

データ

なし。

属性

属性 | 説明
id, browse, browsereadonly, default, disabled, hide, max, min, onbrowse, onchange, onerror, onrequire, onvalid, readonly, required, subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

select

このオプションの要素は、Select 型の EditField HTC に関する構成、および評価情報を提供します。

親要素

editfield

必須の子要素

select

省略可能な子要素

browsetooltip、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、onvalid、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

text

このオプション要素は、Text 型の EditField HTC に関する構成、および評価情報を提供します。

親要素

editfield

必須の子要素

なし。

省略可能な子要素

browsetooltip、charmask、error、prompt

データ

なし。

属性

属性 | 説明
id, browse, browsereadonly, default, disabled, hide, maxlen, minlen, onbrowse, onchange, onerror, onrequire, onvalid, readonly, required, subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

time

このオプション要素は、Time 型の EditField HTC に関する構成、および評価情報を提供します。

親要素

editfield

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、prompt

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

解説

time 要素に関連付けられているフィールドの形式は固定されています。時と分は、コロン (":") で区切られ、24 時間形式で表示されます。秒はサポートされていません。

XML 構造に戻る

browsetooltip、charmask、error、format、label、prompt、select、option

これらの 8 つの要素は、各種のデータ型の 1 つまたは複数の EditField 要素の動作を限定または拡張するために使われます。詳細については、「共有 EditField 子要素」を参照してください。

XML 構造に戻る


共有 EditField 子要素

多くの要素が異なるデータ型の EditField HTC を指定します。データ型は、Boolean、Date、Numeric、Select、Text、およびType です。これらの要素は、EditField HTC 自体の構成情報に含まれます。また、これらの要素は、DynamicTable HTC、EditSheet HTC、および ListEditor HTC 内に埋め込まれた EditField HTC にも含まれます。これらの共有要素は、その動作を変更または拡張する子要素を多く含みます。次の表は、これらの子要素と、子要素に適応される EditField データ型を示します。

EditField の子要素 | 対応する EditField のデータ型
browsetooltip | Boolean、Date、Numeric、Select、Text、Type
charmask | Text
error | Date、 Numeric、 Text、 Type
format | Date、Numeric
label | Boolean
name | Boolean、Date、Numeric、Select、Text、Type DynamicTable HTC では必須、EditSheet HTC および ListEditor HTC では省略可能、EditField HTC では使えません。
option | Select 実際は、select 子要素の子要素です。 <select> <select> <option>
prompt | Date、Numeric、Select、Text、Type
select | Select option 要素は、この要素の子要素です。
tooltip | Boolean、Date、Numeric、Select、Text、Type EditSheet HTC と ListEditor HTC では省略可能、DynamicTable HTC および EditField HTC では使えません。

browsetooltip

このオプション要素は、EditField HTC に関連付けられた参照ボタンの ToolTip で、ほかの HTC が埋め込まれているかどうかには関連しません。

親要素

boolean、date、numeric、select、text、time

(表示されているいずれかの要素の子要素になることができます)。

必須の子要素

なし。

省略可能な子要素

なし。

データ

tooltip テキスト。

属性

なし。

解説

参照ボタンが指定されない場合、browsetooltip 要素は無視されます。

共有 Editfield 子要素に戻る

charmask

このオプション要素は文字のマスクを指定します。文字のマスクは VBScript 正規表現構文で指定され、テキストの入力評価のために使われます。

親要素

text

必須の子要素

なし。

省略可能な子要素

なし。

データ

VBScript 正規表現構文で指定された charmask テキスト。

属性

なし。

解説

正規表現文字列は、charmask 要素のデータとして提供され、有効入力は正規表現と一致し、有効入力の部分文字列は正規表現と一致しないものにする必要があります。表現方法の 1 つとして、指定する正規表現を正規表現記号で囲む方法があります。正規表現の先頭に記号 "^" を付け、末尾に記号 "$" を付けます。

charmask 要素をデータなしで指定すると、指定しない場合と同じように処理されます。

charmask 要素を指定しない場合、次に示す既定の文字マスクが text 要素の 3 つのサブタイプのすべてに使われます。

^[^<>&]*$

正規表現の詳細については、http://www.microsoft.com/japan/developer/ を参照してください。

共有 Editfield 子要素に戻る

error

このオプション要素は、フィールドのデータの評価に失敗した場合、表示されるエラー メッセージを指定します。

親要素

date、numeric、text、time

(表示されているいずれかの要素の子要素になることができます)。

必須の子要素

なし。

省略可能な子要素

なし。

データ

エラー メッセージ テキスト。

属性

なし。

解説

error 要素をデータなしで指定すると、指定しない場合と同じように処理されます。

error 要素を指定しない場合、エラー メッセージを使う各種の要素に対して、次の既定エラー メッセージが使われます。

エラーを表示する要素 | 既定のエラー メッセージ
Date | 日付(m/d/yyyy) の評価エラー
Numeric (Integer 内部処理形式) | 数値の評価エラー
Numeric (Float 内部処理形式) | 浮動小数点の評価エラー
Numeric (Currency 内部処理形式) | 通貨の評価エラー
Text (すべての内部処理形式) | テキストの評価エラー ("<"、">" または "&" は使用できません)
Time | 時刻 (hh:mm - 24 時間) の評価エラー

日付に対する既定エラー メッセージは、日付が format 要素を使って指定される場合、異なる書式で表示されます。

共有 Editfield 子要素に戻る

format

このオプション要素は、EditField HTC がほかの HTC に埋め込まれているかどうかにかかわらず、特定の日付または数値の EditField HTC に対する有効入力形式を指定します。

親要素

date、numeric

(表示されているいずれかの要素の子要素になることができます)。

必須の子要素

なし。

省略可能な子要素

なし。

データ

形式指定テキスト。

属性

なし。

解説

日付の有効な形式は、"m/d/yyyy"、"d/m/yyyy"、および "yyyy/m/d" です。既定の形式は "m/d/yyyy" です。区切り文字には、スラッシュ ("/")、ハイフン ("-")、およびピリオド (".") のいずれかの文字を指定できます。既定の区切り文字はスラッシュ ("/") です。指定する文字 "m"、"d"、および "y" の数は表示される日付に影響を与えません。月と日は先行のゼロを付けないで表示され、年は必ず 4 桁で表示されます。

数値に対する有効な形式は、表示される数値の内部処理形式 (Integer、Float、または Currency) に応じて決まります。次の表は、内部処理形式ごとの有効な形式を示します。

数値の内部処理形式 数値の形式
Integer 桁の配置に応じて、負の値が指定される (または指定されない) 方法を示す文字列です。負の値は、マイナス記号 ("-") を数字の前または後ろに付けて指定できます。または、数字をかっこで囲んでも指定できます。

小数が指定されていても、内部処理形式が "整数" であるときには整数でない値を HTC へ入力することはできません。

例 :

1.1 -1.1 1.1- (1.1)
Float 桁の配置に応じて、負の値が指定される (または指定されない) 方法を示す文字列です。負の値は、マイナス記号 ("-") を数字の前または後ろに付けて指定できます。または、数字をかっこで囲んでも指定できます。

例 :

1.1 -1.1 1.1- (1.1)
Currency 桁の配置に応じて、負の値が指定される (または指定されない) 方法を示す文字列です。負の値は、マイナス記号 ("-") を数字の前または後ろに付けて指定できます。または、数字をかっこで囲んでも指定できます。

この形式の一部として通貨記号を指定してはなりません。

例 :

1.1 -1.1 1.1- (1.1)

共有 Editfield 子要素に戻る

label

このオプション要素は、EditField HTC がほかの HTC に埋め込まれているかどうかにかかわらず、Boolean の EditField HTC のチェック ボックスの後に表示するテキストを提供します。

親要素

boolean

必須の子要素

なし。

省略可能な子要素

なし。

データ

チェック ボックス ラベル テキスト。

属性

なし。

解説

要素を指定しない場合、チェック ボックスには既定ラベルの "Yes" が表示されます。

共有 Editfield 子要素に戻る

name

この要素は、状況によっては必須になり (dataid の表を参照)、EditField HTC がほかの HTC に埋め込まれている場合に、EditField HTC に関連する名前を指定します。

親要素

boolean、date、numeric、select、text、time

(表示されているいずれかの要素の子要素になることができます)。

必須の子要素

なし。

省略可能な子要素

なし。

データ

EditField HTC の名前。

属性

なし。

解説

次の表は、name 要素が使われる場合、 name 要素は必須か省略可能かどうかを示します。

EditField が埋め込まれる HTC | <name> 要素の使用
DynamicTable | name 要素の値は、それを包む側の要素に関連付けられた列の名前として使われます。 この場合、name 要素は必須です。
EditSheet | template 要素が指定されない場合、name 要素の値は、埋め込まれた EditField HTC の左側に表示される名前として使われます。 この状況では、name 要素は省略可能です。名前が指定されていない場合は、フィールドがラベルなしで表示されます。
ListEditor | name 要素の値は、ListEditor HTC の編集領域に埋め込まれた EditField HTC の左側に表示される名前として使われます。 この状況では、name 要素は省略可能です。名前が指定されていない場合は、フィールドがラベルなしで表示されます。

包む要素の hide 属性に "yes" が設定されている場合、name 要素を指定する必要はありません。

共有 Editfield 子要素に戻る

option

この必須要素は、EditField HTC がほかの HTC に埋め込まれているかどうかにかかわらず、複数選択の EditField HTC の表示名および基本値を指定します。

親要素

select
(それ自体が上位レベルの select 要素の子要素)

必須の子要素

なし。

省略可能な子要素

なし。

データ

選択のドロップ ダウン リストに表示するテキスト。

属性

属性 | 説明
value | 特定の選択に関連付けられた値を指定します。 必須。 有効な値 : 任意。 既定値 : なし。 XML 構成情報を作成するときには、同一の select 要素内に option 要素の value 属性を 2 つ指定しないように注意しなければなりません。Commerce Server ビジネス デスク フレームワークは、これに関する一意性の検査を行いません。

解説

option 要素は、少なくとも 1 つ指定する必要がありますが、通常は少なくとも 2 つ指定します。

value 属性に空文字列を設定して option 要素を指定した場合、そのオプションはフィールドが空のときに選択されたオプションと見なされます。

現在のデータ値がどの option 要素の value 属性値にも対応しないときには、select フィールドにプロンプトが表示されます。

共有 Editfield 子要素に戻る

prompt

このオプション要素は、値が指定されていないとき、EditField HTC がほかの HTC に埋め込まれているかどうかに関係なく、EditField HTC 内に表示されるテキストを提供します。このテキストは、入力を要求するプロンプトとして使用されます。データの入力を開始されると、プロンプトはそのデータに置き換えられます。

親要素

date、numeric、select、text、time

(表示されているいずれかの要素の子要素になることができます)。

必須の子要素

なし。

省略可能な子要素

なし。

データ

プロンプト テキスト。

属性

なし。

解説

prompt 要素を指定しない場合、既定のプロンプトが表示されます。プロンプトが表示されないようにするには、空の prompt 要素を指定する必要があります。

次の表は、各種の EditField HTC に対する既定のプロンプトを示します。

EditField HTC の種類 | 既定のプロンプト
Boolean | なし。
Date | <enter date (m/d/yyyy)>
Numeric | <enter number>
Select | <select one>
Text | <enter text>
Time | <enter time (hh:mm)>

日付の既定のプロンプトは、日付が format 要素を使って指定される場合、異なる書式で表示されます。

共有 Editfield 子要素に戻る

select

この必須要素は、EditField HTC がほかの HTC に埋め込まれているかどうかにかかわらず、複数選択の EditField HTC に対して使用できる選択のセットを含みます。これらの選択は option 要素セットとして表します。

親要素

select
(高レベルの select 要素)

必須の子要素

option
(少なくとも 1 つ)

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
id | この select 要素の識別子を指定します。 同種 select 要素を指定する場合、必須です。 有効な値 : 同種 select 要素の id 属性に関して、一意である必要があります。 既定値 : なし。 この属性の値を EditField HTC の reload メソッドへの sID パラメータの値として使うことで、この select 要素の子要素である option 要素で指定された選択を動的に変更します。(DynamicTable HTC の field メソッドを使って、reload メソッドで呼び出される EditField HTC を取得します。)

解説

select 要素は少なくとも 1 つ指定する必要がありますが、別の制御設定や状況に基づき選択セットが変更される場合、それに応じて複数の select 要素を提供します。

共有 Editfield 子要素に戻る

tooltip

このオプション要素は、EditSheet HTC または ListEditor HTC に埋め込まれている EditField HTC で関連付けられた左側の列のラベルへの ToolTip を指定します。

親要素

boolean、date、numeric、select、text、time
(表示されているいずれかの要素の子要素になることができます。)

必須の子要素

なし。

省略可能な子要素

なし。

データ

ToolTip テキスト。

属性

なし。

共有 Editfield 子要素に戻る


共有 EditField 属性

次の表は、共有 EditField 要素各種の属性を示します。

属性
適用できる EditField の種類
説明
browse Boolean、Date、Numeric、Select、Text、Time 参照ボタンがこのフィールドで使えるように指定します。

省略可。

有効な値 : "yes" および "no"。値 "yes" を指定した場合、このフィールドに対する参照が可能になります。

既定値 : "no"。

共に動作して参照を制御するさまざまな属性の詳細については、「EditField」を参照してください。
browsereadonly Boolean、Date、Numeric、Select、Text、Time このフィールドの値を指定する方法が参照だけなのかを指定します。

省略可。

有効な値 : "yes" および "no"。値 "yes" を指定した場合、このフィールドの値を指定する方法は参照だけになります。

既定値 : "no"。

共に動作して参照を制御するさまざまな属性の詳細については、「EditField」を参照してください。
default Boolean、Date、Numeric、Select、Text、Time このフィールドに渡されたデータが空文字列である場合、フィールドの既定値を指定します。

省略可。

有効な値 : フィールドの種類に応じて決まり、データとして渡される値と同じ方法で評価されます。

既定値 : なし。
disabled Boolean、Date、Numeric、Select、Text、Time このフィールドを無効にするかどうかを指定します。

省略可。

有効な値 : "yes" および "no"。値 "yes" を指定した場合、このフィールドは無効になります。

既定値 : "no"。
hide Boolean、Date、Numeric、Select、Text、Time フィールドの表示を抑制するかどうかを指定します。

省略可。

有効な値 : "yes" および "no"。値 "yes" を指定した場合、フィールドの表示が抑制されます。

既定値 : "no"。
id Boolean、Date、Numeric、Select、Text、Time このフィールドを DataXML コンテナ属性内の対応するデータに関連付けるために使う識別子を指定します。

必須。

有効な値 : 現在の HTC 内のほかの id 属性値が一意である必要があります。

既定値 : なし。
max Date、Numeric、Time フィールド入力を評価するときに使う最大値を指定します。

省略可。

有効な値 : データ形式が指定されている場合、その形式に一致する必要があります。

既定値 : なし。
maxlen Text テキスト フィールドに入力するテキストの最大文字数を指定します。

省略可。

有効な値 : 正の整数。

既定値 : なし。
min Date、Numeric、Time フィールド入力を評価するときに使用される最小値を指定します。

省略可。

有効な値 : データ形式が指定されている場合、その形式に一致する必要があります。

既定値 : なし。
minlen Text テキスト フィールドに入力するテキストの最小文字数を指定します。

省略可。

有効な値 : 正の整数。

minlen 属性に正の整数を指定すると、このフィールドも必須になります。
onbrowse Boolean、Date、Numeric、Select、Text、Time 参照ハンドラの関数名を指定します。

省略可。

有効な値 : 有効な関数名を指定する必要があります。

既定値 : なし。

この属性を設定する場合は、browse 属性を設定する必要はありません。

共に動作して参照を制御するさまざまな属性の詳細については、「EditField」を参照してください。
onchange Boolean、Date、Numeric、Select、Text、Time 変更ハンドラの関数名を指定します。

省略可。

有効な値 : 有効な関数名を指定する必要があります。

既定値 : なし。
onerror Boolean、Date、Numeric、Select、Text、Time エラー ハンドラの関数名を指定します。

省略可。

有効な値 : 有効な関数名を指定する必要があります。

既定値 : なし。
onrequire Date、Numeric、Text、Time 要求ハンドラの関数名を指定します。

省略可。

有効な値 : 有効な関数名を指定する必要があります。

既定値 : なし。
onvalid Date、Numeric、Select、Text、Time 有効ハンドラの関数名を指定します。

省略可。

有効な値 : 有効な関数名を指定する必要があります。

既定値 : なし。
readonly Boolean、Date、Numeric、Select、Text、Time このフィールドを読み取り専用にするかどうかを指定します。

省略可。

有効な値 : "yes" および "no"。値 "yes" を指定した場合、フィールドの値は変更できなくなります。

既定値 : "no"。
required Date、Numeric、Text、Time このフィールドにデータを指定する必要があるかどうかを指定します。

省略可。

有効な値 : "yes" および "no"。値 "yes" を指定した場合、フィールドにデータを指定する必要があります。

既定値 : "no"。
subtype Numeric、Text この属性を含む要素により指定されるデータ型をさらに細分したデータ型を指定します。

省略可。

有効な値 :

Numeric : "Integer"、"Float"、"Currency"

Text : "short"、"long"、"password"

既定値 :

Numeric : "Integer"

Text : "short"


EditSheet の構成

MetaXML コンテナ属性により指定される XML データアイランドは、EditSheet HTML コンポーネント (HTC) によって使われる構成情報を含みます。

XML ドキュメントが (XML データアイランドを作成する) ページに含まれる方法の詳細については、「XML データアイランド」を参照してください。

このデータアイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • EditSheet HTC に対する MetaXML データアイランド内の XML 要素および属性は小文字を使う必要があります。

XML 構造

<editsheets>
  <editsheet>
    <global expanded title>
      <name>Editsheet name goes here<name>
      <key>Access key for editsheet goes here</key>
    </global>
    <template fields register>
      <![CDATA[
        HTML template goes here
      ]]>
    </template>
    <fields>
      <boolean browse browsereadonly default disabled hide
               id onbrowse onchange onerror readonly
        <browsetooltip>Tooltip for browse button</browsetooltip>
        <name>Name of field in left-hand column</name>
        <label>Checkbox label</label>
        <tooltip>Tooltip for left-hand column label</tooltip>
      </boolean>
      <date browse browsereadonly default disabled firstday
            hide id max min onbrowse onchange onerror
            onrequire onvalid readonly required
        <browsetooltip>Tooltip for browse button</browsetooltip>
        <format>Date format to use</format>
        <error>Name of field in left-hand column</error>
        <name>Column heading name</name>
        <prompt>Empty control prompt</prompt>
        <tooltip>Tooltip for left-hand column label</tooltip>
      </date>
      <numeric browse browsereadonly default disabled hide id
               max min onbrowse onchange onerror onrequire
               onvalid readonly required subtype
        <browsetooltip>Tooltip for browse button</browsetooltip>
        <format>Number format to use</format>
        <error>Validation error message</error>
        <name>Name of field in left-hand column</name>
        <prompt>Empty control prompt</prompt>
        <tooltip>Tooltip for left-hand column label</tooltip>
      </numeric>
      <select browse browsereadonly default disabled hide id
              onbrowse onchange onerror onvalid readonly
        <browsetooltip>Tooltip for browse button</browsetooltip>
        <name>Name of field in left-hand column</name>
        <prompt>Empty control prompt</prompt>
        <tooltip>Tooltip for left-hand column label</tooltip>
        <select id>
          <option value>Item display name</option>
        </select>
        ...
        <select id>
          <option value>Item display name</option>
        </select>
      </select>
      <text browse browsereadonly default disabled hide id
            maxlen minlen onbrowse onchange onerror onrequire
            onvalid readonly required subtype
        <browsetooltip>Tooltip for browse button</browsetooltip>
        <charmask>Validation character mask</charmask>
        <error>Validation error message</error>
        <name>Name of field in left-hand column</name>
        <prompt>Empty control prompt</prompt>
        <tooltip>Tooltip for left-hand column label</tooltip>
      </text>
      <time browse browsereadonly default disabled hide
            id max min onbrowse onchange onerror
            onrequire onvalid readonly required
        <browsetooltip>Tooltip for browse button</browsetooltip>
        <error>Validation error message</error>
        <name>Name of field in left-hand column</name>
        <prompt>Empty control prompt</prompt>
        <tooltip>Tooltip for left-hand column label</tooltip>
      </time>
    </fields>
  </editsheet>
  <editsheet>
    another editsheet specification goes here
  </editsheet>
</editsheets>

editsheets

このオプション要素は、editsheet 要素が複数あれば、要素を含むために使われます。editsheet 要素を 1 つしか指定しない場合は、そのまま指定します。

親要素

なし (ドキュメント ルート)。

必須の子要素

editsheet

(少なくとも 1 つは必要ですが、通常は複数あります)。

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

editsheet

この必須要素は、単一の EditSheet HTC に対する構成情報を含みます。

親要素

なし (ドキュメント ルート)、editsheets
(どちらか一方にすることができます)。

必須の子要素

global、fields

省略可能な子要素

template

データ

なし。

属性

なし。

解説

この要素は、EditSheet HTC を 1 つ使われる場合は XML データアイランドの子要素として単独で使うことができます。また、複数の EditSheet HTC のうちの 1 つが構成された場合、editsheets 要素内に含められます。

XML ドキュメントが (XML データアイランドを作成する) ページに含まれる方法の詳細については、「XML データアイランド」を参照してください。

XML 構造に戻る

global

この必須要素は、EditSheet HTC の表示に関するグローバル情報を指定します。

親要素

editsheet

必須の子要素

name、key

(状況により必須です)。

省略可能な子要素

name、key

(状況により省略可です)。

データ

なし。

属性

属性 | 説明
expanded | EditSheet HTC を最初に開いて表示するか、閉じて表示するかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "yes" を指定した場合、EditSheet HTC を最初に開いて表示します。 既定値 : "no"。 title 属性に "no" を設定した場合、属性の値は無効です。
title | EditSheet HTC を、展開/折りたたみコントロールとその名前が入ったタイトル バーとともに表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "no" を指定した場合、タイトル バーの表示が抑制されます。 既定値 : "yes"。 title 属性に "no" を設定すると、expanded 属性には自動的に "yes" が設定されます。また、title 属性に "no" を設定する場合は、name 要素および key (sub) 要素を指定する必要はありません。

XML 構造に戻る

name

この要素は状況により必須で、EditSheet HTC の名前を指定します。

親要素

global

必須の子要素

なし。

省略可能な子要素

なし。

データ

EditSheet の名前。

属性

なし。

解説

この名前は "グループ名" と呼ばれることがあります。

通常、この名前はタイトル バーに表示されます。この動作は title 属性に "no" を設定することで抑制でき、その場合には要素を指定する必要はありません。含んでいる global 要素の title 属性が "no" に設定されていない場合、この要素は必須になります。

特定の EditSheet 名に HTML 書式ディレクティブが含まれる場合、適切なエスケープを使用する必要があります。たとえば、文字 "<" には文字列 &lt; を、文字 ">" には文字列 &gt; を、文字 "&" には文字列 &amp; を、それぞれ使用する必要があります。

XML 構造に戻る

key

この要素は状況により必須で、EditSheet HTC に関連付けられたショートカット キーとして機能する文字を指定します。

親要素

global

必須の子要素

なし。

省略可能な子要素

なし。

データ

ショートカット キーは、下線付きの editSheet 名として示します。

属性

なし。

解説

含んでいる global 要素の title 属性が "no" に設定されていない場合、この要素は必須になります。

EditSheet 名に下線付きの文字が含まれていれば、EditSheet HTC へのショートカット キーは、同じ文字を 指定する必要があります。

たとえば、EditSheet 名を文字列 "Department" のように指定する場合は、文字 "d" を <key> タグと </key> タグで囲む必要があります。

XML 構造に戻る

template

このオプション要素は、EditSheet HTC に対する HTML テンプレートを含みます。このテンプレートは、Commerce Server ビジネス デスク HTC のサブインスタンスを含むことができます。HTC の多くは、EditSheet HTC と EditField HTC です。

親要素

editsheet

必須の子要素

なし。

省略可能な子要素

なし。

データ

文字データ (CDATA) として表現された HTML テンプレート。

属性

属性 | 説明
fields | EditField HTC に含まれる ID をスペースで区切ったリストを指定します。EditField HTC は、親の EditSheet HTC と同じデータ、およびメタデータを使って読み込みます。 省略可。 有効な値 : EditField HTC に含まれる有効 ID。スペースで区切られている。 既定値 : なし。 EditSheet HTC はテンプレートを作成するとき、EditField HTC に対する正しい動作をアタッチし、EditField HTC の OnChange、OnValid、および OnRequire イベントを外部の EditSheet HTC に渡せるようにします。 これらの EditField HTC は DIV 要素の CLASS 属性の値 "EditField" を設定することはお勧めできません。
register | HTC に含まれる ID をスペースで区切ったリストを指定します。HTC の OnChange、OnValid、および OnRequire イベントは、外部の EditSheet HTC に渡されます。 省略可。 有効な値 : HTC に含まれる有効 ID。スペースで区切られている。 既定値 : なし。 標準 HTML 入力要素も登録することができ、OnChange イベントが外部の EditSheet HTC に渡せられます。しかし、HTML ラジオ ボックスおよびチェック ボックスの型の入力要素が OnChange イベントを発生しないことを覚えておくことは重要です。

解説

register 属性を使って、サブコントロールによって発生した OnChange および OnRequire イベントを外部の EditSheet HTC に渡すことができます。

fields 属性を使って、EditField HTC がそれらのメタデータを読み込まなくても、テンプレート内の要素に対する EditField HTC を作成することができます。

OnRequire イベントを外部の EditSheet HTC に渡すことにより、テンプレートされたサブコントロールに対して、必要なデータを示すアイコンを表示できます。

OnValid イベントを外部の EditSheet HTC に渡すことにより、テンプレートされたサブコントロールに対して、有効でないデータを示すアイコンを表示できます。

OnChange イベントを外部の EditSheet HTC に渡すことにより、変更が行われたかどうかの追跡を適切に行うことができます。

次の例は、EditSheet HTC、EditField HTC およびサブコントロールのチェック ボックスを含んだテンプレートを作成する方法を説明します。EditSheet HTC および EditField HTC の ID が template 要素の fields 属性と register 属性で、どのように指定されているか注意してください。

  <template fields="esSubControl2" register="esSubControl1">
    <![CDATA[
      <DIV ID='esSubControl1'
           CLASS='editSheet'
           MetaXML='esMeta1'
           DataXML='esData'>
        <H3 ALIGN="center">Loading Property Group...</H3>
      </DIV>
      <B>File Name 5:</B>
      <DIV ID='esSubControl2'
           STYLE='WIDTH:300px'
           MetaXML='esMeta1'
           DataXML='esData'>
        <H3 ALIGN="center">Loading Property...</H3>
      </DIV>
      <INPUT type="checkbox" id=checkbox1 name=checkbox1>
      <LABEL FOR=checkbox1>additional HTML controls</LABEL>
    ]]>
  </template>

XML 構造に戻る

fields

この必須要素は、EditSheet HTC に表示するフィールドを指定する要素を含みます。

親要素

editsheet

必須の子要素

なし。

省略可能な子要素

boolean、date、numeric、select、text、time

データ

なし。

属性

なし。

解説

template 要素が指定されていない場合、fields 要素内で定義された要素は、fields 要素内と同じ順序で EditSheet HTC 内の行として表示されます。たとえば、最初の要素は一番上の行を定義し、最後の要素は一番下の行を定義します。

fields 要素の子要素は、EditField HTC の構成データにeditfield 要素の子要素として定義できる要素と、実質的に同じです。主要な相違点は、EditSheet HTC の fields 要素の子要素に、子要素 name 要素と tooltip 要素を追加して含められることです。共通の属性については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

boolean

このオプション要素は、Boolean 値を含む EditSheet HTC の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、label、name、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

date

このオプション要素は、Date 値を含む EditSheet HTC 内の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、format、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。
firstday | 週の初めとする曜日を指定します。 省略可。 有効な値 : 0 (日曜日) ～ 6 (土曜日) の整数。 既定値 : 0 (日曜日)

XML 構造に戻る

numeric

このオプション要素は、Numeric 値を含む EditSheet HTC の特定のフィールドに関する構成、および評価情報を指定します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、format、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required、subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

select

このオプション要素は、選択肢の固定セットを含む EditSheet HTC の特定のフィールドに関する構成、および評価情報を指定します。

親要素

fields

必須の子要素

select (少なくとも 1 つは必要ですが、通常は複数あります)。

省略可能な子要素

browsetooltip、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、onvalid、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

text

このオプション要素は、Text 値を含む EditSheet HTC 内の特定のフィールドに関する構成、および評価情報を指定します。

親要素

fields

必須の子要素

name

省略可能な子要素

browsetooltip、charmask、error、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、maxlen、minlen、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required、subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

time

このオプション要素は、Time 値を含む EditSheet HTC の特定のフィールドに関する構成、および評価情報を指定します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

解説

time 要素に関連付けられているフィールドの形式は固定されています。時と分は、コロン (":") で区切られ、24 時間形式で表示されます。秒はサポートされていません。

XML 構造に戻る

browsetooltip、charmask、error、format、label、name、option、prompt、select、tooltip

これらの 10 個の要素は、EditSheet HTC 内に埋め込まれている、各種のデータ型の 1 つまたは複数の EditField 要素の動作を限定、または拡張するために使われます。詳細については、「共有 EditField 子要素」を参照してください。

XML 構造に戻る


ExpressionBuilder の構成

XMLCfgID コンテナ属性により指定される XML データアイランドは、ExpressionBuilder HTML コンポーネント (HTC) によって使われる構成情報を含みます。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。

ExpressionBuilder HTC は、埋め込み QueryBuilder HTC を含みます。このため実際は、ExpressionBuilder HTC に渡される構成要素の多くは、埋め込み QueryBuilder HTC により使われます。ここで説明する各要素は、ExpressionBuilder HTC、埋め込み QueryBuilder HTC、またはその両方を構成するための要素として指定されます。

このデータ アイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • ExpressionBuilder HTC に対する MetaXML データアイランド内の XML 要素および属性は大文字を使う必要があります。

XML 構造

<EBCONFIG>
  <EXPR-ASP>relative URL of exprarch folder</EXPR-ASP>
  <PROFILE-LIST>
    <PROFILE>profile name</PROFILE>
    <PROFILE SRC />
  </PROFILE-LIST>
  <SITE-TERMS URL NOLOAD />
  <EEE-INTRINSICS />
  <DEBUG />
  <RENAME>no</RENAME>
  <HIDEBUTTONS />
  <TYPESOPS>path to xml file</TYPEOPS>
  <MESSAGE>alternate message</MESSAGE>
  <FILTER-CATEGORIES>
    <CATEGORY>category name</CATEGORY>
  </FILTER-CATEGORIES>
  <SAVE-CATEGORY>save category name</SAVE-CATEGORY>
  <EDIT-NESTED>always, warn, or never</EDIT-NESTED>
  <DATE-FORMAT>date format</DATE-FORMAT>
  <DATE-FIRSTDAY>first day of week</DATE-FIRSTDAY>
  <NUMBER-FORMAT>number format</NUMBER-FORMAT>
  <CURRENCY-FORMAT>currency format</CURRENCY-FORMAT>
  <HELPTOPIC>help topic URL</HELPTOPIC>
  <ADVANCED />
  <FILTER-PROPERTIES>XSL expression</FILTER-PROPERTIES>
</EBCONFIG>

EBCONFIG

この必須要素は、ExpressionBuilder HTC のインスタンスに対する構成情報を含みます。

親要素

なし (ドキュメント ルート)

必須の子要素

EXPR-ASP、PROFILE-LIST

省略可能な子要素

ADVANCED、CURRENCY-FORMAT、DATE-FIRSTDAY、DATE-FORMAT、DEBUG、EDIT-NESTED、EEE-INTRINSICS、FILTER-CATEGORIES、FILTER-PROPERTIES、HELPTOPIC、HIDEBUTTONS、MESSAGE、NUMBER-FORMAT、RENAME、SAVE-CATEGORY、SITE-TERMS、TYPESOPS

データ

なし。

属性

なし。

解説

EBCONFIG 要素は、ExpressionBuilder HTC および埋め込み QueryBuilder HTC の両方によって使用されます。

XML 構造に戻る

EXPR-ASP

この必須要素は、ExpressionBuilder HTC が正しく機能するために必要な Exprarch フォルダの相対 URL を指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

Exprarch フォルダの相対 URL。

属性

なし。

解説

EBCONFIG 要素は、ExpressionBuilder HTC および埋め込み QueryBuilder HTC の両方によって使用されます。

XML 構造に戻る

PROFILE-LIST

この必須要素は、この ExpressionBuilder HTC のインスタンスによって使われる各種のプロファイルの仕様を含みます。

親要素

EBCONFIG

必須の子要素

PROFILE (少なくとも 1 つは必要です)。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

PROFILE-LIST 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

PROFILE

この必須要素は、2 つの方法のいずれかでプロファイルを指定します。Commerce Server 内で定義されたプロファイル定義の場合、プロファイルの名前はその要素に関連付けられたデータとして指定されます。Commerce Server で定義されていないプロファイルの場合、プロファイルを含む有効な XML ドキュメントの URL が SRC 属性の値として指定されます。

親要素

PROFILE-LIST

必須の子要素

なし。

省略可能な子要素

なし。

データ

SRC 属性がない場合は、プロファイルの名前が PROFILE 要素のデータとして指定されます。それ以外の場合は、データがありません。

属性

属性 | 説明
SRC | Commerce Server で定義されていないプロファイルを含む有効な XML ドキュメントの URL を提供します。 省略可。 有効な値 : 有効な URL。 既定値 : なし。 この属性が指定さている場合、PROFILE 要素にはデータが含まれていてはなりません。

解説

Commerce Server で定義されているプロファイル定義の名前がこの要素のデータとして指定されている場合、名前は "CatalogName.ProfileName" の形式である必要があります。たとえば、"UserProfiles.UserObject" のように指定します。

Commerce Server で定義されていないプロファイルが SRC 属性を使用して指定されている場合、プロファイル仕様の定義済み XML 構造に従っている必要があります。この構造の詳細については、「QueryBuilder HTC でプロファイルとサイト用語を指定する」を参照してください。

PROFILE 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

SITE-TERMS

このオプション要素は、ExpressionBuilder HTC がサイト用語を読み込むかどうかに関する代替情報を指定します。読み込む場合は、どこから読み込むかを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
NOLOAD | ExpressionBuilder HTC の、このインスタンスへのサイト用語の読み込みを抑制します。("1" が設定された場合) 省略可。 有効な値 : "1". 既定値 : なし。 サイト用語の読み込みを抑制する場合、サイト用語を含んだ式を ExpressionBuilder HTC に渡すと、エラーが発生します。 この属性は、URL 属性と組み合わせて指定してはなりません。
URL | この ExpressionBuilder HTC インスタンスで使われる代替サイト用語を含んだ、有効な XML ドキュメントの URL を指定します。 省略可。 有効な値 : 有効な URL。 既定値 : なし。 この属性は、NOLOAD 属性と組み合わせて指定してはなりません。

解説

SITE-TERMS 要素が指定されている場合、NOLOAD 属性または URL 属性のいずれか (両方は不可) を指定する必要があります。

SITE-TERMS 要素が指定されている場合、必須の EXPR-ASP 要素で指定されている同じフォルダからサイト用語が読み込まれます。

URL 属性を使用してサイト用語の別のセットが指定されている場合、サイト用語仕様の定義済み XML 構造に従っている必要があります。この構造の詳細については、「QueryBuilder HTC でプロファイルとサイト用語を指定する」を参照してください。

SITE-TERMS 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

EEE-INTRINSICS

このオプション要素が指定されている場合、ExpressionBuilder HTC は式エバリュータの組み込みプロパティをドロップダウン メニューのプロファイルとして表示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

EEE-INTRINSICS 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

DEBUG

このオプション要素が指定されている場合、ExpressionBuilder HTC はデバッグ情報を表示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

EBCONFIG 要素は、ExpressionBuilder HTC および埋め込み QueryBuilder HTC の両方によって使われます。

XML 構造に戻る

RENAME

このオプション要素は、ExpressionBuilder HTC が編集中に、式の名前を変更できるかどうかを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

通常は、文字列 "no"。

属性

なし。

解説

文字列 "no" が、この要素に関連付けられたデータとして表示されている場合、式の名前は変更できません。ほかの文字列が指定されているか、または RENAME 要素が指定されていない場合、式の名前は変更できます。

ExpressionBuilder HTC を create モード、または createfrom モードでアクティブにすると、RENAME 要素は無視され、名前は常に変更できます。

RENAME 要素は ExpressionBuilder HTC だけで使われます。

XML 構造に戻る

HIDEBUTTONS

このオプション要素が指定されている場合、ExpressionBuilder HTC は [保存] ボタン、[キャンセル] ボタン、および [ヘルプ] ボタンを非表示にします。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

  • HIDEBUTTONS 要素は ExpressionBuilder HTC だけで使われます。

XML 構造に戻る

TYPESOPS

このオプション要素が指定されている場合、使用する ExpressionBuilder HTC の XML の型および演算子ファイルを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

XML の型および演算子のファイルへの相対パス。

属性

なし。

解説

この要素が指定されていない場合、既定の型および演算子のファイルは /Widgets/ExprbldrHTC/TypesOpsA.xml です。

TYPESOPS 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

MESSAGE

このオプション要素が指定されている場合、この要素は、式セレクタ領域の上に表示される代替メッセージを示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

代替メッセージ。

属性

なし。

解説

MESSAGE 要素を指定しない場合、既定メッセージは "Target according to the following conditions" になります。

MESSAGE 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

FILTER-CATEGORIES

このオプション要素は、式カテゴリのリストを含みます。ExpressionBuilder HTC が式の新規作成に使われる式のリストを作成するとき、FILTER-CATEGORIES 要素が指定されていれば、指定されたカテゴリに属する式だけが式のリストを含みます。FILTER-CATEGORIES 要素が指定されていない場合、すべての式が式のリストに含まれます。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

category (通常は、少なくとも 1 つ以上指定します)。

データ

なし。

属性

なし。

解説

FILTER-CATEGORIES 要素に CATEGORY 要素を含んでいない場合、FILTER-CATEGORIES 要素は指定されていないものとして処理されます。

FILTER-CATEGORIES 要素は、埋め込み ExpressionBuilder HTC だけで使われます。

XML 構造に戻る

CATEGORY

このオプション要素は、ExpressionBuilder HTC によって指定される式リストに含まれる、式カテゴリを指定します。複数の CATEGORY 要素を使って、複数の式カテゴリを指定できます。

親要素

FILTER-CATEGORY

必須の子要素

なし。

省略可能な子要素

なし。

データ

式カテゴリの名前です。

属性

なし。

解説

通常は、FILTER-CATEGORIES 要素を指定するとき、少なくとも 1 つの CATEGORY 要素が指定されます。カテゴリをすべて含めるとき、FILTER-CATEGORIES 要素を指定する場合と指定しない場合があります。

CATEGORY 要素は ExpressionBuilder HTC だけで使われます。

XML 構造に戻る

SAVE-CATEGORY

このオプション要素が指定されている場合、この式の保存先のカテゴリを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

現在の式が保存されるとき、その式に関連付けられる式カテゴリの名前。

属性

なし。

解説

SAVE-CATEGORY 要素を指定した場合、この要素のデータとして指定した値は、それ以前に式に関連付けられたカテゴリよりも優先されます。

SAVE-CATEGORY 要素を指定しない場合、それ以前に式がカテゴリに関連付けられたかどうかにかかわらず、どのカテゴリにも関連付けられません。

SAVE-CATEGORY 要素は ExpressionBuilder HTC だけで使われます。

XML 構造に戻る

EDIT-NESTED

このオプション要素は、ネストされた式の編集を許可するか、禁止するか、警告ダイアログ ボックスに応答し明示的に許可したときだけ編集を許可するかを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

"always"、"warn"、または "never" のいずれか 1 つの値。詳細については、"解説" を参照してください。

属性

なし。

解説

"always" を指定すると、ネストした式が編集モードで開かれます。一般的に、これはお勧めできません。

"warn" を指定すると、ネストした式を編集モードで開くか表示モードで開くかを選択する警告ダイアログ ボックスが表示されます。

"never" を指定すると、ネストした式が表示モードで開かれます。

EDIT-NESTED 要素がないか、EDIT-NESTED 要素に不正なデータ値が含まれている場合の既定の動作では、ネストした式の編集はできなくなっています。

EDIT-NESTED は、式が作成または編集される場合にのみ関係します。

EDIT-NESTED 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

DATE-FORMAT

このオプション要素が指定されている場合、この要素は日付の表示形式を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

日付の表示形式。

属性

なし。

解説

日付の有効な形式は、"m/d/yyyy"、"d/m/yyyy"、および "yyyy/m/d" です。既定の形式は "m/d/yyyy" です。区切り文字には、スラッシュ ("/")、ハイフン ("-")、およびピリオド (".") のいずれかの文字を指定できます。既定の区切り文字はスラッシュ ("/") です。指定する文字 "m"、"d"、および "y" の数は表示される日付に影響を与えません。月と日は常に先行のゼロ (0) を付けないで表示され、年は常に 4 桁で表示されます。

DATE-FORMAT 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

DATE-FIRSTDAY

このオプション要素が指定されている場合、この要素は週の初めとする曜日を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

0 (日曜日) ～ 6 (土曜日) の数字。

属性

なし。

解説

曜日は 0 ～ 6 の数字で表します。0 は日曜日、1 は月曜日、2 は火曜日、3 は水曜日、4 は木曜日、5 は金曜日、6 は土曜日に対応しています。

この要素が指定されていない場合、既定の週の初めの曜日は日曜日です。

DATE-FIRSTDAY 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

NUMBER-FORMAT

このオプション要素が指定されている場合、この要素は数字の表示形式を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

数字の表示形式。

属性

なし。

解説

数字の有効な形式は、桁の配置に応じて、負の値が指定される (または指定されない) 方法を示す文字列を使用して指定されます。負の値は、マイナス記号 ("-") を数字の前または後ろに付けて指定できます (数字と記号はスペースで区切っても区切らなくてもかまいません)。または、数字をかっこで囲んでも指定できます。

この要素が指定されていない場合、既定の形式は "–1.1" です。

例 :

1.1 -1.1 1.1- (1.1)

NUMBER-FORMAT 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

CURRENCY-FORMAT

このオプション要素が指定されている場合、この要素はCurrency の表示形式を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

Currency の表示形式。

属性

なし。

解説

通貨の有効な形式は、桁の配置に応じて、負の値が指定される (または指定されない) 方法を示す文字列を使用して指定されます。負の値は、マイナス記号 ("-") を数字の前または後ろに付けて指定できます (数字と記号はスペースで区切っても区切らなくてもかまいません)。または、数字をかっこで囲んでも指定できます。

この要素が指定されていない場合、既定の形式は "–1.1" です。

この形式の一部として通貨記号を指定してはなりません。

例 :

1.1 -1.1 1.1- (1.1)

CURRENCY-FORMAT 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

HELPTOPIC

このオプション要素が指定されている場合、この要素は QueryBuilder HTC のこのインスタンスのヘルプ トピックを示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

対応するヘルプ トピックの絶対 URL。

属性

なし。

解説

この要素が指定されている場合、QueryBuilder HTC はヘルプ ボタンを表示します。このボタンをクリックすると、指定されたヘルプ トピックが表示されます。

この要素に必要な絶対 URL を生成するには、サーバー側のユーティリティ ルーチン sRelURL2AbsURL を使用します。次に例を示します。

<HELPTOPIC><%=sRelURL2AbsURL("../docs/htm/yourhelpfile.htm")%></HELPTOPIC>

HELPTOPIC 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

ADVANCED

このオプション要素が指定されている場合、この要素は、詳細編集が許可されていることを示します。詳細編集により、式の中で OR 演算子を利用できるようになります。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

この要素が存在しない場合は、詳細編集は許可されません。

ADVANCED 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る

FILTER-PROPERTIES

このオプション要素が指定されている場合、プロファイルからのプロパティをフィルタするために使われる Extensible Stylesheet Language (XSL) パターン フラグメントを示します。この要素が存在する場合、用意されている XSL パターンが、読み込まれる各プロファイルのプロパティに適用されます。XSL パターンに従っていないプロパティは、式の作成または編集をするときには、表示されません。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

XSL パターン フラグメント。

属性

なし。

解説

既定の XSL パターン フラグメント : not(@isActive) || @isActive != '0'

この要素に配信されるデータ値は、"Property[" と "]" という文字列で囲まれて XSL パターンを形成するので、実際には XSL パターン フラグメントになります。たとえば、実際の既定の XSL パターンは次のようになります。

Property[not(@isActive) || @isActive != '0']

要素属性が定義されていない場合、これらは "0" を返します。このため、属性があるかどうかおよび属性の値がゼロに設定されているかどうかを確認するためのデータとして、XSL パターン フラグメントを指定することをお勧めします。既定の XSL パターンは、両方の条件を確認しているサンプルです。

FILTER-PROPERTIES 要素は、埋め込み QueryBuilder HTC だけで使われます。

XML 構造に戻る


ListEditor の構成

MetaXML コンテナ属性により指定される XML データアイランドは、ListEditor HTML コンポーネント (HTC) によって使われる構成情報を含みます。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。

このデータ アイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • ListEditor HTC に対する MetaXML データアイランド内の XML 要素および属性は小文字を使う必要があります。

XML 構造

<listeditor>
  <columns>
    <column format hide id width>Column name</column>
  </columns>
  <fields>
    <boolean browse browsereadonly default disabled hide
             id onbrowse onchange onerror readonly
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <name>Name of field in left-hand column</name>
      <label>Checkbox label</label>
      <tooltip>Tooltip for the left-hand column label</tooltip>
    </boolean>
    <date browse browsereadonly default disabled firstday
          hide id max min onbrowse onchange onerror
          onrequire onvalid readonly required
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <format>Date format to use</format>
      <error>Name of field in left-hand column</error>
      <name>Column heading name</name>
      <prompt>Empty control prompt</prompt>
      <tooltip>Tooltip for the left-hand column label</tooltip>
    </date>
    <numeric browse browsereadonly default disabled hide id
             max min onbrowse onchange onerror onrequire
             onvalid readonly required subtype
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <format>Number format to use</format>
      <error>Validation error message</error>
      <name>Name of field in left-hand column</name>
      <prompt>Empty control prompt</prompt>
      <tooltip>Tooltip for the left-hand column label</tooltip>
    </numeric>
    <select browse browsereadonly default disabled hide id
            onbrowse onchange onerror onvalid readonly
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <name>Name of field in left-hand column</name>
      <prompt>Empty control prompt</prompt>
      <tooltip>Tooltip for the left-hand column label</tooltip>
      <select id>
        <option value>Item display name</option>
      </select>
      ...
      <select id>
        <option value>Item display name</option>
      </select>
    </select>
    <text browse browsereadonly default disabled hide id
          maxlen minlen onbrowse onchange onerror onrequire
          onvalid readonly required subtype
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <charmask>Validation character mask</charmask>
      <error>Validation error message</error>
      <name>Name of field in left-hand column</name>
      <prompt>Empty control prompt</prompt>
      <tooltip>Tooltip for the left-hand column label</tooltip>
    </text>
    <time browse browsereadonly default disabled hide
          id max min onbrowse onchange onerror
          onrequire onvalid readonly required
      <browsetooltip>Tooltip for browse button</browsetooltip>
      <error>Validation error message</error>
      <name>Name of field in left-hand column</name>
      <prompt>Empty control prompt</prompt>
      <tooltip>Tooltip for the left-hand column label</tooltip>
    </time>
  </fields>
</listeditor>

listeditor

この必須要素は、ListEditor HTC の構成情報を含みます。

親要素

なし (ドキュメント ルート)。

必須の子要素

columns、fields

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

columns

この必須要素は、ListEditor HTC がリスト領域に表示する各種の列の説明を含みます。

親要素

listeditor

必須の子要素

column

(少なくとも 1 つは必要ですが、通常は複数あります)。

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

column

この必須要素は、ListEditor HTC のリスト領域の特定の列に関する構成情報を提供します。

親要素

columns

必須の子要素

なし。

省略可能な子要素

なし。

データ

ユーザーに対して表示される列の名前です。

属性

属性 | 説明
format | この列のデータをどのようにフォーマットするかを指定します。 省略可。 有効な値 : "select"、"password"、"float"。詳細については、以下を参照してください。 既定値 : なし。 format 属性に "select" が設定されたとき、埋め込み ListSheet HTC は id 属性に対応するメタデータの select 要素を検索し、列内の値に表示する表示値を検索します。 format 属性に "password" を設定すると、この値はパスワード型 HTML 要素での場合と同じようにマスクされます。 format 属性に "float" を設定すると、この値は平均化されます。たとえば、"2.00" は "2" と表示されます。
hide | この列を表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "yes" を指定した場合、この列は表示されません。 既定値 : "no"。
id | この列を DataXML コンテナ属性内の対応するデータに関連付けるために使う識別子を指定します。 必須。 この属性の値は、field 要素の id 属性の値に対応する場合と対応しない場合があります。
width | この要素に対応する列の初期幅を指定します。 省略可。 有効な値 : 1 ～ 100 の整数。列幅をのパーセンテージとしてのデータ列幅を表します。100 に満たない場合、すべての列の指定された幅は平均化されます。 既定値 : 幅が指定されていない場合は、列の数で割った幅の合計として、幅のパーセンテージが計算されます。

解説

少なくとも 1 つの column 要素が必要です。

XML 構造に戻る

fields

この必須要素は、ListEditor HTC の編集領域に表示される各種フィールドを指定する要素を含みます。

親要素

listeditor

必須の子要素

なし。

省略可能な子要素

boolean、date、numeric、select、text、time

データ

なし。

属性

なし。

解説

少なくとも 1 つの要素を含む必要がありますが、通常は複数の要素を含み、編集領域に複数のフィールドを持つ ListEditor HTC に対応しています。

fields 要素内で定義された要素は、ListEditor の編集領域の行として、fields 要素内で定義された要素と同じ順序で表示されます。たとえば、最初の要素は一番上の行を定義し、最後の要素は一番下の行を定義します。

fields 要素の子要素は、EditField HTC の構成データにeditfield 要素の子要素として定義できる要素と、実質的に同じです。主要な相違点は、ListEditor HTC の子要素に、子要素 name 要素と tooltip 要素を追加して含められることです。共有される属性については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

boolean

このオプション要素は、Boolean 値を含む ListEditor HTC の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、label、name、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

date

このオプション要素は、Date 値を含む ListEditor HTC の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、format、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

numeric

このオプション要素は、Numeric 値を含む ListEditor HTC の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、format、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required、subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

select

この省略可能な要素は、選択の固定セットを含む ListEditor HTC の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

select (少なくとも 1 つは必要ですが、通常は複数あります)。

省略可能な子要素

browsetooltip、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、onbrowse、onchange、onerror、onvalid、readonly | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

text

このオプション要素は、Text 値を含む ListEditor HTC の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、charmask、error、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、maxlen、minlen、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required、subtype | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

XML 構造に戻る

time

このオプション要素は、Time 値を含む ListEditor HTC の特定のフィールドに関する構成、および評価情報を提供します。

親要素

fields

必須の子要素

なし。

省略可能な子要素

browsetooltip、error、name、prompt、tooltip

データ

なし。

属性

属性 | 説明
id、browse、browsereadonly、default、disabled、hide、max、min、onbrowse、onchange、onerror、onrequire、onvalid、readonly、required | id 属性は必須です。それ以外は省略可能です。 これらの属性の詳細については、「共有 EditField 属性」を参照してください。

解説

time 要素に関連付けられているフィールドの形式は固定されています。時と分は、コロン (":") で区切られ、24 時間形式で表示されます。秒はサポートされていません。

XML 構造に戻る

browsetooltip、charmask、error、format、label、name、option、prompt、select、tooltip

これらの 10 個の要素は、ListEditor HTC 内に埋め込まれている、各種のデータ型の 1 つまたは複数の EditField 要素の動作を限定、または拡張するために使われます。詳細については、「共有 EditField 子要素」を参照してください。

XML 構造に戻る


ListSheet の構成

MetaXML コンテナ属性により指定される XML データアイランドは、ListSheet HTML コンポーネント (HTC) によって使われる構成情報を含みます。

XML ドキュメントが (XML データアイランドを作成する) ページに含まれる方法の詳細については、「XML データアイランド」を参照してください。

このデータアイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • ListSheet HTC に対する MetaXML データアイランド内の XML 要素および属性は小文字を使う必要があります。

XML 構造

<listsheet>
  <global curpage headers pagecontrols pagesize
          recordcount scroll selectall selection
          selectionbuttons sort/>
  <columns>
    <column format hide id id2
            id3 sortdir width>Column heading name</column>
    <subobject datawidth labelwidth type>
      <column format hide id width>Column heading name</column>
    </subobject>
  </columns>
  <operations>
    <page formid />
    <sort formid />
    <sublist formid />
    <custom_op formid />
  </operations>
</listsheet>

listsheet

この必須要素は、ListSheet HTML コンポーネント (HTC) に対する構成情報を含みます。

親要素

なし (ドキュメント ルート)。

必須の子要素

columns、global

省略可能な子要素

operations

データ

なし。

属性

なし。

XML 構造に戻る

global

この必須要素は、ListSheet HTC のグローバル特性を指定して、ListSheet HTC が状況に応じて異なる動作を示すことができるようにします。

親要素

listsheet

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
curpage | 現在のページ番号を指定します。 省略可。 有効な値 : 整数。 既定値 : 1
headers | 列見出しを表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "no" を指定した場合、列見出しの表示は抑制されます。 既定値 : "yes"。
pagecontrols | ページ コントロールを表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "no" を指定した場合、ページ コントロールの表示は抑制されます。 既定値 : "yes"。
pagesize | 1 ページあたりに表示するレコード数を指定します。 省略可。 有効な値 : 整数。 既定値 : 20 この値は、表示できるページの数を計算するために使用されます。
recordcount | すべてのページに表示するレコードの総数を指定します。 省略可。 有効な値 : 整数。 既定値 : なし。 この値は、表示できるページの数を計算するために使用されます。値 -1 を設定し、ページ コントロールが表示される場合、前回のページの表示、または評価が行われます。
scroll | スクロール バーを使って、一覧全体を表示できるようにするかを制御します。 省略可。 有効な値 : "yes" および "no"。値 "no" を指定した場合、スクロール バーの表示が抑制されるので、ListSheet HTC の高さとリスト全体の高さが同じになります。この場合、ブラウザでのスクロールが必要になることがあります。 既定値 : "yes"。
selectall | ListSheet HTC が、選択されたすべての項目を表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "yes" を指定した場合、すべての項目が選択されます。 既定値 : "no"。
selection | ListSheet HTC のこのインスタンスで、複数選択が許可されるかどうかを指定します。 省略可。 有効な値 : "single" と "multi"。 既定値 : "single"。 [すべて選択] ボタンと [すべて選択解除] ボタンが表示されるのは、値 "multi" を指定した場合だけです。
selectionbuttons | [すべて選択] ボタンと [すべて選択解除] ボタンを表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "no" を指定した場合、[すべて選択] ボタンと [すべて選択解除] ボタンの表示は抑制されます。 既定値 : "yes"。
sort | 列見出しがクリックされると、列の値に従ってレコードの並べ替えを行うかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "no" を指定した場合、列の並べ替えは無効になり、OnPage イベントの発生は抑制されます。 既定値 : "yes"。

XML 構造に戻る

columns

この必須要素は、ListSheet HTC によって表示される各種の列の説明を含みます。

親要素

listsheet

必須の子要素

column (少なくとも 1 つ)

省略可能な子要素

subobject

データ

なし。

属性

なし。

XML 構造に戻る

column

この必須要素は、ListSheet HTC の特定の列に関する構成情報を提供します。

親要素

columns

必須の子要素

なし。

省略可能な子要素

なし。

データ

ユーザーに対して表示される列の名前です。

属性

属性 | 説明
format | この列に対して特殊なフォーマットを使えるように指定します。 省略可。 有効な値 : "select"、"password"、"float"。詳細については、以下を参照してください。 既定値 : なし。 "select" という値を設定すると、メタデータ内の選択リストから表示値を検索します。 "password" という値を設定すると、HTML パスワード入力要素と同じように、表示をマスクします。 "float" という値を設定すると、標準化された 10 進値としてデータが表示されます。
hide | 列を表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "yes" を指定した場合、この列の表示は抑制されます。 既定値 : "no"。
id | この列を、第 1 レベルのデータに関連付けるために使われる識別子を指定します。 必須。 有効な値 : DataXML コンテナ属性によって識別される XML データアイランドで、対応する第 2 レベルのデータを一意に識別する文字列。 既定値 : なし。 データの第 2 レベルの XML 要素が表示されるため、ListSheet HTC にはこの識別子が必要です。
id2 | この列を、第 2 レベルのデータに関連付けるために使われる識別子を指定します。 省略可。 有効な値 : DataXML コンテナ属性によって識別される XML データアイランドで、対応する第 2 レベルのデータを一意に識別する文字列。 既定値 : なし。 データの第 2 レベルの XML 要素が表示されるため、ListSheet HTC にはこの識別子が必要です。 この属性は 2 層、または 3 層のリストの第 2 レベルとして表示される各列に対して指定する必要があります。
id3 | この列を、対応する第 3 レベルのデータに関連付けるために使われる識別子を指定します。 省略可。 有効な値 : DataXML コンテナ属性によって識別される XML データアイランドで、対応する第 3 レベルのデータを一意に識別する文字列。 既定値 : なし。 データの第 3 レベルの XML 要素が表示されるため、ListSheet HTC にはこの識別子が必要です。 この属性は2 層、または 3 層のリストの第 3 レベルとして表示される各列に対して指定する必要があります。
sortdir | 並べ替えの先頭列、および並べ替えの方向を指定します。 省略可。 有効な値 : "asc" と "desc" (それぞれ、昇順と降順) 既定値 : なし。 複数の列に対してこの属性を設定すると、最初の列だけに適用されます。
width | 列の初期幅を指定します。 省略可。 有効な値 : 0 ～ 100 の整数。列幅のパーセンテージとしての列幅を表します。100 に満たない場合、すべての列の指定された幅は平均化されます。 既定値 : なし。 幅が指定されていない場合は、列の数で割った幅の合計として、幅のパーセンテージが計算されます。

解説

column 要素は少なくとも 1 つ指定する必要がありますが、通常は複数の column 要素を指定します。

XML 構造に戻る

subobject

このオプション要素は、異種グループ化リストの詳細行に表示されるデータに関する詳細情報を指定します。このデータは常に DataXML コンテナ属性内の第 2 レベルのデータとして指定され、type 属性の指定により、リスト形式またはプロパティ形式のいずれかで表示できます。

親要素

columns

必須の子要素

column

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
datawidth | type 属性に "properties" が設定されるときは、データ列の初期幅を指定します。 省略可。 有効な値 : 0 ～ 100 の整数。制御幅のパーセンテージとしてのデータ列幅を表します。 既定値 : 50 type 属性が "list" に設定されている場合、この属性は無視されます。
labelwidth | type 属性に "properties" が設定されるときは、ラベル列の初期幅を指定します。 省略可。 有効な値 : 0 ～ 100 の整数。列幅のパーセンテージとしての列幅を表します。 既定値 : 30 type 属性が "list" に設定されている場合、この属性は無視されます。
type | どのタイプの異種グループ化リストを表示するかを指定します。 必須。 有効な値 : "list" と "properties"。 既定値 : なし。

解説

通常は、複数の column 要素を指定します。

subobject 要素を指定すると、ListSheet HTC は異種グループ化リストとして表示されます。この場合、最上位レベルの column 要素の id2 属性と id3 属性は使用されません。

subobject 要素を指定しない場合は、id 属性、id2 属性、および id3 属性のうちのいくつ指定したかにより、ListSheet HTC は、フラット リスト、2 層の同種グループ化項目リスト、または 3 層の同種グループ化項目リストとして表示します。

XML 構造に戻る

column

この必須要素は、異種グループ化リストを表示する ListSheet 内の特定の行、または列に関する構成情報を提供します。行、または列は、それぞれ subobject 要素の type 属性への "list"、または "properties" の設定に依存します。

親要素

subobject

必須の子要素

なし。

省略可能な子要素

なし。

データ

ユーザーに対して表示される列、または行のラベルの名前です。

属性

属性 | 説明
format | この列、または行に対して特殊なフォーマットを使えるように指定します。 省略可。 有効な値 : "select"、"password"、"float"。詳細については、以下を参照してください。 既定値 : なし。 "select" という値を設定すると、メタデータ内の選択リストから表示値を検索します。 "password" という値を設定すると、HTML パスワード入力要素と同じように、表示をマスクします。 "float" という値を設定すると、標準化された 10 進値としてデータが表示されます。
hide | 列、または行を表示するかどうかを指定します。 省略可。 有効な値 : "yes" および "no"。値 "yes" を指定した場合、この列、または行の表示は抑制されます。 既定値 : "no"。
id | この列、または行を、第 2 レベルのデータに関連付けるために使われる識別子を指定します。 必須。 有効な値 : DataXML コンテナ属性によって識別される XML データアイランドで、対応する第 2 レベルのデータを一意に識別する文字列。 既定値 : なし。 データの第 2 レベルの XML 要素が表示されるため、ListSheet HTC にはこの識別子が必要です。
width | subobject 要素の type 属性に "list" が設定されている場合、データ列の初期幅を指定します。 省略可。 有効な値 : 0 ～ 100 の整数。制御幅のパーセンテージとしてのデータ列幅を表します。100 に満たない場合、すべての列の指定された幅は平均化されます。 既定値 : subobject 列の数を 80 で割り、ListSheet HTC の全体幅の右側 80% の均一な列幅にします。 subobject 要素の type 属性が "properties" コントロールに設定されているとき、この属性は無効で、指定しても無視されます。

解説

subobject 要素を指定する場合、column 要素は少なくとも 1 つ指定する必要がありますが、通常は複数の column 要素を指定します。

XML 構造に戻る

operations

このオプション要素は、特定のイベントが発生したとき、所定の標準 XMLHTTP 操作を実行する、ほかの要素を含んでいます。この操作セットは、カスタム操作で拡張することもできます。

親要素

listsheet

必須の子要素

なし。

省略可能な子要素

page、sort、sublist、custom_op

データ

なし。

属性

なし。

解説

カスタム子要素を含んだ子要素はすべて、異なるイベント発生時に実行される操作を指定します。

子要素を含まない operations 要素を指定しても、無視されます。

これらの子要素に対応する操作は、XMLHTTP 操作と呼ばれます。XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

XML 構造に戻る

page

このオプション要素は、ListSheet HTC で利用可能な標準 XMLHTTP 操作に対応するものです。この要素を指定すると、OnNewPage イベント発生後、リスト全体に新しいデータが再び読み込まれます。新しいデータがサーバー上のページから返されます。そのデータには、標準 XML データ形式のデータ以外は含まれません。

親要素

operations

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
formid | OnNewPage イベント発生時に送信されるフォームの識別子を指定します。 必須。 有効な値 : form 要素の有効な id 属性。 既定値 : なし。

解説

XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

対応するフォームの識別子が formid 属性として設定されます。フォームの action 属性は、送信ページを指定する必要があります。送信ページは、データの新規ページを返します。

次の表は、フォームを送信するときに送信される引数を示しています。

引数 | 説明
op | この属性の値は "page" に設定されます。フォームの属性として指定された送信ページと組み合わせて、この引数を使い OnNewPage イベントに応じて特定のサーバー側コードを実行させることができます。 引数 op を指定すると、この引数の値に基づいて異なる操作を実行するよう分岐させることで、同じ送信ページで複数の処理を行うことができるようになります。
prevpage | この属性には、現在表示中で、まもなく前のページに表示されるページ番号が設定されます。
page | この属性には、表示された新規ページの番号が設定されます。
column | この属性の値は、データの新しいページにある並べ替え列の ID に設定されます。この ID は、record 要素の子要素に関連した名前です。
direction | この属性の値は、データの新しいページが昇順または降順で並べ替えられるかに応じて、"asc" または "desc" に設定されます。

フォームが送信されて、サーバーで処理が行われる方法の詳細については、「データの変更を保存する」を参照してください。

XML 構造に戻る

sort

このオプション要素は、ListSheet HTC で利用可能な標準 XMLHTTP 操作に対応するものです。この要素を指定すると、OnHeaderClick イベント発生後、リスト全体に新しいデータが再び読み込みまれます。新しいデータがサーバー上のページから返されます。そのデータには、標準 XML データ形式のデータ以外は含まれません。

親要素

operations

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
formid | OnHeaderClick イベント発生時に送信されるフォームの識別子を指定します。 必須。 有効な値 : form 要素の有効な id 属性。 既定値 : なし。

解説

XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

対応するフォームの識別子が formid 属性として設定されます。フォームの action 属性は、送信ページを指定する必要があります。送信ページは、再び並び替えて指定されたデータの最初のページを返します。

次の表は、フォームを送信するときに送信される引数を示しています。

引数 | 説明
op | この属性の値は "sort" に設定されます。フォームの属性として指定された送信ページと組み合わせて、この引数を使い OnHeaderClick イベントに応じて特定のサーバー側コードを実行させることができます。 引数 op を指定すると、この引数の値に基づいて異なる操作を実行するよう分岐させることで、同じ送信ページで複数の処理を行うことができるようになります。
page | この属性の値は、常に 1 に設定されます。この操作では、リストの先頭に戻らなければ再び並べ替えることができません。リストの先頭には、並べ替えの "先頭" が表示されます。
column | この属性の値は、データの新しいページにある並べ替え列の ID に設定されます。この ID は、record 要素の子要素に関連した名前です。
direction | この属性の値は、データの新しいページが昇順または降順で並べ替えられるかに応じて、"asc" または "desc" に設定されます。

フォームが送信されて、サーバーで処理が行われる方法の詳細については、「データの変更を保存する」を参照してください。

XML 構造に戻る

sublist

このオプション要素は、ListSheet HTC で利用可能な標準 XMLHTTP 操作に対応するものです。この要素を指定した場合、reload メソッドを使ってこの操作を起動すると、現在選択されている項目の下のリストにデータが読み込まれます。このメソッドは OnGroupOpen イベント処理ルーチン内で呼び出す必要があります。これにより、詳細データの表示が必要になるまで詳細データの検索を遅延できます。

親要素

operations

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

引数 | 説明
formid | OnGroupOpen イベントの発生時に送信されるフォームの識別子を指定します。 必須。 有効な値 : form 要素の有効な id 属性。 既定値 : なし。

解説

XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

対応するフォームの識別子が formid 属性として設定されます。フォームの action 属性は、送信ページ (詳細データを返すページ) を指定します。

次の表は、フォームを送信するときに送信される引数を示しています。

引数 | 説明
op | この引数の値は "sublist" に設定されます。フォームの属性として指定された送信ページと組み合わせて、この引数を使い OnGroupOpen イベントに応じて特定のサーバー側コードを実行させることができます。 引数 op を指定すると、この引数の値に基づいて異なる操作を実行するよう分岐させることで、同じ送信ページで複数の処理を行うことができるようになります。
xmllist | この引数は、クリックされたリスト項目の XML の値が設定され、どの下位項目を返すかを送信ページが認識できるようになります。

ある状況では、正しい XML 応答をフェッチする一部として、送信するフォームにほかのパラメータを含めるほうが良い場合があります。たとえば、どのページが呼び出すかによって異なる結果を返すというように、応答ページがいくつかの異なるページで共有されるよう設計されているとします。この場合、フォームにページ名を含む隠し要素を持たせることにより、どのページが呼び出したのかを応答ページが判断できるようになります。

フォームが送信されて、サーバーで処理が行われる方法の詳細については、「データの変更を保存する」を参照してください。

XML 構造に戻る

custom_op

カスタム操作要素は省略可能であり、ListSheet HTC に対して定義されたカスタム XMLHTTP 操作に対応しています。カスタム操作要素が指定されている場合、sOp パラメータにこの要素のカスタム名を設定して reload メソッドを呼び出すと、リスト全体が再び読み込まれます。

親要素

operations

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
formid | この要素のカスタム名が設定された sOp パラメータ付で reload メソッドが呼び出されるときに送信されるフォームの識別子を指定します。 必須。 有効な値 : form 要素の有効な id 属性。 既定値 : なし。

解説

たとえば、double_sort 要素をカスタム操作として指定し、sOp パラメータに "double_sort" を設定して reload メソッドを呼び出すと、指定された識別子を持つフォームが送信されます。次に例を示します。

bRetVal = elListSheet.reload("double_sort")

reload メソッドは、XML が返されないか、または error 要素が指定されている場合は False を返し、それ以外の場合は True を返します。

XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

対応するフォームの識別子が formid 属性として設定されます。フォームの action 属性には、送信ページ (新しいデータを返すページ) を設定します。

次の表は、フォームを送信するときに送信される引数を示しています。

引数 | 説明
op | この属性の値は "custom_op" に設定されます。フォーム属性として指定された送信ページと組み合わせてこの引数を使用することにより、特定の reload メソッド呼び出しに応じて特定のサーバー側のコードを実行させることができます。 引数 op を指定すると、この引数の値に基づいて異なる操作を実行するよう分岐させることで、同じ送信ページで複数の処理を行うことができるようになります。

ある状況では、正しい XML 応答をフェッチする一部として、送信するフォームにほかのパラメータを含めるほうがいい場合があります。たとえば、どのページが呼び出すかによって異なる結果を返すというふうに、応答ページがいくつかの異なるページで共有されるよう設計されているとします。この場合、フォームにページ名を含む隠し要素を持たせることにより、どのページが呼び出したのかを応答ページが判断できるようになります。

フォームが送信されて、サーバーで処理が行われる方法の詳細については、「データの変更を保存する」を参照してください。

XML 構造に戻る


QueryBuilder の構成

XMLCfgID コンテナ属性により指定される XML データアイランドは、QueryBuilder HTML コンポーネント (HTC) によって使われる構成情報を含みます。

XML ドキュメントが (XML データ アイランドを作成する) ページに含まれる方法の詳細については、「XML データアイランド」を参照してください。

このデータ アイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • QueryBuilder HTC に対する MetaXML データアイランド内の XML 要素および属性は大文字を使う必要があります。

XML 構造

<EBCONFIG>
  <EXPR-ASP>relative URL of exprarch directory</EXPR-ASP>
  <PROFILE-LIST>
    <PROFILE>profile name</PROFILE>
    <PROFILE SRC />
  </PROFILE-LIST>
  <SITE-TERMS URL NOLOAD />
  <EEE-INTRINSICS />
  <DEBUG />
  <TYPESOPS>path to xml file</TYPESOPS>
  <MESSAGE>alternate message</MESSAGE>
  <EDIT-NESTED>always, warn, or never</EDIT-NESTED>
  <DATE-FORMAT>date format</DATE-FORMAT>
  <DATE-FIRSTDAY>first day of week</DATE-FIRSTDAY>
  <NUMBER-FORMAT>number format</NUMBER-FORMAT>
  <CURRENCY-FORMAT>currency format</CURRENCY-FORMAT>
  <HELPTOPIC>help topic URL</HELP-TOPIC>
  <ADVANCED />
  <FILTER-PROPERTIES>XSL expression</FILTER-PROPERTIES>
</EBCONFIG>

EBCONFIG

この必須要素は、QueryBuilder HTC のインスタンスに対する構成情報を含みます。

親要素

なし (ドキュメント ルート)

必須の子要素

EXPR-ASP、PROFILE-LIST

省略可能な子要素

ADVANCED、CURRENCY-FORMAT、DATE-FIRSTDAY、DATE-FORMAT、DEBUG、EDIT-NESTED、EEE-INTRINSICS、FILTER-PROPERTIES、HELPTOPIC、MESSAGE、NUMBER-FORMAT、SITE-TERMS、TYPESOPS

データ

なし。

属性

なし。

XML 構造に戻る

EXPR-ASP

この必須要素は、QueryBuilder HTC が正しく機能するために必要な Exprarch フォルダの相対 URL を指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

PROFILE-LIST

この必須要素は、この QueryBuilder HTC のインスタンスによって使われる各種のプロファイルの仕様を含みます。

親要素

EBCONFIG

必須の子要素

PROFILE (少なくとも 1 つは必要です)。

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

PROFILE

この必須要素は、2 つの異なる方法のいずれかでプロファイルを指定します。Commerce Server 内で定義されたプロファイル定義の場合、プロファイルの名前はこの要素に関連付けられたデータとして指定されます。Commerce Server で定義されていないプロファイルの場合、プロファイルを含む有効な XML ドキュメントの URL が SRC 属性の値として指定されます。

親要素

PROFILE-LIST

必須の子要素

なし。

省略可能な子要素

なし。

データ

SRC 属性がない場合は、プロファイルの名前が PROFILE 要素のデータとして指定されます。それ以外の場合は、データがありません。

属性

属性 | 説明
SRC | Commerce Server で定義されていないプロファイルを含む有効な XML ドキュメントの URL を提供します。 省略可。 有効な値 : 有効な URL。 既定値 : なし。 この属性が指定さている場合、PROFILE 要素にはデータが含まれていてはなりません。

解説

Commerce Server で定義されているプロファイル定義の名前がこの要素のデータとして指定されている場合、名前は "CatalogName.ProfileName" の形式である必要があります。たとえば、"UserProfiles.UserObject" のように指定します。

Commerce Server で定義されていないプロファイルが SRC 属性を使用して指定されている場合、プロファイル仕様の定義済み XML 構造に従っている必要があります。この構造の詳細については、「QueryBuilder HTC でプロファイルとサイト用語を指定する」を参照してください。

XML 構造に戻る

SITE-TERMS

このオプション要素は、QueryBuilder HTC がサイト用語を読み込むかどうか関する代替情報を指定します。読み込む場合は、どこから読み込むかを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
NOLOAD | QueryBuilder HTC の、このインスタンスへのサイト用語の読み込みを抑制します。("1" が設定された場合) 省略可。 有効な値 : "1" 既定値 : なし。 サイト用語の読み込みが抑制されている場合、サイト用語を含んだクエリを QueryBuilder HTC に渡すと、エラーが発生します。 この属性は、URL 属性と組み合わせて指定してはなりません。
URL | この QueryBuilder HTC のインスタンスで使われる代替サイト用語を含んた、有効 XML ドキュメントの URL を指定します。 省略可。 有効な値 : 有効な URL。 既定値 : なし。 この属性は、NOLOAD 属性と組み合わせて指定してはなりません。

解説

SITE-TERMS 要素が指定されている場合、NOLOAD 属性または URL 属性のいずれか (両方は不可) を指定する必要があります。

SITE-TERMS 要素が指定されている場合、必須の EXPR-ASP 要素で指定されている同じフォルダからサイト用語が読み込まれます。

URL 属性を使用してサイト用語の別のセットが指定されている場合、サイト用語仕様の定義済み XML 構造に従っている必要があります。この構造の詳細については、「QueryBuilder HTC でプロファイルとサイト用語を指定する」を参照してください。

XML 構造に戻る

EEE-INTRINSICS

このオプション要素を指定されている場合、 QueryBuilder HTC は式エバリュータの組み込みプロパティをドロップダウン メニューのプルファイルとして表示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

DEBUG

このオプション要素を指定されている場合、QueryBuilder HTC はデバッグ情報を表示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

XML 構造に戻る

TYPESOPS

このオプション要素が指定されている場合、使用する QueryBuilder HTC の XML の型および演算子ファイルを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

XML の型および演算子のファイルへの相対パス。

属性

なし。

解説

この要素が指定されていない場合、既定の型および演算子のファイルは /Widgets/ExprbldrHTC/TypesOpsA.xml です。

XML 構造に戻る

MESSAGE

このオプション要素が指定されている場合、この要素は、式セレクタ領域の上に表示される代替メッセージを示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

代替メッセージ。

属性

なし。

解説

MESSAGE 要素を指定しない場合、既定のメッセージは "Target based to the following conditions:" になります。

XML 構造に戻る

EDIT-NESTED

このオプション要素は、ネストされた式の編集を許容するか、禁止するか、または、警告ダイアログ ボックスへの応答し明示的に許可したときだけ編集を許容するかを指定します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

"always"、"warn"、または "never" のいずれか 1 つの値。詳細については、"解説" を参照してください。

属性

なし。

解説

"always" を指定すると、ネストした式が編集モードで開かれます。一般的に、これはお勧めできません。

"warn" を指定すると、ネストした式を編集モードで開くか表示モードで開くかを選択する警告ダイアログ ボックスが表示されます。

"never" を指定すると、ネストした式が表示モードで開かれます。

EDIT-NESTED 要素がないか、EDIT-NESTED 要素に不正なデータ値が含まれている場合の既定の動作では、ネストした式の編集はできなくなっています。

EDIT-NESTED は、式が作成または編集される場合にのみ関係します。

XML 構造に戻る

DATE-FORMAT

このオプション要素が指定されている場合、この要素は日付の表示形式を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

日付の表示形式。

属性

なし。

解説

日付の有効な形式は、"m/d/yyyy"、"d/m/yyyy"、および "yyyy/m/d" です。既定の形式は "m/d/yyyy" です。区切り文字には、スラッシュ ("/")、ハイフン ("-")、およびピリオド (".") のいずれかの文字を指定できます。既定の区切り文字はスラッシュ ("/") です。指定する文字 "m"、"d"、および "y" の数は表示される日付に影響を与えません。月と日は常に先行のゼロ (0) を付けないで表示され、年は常に 4 桁で表示されます。

XML 構造に戻る

DATE-FIRSTDAY

このオプション要素が指定されている場合、この要素は週の初めとする曜日を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

0 (日曜日) ～ 6 (土曜日) の数字。

属性

なし。

解説

曜日は 0 ～ 6 の数字で表します。0 は日曜日、1 は月曜日、2 は火曜日、3 は水曜日、4 は木曜日、5 は金曜日、6 は土曜日に対応しています。

この要素が指定されていない場合、既定の週の初めの曜日は日曜日です。

XML 構造に戻る

NUMBER-FORMAT

このオプション要素が指定されている場合、この要素は数字の表示形式を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

数字の表示形式。

属性

なし。

解説

数字の有効な形式は、桁の配置に応じて、負の値が指定される (または指定されない) 方法を示す文字列を使用して指定されます。負の値は、マイナス記号 ("-") を数字の前または後ろに付けて指定できます (数字と記号はスペースで区切っても区切らなくてもかまいません)。または、数字をかっこで囲んでも指定できます。

この要素が指定されていない場合、既定の形式は "–1.1" です。

例 :

1.1 -1.1 1.1- (1.1)

XML 構造に戻る

CURRENCY-FORMAT

このオプション要素が指定されている場合、この要素は Currency の表示形式を示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

Currency の表示形式。

属性

なし。

解説

通貨の有効な形式は、桁の配置に応じて、負の値が指定される (または指定されない) 方法を示す文字列を使用して指定されます。負の値は、マイナス記号 ("-") を数字の前または後ろに付けて指定できます (数字と記号はスペースで区切っても区切らなくてもかまいません)。または、数字をかっこで囲んでも指定できます。

この要素が指定されていない場合、既定の形式は "–1.1" です。

この形式の一部として通貨記号を指定してはなりません。

例 :

1.1 -1.1 1.1- (1.1)

XML 構造に戻る

HELPTOPIC

このオプション要素が指定されている場合、この要素は QueryBuilder HTC のこのインスタンスのヘルプ トピックを示します。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

対応するヘルプ トピックの絶対 URL。

属性

なし。

解説

この要素が指定されている場合、QueryBuilder HTC はヘルプ ボタンを表示します。このボタンをクリックすると、指定されたヘルプ トピックが表示されます。

この要素に必要な絶対 URL を生成するには、サーバー側のユーティリティ ルーチン sRelURL2AbsURL を使用します。次に例を示します。

<HELPTOPIC><%=sRelURL2AbsURL("../docs/htm/yourhelpfile.htm")%></HELPTOPIC>

XML 構造に戻る

ADVANCED

このオプション要素が指定されている場合、この要素は、詳細編集が許可されていることを示します。詳細編集により、式の中で OR 演算子を利用できるようになります。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

この要素が存在しない場合は、詳細編集は許可されません。

XML 構造に戻る

FILTER-PROPERTIES

このオプション要素が指定されている場合、プロファイルからのプロパティをフィルタするために使われる XSL パターン フラグメントを示します。この要素が存在する場合、用意されている XSL パターンが、読み込まれる各プロファイルのプロパティに適用されます。XSL パターンに従っていないプロパティは、式の作成または編集をするときには、表示されません。

親要素

EBCONFIG

必須の子要素

なし。

省略可能な子要素

なし。

データ

XSL パターン フラグメント。

属性

なし。

解説

既定の XSL パターン フラグメント : not(@isActive) || @isActive != '0'

この要素に配信されるデータ値は、"Property[" と "]" という文字列で囲まれて XSL パターンを形成するので、実際には XSL パターン フラグメントになります。たとえば、実際の既定の XSL パターンは次のようになります。

Property[not(@isActive) || @isActive != '0']

要素属性が定義されていない場合、これらは "0" を返します。このため、属性があるかどうかおよび属性の値がゼロに設定されているかどうかを確認するためのデータとして、XSL パターン フラグメントを指定することをお勧めします。既定の XSL パターンは、両方の条件を確認しているサンプルです。

XML 構造に戻る


QueryBuilder HTC でプロファイルとサイト用語を指定する

PROFILE 要素と SITE-TERMS 要素は ExpressionBuilder HTC および QueryBuilder HTC に対する MetaXML の一部です。これらの要素を構成することで、代替のプロファイルとサイト用語をそれぞれ使えます。これらの代替のプロファイルおよびサイト用語を指定するには、それぞれ PROFILE 要素の SRC 属性、および SITE-TERMS 要素の URL 属性の値として XML ファイルの URL を指定します。

QueryBuilder HTC への代替のプロファイルおよびサイト用語を指定するために使われる XML 構造は、Commerce Server 内のプロファイルに対して使わる、より一般的な XML スキーマのサブセットで構成されます。QueryBuilder HTC は、より一般的なスキーマの要素および属性のすべてと関係しているわけではなく、関係しない要素および属性は無視します。

プロファイルおよびサイト用語を指定するために使われる XML 構造は、ここで説明するほかの XML 構造とほとんど同じです。Property 要素で指定する必要がある子要素のデータ型が異なることを除いて、要素に関してこれらの XML 構造は同じです。

通常プロファイルを指定する場合、Property 要素は、プロパティがマップするデータ メンバを指定する DataRef 要素を 1 つ含みます。

サイト用語を指定する場合、Property 要素は、そのサイト用語で使用できる選択肢のいずれかを指定する Attribute 要素が少なくとも 1 つ、通常は複数含みます。

プロファイルとサイト用語の両方を指定する場合、Group 要素を使ってプロパティとサイト用語を階層的に構成できます。階層的な構成は、多数のプロパティまたはサイト用語を指定する場合に有効です。

各要素および属性の説明は、プロファイルだけに関連するか、サイト用語だけに関連するかを指定します。

XML 構造

<Profile name displayName description>
  <Property name displayName description propType
            referenceString isActive isMultiValue isSearchable>
    <DataRef idref />
    . . .
    <DataRef />
    <Attribute name displayName description />
    . . .
    <Attribute />
  </Property>
  . . .
  <Property> . . .</Property>
  <Group name displayName description>
    <Property/>
    <Group/>
  </Group>
  . . .
  <Group> . . .</Group>
</Profile>

Profile

この必須要素は、プロファイルの定義またはサイト用語セットの定義を指定します。

親要素

なし (ドキュメント ルート)

必須の子要素

なし。

省略可能な子要素

Property、Group
(少なくとも 1 つは必要です)。

データ

なし。

属性

属性 | 説明
name | このプロファイルまたはサイト用語のセットにコードからアクセスするときに使う、プロファイルまたはサイト用語のセットのプログラム上の名前を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : なし。
displayname | プロファイルまたはサイト用語のセットをユーザー インターフェイスで表示するときに使う、プロファイルまたはサイト用語のセットの表示名を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : ほとんどのツールは、この値を name 属性と同じ値にします。 この属性の値は、ローカル固有の場合があります。
description | サイト用語のセットの目的に関する追加情報を指定します。プロファイル仕様にこの属性がある場合、QueryBuilder HTC によって無視されます。 省略可。 有効な値 : 長さ 200 文字以内の文字列。 既定値 : なし (空文字列)。 この属性の値は、ローカル固有の場合があります。
defaultTableName、isNew、isModified、isDeleted | これらの属性は、より一般的なプロファイル スキーマに表示されるものであり、QueryBuilder HTC 用のサイト用語仕様には関係がありません。

XML 構造に戻る

Property

この必須要素は、プロファイル定義内の 1 つのプロパティ、またはサイト用語のセット内の 1 つのサイト用語を表します。

親要素

Profile、Group

必須の子要素

なし。

省略可能な子要素

DataRef (プロファイル)、Attribute (サイト用語)
(関連するデータ型のものが少なくとも 1 つ必要です)。

データ

なし。

属性

属性 | 説明
name | このプロパティまたはサイト用語をコードからアクセスするときに使う、プロパティまたはサイト用語のプログラム上の名前を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : なし。
displayname | このプロパティまたはサイト用語をユーザー インターフェイスで表示するときに使う、プロパティまたはサイト用語の表示名を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : ほとんどのツールは、この値を name 属性と同じ値にします。 この属性の値は、ローカル固有の場合があります。
description | サイト用語の目的に関する追加情報を格納します。プロファイル仕様にこの属性がある場合、QueryBuilder HTC によって無視されます。 省略可。 有効な値 : 長さ 200 文字以内の文字列。 既定値 : なし (空文字列)。 この属性の値は、ローカル固有の場合があります。
propType | プロパティのデータ型を格納します。サイト用語のセットにこの属性がある場合、QueryBuilder HTC によって無視されます。 必須。 有効な値 : STRING、SITETERM、PASSWORD、NUMBER、BOOL、DATE、TIME、DATETIME、PROFILE。 既定値 : なし。 値 SITETERM および PASSWORD は文字列ですが、特定のセマンティクスが適用されています。 値 DATE、TIME、および DATETIME はすべて Datetime データ型で格納されますが、それぞれ異なるセマンティクスが適用されます。
referenceString | プロパティのデータ型に関する補足情報を格納します。サイト用語のセットにこの属性がある場合、QueryBuilder HTC によって無視されます。 省略可。 有効な値 : プロファイルの名前。 既定値 : なし。 propType 属性がプロファイルを指定している場合、この属性はプロファイルの名前を指定する必要があります。
isActive | このプロパティの値をプロファイル サービスで読み込むかどうかを指定します。サイト用語のセットにこの属性がある場合、QueryBuilder HTC によって無視されます。 省略可。 有効な値 : "true" および "false"。値が "true" の場合、このプロパティの値はプロファイル サービスによって読み込まれます。値が "false" の場合、この値はプロファイル サービスにより読み込まれません。 既定値 : "true"。
isMultiValue | このプロファイルが複数の値を持つかどうか、つまり値のリストで構成されているかどうかを示します。サイト用語のセットにこの属性がある場合、QueryBuilder HTC によって無視されます。 省略可。 有効な値 : "true" および "false"。値が "true" の場合、このプロパティは複数の値を持っています。値が "false" の場合、このプロパティは複数の値を持っていません。 既定値 : "false"。
isSearchable | このプロパティに対して高速検索を実行できるかどうかを示します。サイト用語のセットにこの属性がある場合、QueryBuilder HTC によって無視されます。 省略可。 有効な値 : "true" および "false"。値が "true" の場合、このプロパティに対して高速検索を実行できます。値が "false" の場合は、このプロパティに対して高速検索を実行できますが、速度は低下する可能性があります。 既定値 : "false"。
keyDef、defaultValueisCached、isDefaultNull、isExported、isHidden、isPrivate、isReadOnly、isRequired、isUpdatable、isNew、isModified、isDeleted | これらの属性は、より一般的なプロファイル スキーマに表示されるものであり、QueryBuilder HTC には関係がありません。プロファイルおよびサイト用語仕様の両方に関しても同じことが言えます。

XML 構造に戻る

Attribute

QueryBuilder HTC に関して、この要素はサイト用語のセットの指定だけに関与します。この要素はサイト用語に使用できる選択肢を 1 つ指定します。通常、複数の Attribute 要素で、対応する選択肢のセットを指定します。

より一般的なプロファイル スキーマでは、Profile、Group、Property、および SourceInfo 要素の子要素として表示されます。

親要素

Property (サイト用語の指定の場合)

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
name | このサイト用語の選択肢をコードからアクセスするときに使う、選択肢のプログラム上の名前を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : なし。
displayname | このサイト用語の選択肢をユーザー インターフェイスに表示するときに使う、選択肢のフレンドリ名を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : ほとんどのツールは、この値を name 属性と同じ値にします。 この属性の値は、ローカル固有の場合があります。
description | このサイト用語の選択肢の目的に関する追加情報を格納します。 省略可。 有効な値 : 長さ 200 文字以内の文字列。 既定値 : なし (空文字列)。 この属性の値は、ローカル固有の場合があります。
value、isNew、isModified、isDeleted | これらの属性は、より一般的なプロファイル スキーマに表示されるものであり、QueryBuilder HTC 用のサイト用語仕様には関係がありません。

XML 構造に戻る

DataRef

QueryBuilder HTC に関して、この要素はプロファイルの指定だけに関与します。より一般的なプロファイル スキーマでは、Profile、Group、Property、および SourceInfo 要素の子要素として表示されます。

この要素は、その親プロパティに関するマップ情報を含みます。各 DataRef 要素は、データ ソースが公開されるデータ オブジェクトのデータ メンバへの参照を含みます。プロファイル プロパティを複数のデータ メンバにマップする場合は (そのプロパティが集計プロパティである場合と同様に)、DataRef 子要素を含みます。

親要素

Property (プロファイルの指定の場合)

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
idref | 親 Property 要素がマップするデータ メンバを指定します。 必須。 有効な値 : フォーム sourceName.objectName.memberName の文字列。 既定値 : なし。
isRDNAttribute、isModified | これらの属性は、より一般的なプロファイル スキーマに表示されるものであり、QueryBuilder HTC 用のサイト用語仕様には関係がありません。

XML 構造に戻る

Group

この要素は、プロファイル定義またはサイト用語のセットのプロパティまたはサイト用語の論理グループ化、および潜在的なサブグループ化を指定します。

親要素

Profile、Group

必須の子要素

なし。

省略可能な子要素

Group、Property
(少なくとも 1 つは必要)。

データ

なし。

属性

属性 | 説明
name | このグループをコードからアクセスするときに使う、グループのプログラム上の名前を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : なし。
displayname | このグループをユーザー インターフェイスで表示するときに使う、グループのフレンドリ名を指定します。 必須。 有効な値 : 長さ 30 文字以内の文字列。 既定値 : ほとんどのツールは、この値を name 属性と同じ値にします。 この属性の値は、ローカル固有の場合があります。
description | グループの目的に関する追加情報を格納します。 省略可。 有効な値 : 長さ 200 文字以内の文字列。 既定値 : なし (空文字列)。 この属性の値は、ローカル固有の場合があります。
isNew、isModified、isDeleted | これらの属性は、より一般的なプロファイル スキーマに表示されるものであり、QueryBuilder HTC には関係がありません。プロファイルおよびサイト用語仕様の両方に関しても同じことが言えます。

XML 構造に戻る


TreeView の構成

TreeView コントロールでは、表示するツリーを、XML データ アイランドの形式で、TreeView コントロールに渡す必要があります。コンテナ属性 DataXML は、このデータアイランドの ID に設定されます。

データアイランドを作成し、ページ上に XML ドキュメントを含める方法の詳細については、「XML データアイランド」を参照してください。

TreeView HTC は、単に構成データを持たない Commerce Server ビジネス デスク HTC であることを注意してください。つまり、TreeView HTC に対して MetaXML コンテナ属性を指定する必要はありません。DataXML コンテナ属性を使って指定できるのはデータだけです。要素はネストされるので、表示されるツリーでネスト構造を見ることができます。

このデータ アイランドの構造を次に示します。各要素は、それぞれの詳細な説明にリンクしています。要素属性は斜体で表示されています。また、通常それに関連付けられる値は示されていません。必須の要素および属性は太字で表示されています。省略可能な要素および属性は太字になっていません。

注

  • TreeView HTC に対する MetaXML データアイランド内の XML 要素および属性は、任意に命名された要素を除いて、小文字を使う必要があります。

XML 構造

<document selection>
  <level_1_element caption closed
                   enabled hidden
                   queryid selected
                   skip>data that might be displayed
    <level_2_element caption closed
                     enabled hidden
                     queryid selected
                     skip>data that might be displayed
      <level_3_element caption closed
                       enabled hidden
                       queryid selected
                       skip>data that might be displayed

Note that levels can go to an arbitrary depth...

      </level_3_element>
    </level_2_element>
  </level_1_element>
  <another_level_1_element caption closed
                           enabled hidden
                           queryid selected
                           skip>data that might be displayed
    <another_level_2_element caption closed
                             enabled hidden
                             queryid selected
                             skip>data that might be displayed
      <expand />
    </another_level_2_element>
  </another_level_1_element>
  <operations>
    <expand formid />
    <custom_op formid />
  </operations>
</document>

document

この必須要素は、TreeView HTML コンポーネント (HTC) に対する構成情報を含みます。

親要素

なし (ドキュメント ルート)

必須の子要素

なし。

省略可能な子要素

operations、arbitrary_tree_nodes

データ

なし。

属性

属性 | 説明
selection | 複数選択を許可するかどうかを指定します。 省略可。 有効な値 : "single" と "multi" は、それぞれ単一の選択と複数の選択を指定します。 既定値 : "single"。

解説

document 要素を有効にするためには、operations 要素のほかに、複数の要素を含む必要があります。これらのほかの要素の名前は任意で、状況によりこれらの名前は、対応するツリー ノードの表示文字列として使われ、ユーザーに表示されます。

XML 構造に戻る

level_N_element

document 要素、2 種類の expand 要素、および operations 要素を除いて、TreeView HTC に対するデータアイランドの要素の名前はすべて任意です。要素名自体がコントロールに表示される場合があります。その場合は、要素名に十分な注意を払う必要があります。要素名が任意である場合にそれを見落とすと、TreeView HTC の機能に対する効力がなくなる場合があります。任意の要素は、データを含むことことも、caption 属性を含むこともできますが、なくてもかまいません。

親要素

document、arbitrary_tree_element

必須の子要素

なし。

省略可能な子要素

arbitrary_tree_element

データ

この要素で caption 属性値が指定されていない場合、ツリー ノードの名前としてユーザーに表示される文字列。省略可能。

属性

属性 | 説明
caption | ユーザーに表示されるテキストに対する、最も優先された選択肢を指定します。 省略可。 この属性を指定した場合、要素を供給したデータおよび要素名自体は上書きされます。
closed | 値 "yes" を設定した場合、この要素に対応するツリー項目は最初に閉じた状態で表示されます。 省略可。 属性が存在しない、またはそのほかの値を設定した場合、この要素に子要素があれば、対応する項目は最初に開いた状態で表示されます。
enabled | 値 "no" を設定した場合、この要素に対応するツリー項目は無効になります。 省略可。 無効にした項目は表示が薄くなり、それらのイベントは抑制されます。 また、項目に子項目があっても、その子項目を開いたり、閉じたりできなくなります。 この属性を指定しない、またはそのほかの値を設定した場合、項目は有効になり、通常の表示と操作が行われます。
hidden | 値 "yes" を設定した場合、この要素に対応するツリー項目は非表示になります。 省略可。 子要素も非表示になります。 この属性を指定しないか、またはそのほかの値を設定した場合、項目は表示されます。
queryid | この属性は TreeView HTC による使用が予約されているので、TreeView HTC を起動する前に、この属性を設定しないようにする必要があります。
selected | 値 "yes" を設定した場合、この要素に対応するツリー項目は最初に選択された状態で表示されます。 省略可。 有効な値は "yes" と "no" です。 この属性が最初に読み込まれると、その値は維持されます。つまり、対応するツリー項目が選択されるか、または選択が解除されるとき、この属性にはそれぞれ "yes" または "no" が設定されます。
skip | 値 "yes" を設定すると、ツリー構造の構築時に対応する要素がスキップされます。 省略可。 この属性を指定しない、またはそのほかの値を設定した場合、この要素はスキップされないので、ツリーの項目が表示されます (そのほかの属性の影響を受けます)。 hidden 属性とは異なり、要素の skip 属性に "yes" を設定しても、子要素は非表示になりません。

解説

ツリーの特定の項目をユーザーに表示するテキストは、特定の優先順位に従い、以下の 3 つの中のどれかになります。

  1. この要素で caption 属性が指定されていれば、その属性の値が表示されます。

  2. それ以外の場合、この要素にデータが含まれていれば、そのデータが表示されます。

  3. さらにそれ以外の場合、要素名自体が表示されます。

たとえば、太字のフォントで表示される実テキストを指定した、以下の XML ツリー構造を検討します。ツリー各部の読み込みの遅延を許可する expand 要素が指定されていることに注意してください。

<Item1A>
  <LevelTwo caption=Item2A>Data that will not be displayed
    <LevelThree>Item3A</LevelThree>
    <LevelThree>Item3B</LevelThree>
  </LevelTwo>
</Item1A>
<Item1B>
  <LevelTwo caption=Item2B>More text that will not be displayed
    <LevelThree>Item3C</LevelThree>
    <LevelThree>Item3D</LevelThree>
  </LevelTwo>
  <LevelTwo>Item2C
    <expand />
  </LevelTwo>
</Item1B>
<Item1C>
  <LevelTwo caption=Item2D />
</Item1B>

上記の XML ツリー構造が指定された場合、TreeView HTC は、完全に展開されたツリーを次のように表示します。この場合、expand 要素を 1 つ指定すると "Item3E (retrieved using expand operation)" という名前の項目が 1 つだけ返されることを想定しています。

[-] Item1A

[-] Item2A

Item3A

Item3B

[-] Item1B

[-] Item2B

Item3C

Item3D

[-] Item2C

Item3E (retrieved using expand operation)

[-] Item1C

Item2D

XML 構造に戻る

expand

このオプション要素は、ユーザーが該当の要素を実際に展開するまで、下位のツリー要素の読み込みが遅延されるツリー構造内の場所をマークします。

親要素

arbitrary_element

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

なし。

解説

DataXML データ アイランドで発生する可能性がある expand 要素には、2 つの異なる種類があります。この expand 要素は第 1 のタイプで、任意に命名されたツリー要素内で指定でき、ツリーの一部の読み込みが遅延された箇所と、遅延によって展開が起こる可能性のある箇所をプレースホルダとして機能させます。

この 2 種類の expand 要素は、TreeView HTC で利用可能な特別な XMLHTTP 操作を実行するために使用されます。この操作により、従属するツリー項目が開かれるまで、そのツリー項目の読み込みを遅延させることができます。多数の項目が存在するような状況では、このような遅延により、初期読み込みとツリー表示のパフォーマンスを著しく向上させることができます。

この要素がほかの要素の子要素として単独で指定された場合、その要素は包含する項目として表示されます。つまり、現在表示されていない、複数の下位項目の (潜在的な) 存在を示すプラス記号が付加されます。その下位項目はまだ検索されていないので、包含する項目は最初は閉じられている必要があります。実際、expand 要素が指定されている場合、包含する要素の closed 属性には "yes" が設定されていることになります。

ツリー項目が開かれると、OnItemOpen イベントが発生します。開かれる項目に対するデータがすでに読み込まれている場合、このイベントにイベント ハンドラを割り当てる必要はありません。それに対し、このイベントが発生し TreeView HTC が前提条件データではなく expand 要素を検出した場合、イベント ハンドラを割り当てる必要があります。このルーチンは、どのノードを展開するかを応答ページが認識できるように、フォームに引数の追加を受け持ちます。OnItemOpen イベントにイベント処理ルーチンが割り当てられていない場合、expand 要素が検出されると、フォームに引数が追加されないので、その操作から正しいデータは返されません。

フォームへの引数の追加は、標準的な方法で行われます。非表示の input 要素はフォームに埋め込まれ、イベント処理ルーチンは input 要素への適切な値の割り当てだけを行います。たとえば、form 要素の id 属性に "tvform" が設定され、この要素に含まれる非表示の input 要素の id 属性に "category" が設定されているとします。イベント処理ルーチンは、次のコード行で、その input 要素に値 "chocolate" を割り当てることができます。

tvform.category.value = 'chocolate'

イベント処理ルーチンが実行されているときに、TreeView HTC が expand 要素を検出し、ツリーの新しく展開された部分を表示する必要がある場合、TreeView HTC は、sOp パラメータに "expand" を設定して reload メソッドを呼び出します。

XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

対応するフォームの識別子は、operations 要素の下位要素である、ほかの expand 要素の formid 属性として設定されます。この属性の値を動的に変更しない限り、すべての展開は同じフォームにより処理される必要があります。サーバーの応答ページでは、渡された引数を使用して、どの項目を展開するかを判断し、正しいデータを返す必要があります。

フォームが送信されて、サーバーで処理が行われる方法の詳細については、「データの変更を保存する」を参照してください。

XML 構造に戻る

operations

このオプション要素を指定した場合、一定のパラメータ値を設定して reload メソッドを呼び出すと、一定のカスタム XMLHTTP 操作が実行されます。

親要素

document

必須の子要素

なし。

省略可能な子要素

expand、arbitrary_operations_elements

データ

なし。

属性

なし。

解説

operations 要素を指定しても、子要素が含まれていなければ、無視されます。

XML 構造に戻る

expand

このオプション要素は、展開要求をサーバーに送信するために使われる form 要素を指定します。

親要素

operations

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
formid | OnItemOpen イベントが発生し、ハンドラが sOp パラメータに "expand" を設定して reload メソッドを呼び出したときに送信されるフォームの識別子を指定します。 必須。 有効な値 : form 要素の有効な id 属性。 既定値 : なし。

解説

DataXML データ アイランドで発生する可能性がある expand 要素には、2 つの異なる種類があります。この expand 要素は第 2 の型で、operations 要素内で指定でき、展開要求をサーバーに送信するために使われる form 要素を指定します。

この 2 種類の expand 要素は、TreeView HTC で利用可能な特別な XMLHTTP 操作を実行するために使用されます。この操作により、従属するツリー項目が開かれるまで、そのツリー項目の読み込みを遅延させることができます。多数の項目が存在するような状況では、このような遅延により、初期読み込みとツリー表示のパフォーマンスを著しく向上させることができます。

DataXML データアイランド内に、ほかの expand 要素の型がある場合、この expand 要素を指定して、項目の読み込み遅延を処理するためのフォームの ID を指定する必要があります。このフォームの action 属性には、送信ページ (ツリーの新しく展開する部分を返すページ) を設定する必要があります。

ほかの HTTP/XML 操作の場合と同様、サーバー上の送信ページから返される新しいデータには、標準 XML データ フォーマットのデータ以外を含まないようにする必要があります。

返される下位項目のセットは、実際には、ツリーの expand 要素と置き換えられます。つまり、ある特定の展開操作は通常、TreeView HTC のインスタンスが生成されるたびに 1 回だけ実行されます。

XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

このタイプの expand 要素は省略できますが、ほかの expand 要素の型が指定された場合は、指定する必要があります。

フォームが送信されて、サーバーで処理が行われる方法の詳細については、「データの変更を保存する」を参照してください。

XML 構造に戻る

custom_op

カスタム操作要素は、TreeView HTC に対して定義されたカスタム XMLHTTP 操作に対応しています。カスタム操作要素を指定されている場合、sOp パラメータにその操作のカスタム名を設定して reload メソッドを呼び出すと、ツリー全体が再び読み込まれます。

たとえば、alpha_sort 要素をカスタム操作として指定し、sOp パラメータに "alpha_sort" を設定して reload メソッドを呼び出すと、指定された識別子を持つフォームが送信されます。たとえば、次のように呼び出した場合です。

elTreeView.reload("alpha_sort")

親要素

operations

必須の子要素

なし。

省略可能な子要素

なし。

データ

なし。

属性

属性 | 説明
formid | この要素のカスタム名が設定された sOp パラメータ付で reload メソッドが呼び出されるときに送信されるフォームの識別子を指定します。 必須。 有効な値 : form 要素の有効な id 属性。 既定値 : なし。

解説

XMLHTTP 操作の詳細については、「XMLHTTP 操作とフェッチ ページ」を参照してください。

対応するフォームの識別子が、属性として設定されます。フォームの action 属性には、送信ページ (新しいツリー データを返すページ) を設定する必要があります。

次の表は、フォームを送信するときに送信される引数を示しています。

引数 | 説明
op | この属性の値は "custom_op" に設定されます。フォーム属性として指定された送信ページと組み合わせてこの引数を使用することにより、特定の reload メソッド呼び出しに応じて特定のサーバー側のコードを実行させることができます。 引数 op を指定すると、この引数の値に基づいて異なる操作を実行するよう分岐させることで、同じ送信ページで複数の処理を行うことができるようになります。

追加引数のフォームへの追加は、標準的な方法で行われます。非表示の input 要素はフォームに埋め込まれ、フォームの送信前に、それらの input 要素に適切な値が割り当てられます。

カスタム操作要素は省略可能です。

フォームが送信されて、サーバーで処理が行われる方法の詳細については、「データの変更を保存する」を参照してください。

XML 構造に戻る


式の XML 構造

式の拡張マークアップ言語 (XML) スキーマは、Commerce Server 2000 で使用できる式の形式を定義します。評価可能な式の一部は、ActiveX Data Object (ADO) Recordset オブジェクトの ExprBody フィールドに XML 文字列として格納されます。Recordset オブジェクトは、式ストアという Commerce データベース内のテーブルのグループに格納されます。

ここでは、次のトピックについて説明します。

  • 式レコードセット スキーマ : XML の式レコードセット スキーマについて説明します。

  • 式の構造 : 式レコードセットの式本体の XML 構造、要素、および属性について説明します。これはレコードセットの評価可能な部分です。

  • データ型と演算子 : 有効なデータ型と演算子について説明します。

  • 組み込み値 : サーバーで評価される時刻と日付のプロパティである組み込み値について説明します。

  • 式の例 : 有効な XML の式の例を提供します。

関連項目

式に関するオブジェクト

式レコードセット

ExpressionEval オブジェクト

ExpressionStore オブジェクト


式レコードセット スキーマ

ここでは、拡張マークアップ言語 (XML) の式レコードセット スキーマについて説明します。評価可能な式の一部は、レコードセットの ExprBody フィールドに格納されています。詳細については、「式レコードセット」を参照してください。このスキーマは、式ストアから式をエクスポートする時の出力であり、ファイルから式ストアに式をインポートするために必要です。

<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
   xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
   xmlns:rs='urn:schemas-microsoft-com:rowset' xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
   <s:ElementType name='row' content='eltOnly' rs:CommandTimeout='300'
      rs:ReshapeName='DSRowset1'>
      <s:AttributeType name='ExprID' rs:number='1'>
         <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
            rs:fixedlength='true' rs:maybenull='false'/>
      </s:AttributeType>
      <s:AttributeType name='ExprName' rs:number='2'
         rs:writeunknown='true'>
         <s:datatype dt:type='string' dt:maxLength='30'
            rs:maybenull='false'/>
      </s:AttributeType>
      <s:AttributeType name='Category' rs:number='3' rs:nullable='true'
         rs:writeunknown='true'>
         <s:datatype dt:type='string' dt:maxLength='30'/>
      </s:AttributeType>
      <s:AttributeType name='ExprDesc' rs:number='4' rs:nullable='true'
         rs:writeunknown='true'>
         <s:datatype dt:type='string' dt:maxLength='200'/>
      </s:AttributeType>
      <s:AttributeType name='ExprBody' rs:number='5'
         rs:writeunknown='true'>
         <s:datatype dt:type='string' dt:maxLength='3400'
            rs:maybenull='false'/>
      </s:AttributeType>
      <s:AttributeType name='DateCreated' rs:number='6'
         rs:writeunknown='true'>
         <s:datatype dt:type='dateTime' rs:dbtype='timestamp'
            dt:maxLength='16' rs:scale='3' rs:precision='23'
            rs:fixedlength='true' rs:maybenull='false'/>
      </s:AttributeType>
      <s:AttributeType name='DateModified' rs:number='7'
         rs:writeunknown='true'>
         <s:datatype dt:type='dateTime' rs:dbtype='timestamp'
            dt:maxLength='16' rs:scale='3' rs:precision='23'
            rs:fixedlength='true' rs:maybenull='false'/>
      </s:AttributeType>
      <s:ElementType name='rsExprDeps' content='eltOnly'
         rs:CommandTimeout='300' rs:ReshapeName='DSRowset2'
         rs:relation='010000000100000000000000'>
         <s:AttributeType name='ExprID' rs:number='1'
            rs:writeunknown='true'>
            <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
               rs:fixedlength='true' rs:maybenull='false'/>
         </s:AttributeType>
         <s:AttributeType name='ExprDep' rs:number='2'
            rs:writeunknown='true'>
            <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
               rs:fixedlength='true' rs:maybenull='false'/>
         </s:AttributeType>
         <s:extends type='rs:rowbase'/>
      </s:ElementType>
      <s:ElementType name='rsProfDeps' content='eltOnly'
         rs:CommandTimeout='300' rs:ReshapeName='DSRowset3'
         rs:relation='010000000100000000000000'>
         <s:AttributeType name='ExprID' rs:number='1'
            rs:writeunknown='true'>
            <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
               rs:fixedlength='true' rs:maybenull='false'/>
         </s:AttributeType>
         <s:AttributeType name='ProfDep' rs:number='2'
            rs:writeunknown='true'>
            <s:datatype dt:type='string' dt:maxLength='128'
               rs:maybenull='false'/>
         </s:AttributeType>
         <s:extends type='rs:rowbase'/>
      </s:ElementType>
      <s:extends type='rs:rowbase'/>
   </s:ElementType>
</s:Schema>

詳細については、「式レコードセット」を参照してください。


式の構造

ここでは、式レコードセットの式本体の拡張マークアップ言語 (XML) 構造、要素、および属性について説明します。式本体は、レコードセットの評価可能な部分で、通常は "式" と呼ばれます。すべての要素と属性は大文字で指定されます。この規則の唯一の例外は、<PROPERTY> 要素です。

次の例では、大文字の名前は XML 構造の要素を表します。最初に出現する各要素は、その要素を説明するトピックにリンクしています。斜体になっている名前は、各要素に関連する属性です。太字の斜体は、必須の属性を示します。小文字の値は、要素の開始タグと終了タグの間に含まれるデータを表します。

<TERM TYPE>
   <CLAUSE OPER>
      <PROPERTY ID TYPE SUBTYPE />
      <IMMED-VAL TYPE SUBTYPE MULTIVAL>
         <VALUE>value1</VALUE>
         <VALUE>value2</VALUE>
      </IMMED-VAL>
   </CLAUSE>
   <CLAUSE OPER>
      <EXPR-REF ID />
   </CLAUSE>
   <TERM TYPE>
      <CLAUSE OPER>
         <PROPERTY ID TYPE SUBTYPE />
         <IMMED-VAL TYPE SUBTYPE MULTIVAL>immediate value</IMMED-VAL>
      </CLAUSE>
      <CLAUSE OPER>
      </CLAUSE>
   </TERM>
</TERM>

CLAUSE

CLAUSE 要素は式の構築ブロックで、True または False を評価します。CLAUSE 要素には、1 つの演算子属性と、子要素としてリストされる 1 つまたは 2 つの引数が含まれます。TERM 要素を使用して複数の CLAUSE 要素をグループ化すると、より複雑な式を作成できます。子要素を伴う CLAUSE 要素は、次のいずれかの演算を表します。

  • [プロファイル プロパティ] [演算子] [即値]

  • [プロファイル プロパティ] [演算子] [プロファイル プロパティ]

  • [プロファイル プロパティ] [演算子]

  • [組み込み値] [演算子] [即値]

  • [組み込み値] [演算子]

  • [式] [演算子]

親要素 : TERM

子要素 : EXPR-REF、IMMED-VAL、PROPERTY

属性 :

名前 | 説明
OPER | 必須。子引数の評価に使用する演算子を指定します。

関連項目

TERM

EXPR-REF

IMMED-VAL

PROPERTY

EXPR-REF

ほかの式と組み合わせて使用することにより、複雑で大きな式を作成できます。式は、名前でなく一意の ID (整数値) によって参照されます。EXPR-REF 要素の有効な演算子は、"is-true" と "is-false" だけです。

親要素 : CLAUSE

子要素 : なし

属性 :

名前 | 説明
ID | 必須。評価する式の ID となる Integer です。

関連項目

CLAUSE

IMMED-VAL

IMMED-VAL 要素は、前のプロファイルの PROPERTY 要素を確認するためのハードコード値を表します。たとえば、数値 "25" と文字列 "Joe" はいずれも即値です。即値は単一値または複数値のいずれかで、特定のデータ型を持っています。

親要素 : CLAUSE

子要素 : VALUE (MULTIVAL = True の場合)

データ : 有効なデータ型は、Boolean、Currency、Date、Number、Siteterm、文字列、Time です。

属性 :

名前 | 説明
TYPE | 必須。有効なデータ型は、Boolean、Currency、Date、Date/Time、Number、Siteterm、文字列、Time です。
SUBTYPE | 必要に応じて、プロパティのサブタイプを指定します。たとえば、TYPE が Siteterm の場合、SUBTYPE 属性の値はサイト用語ストアのサイト用語にアクセスするための適切なパスになります。既定値は "" です。
MULTIVAL | Boolean。既定値は False です。この場合、開始タグと終了タグの間に単一値が指定されます。True は、即値が複数値であることを示します。この場合、値のリストは、開始タグと終了タグの間の一連の VALUE タグとして指定されます。

関連項目

CLAUSE

VALUE

PROPERTY

PROPERTY 要素は、評価されている実際のデータであるプロファイル プロパティまたは組み込み値を表します。プロファイル プロパティは単一値または複数値のいずれかで、特定のデータ型を持っています。プロファイル プロパティが CLAUSE 要素の唯一の引数 (子要素) として指定されている場合、有効な演算子は "is-defined" と "not-defined" だけです。すべて大文字を使用する構文規則に対する例外があります。この要素を含む式がビジネス デスクのキャンペーン式モジュールに使用される場合、この要素は <Property> として指定されます。

注

  • 式を作成する場合、その式のプロファイル プロパティはすべて同一のデータ ソース (SQL Server データベース、Active Directory など) のものを使用する必要があります。

親要素 : TERM

子要素 : CODE、EXPR-REF、IMMED-VAL、PROPERTY

属性 :

名前 | 説明
ID | 必須。プロファイル プロパティまたは組み込み値を指定します。
TYPE | 必須。有効なデータ型は、Boolean、Currency、Date、Date/Time、Number、Siteterm、文字列、Time です。また、"is-defined" 演算子と "not-defined" 演算子では、汎用的なデータ型もサポートされています。
SUBTYPE | 必要に応じて、プロパティのサブタイプを指定します。たとえば、TYPE が Siteterm の場合、SUBTYPE 属性の値は "Site Terms.Products.Cars.Colors" のようになります。既定値は "" です。

関連項目

TERM

EXPR-REF

IMMED-VAL

組み込み値

TERM

TERM 要素は、論理関数に従って CLAUSE 要素のグループを評価します。現在の式アーキテクチャでは、Boolean 論理演算子 AND、OR、および NOT がサポートされています。追加の CLAUSE 要素を使用して TERM 要素をさらにグループ化すると、より複雑な式を作成できます。

親要素 : TERM

子要素 : CLAUSE、TERM

属性 :

名前 | 説明
TYPE | 必須。この属性は、含まれている TERM 要素と CLAUSE 要素の論理的な結合方法を指定します。 有効な値は、AND、OR、および NOT です。

関連項目

CLAUSE

VALUE

VALUE 要素は、複数値の IMMED-VAL 要素の個々の値を指定するために使用します。

親要素 : IMMED-VAL

子要素 : なし

データ : 有効なデータ型は、Boolean、Currency、Date、Date/Time、Number、Siteterm、文字列、Time です。

属性 : なし

関連項目

IMMED-VAL

Copyright © 1996–2000 Microsoft Corporation.
All rights reserved.


データ型と演算子

ここでは、式レコードセットの式に使用する有効なデータ型と演算子について説明します。演算子は、CLAUSE 要素の子要素に適用されます。構造の例を次に示します。

      <CLAUSE OPER>
         <PROPERTY />
         <IMMED-VAL></IMMED-VAL>
      </CLAUSE>

上の構造は、次の形式の演算を表しています。

      Operator
         Argument1
         Argument2

この演算は、次のように簡単に変換できます。

      Argument1 Operator Argument2

次に例を示します。

      <CLAUSE OPER="equal" >
         <PROPERTY ID="user.hair.color" TYPE="string" />
         <IMMED-VAL TYPE="string">"brown"</IMMED-VAL>
      </CLAUSE>

この式の評価の結果は次のとおりです。

      "user.hair.color" = "brown" ?

データ型は、CLAUSE 要素の子要素である PROPERTY 要素と IMMED-VAL 要素で指定されます。式アーキテクチャでサポートされているデータ型は、Boolean、Currency、Date、Date/Time、Number、Siteterm、文字列、Time です。このほかにも汎用的なデータ型を一部の演算子に限って使用できます。CLAUSE 要素が 2 つの引数を持つ場合は、それらのデータ型が一致する必要があります。

各データ型に有効な演算子は、次の表に示されています。MV 列は、引数が存在する場合、どの引数を複数値にできるかを示します。演算子はすべて小文字で指定する必要があります。

Boolean

演算子 | MV | 説明
equal | なし | 引数 1 と引数 2 が等しい場合、True を返します。
not-equal | なし | 引数 1 と引数 2 が等しくない場合、True を返します。

Currency、Number

演算子 | MV | 説明
equal | なし | 引数 1 と引数 2 が等しい場合、True を返します。
not-equal | なし | 引数 1 と引数 2 が等しくない場合、True を返します。
greater-than | なし | 引数 1 が引数 2 より大きい場合、True を返します。
less-than | なし | 引数 1 が引数 2 より小さい場合、True を返します。
at-least | なし | 引数 1 が引数 2 以上の場合、True を返します。
at-most | なし | 引数 1 が引数 2 以下の場合、True を返します。
in | 引数 2 | 引数 2 のリスト内に引数 1 がある場合、True を返します。
not-in | 引数 2 | 引数 2 のリスト内に引数 1 がない場合、True を返します。
contains | 引数 1 | 引数 1 のリスト内に引数 2 がある場合、True を返します。
not-contains | 引数 1 | 引数 1 のリスト内に引数 2 がない場合、True を返します。
intersects | 両方 | 引数 1 と引数 2 に共通の値がある場合、True を返します。
not-intersects | 両方 | 引数 1 と引数 2 に共通の値がない場合、True を返します。

Date、Time、Date/Time

演算子 | MV | 説明
equal | なし | 引数 1 と引数 2 が等しい場合、True を返します。
not-equal | なし | 引数 1 と引数 2 が等しくない場合、True を返します。
before | なし | 引数 1 が引数 2 より前である場合、True を返します。
after | なし | 引数 1 が引数 2 より後である場合、True を返します。
on-or-before | なし | 引数 1 が引数 2 と同じか、引数 2 より前である場合、True を返します。
on-or-after | なし | 引数 1 が引数 2 と同じか、引数 2 より後である場合、True を返します。
in | 引数 2 | 引数 2 のリスト内に引数 1 がある場合、True を返します。
not-in | 引数 2 | 引数 2 のリスト内に引数 1 がない場合、True を返します。
contains | 引数 1 | 引数 1 のリスト内に引数 2 がある場合、True を返します。
not-contains | 引数 1 | 引数 1 のリスト内に引数 2 がない場合、True を返します。
intersects | 両方 | 引数 1 と引数 2 に共通の値がある場合、True を返します。
not-intersects | 両方 | 引数 1 と引数 2 に共通の値がない場合、True を返します。

式

式は、PROPERTY 要素と IMMED-VAL 要素のデータ型ではありません。式は、EXPR-REF 要素の一部として評価される整数値です。次の表では、使用できる演算子について説明します。

演算子 | MV | 説明
is-true | なし | 指定された式が True の場合、True を返します。
is-false | なし | 指定された式が False の場合、True を返します。

汎用

CLAUSE 要素の唯一の引数 (子要素) としてプロファイルの PROPERTY 要素が指定されている場合、次の表に示す演算子に汎用的なデータ型を使用できます。

演算子 | MV | 説明
is-defined | なし | プロパティが定義されている場合、True を返します。この引数がない場合、False を返します。
not-defined | なし | プロパティが定義されていない場合、またはこの引数がない場合、True を返します。

Siteterm

演算子 | MV | 説明
equal | なし | 引数 1 と引数 2 が等しい場合、True を返します。
not-equal | なし | 引数 1 と引数 2 が等しくない場合、True を返します。
in | 引数 2 | 引数 2 のリスト内に引数 1 がある場合、True を返します。
not-in | 引数 2 | 引数 2 のリスト内に引数 1 がない場合、True を返します。
contains | 引数 1 | 引数 1 のリスト内に引数 2 がある場合、True を返します。
not-contains | 引数 1 | 引数 1 のリスト内に引数 2 がない場合、True を返します。
intersects | 両方 | 引数 1 と引数 2 に共通の値がある場合、True を返します。
not-intersects | 両方 | 引数 1 と引数 2 に共通の値がない場合、True を返します。

文字列

演算子 | MV | 説明
equal | なし | 引数 1 と引数 2 が等しい場合、True を返します。
not-equal | なし | 引数 1 と引数 2 が等しくない場合、True を返します。
contains | なし | 引数 1 に引数 2 がある場合、True を返します("Donnie" に "nn" が含まれる場合など)。
not-contains | なし | 引数 1 に引数 2 がない場合、True を返します("flintstone" に "stones" が含まれない場合など)。
begins-with | なし | 引数 2 の先頭の部分が引数 1 と一致する場合、True を返します。
not-begins-with | なし | 引数 2 の先頭の部分が引数 1 と一致しない場合、True を返します。
in | 引数 2 | 引数 2 のリスト内に引数 1 がある場合、True を返します。
not-in | 引数 2 | 引数 2 のリスト内に引数 1 がない場合、True を返します。
contains | 引数 1 | 引数 1 のリスト内に引数 2 がある場合、True を返します。
not-contains | 引数 1 | 引数 1 のリスト内に引数 2 がない場合、True を返します。
intersects | 両方 | 引数 1 と引数 2 に共通の値がある場合、True を返します。
not-intersects | 両方 | 引数 1 と引数 2 に共通の値がない場合、True を返します。


組み込み値

組み込み値は、サーバーで評価される時刻と日付のプロパティです。組み込み値は、PROPERTY 要素の ID 属性で指定されます。次の表は、利用できる組み込み値、その構成、および組み込み値が評価されるデータ型の一覧です。

名前 | 構成 | データ型/サブタイプ
eee.currDate | 日付 | Date
eee.currTime | 時刻 | Time
eee.currDayOfWeek | 0 - 日曜日 1 - 月曜日 2 - 火曜日 3 - 水曜日 というように続きます。 | Siteterm/CalendarSiteTerms.Days (Number)
eee.currMonth | 1 - 1 月 2 - 2 月 3 - 3 月 というように続きます。 | Siteterm/CalendarSiteTerms.Months (Number)
eee.currYear | 数値 | Number
eee.yesterday | 日付 | Date
eee.lastWeek | 日付 | Date
eee.lastMonth | eee.currMonth と同じ | Siteterm/CalendarSiteTerms.Months (Number)

内部的には、日付と時刻は Time Variant 形式で処理されます。Time Variant 形式の詳細については、MSDN を参照してください。

組み込み値の例

次の例では、今日が水曜日かどうかを調べます。

      <CLAUSE OPER="equal">
         <PROPERTY ID="eee.currDayOfWeek" TYPE="siteterm" />
         <IMMED-VAL TYPE="siteterm" SUBTYPE="CalendarSiteTerms.Days">
            3</IMMED-VAL>
      </CLAUSE>

次の例では、10/1/2000 が先週 (過去 7 日間) の日付かどうかを調べます。

      <CLAUSE OPER="on-or-before">
         <PROPERTY ID="eee.lastWeek" TYPE="date" />
         <IMMED-VAL TYPE="date">10/1/2000</IMMED-VAL>
      </CLAUSE>


式の例

次の例は、仮想ユーザー プロファイルに基づいて、次の属性を持つすべてのユーザーを対象に True を評価します。

  • 好きなスポーツが野球とハイアライ

  • かつ 65 才以上

  • かつ自宅電話の市外局番が 425

  • または ID が 34 の式が True
<TERM TYPE="and">
   <CLAUSE OPER="in">
      <PROPERTY ID="User.FavoriteSports" TYPE="string" />
      <IMMED-VAL TYPE="string" MULTIVAL="True">
         <VALUE>baseball</VALUE>
         <VALUE>jai alai</VALUE>
      </IMMED-VAL>
   </CLAUSE>

   <TERM TYPE="and">
      <CLAUSE OPER="at-least">
         <PROPERTY ID="User.Age" TYPE="number" />
         <IMMED-VAL TYPE="number">65</IMMED-VAL>
      </CLAUSE>

      <TERM TYPE="or">
         <CLAUSE OPER="begins-with">
            <PROPERTY ID="User.ContactInfo.HomePhone" TYPE="string" />
            <IMMED-VAL TYPE="string">425</IMMED-VAL>
         </CLAUSE>
         <CLAUSE OPER="is-true">
            <EXPR-REF ID="34" />
         </CLAUSE>
      </TERM>
   </TERM>
</TERM>


プロファイルの XML 構造

ここでは、Microsoft Commerce Server 2000 で定義されているプロファイル (アドレス、組織、および UserObject) に対するプロファイル スキーマと実行時インスタンスの XML 表現について説明します。ProfileService オブジェクトと ProfileObject オブジェクトは、これらの表現を返すメソッドを示します。

ここでは、次のトピックについて説明します。

  • スキーマ : プロファイル スキーマの XML 表現を示します。

  • ランタイム表現 : プロファイルに対する XML ランタイム表現を示します。

関連項目

プロファイル オブジェクト

プロファイル スキーマ

ProfileObject オブジェクト

ProfileService オブジェクト


スキーマ

ここでは、Commerce Server 2000 で定義されているプロファイルに対する、属性を中心にした拡張マークアップ言語 (XML) スキーマ定義について説明します。この定義は、ProfileService オブジェクトの GetProfileDefXML メソッド (bNamesOnly パラメータが False に設定された状態)、および ProfileObject オブジェクトの GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveSchemaOnly に設定された状態) によって返される定義と同じです。

ここでは、次のトピックについて説明します。

  • アドレス スキーマ : ユーザーと組織のアドレスを格納するアドレス プロファイルに対する、属性を中心にしたスキーマを示します。

  • 組織スキーマ : 組織に関する情報 (取引先、本社、子会社など) を格納する組織プロファイルに対する、属性を中心にしたスキーマを示します。

  • UserObject スキーマ : 登録済みユーザーと匿名ユーザーに関する情報を格納する UserObject プロファイルに対する、属性を中心にしたスキーマを示します。


アドレス スキーマ

ここでは、ユーザーと組織のアドレスを格納するアドレス プロファイルに対する、属性を中心にしたスキーマを示します。このスキーマは、ProfileService オブジェクトの GetProfileDefXML メソッド (bNamesOnly パラメータが False に設定された状態) および ProfileObject オブジェクトの GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveSchemaOnly に設定され、bAttributeCentric パラメータが True に設定された状態) によって返される値と同じです。

<?xml version="1.0"?>
<ProfileDocument>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
   xmlns:dt="urn:schemas-microsoft-com:datatypes">
<ElementType name="Address">
   <attributeType name="address_id" dt:type="string" required="yes"/>
   <attributeType name="id" dt:type="string"/>
   <attributeType name="last_name" dt:type="string"/>
   <attributeType name="first_name" dt:type="string"/>
   <attributeType name="address_name" dt:type="string"/>
   <attributeType name="address_type" dt:type="int"/>
   <attributeType name="description" dt:type="string"/>
   <attributeType name="address_line1" dt:type="string" required="yes"/>
   <attributeType name="address_line2" dt:type="string"/>
   <attributeType name="city" dt:type="string"/>
   <attributeType name="region_code" dt:type="string" required="yes"/>
   <attributeType name="region_name" dt:type="string"/>
   <attributeType name="postal_code" dt:type="string" required="yes"/>
   <attributeType name="country_code" dt:type="string" required="yes"/>
   <attributeType name="country_name" dt:type="string"/>
   <attributeType name="tel_number" dt:type="string"/>
   <attributeType name="tel_extension" dt:type="string"/>
   <attributeType name="locale" dt:type="int"/>
   <attributeType name="user_id_changed_by" dt:type="string"/>
   <attributeType name="date_last_changed" dt:type="datetime"/>
   <attributeType name="date_created" dt:type="datetime"/>
<ElementType name="GeneralInfo" content="eltOnly">
   <attribute type="address_id"/>
   <attribute type="id"/>
   <attribute type="last_name"/>
   <attribute type="first_name"/>
   <attribute type="address_name"/>
   <attribute type="address_type"/>
   <attribute type="description"/>
   <attribute type="address_line1"/>
   <attribute type="address_line2"/>
   <attribute type="city"/>
   <attribute type="region_code"/>
   <attribute type="region_name"/>
   <attribute type="postal_code"/>
   <attribute type="country_code"/>
   <attribute type="country_name"/>
   <attribute type="tel_number"/>
   <attribute type="tel_extension"/>
   <attribute type="locale"/>
   <attribute type="user_id_changed_by"/>
</ElementType>
<ElementType name="ProfileSystem" content="eltOnly">
   <attribute type="date_last_changed"/>
   <attribute type="date_created"/>
</ElementType>
   <element type="GeneralInfo"/>
   <element type="ProfileSystem"/>
</ElementType>
</Schema>
</ProfileDocument>


組織スキーマ

ここでは、組織に関する情報 (取引先、本社、子会社など) を格納する組織プロファイルに対する、属性を中心にしたスキーマを示します。このスキーマは、ProfileService オブジェクトの GetProfileDefXML メソッド (bNamesOnly パラメータが False に設定された状態) および ProfileObject オブジェクトの GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveSchemaOnly に設定され、bAttributeCentric パラメータが True に設定された状態) によって返される値と同じです。

<?xml version="1.0"?>
<ProfileDocument>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
   xmlns:dt="urn:schemas-microsoft-com:datatypes">
<ElementType name="Organization">
   <attributeType name="org_id" dt:type="string" required="yes"/>
   <attributeType name="name" dt:type="string" required="yes"/>
   <attributeType name="trading_partner_number" dt:type="string"/>
   <attributeType name="user_id_admin_contact" dt:type="string"/>
   <attributeType name="user_id_receiver" dt:type="string"/>
   <attributeType name="org_catalog_set" dt:type="string"/>
   <attributeType name="user_id_changed_by" dt:type="string"/>
   <attributeType name="date_last_changed" dt:type="datetime"/>
   <attributeType name="date_created" dt:type="datetime"/>
   <attributeType name="user_id_purchasing_manager" dt:type="string"/>
<ElementType name="GeneralInfo" content="eltOnly">
   <attribute type="org_id"/>
   <attribute type="name"/>
   <attribute type="trading_partner_number"/>
   <attribute type="user_id_admin_contact"/>
   <attribute type="user_id_receiver"/>
   <attribute type="org_catalog_set"/>
   <attribute type="user_id_changed_by"/>
</ElementType>
<ElementType name="ProfileSystem" content="eltOnly">
   <attribute type="date_last_changed"/>
   <attribute type="date_created"/>
</ElementType>
<ElementType name="Purchasing" content="eltOnly">
   <attribute type="user_id_purchasing_manager"/>
</ElementType>
   <element type="GeneralInfo"/>
   <element type="ProfileSystem"/>
   <element type="Purchasing"/>
</ElementType>
</Schema>
</ProfileDocument>


UserObject スキーマ

ここでは、登録済みユーザーと匿名ユーザーに関する情報を格納する UserObject プロファイルに対する、属性を中心にしたスキーマを示します。このスキーマは、ProfileService オブジェクトの GetProfileDefXML メソッド (bNamesOnly パラメータが False に設定された状態) および ProfileObject オブジェクトの GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveSchemaOnly に設定され、bAttributeCentric パラメータが True に設定された状態) によって返される値と同じです。

<?xml version="1.0"?>
<ProfileDocument>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
   xmlns:dt="urn:schemas-microsoft-com:datatypes">
<ElementType name="UserObject">
   <attributeType name="org_id" dt:type="string"/>
   <attributeType name="account_status" dt:type="int" required="yes"/>
   <attributeType name="user_catalog_set" dt:type="string"/>
   <attributeType name="date_registered" dt:type="datetime"/>
   <attributeType name="campaign_history" dt:type="string"/>
   <attributeType name="partner_desk_role" dt:type="int"/>
   <attributeType name="user_id" dt:type="string" required="yes"/>
   <attributeType name="logon_name" dt:type="string" required="yes"/>
   <attributeType name="user_security_password" dt:type="string" required="yes"/>
   <attributeType name="email_address" dt:type="string"/>
   <attributeType name="user_type" dt:type="int"/>
   <attributeType name="user_title" dt:type="string"/>
   <attributeType name="last_name" dt:type="string"/>
   <attributeType name="first_name" dt:type="string"/>
   <attributeType name="tel_number" dt:type="string"/>
   <attributeType name="tel_extension" dt:type="string"/>
   <attributeType name="fax_number" dt:type="string"/>
   <attributeType name="fax_extension" dt:type="string"/>
   <attributeType name="user_id_changed_by" dt:type="string"/>
   <attributeType name="date_last_changed" dt:type="datetime"/>
   <attributeType name="date_created" dt:type="datetime"/>
<ElementType name="AccountInfo" content="eltOnly">
   <attribute type="org_id"/>
   <attribute type="account_status"/>
   <attribute type="user_catalog_set"/>
   <attribute type="date_registered"/>
</ElementType>
<ElementType name="Advertising" content="eltOnly">
   <attribute type="campaign_history"/>
</ElementType>
<ElementType name="BusinessDesk" content="eltOnly">
   <attribute type="partner_desk_role"/>
</ElementType>
<ElementType name="GeneralInfo" content="eltOnly">
   <attribute type="user_id"/>
   <attribute type="logon_name"/>
   <attribute type="user_security_password"/>
   <attribute type="email_address"/>
   <attribute type="user_type"/>
   <attribute type="user_title"/>
   <attribute type="last_name"/>
   <attribute type="first_name"/>
   <attribute type="tel_number"/>
   <attribute type="tel_extension"/>
   <attribute type="fax_number"/>
   <attribute type="fax_extension"/>
   <attribute type="user_id_changed_by"/>
</ElementType>
<ElementType name="ProfileSystem" content="eltOnly">
   <attribute type="date_last_changed"/>
   <attribute type="date_created"/>
</ElementType>
   <element type="AccountInfo"/>
   <element type="Advertising"/>
   <element type="BusinessDesk"/>
   <element type="GeneralInfo"/>
   <element type="ProfileSystem"/>
</ElementType>
</Schema>
</ProfileDocument>


ランタイム表現

ここでは、Commerce Server 2000 に定義されているプロファイルに対する、属性を中心にした 拡張マークアップ言語 (XML) ランタイム表現を示します。この表現は、ProfileObject オブジェクトの GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveDataOnly に設定された状態) によって返される XML 構造と同じです。

ここでは、次のトピックについて説明します。

  • アドレスのランタイム表現 : ユーザーと組織のアドレスを格納するアドレス プロファイルに対する、属性を中心にしたランタイム表現を示します。

  • 組織のランタイム表現 : 組織に関する情報 (取引先、本社、子会社など) を格納する組織プロファイルに対する、属性を中心にしたランタイム表現を示します。

  • UserObject のランタイム表現 : 登録済みユーザーと匿名ユーザーに関する情報を格納する UserObject プロファイルに対する、属性を中心にしたランタイム表現を示します。


アドレスのランタイム表現

ここでは、ユーザーと組織のアドレスを格納するアドレス プロファイルに対する、属性を中心にした XML ランタイム表現を示します。この定義は、GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveDataOnly に設定され、bAttributeCentric パラメータが True に設定された状態) に返される XML 構造と同じです。

<?xml version="1.0"?>
<ProfileDocument>
<Address>
   <GeneralInfo address_id id last_name first_name address_name
      address_type description address_line1 address_line2 city
      region_code region_name postal_code country_code country_name
      tel_number tel_extension locale />
   </GeneralInfo>
   <ProfileSystem date_last_changed date_created>
   </ProfileSystem>
</Address>
</ProfileDocument>


組織のランタイム表現

ここでは、組織に関する情報 (取引先、本社、子会社など) を格納する組織プロファイルに対する、属性を中心にした XML ランタイム表現を示します。この定義は、GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveDataOnly に設定され、bAttributeCentric パラメータが True に設定された状態) に返される XML 構造と同じです。

<?xml version="1.0"?>
<ProfileDocument>
<Organization>
   <GeneralInfo org_id name trading_partner_number user_id_admin_contact
      user_id_receiver org_catalog_set user_id_changed_by>
   </GeneralInfo>
   <ProfileSystem date_last_changed date_created>
   </ProfileSystem>
   <Purchasing user_id_purchasing_manager>
   </Purchasing>
</Organization>
</ProfileDocument>


UserObject のランタイム表現

ここでは、登録済みユーザーと匿名ユーザーに関する情報を格納する UserObject プロファイルに対する、属性を中心にした XML ランタイム表現を示します。この定義は、GetProfileXML メソッド (eRetrieveEnum パラメータが psRetrieveDataOnly に設定され、bAttributeCentric パラメータが True に設定された状態) に返される XML 構造と同じです。

<?xml version="1.0"?>
<ProfileDocument>
<UserObject>
   <AccountInfo org_id account_status user_catalog_set date_registered>
   </AccountInfo>
   <BusinessDesk partner_desk_role>
   </BusinessDesk>
   <GeneralInfo user_id logon_name user_security_password email_address
      user_type user_title last_name first_name tel_number tel_extension
      fax_number fax_extension user_id_changed_by>
   </GeneralInfo>
   <ProfileSystem date_last_changed date_created>
   </ProfileSystem>
</UserObject>
</ProfileDocument>


スキーマ リファレンス

Microsoft Commerce Server 2000 は、さまざまなキャパシティのデータベースを使います。プログラマはこれらのデータベースで使われているスキーマの知識を持っていることが重要です。

ここでは、次のトピックについて説明します。

  • 分析とレポート作成のためのスキーマ : Commerce Server でレポートの作成に使われるスキーマについて説明します。

  • データ ウェアハウスのスキーマ : 論理スキーマとそれを作成するために使うメタモデルを構成するクラスと関連について説明します。

  • 予測スキーマ : 予測モデル構成を定義するために使われるテーブルについて説明します。

  • プロファイル スキーマ : 定義済みプロファイル スキーマの Address、Organization、および UserObject について説明します。


分析とレポート作成のためのスキーマ

ここでは、Commerce Server 2000 でレポートを作成するために使うスキーマについて説明します。

ここでは、次のトピックについて説明します。

  • アーキテクチャ : ビジネス分析システムのアーキテクチャ全体について説明します。

  • パラメータ化 : 静的レポートでパラメータ化クエリを作成するために使うパラメータについて説明します。

  • レポート テーブル : レポートとその関連を作成するために使うテーブルについて説明します。

関連項目

分析とレポートのための XML 構造

AsyncRpt オブジェクト

カスタム レポートを作成する

ReportRenderer オブジェクト

レポートを実行する


アーキテクチャ

Commerce Server 2000 では、ビジネス マネージャがコンテンツ全体を管理できるようにオープン アーキテクチャで分析とレポートが構築されています。ビジネス マネージャはレポート コンテンツを自由に追加、削除、および変更できます。Commerce Server マネージャで接続文字列を変更して、複数のデータ ウェアハウス データ ソースやオンライン分析処理 (OLAP) データ ソースを使うことができます。システム管理者がこのタスクを実行します。

レポートは静的レポートまたは動的レポートとして実装され、それぞれ、SQL データベースの SQL クエリまたはマルチディメンション式 (MDX) クエリ、および OLAP データベースの SQL クエリまたは MDX クエリに基づいています。静的レポートは HTML に基づき、動的レポートは Microsoft Office 2000 Web Components (OWC) に基づいています。

静的レポート定義は、クエリとパラメータ定義で構成されます。静的レポートを実行すると、パラメータは演算子によって処理された後で生成コンポーネントに渡されます。クエリの結果に基づいて、生成コンポーネントによって HTML ドキュメントが生成されます。完了した静的レポートは、Commerce Server ビジネス デスクがインストールされたコンピュータに HTML ファイルとして格納されます。格納されたレポートは、ビジネス デスクを使って開くことができるほか、Microsoft Internet Explorer で表示することもできます。

動的レポートの定義はクエリとして格納され、ピボット テーブルのビューは拡張マークアップ言語 (XML) でデータ ウェアハウスに格納されます。クエリ結果は OWC ピボット テーブル コンポーネントに表示されます。

あらかじめ定義されているレポート定義は、CSReports.sql というファイルに含まれています。このファイルは Commerce Server をインストールしたディレクトリにあります。CSReports.sql ファイルによって、Commerce Server データ ウェアハウスにレポート テーブルが生成されます。"レポート準備 DTS" タスクは、OLAP キューブを処理するため、およびインポートされたデータをレポート作成用に準備するストアド プロシージャを実行するために利用できます。


パラメータ化

ここでは、ReportParam テーブルにパラメータ化クエリ エントリを作成するために使うパラメータと定数を説明します。

ここでは、次のトピックについて説明します。

  • パラメータの種類 : 使用できるパラメータの種類と、それらの有効なオペランドと値を説明します。

  • 定数 : レポート作成に使用できる定数を一覧表示します。


パラメータの種類

次の表は、使用できるパラメータの種類と、それらの有効なオペランドと値の一覧です。"SingleValue" パラメータ型はクエリにあります。"SelectOrder" パラメータ型は、クエリの Select 句で使われます。そのほかの種類のパラメータはクエリの Where 句にあります。

パラメータ型 オペランド 1 値 1 オペランド 2 値 2
ParamType_DateRange DateRangeOpnd_All

DateRangeOpnd_From

DateRangeOpnd_OnOrBefore

DateRangeOpnd_Today

DateRangeOpnd_ThisWeek

DateRangeOpnd_ThisMonth

DateRangeOpnd_ThisQuarter

DateRangeOpnd_ThisYear

DateRangeOpnd_Yesterday

DateRangeOpnd_LastWeek

DateRangeOpnd_LastMonth

DateRangeOpnd_LastQuarter

DateRangeOpnd_LastYear

 "DateRangeOpnd_From"、または "DateRangeOpnd_OnOrB4" の場合、必須です。

"DateRangeOpnd_From" では、日付の範囲の開始日を返します。

"DateRangeOpnd_OnOrB4" では、終了日を含みます。

ほかのオペランド型には適用できません。

Date フォーマット = MM/DD/YYYY

 なし "DateRangeOpnd_From" の場合、必須です。

日付の範囲の終了日を返します。

ほかのオペランド型には適用できません。
ParamType_Expression ExpOpnd_None

ExpOpnd_Equals

ExpOpnd_NotEquals

ExpOpnd_IsNull

ExpOpnd_IsNotNull

ExpOpnd_LessThan*

ExpOpnd_LessThanOrEquals*

ExpOpnd_GreaterThan*

ExpOpnd_GreaterThanOrEquals*

ExpOpnd_Like#

ExpOpnd_NotLike#

-------------------------

* : 数値型にのみ使います。

# : 文字列型にのみ使います。

 "ExpOpnd_None" には適用できません。

ほかの種類のパラメータでは必須です。

有効な種類は次のとおりです。

  • Currency

  • Float

  • Integer

  • 文字列
 オペランド 1 と同じオペランドの型です。

"ExpOpnd_None" には適用できません。

ほかのオペランドの型では省略可能です。

 オペランド 2 を指定した場合は必須です。
ParamType_SelectOrder SelectOrderOpnd_All*

SelectOrderOpnd_Distinct*

SelectOrderOpnd_Top

SelectOrderOpnd_Bottom#

-------------------------

* : SQL のみ

# : MDX のみ

 "SelectOrderOpnd_Top"、または "SelectOrderOpnd_Bottom" の場合、必須です。

返す行数を指定する Integer です。

"SelectOrderOpnd_All" には適用できません。

 なし 適用できません。
ParamType_SingleValue なし 必須の文字列値です。

このオペランドの値は、どんなエントリの種類にも対応できるテキスト フィールドです。例としては、booleanVal = "True" および Time = "12:59:59" の 2 つがあります。

 なし 適用できません。
ParamType_SiteName (SQL クエリのみ) SiteNameOpnd_All

SiteNameOpnd_Equals

SiteNameOpnd_NotEquals

SiteNameOpnd_Like

SiteNameOpnd_NotLike

 "SiteNameOpnd_All" には適用できません。

ほかのオペランドの場合は必須の文字列値です。

 なし 適用できません。


定数

次の表は、パラメータ化レポートを作成するために使う CSReports.sql ファイルに定義されている定数の一覧です。

  • データ型

  • ParamType

  • ParamType_DateRange オペランド

  • ParamType_Expression オペランド

  • ParamType_SelectOrder オペランド

  • ParamType_SiteName オペランド

データ型

次の表は有効なデータ型の一覧です。

データ型 | 値
DataType_date | 1
DataType_integer | 2
DataType_float | 3
DataType_currency | 4
DataType_text | 5

ParamType

次の表は有効なパラメータの種類の一覧です。条件の列は、パラメータ型がクエリのどこに使われているかを示しています。

パラメータ型 | 値 | 条件
ParamType_SingleValue | 0 | すべて
ParamType_Expression | 1 | WHERE 句
ParamType_SelectOrder | 2 | SELECT 句
ParamType_DateRange | 3 | WHERE 句
ParamType_SiteName | 4 | WHERE 句

ParamType_DateRange オペランド

次の表は、有効な日付範囲の一覧です。

オペランド | 値
DateRangeOpnd_All | 0
DateRangeOpnd_From | 1
DateRangeOpnd_OnOrBefore | 2
DateRangeOpnd_Today | 3
DateRangeOpnd_ThisWeek | 4
DateRangeOpnd_ThisMonth | 5
DateRangeOpnd_ThisQuarter | 6
DateRangeOpnd_ThisYear | 7
DateRangeOpnd_Yesterday | 8
DateRangeOpnd_LastWeek | 9
DateRangeOpnd_LastMonth | 10
DateRangeOpnd_LastQuarter | 11
DateRangeOpnd_LastYear | 12

ParamType_Expression オペランド

次の表は、有効な式オペランドの一覧です。

オペランド | 値 | 条件
ExpOpnd_None | 0 | なし
ExpOpnd_Equals | 1 | なし
ExpOpnd_NotEquals | 2 | なし
ExpOpnd_IsNull | 3 | なし
ExpOpnd_IsNotNull | 4 | なし
ExpOpnd_LessThan | 5 | 数値データ型のみ
ExpOpnd_LessThanOrEquals | 6 | 数値データ型のみ
ExpOpnd_GreaterThan | 7 | 数値データ型のみ
ExpOpnd_GreaterThanOrEquals | 8 | 数値データ型のみ
ExpOpnd_Like | 9 | 文字データ型のみ
ExpOpnd_NotLike | 10 | 文字データ型のみ

ParamType_SelectOrder オペランド

次の表は、有効な選択順序オペランドの一覧です。

オペランド | 値 | 条件
SelectOrderOpnd_All | 0 | SQL のみ
SelectOrderOpnd_Distinct | 1 | SQL のみ
SelectOrderOpnd_Top | 2 | SQL と MDX
SelectOrderOpnd_Bottom | 3 | MDX のみ

ParamType_SiteName オペランド

次の表は、有効なサイト名オペランドの一覧です。このオペランドは SQL クエリにのみ適用されます。

オペランド | 値
SiteNameOpnd_All | 0
SiteNameOpnd_Equals | 1
SiteNameOpnd_NotEquals | 2
SiteNameOpnd_Like | 3
SiteNameOpnd_NotLike | 4


レポート テーブル

次の図は、レポート テーブルとそれらの関連を定義しています。ここでは、各テーブルについて説明します。最後の表は、各レポートの種類にどのレポート テーブルを使うかを示しています。

レポート作成のためのスキーマ

Report
Instance
DbObject
Report
Instance
Param
Report
DbObject
Report
Status
Report
Param
Report
Dimension
レポート

ここでは、次のトピックについて説明します。

  • レポート テーブル : 主なレポート定義テーブルに使われる属性を示します。

  • ReportDbObject テーブル : 静的レポートで使うために作成されるデータベース オブジェクトを示します。

  • ReportDimension テーブル : ディメンションをレポートに追加するために使う属性を示します。

  • ReportInstanceDbObject テーブル : 静的レポートで使うために作成されるデータベース オブジェクトのインスタンスを示します。

  • ReportInstanceParam テーブル : クエリ式用のユーザー インターフェイスから入力されるパラメータを格納するために使う属性を示します。

  • ReportParam テーブル : パラメータ化されたクエリ式を静的レポートに追加するために使う属性を示します。

  • ReportStatus テーブル : 静的レポートについての状態情報を取得するために使う属性を示します。

  • レポートの種類によるテーブルの利用状況 : レポートの種類によるレポート テーブルの利用状況を示します。


レポート テーブル

次の表は、主なレポート定義テーブルに使われる属性を示しています。

属性名 | データ型 | 条件 | 既定値 | 説明
ReportID | int | なし | なし | 識別情報です。
AggregationType | tinyint | Null | なし | 使用されません。
Category | nvarchar (128) | Null | なし | レポートのカテゴリです。
ChartType | int | なし | 3 | 直後のテーブルを参照してください。
CommerceBuild | nvarchar (128) | Null | なし | Commerce Server のビルド番号です。
CreatedBy | nvarchar (128) | Null | なし | レポートを作成したユーザーの名前です。
CreatedTime | Date/Time | Null | getdate() | レポートが作成された日付と時刻です。
Definition | ntext (16) | Null | なし | 詳細説明です。
Description | nvarchar (128) | Null | なし | 追加情報です。
DisplayName | nvarchar (128) | Null | なし | ユーザー インターフェイスに表示される名前です。
DmExport | bit | なし | False (0) | True (1) は、レポートをダイレクト メールにエクスポートできることを示します。
LastModifiedBy | nvarchar (128) | Null | なし | 前回レポートを変更したユーザーの名前です。
LastRunBy | nvarchar (128) | Null | なし | 前回レポートを実行したユーザーの名前です。
LastRunDateTime | Date/Time | Null | なし | 前回レポートが実行された日付と時刻です。
MajorVersion | int | Null | なし | なし
MinorVersion | int | Null | なし | なし
ModifiedTime | Date/Time | Null | なし | 前回レポートが変更された日付と時刻です。
Private | bit | なし | False (0) | 使用されません。
Protected | bit | なし | False (0) | True (1) は、レポートの上書きも削除もできないことを示します。すべてのシステム レポートに当てはまります。
Query | nvarchar (2000) | Null | なし | 実行可能な SQL クエリまたは MDX クエリです。
ReportType | tinyint | Null | なし | 直後のテーブルを参照してください。
SeriesInColumns | bit | なし | True (1) | チャートを反転します (x と y をスワップします)。
ShowChart | bit | なし | False (0) | True は、チャートを表示することを示します。
ShowLegend | bit | なし | True (1) | True は、チャートの凡例を表示することを示します。
ShowPivot | bit | なし | True (1) | True は、ピボット コントロールを表示することを示します。
UPMExport | bit | なし | False (0) | True (1) は、レポートをユーザーに合わせたコンテンツにエクスポートできることを示します。
XMLData | ntext (16) | Null | なし | ピボットテーブル XML データです。

チャートの種類

Microsoft Office 2000 Web コンポーネント チャートの大部分が利用できます。次の表は、一般的なチャートの種類の一部を示しています。ChartType Enum 定数は、Microsoft Office を完全インストールしたときに作成される \Program Files\Microsoft Office\Office\1033 フォルダ内の MSOWCVBA.CHM ファイルにあります。

チャート型 | 値
Column:Clustered | 0
Bar:Clustered | 3
Line | 6
Pie | 18

レポートの種類

次の表は、有効なレポート型の一覧です。

レポート型 | 値
Dynamic_SQL | 0
Dynamic_MDX | 1
Static_SQL | 2
Static_MDX | 3


ReportDbObject テーブル

次の表は、静的レポートで使うために作成されるデータベース オブジェクトを示しています。

属性名 | データ型 | 条件 | 既定値 | 説明
ReportDbObjectID | int | なし | なし | 識別情報です。
ReportID | int | Not Null | なし | オブジェクトが関連付けられたレポートの ID です。
DbObjectBaseName | nvarchar (128) | Null | なし | テーブルまたはビューの名前です。
DbObjectDDL | ntext (16) | Null | なし | 実際のレポート クエリで使われる追加データベース オブジェクトを作成するために実行する SQL クエリです。
DbObjectType | nvarchar (128) | Null | なし | 0 = テーブル 1 = 一時テーブル 2 = ビュー


ReportDimension テーブル

次の表は、ディメンションを静的レポートに追加するために使う属性を示しています。

属性名 | データ型 | 条件 | 既定値 | 説明
ReportID | int | Not Null | なし | ディメンションが関連付けられたレポートの ID です。
AggregationType | tinyint | なし | 0 | CalcRenderer オブジェクトが使う集計の型をマップします。
DimensionType | tinyint | Not Null | なし | 0 = 列 1 = 行 2 = メジャー
DisplayName | nvarchar (128) | Null | なし | ユーザー インターフェイスに表示される名前です。
FieldName | nvarchar (128) | Not Null | なし | レポート クエリ結果のフィールド名です。
Ordinal | tinyint | Not Null | なし | 注文を行うユーザー インターフェイスの指定に使います。


ReportInstanceDbObject テーブル

次の表は、静的レポートで使うために作成されるデータベース オブジェクトのインスタンスを示しています。このテーブルはレポート実行時に作成されます。

属性名 | データ型 | 条件 | 既定値 | 説明
ReportDbObjectID | int | Null | なし | ディメンションが関連付けらたレポート データベース オブジェクトの ID です。
ReportStatusID | int | Not Null | なし | レポートの状態の ID です。
DateCreated | Date/Time | Not Null | なし | オブジェクトのインスタンスが作成された日付と時刻です。
DbObjectInstanceName | nvarchar (128) | Null | なし | テーブルまたはビューの名前です。
DbObjectType | nvarchar (128) | Null | なし | 0 = テーブル 1 = 一時テーブル 2 = ビュー


ReportInstanceParam テーブル

次の表は、パラメータ化されたクエリ式のインスタンスを示しています。このテーブルはレポート実行時に作成されます。

属性名 | データ型 | 条件 | 既定値 | 説明
ReportStatusID | int | Not Null | なし | レポートの状態の ID です。
ParamName | nvarchar (128) | Null | なし | タグ名です。
ParamType | tinyint | Null | なし | パラメータの種類です。
DataType | nvarchar (128) | Null | なし | Val1 と Val2. のデータ型です。 0 = int 1 = float 2 = datetime 3 = char
Opnd1 | tinyint | Null | 0 | 第 1 オペランドです。
Val1 | nvarchar (128) | Null | なし | 第 1 値です。
Opnd2 | tinyint | Null | 0 | 第 2 オペランドです。
Val2 | nvarchar (128) | Null | なし | 第 2 値です。
FieldName | nvarchar (128) | Null | なし | 式に使われるクエリのフィールドです。
Ordinal | tinyint | Null | なし | 注文を行うユーザー インターフェイスの指定に使います。
AllowNull | bit | Not Null | False (0) | 予約されています。
Automatic | bit | Not Null | False (0) | 予約されています。


ReportParam テーブル

次の表は、静的レポート用のパラメータ化クエリを作成するために使う属性を示しています。

属性名 | データ型 | 条件 | 既定 | 説明
ReportID | int | Not Null | なし | パラメータが関連付けられたレポートの ID です。
ParamName | nvarchar (128) | Not Null | なし | タグ名です。
ParamDescription | nvarchar (128) | Not Null | なし | クリック可能なバーに表示されるテキストです。
ParamType | tinyint | Not Null | 0 | パラメータの種類です。
DataType | tinyint | Null | なし | Val1 と Val2. のデータ型です。 0 = int 1 = float 2 = datetime 3 = char
Opnd1 | tinyint | Null | なし | 第 1 オペランドです。
Val1 | nvarchar (128) | Null | なし | 第 1 値です。
Opnd2 | tinyint | Null | なし | 第 2 オペランドです。
Val2 | nvarchar (128) | Null | なし | 第 2 値です。
FieldName | nvarchar (128) | Null | なし | 式に使われるクエリのフィールドです。
Ordinal | tinyint | Null | なし | 注文を行うユーザー インターフェイスの指定に使います。
AllowNull | bit | Not Null | False (0) | 予約されています。
Automatic | bit | Not Null | False (0) | 予約されています。


ReportStatus テーブル

次の表は、レポートに関する状態情報を指定するために使う属性を示しています。このテーブルはレポート実行時に作成されます。

属性名 | データ型 | 条件 | 既定値 | 説明
ReportStatusID | int | なし | なし | 識別情報です。
ReportID | int | Null | なし | ステータスが関連付けられたレポートの ID です。
DisplayName | nvarchar (128) | Null | なし | ユーザー インターフェイスに表示される名前です。
ExecutionState | tinyint | Not Null | 0 | 0 = なし 1 = 失敗 2 = 保留中 3 = 完了
Exported | bit | Null | False (0) | True はレポートがエクスポートされたことを示します。
LocationName | nvarchar (255) | Null | なし | レポートの名前です。
LocationPath | nvarchar (255) | Null | なし | レポートへのパスです。
RunBy | varchar (255) | Null | なし | レポートの実行者の名前です。
RunDateTime | Date/Time | Null | なし | レポートが実行された日付です。


レポートの種類によるテーブルの利用状況

次の表は、異なる種類のレポートを作成するとき、どのレポート テーブルが使われるかを示しています。

レポートの種類 | StaticSQL | StaticMDX | DynamicSQL | DynamicMDX
設計時テーブル |  |  |  |
Report | X | X | X | X
ReportDbObject | X |  |  |
ReportDimension | X |  |  |
ReportParam | X | X |  |
実行時テーブル |  |  |  |
ReportInstanceDbObject | X |  |  |
ReportInstanceParam | X | X |  |
ReportStatus | X | X |  |


データ ウェアハウスのスキーマ

Commerce Server 2000 データ ウェアハウスでは、論理スキーマを使って、アプリケーションを基本の物理データベースから分離します。論理スキーマの基本構造は、クラス、データ メンバ、関連、およびキーです。属性のセット (メタデータ) を含むメタモデルを使って基本構造を定義します。論理スキーマについての詳細な知識が必要になるのは、論理スキーマを拡張してサード パーティのデータ構造を含める場合だけです。

ここでは、次のトピックについて説明します。

  • データ ウェアハウスのクラス : データ ウェアハウス内の概念上の (論理) クラスをアルファベット順に説明します。

  • データ ウェアハウスのメタモデル : データ ウェアハウスのクラス、データ メンバ、クラスの関連、およびクラス キーを定義するために使うメタモデルを説明します。

  • 物理スキーマ : 基になるデータ ストアへの概念上のデータの論理 - 物理マッピングについて説明します。

関連項目

  • データ ウェアハウスを操作する


データ ウェアハウスのクラス

ここでは、Commerce Server 2000 データ ウェアハウスの論理クラスをアルファベット順に説明します。クラスのデータ メンバ、クラスの関連、およびクラス キーについて説明します。これらの論理クラスに対応する物理クラスについては、Microsoft 管理コンソール (MMC) の下にある、Microsoft SQL Servers\SQL Server グループ\<サーバー名>\データベース\<データ ウェアハウス データベース>\テーブルの下にあります。

次の表は、各クラスを説明する Relations テーブルで使用される関連の形式とそれに対応する形式コードを示しています。

関連の種類 | コード | 説明
一対多 | 2 | それぞれの親はゼロ以上の子を持ち、それぞれの子は 1 つの親を持ちます。親の識別子 ("クラス名" ID) は、子によって外部キーとして使われます。
多対多 | 3 | それぞれの親はゼロ以上の子を持ち、それぞれの子は 1 つ以上の親を持ちます。
継承を含む一対多 | 194 | 親のすべてのメンバが子に対して表示可能である以外は、一対多の関連と同じです。通常の一対多の関連では、親クラスのキー メンバだけが表示されます。

Commerce Server 2000 データ ウェアハウスの論理クラス

次の表は、データ ウェアハウスの論理クラスへのリンクを示しています。

Address | HttpStatus | Referrer
AdItem | ImportOptions | ReferrerDomain
Basket | IndustryCode | RegisteredUser
Campaign | IPRef | Request
CampaignEvent | LastUriByDate | RequestByDateByUriBy QueryString
CampaignEventsByDate AndUser | Level1Dir | ServerBinding
CampaignItem | Level2Dir | ServerGroup
CampaignItemTypes | Level3Dir | Site
CatalogGlobal | Level4Dir | SiteSummary
Category | Level5Dir | SiteURL
CatHierarchy | Level6Dir | SVQStringName
CommerceEvent | LinkMVQString Name | Target
Crawler | LinkSVQStringName | TargetGroup
Creative | LogUser | TargetGroupXRef
CreativeSize | MVQStringName | TaskHistory
CreativeType | OpenUserVisit | UniqueUserKey ByDate
CreativeTypeXRef | Order | URI
Customer | OrderDiscount | URIQuery
Date | OrderFormHeader | UserAgent
DMItem | OrderFormLine Items | VirtualServer
EventType | OrderGroup | Visit
FirstUriByDate | OrderGroupAddresses | VisitInfo
HitsByHour | PageGroup | Win32Status
HitsInfo | PageGroupXRef |
HostnameRef | Products


Address

このクラスは、ユーザーおよび組織の住所を格納します。既定では、Commerce Server 2000 ユーザー プロファイル データ インポート データ変換サービス (DTS) タスクは、プロファイル データをこのクラスにインポートします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
AddressName | WSTR | なし | なし
AddressType | LONG | なし | 0 – 住所 1 – 送付先住所 2 – 請求先住所
City | WSTR | なし | なし
CountryCode | WSTR | なし | 国/地域 (ISO) コードを格納します。
CountryName | WSTR | なし | なし
DateCreated | FILETIME | なし | なし
DateLastChanged | FILETIME | なし | なし
FirstName | WSTR | なし | ユーザーの名を格納します。
ID | UUID | {00000000-0000-0000-0000-000000000000} | オブジェクトの一意キーを格納します。
LastName | WSTR | なし | ユーザーの姓を格納します。
postalCode | WSTR | なし | 郵便番号を格納します。
RegionCode | WSTR | なし | なし
RegionName | WSTR | なし | 都道府県名または州名を格納します。
SiteName | WSTR | 利用できません | なし
TelephoneExtension | WSTR | なし | なし
TelephoneNumber | WSTR | なし | なし

クラス キー

AddressKey はデータ メンバ、ID だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
AddressUserRel | Address | RegisteredUser | 2
SiteAddressRel | Site | Address | 3


AdItem

このクラスは、スケジュール化された Web ページ用広告コンテンツを表します。このクラスは、いつ広告を実行するのかを表すデータ メンバや、広告とそれに対応する製品をリンクさせるためのコードを持ちます。IndustryCode クラスは、AdItem オブジェクトに含まれる広告の種類を分類するためのものです。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
AdItemCustomerOrderNum | WSTR | なし | 顧客が広告から注文するのに使用するコードを格納します。
AdItemDaysOfWeekMask | SHORT | なし | 広告を表示した曜日を示します。
AdItemEventsScheduled | LONG | なし | 広告に関連付けられたスケジュール イベントの数を格納します。
AdItemNum | LONG | 0 | オブジェクトの一意キーを格納します。
AdItemTimeOfDayEnd | SHORT | なし | 広告の表示を終了する毎日の時刻を示します。
AdItemTimeOfDayStart | SHORT | なし | 広告の表示を開始する毎日の時刻を示します。
AdItemType | SHORT | なし | 広告の種類を格納します。
AdItemWeight | LONG | なし | 広告の相対的重要度を格納します。
CampItemNum | LONG | 0 | なし
IndustryNum | LONG | 0 | なし
SiteName | WSTR | なし | 広告に関連付けられたサイトの名前を格納します。

クラス キー

AdItemKey はデータ メンバ、AdItemNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
AdItemCampaignItem | CampaignItem | AdItem | 2
AdItemIndustryCode | IndustryCode | AdItem | 2


Basket

このクラスは、ショッピング バスケットへの商品の追加や、ショッピング バスケットからの商品の削除に関連するビジネス トランザクションを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
EventName | WSTR | 利用できません | なし
ProductNameCat | WSTR400 | 利用できません | なし
SiteName | WSTR | 利用できません | なし
TaskID | LONG | 0 | なし
TimeStamp | FILETIME |  | なし
URI | WSTR | 利用できません | なし
UserId | WSTR | 利用できません | なし
UserKey | UUID | {00000000-0000-0000-0000-000000000000} | なし
VisitNum | IDENTITY | 0 | なし

クラス キー

このクラスにはキーが定義されていません。これは従属クラスです。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateBasketTimeStamp | Date | Basket | 2
EventTypeBasketRel | EventType | Basket | 2
LogUserBasketRel | LogUser | Basket | 2
ProductsBasketRel | Products | Basket | 2
RegisteredUserBasketRel | RegisteredUser | Basket | 2
SiteBasket | Site | Basket | 2
TaskHistoryBasket | TaskHistory | Basket | 2
UriBasket | URI | Basket | 2


Campaign

このクラスは、広告主のマーケティング キャンペーンの実行に関係するビジネス プロセスを定義します。Campaign クラスは、顧客 (広告主) を一連の CampaignItem オブジェクト (広告、割引、ダイレクト メール、または関連する商品) に関連付けます。Campaign オブジェクトは、マーケティング イベントを表している EventType オブジェクトと関連付けられます。

Customer オブジェクトは複数の Campaign オブジェクトを持つことができます。これは、顧客がある期間にわたって複数の広告キャンペーンを持つことを表します。Campaign は、複数のコンテンツ項目 (CampaignItem オブジェクト) を含むことができます。同様に、コンテンツ項目のセットは AdItem オブジェクトなどの項目を複数含んだり、複数のユーザー グループを対象とすることができます。また、1 つの Web ページに複数のコンテンツ項目を含めたり、あるコンテンツ項目を複数のページに含めることも可能です。これらのケースはすべて、クラス間における一対多の関連によって表現されます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampActive | SHORT | なし | なし
CampaignExported | FILETIME | なし | Campaign オブジェクトがエクスポートされた時刻を記録します。
CampaignModified | FILETIME | なし | Campaign オブジェクトが前回変更された時刻を記録します。
CampaignModifiedBy | WSTR | なし | Campaign オブジェクトを前回変更した人を格納します。
CampArchived | FILETIME | なし | Campaign オブジェクトがアーカイブされた時刻を記録します。
CampEnd | FILETIME | なし | Campaign オブジェクトが停止された時刻を記録します。
CampEventsSched | LONG | なし | Campaign オブジェクトにスケジュールされているキャンペーン イベントの数を格納します。
CampLevelGoal | SHORT | なし | なし
CampName | WSTR | なし | Campaign オブジェクト名を格納します。
CampNum | LONG | 0 | Campaign オブジェクトの一意キーを格納します。
CampStart | FILETIME | なし | Campaign オブジェクトがアクティブになった時刻を記録します。
CustomerComments | WSTR | なし | Campaign オブジェクトに関連付けられた顧客のコメントを格納します。
CustomerNum | LONG | 0 | なし
EventName | WSTR | 利用できません | なし
SiteName | WSTR | なし | Campaign オブジェクトに関連付けられたサイト名を格納します。

クラス キー

CampaignKey はデータ メンバ、CampNum だけで構成されます。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignCustomer | Customer | Campaign | 2
CampaignEventType | EventType | Campaign | 2
CampaignItemCampaign | Campaign | CampaignItem | 2


CampaignEvent

このクラスは、マーケティング キャンペーンのためのイベント情報を格納します。マーケティング キャンペーンのためのイベントとしては、CampaignItem オブジェクトのヒット数や CampaignItem オブジェクトに関連するビジネス トランザクションなどがあります。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampItemNum | LONG | 0 | なし
CNT | WSTR | なし | CampaignEvent オブジェクトで表されるWeb イベントの数を記録します。
EventName | WSTR | 利用できません | なし
EX | WSTR | なし | なし
PgNum | LONG | 0 | なし
SiteName | WSTR | 利用できません | なし
TaskID | LONG | 0 | なし
TimeStamp | FILETIME |  | なし
URI | WSTR | 利用できません | なし
UserId | WSTR | 利用できません | なし
UserKey | UUID | {00000000-0000-0000-0000-000000000000} | なし
VisitNum | IDENTITY | 0 | なし

クラス キー

このクラスにはキーが定義されていません。これは従属クラスです。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignItemCampaignEventRel | CampaignItem | CampaignEvent | 2
DateCampaignEventTimeStamp | Date | CampaignEvent | 2
EventTypeCampaignEventRel | EventType | CampaignEvent | 2
LogUserCampaignEventRel | LogUser | CampaignEvent | 2
PageGroupCampaignEventRel | PageGroup | CampaignEvent | 2
RegisteredUserCampaignEventRel | RegisteredUser | CampaignEvent | 2
SiteCampaignEvent | Site | CampaignEvent | 2
TaskHistoryCampaignEvent | TaskHistory | CampaignEvent | 2
UriCampaignEvent | URI | CampaignEvent | 2


CampaignItem

このクラスは、マーケティング キャンペーン (Campaign オブジェクト) またはスケジュール化された広告 (Creative オブジェクト) のうち、どちらか一方または両方に含まれるコンテンツを表します。コンテンツは、AdItem オブジェクト、DmItem オブジェクト、および OrderItem オブジェクトを 1 つ以上組み合わせることで表されます。

CampaignItem オブジェクトは、特定の種類のキャンペーン項目に属させるようにすることができます。所属先は、CampaignItemTypes オブジェクトに対するリンクにより指定されます。

コンテンツ項目は、特定のユーザー グループを対象とすることができます。その場合は、CampaignItem オブジェクトを 1 つ以上の TargetGroupXRef オブジェクトにリンクします。TargetGroupXRef クラスは、カスタム コンテンツ項目と対象ユーザー グループとの相互参照を表します。

また、コンテンツ項目は、複数のカスタム コンテンツのグループを表示する Web ページの一部にすることもできます。CampaignItem オブジェクトとその項目を含むページとの相互参照は、PageGroupXRef オブジェクトに含められています。

CampaignItem オブジェクトは、AdItem オブジェクトなどのコンテンツ項目を複数含んだり、複数のユーザー グループを対象とすることができます。1 つの Web ページに複数のコンテンツ項目を含めたり、あるコンテンツ項目を複数のページに含めることも可能です。これらのケースはすべて、クラス間における一対多の関連によって表現されます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Active | SHORT | なし | CampaignItem オブジェクトがアクティブかどうかを記録します。
ArchivedDate | FILETIME | なし | CampaignItem オブジェクトがアーカイブされた時刻を記録します。
CampItemNum | LONG | 0 | CampaignItem オブジェクトの一意キーを格納します。
CampNum | LONG | 0 | なし
Comments | WSTR | なし | オブジェクトについてのコメントを記録します。
CreativeNum | LONG | 0 | なし
EndDate | FILETIME | なし | CampaignItem オブジェクトが停止された時刻を記録します。
ExportedDate | FILETIME | なし | CampaignItem オブジェクトがエクスポートされた時刻を記録します。
ExposureLimit | LONG | なし | なし
GUIDCampItemType | UUID | {00000000-0000-0000-0000-000000000000} | なし
ModifiedBy | WSTR | なし | CampaignItem オブジェクトを前回変更した時刻を記録します。
ModifiedDate | FILETIME | なし | CampaignItem オブジェクトが前回変更された日付を記録します。
Name | WSTR | なし | CampaignItem オブジェクト名を格納します。
SiteName | WSTR | なし | CampaignItem オブジェクトに関連付けられたサイトの名を記録します。
StartDate | FILETIME | なし | CampaignItem オブジェクトがアクティブされた時刻を記録します。

クラス キー

CampaignItemKey はデータ メンバ、CampItemNum だけで構成されてます。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
AdItemCampaignItem | CampaignItem | AdItem | 2
CampaignItemCampaign | Campaign | CampaignItem | 2
CampaignItemCampaignEventRel | CampaignItem | CampaignEvent | 2
CampaignItemCampaignItemEventsByDateAndUser | CampaignItem | CampaignItemEventsByDateAndUser | 2
CampaignItemCampaignItemTypes | CampaignItemTypes | CampaignItem | 2
CampaignItemCreative | Creative | CampaignItem | 2
CampaignItemPageGroupXrefRel | CampaignItem | PageGroupXref | 2
CampaignItemTargetGroupXrefRel | CampaignItem | TargetGroupXref | 2
DmItemCampaignItem | CampaignItem | DmItem | 2
OrderDiscountCampaignItem | CampaignItem | OrderDiscount | 2


CampaignItemEventsByDateAndUser

このクラスは、日付とユーザーでグループ化されたキャンペーン イベント データの要約を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampaignEventsCount | LONG | 0 | なし
CampItemNum | LONG | 0 | キー メンバ
EventName | WSTR | 利用できません | キー メンバ
SiteName | WSTR | 利用できません | キー メンバ
TaskID | LONG | 0 | キー メンバ
TimeStamp | FILETIME | 1900-1-1 0:0:0.0 | キー メンバ
userKey | UUID | {00000000-0000-0000-0000-000000000000} | キー メンバ

クラス キー

CampaignItemEventsByDateAndUserKey は次のデータ メンバで構成されています。

CampItemNum + EventName + SiteName + TaskID + TimeStamp +userKey

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignItemCampaignItemEventsByDateAndUser | CampaignItem | CampaignItemEventsByDateAndUser | 2
DateCampaignItemEventsByDateAndUser | Date | CampaignItemEventsByDateAndUser | 2
EventTypeCampaignItemEventsByDateAndUser | EventType | CampaignItemEventsByDateAndUser | 2
LogUserCampaignItemEventsByDateAndUser | LogUser | CampaignItemEventsByDateAndUser | 2
SiteCampaignItemEventsByDateAndUser | Site | CampaignItemEventsByDateAndUser | 2
TaskHistoryCampaignItemEventsByDateAndUser | TaskHistory | CampaignItemEventsByDateAndUser | 2


CampaignItemTypes

このクラスは、カスタム Web ページ コンテンツのカテゴリを表します。1 つの CampaignItemTypes オブジェクトが 0 個以上の CampaignItem オブジェクトにリンクしています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampItemTypeName | WSTR | なし | キャンペーン項目の種別名を格納します。
CampItemTypeTable | WSTR | なし | なし
GUIDCampItemType | UUID | {00000000-0000-0000-0000-000000000000} | オブジェクトの一意キーを格納します。
SiteName | WSTR | なし | キャンペーン項目の種別に関連付けられたサイト名を格納します。

クラス キー

CampaignItemTypesKey はデータ メンバ、GUIDCampItemType だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignItemCampaignItemTypes | CampaignItemTypes | CampaignItem | 2
CampaignItemTypesCreativeTypeXrefRel | CampaignItemTypes | CreativeTypeXref | 2


CatalogGlobal

このクラスは、ほかのカタログを格納するグローバル カタログを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CatalogName | WSTR | 利用できません | オブジェクトの一意キー (名前) を格納します。
Currency | WSTR | なし | カタログ システムでは使えません。
EndDate | DATETIME | なし | カタログ システムでは使えません。
Locale | LONG | なし | カタログ システムでは使えません。
ProductID | WSTR | なし | ProductID を格納するカタログの列の名前です。
SiteName | WSTR | 利用できません | なし
StartDate | DATETIME | なし | カタログ システムでは使えません。
VariantID | WSTR | なし | VariantID を格納するカタログの列の名前です。Null の場合は、商品バリエーションがサポートされていません。
WeightMeasure | WSTR | なし | カタログ システムでは使えません。

クラス キー

CatalogGlobalKey はデータ メンバ、CatalogName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CatalogSite | Site | CatalogGlobal | 3


Category

このクラスは、セールス カタログのカテゴリを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CatalogName | WSTR | 利用できません | カタログ名を格納します。
CategoryName | WSTR | 利用できません | カテゴリ名を格納します。
CategoryNameCat | WSTR400 | 利用できません | オブジェクトの一意キー (カテゴリ名に結合されたカタログ名) を格納します。

クラス キー

CategoryKey はデータ メンバ、CategoryNameCat だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Category | Category | Products | 3


CatHierarchy

このクラスは、階層商品 カタログのレベルを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
ChildCategoryCat | WSTR400 | 利用できません | 子カテゴリ名に結合されているカタログ名を格納します。
ParentCategoryCat | WSTR400 | 利用できません | 親カテゴリ名に結合されているカタログ名を格納します。

クラス キー

CatHierarchyKey は次のデータ メンバで構成されています。

ParentCategoryCat + ChildCategoryCat

関連

このクラスには、関連は定義されていません。


CommerceEvent

このクラスは、Commerce イベントと、イベント データを格納する論理クラスの間のマッピングを表します。Commerce イベントは、Commerce Server コンポーネントによって書かれた特殊な構造のクエリ文字列です。

注

  • 2 つの異なるクラス メンバが同じ記憶域メンバをポイントしないでください。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CommerceEventClassName | WSTR | なし | イベント クラスの名前を格納します。
CommerceEventMemberName | WSTR | なし | イベント メンバの名前を格納します。
StorageClassName | WSTR | なし | 記憶域クラスの名前を格納します。
StorageMemberName | WSTR | なし | 記憶域 メンバの名前を格納します。

クラス キー

このクラスにはキーが定義されていません。これは従属クラスです。

関連

このクラスには、関連は定義されていません。


Crawler

このクラスは、サイトに関連付けられた Web クローラを表します。Crawler は 1 つの Site オブジェクトにリンクします。1 つの Site オブジェクトに複数の Crawler オブジェクトをリンクすることができます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CrawlerString | WSTR | 利用できません | キー メンバ
SiteName | WSTR | 利用できません | キー メンバ

クラス キー

CrawlerKey は次のデータ メンバで構成されています。

CrawlerString + SiteName

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
SiteCrawlerRel | Site | Crawler | 2


Creative

このクラスは、顧客 (広告主など) のための Web コンテンツのスケジュール設定に関係するビジネス プロセスを定義します。コンテンツの種類は、CreativeType オブジェクトへのリンクという形で記録されます。スケジュール化されたコンテンツは、1 つ以上の CampaignItem オブジェクトによって表されます。このコンテンツには、広告、割引、関連商品目、またはダイレクト メールが含まれています。CreativeSize オブジェクトは、コンテンツを表示するために使われる Web ページ上の領域を定義します。

Customer オブジェクトは、複数の Creative オブジェクトを持つことができます。これは、顧客がある期間にわたって複数の広告を持つことを表します。Creative 広告は、コンテンツ項目 (CampaignItem オブジェクト) を複数持つことができます。同様に、コンテンツ項目のセットは AdItem オブジェクトなどの項目を複数含んだり、複数のユーザー グループを対象とすることができます。また、1 つの Web ページに複数のコンテンツ項目を含めたり、あるコンテンツ項目を複数のページに含めることも可能です。これらのケースはすべて、クラス間における一対多の関連によって表現されます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CreativeNum | LONG | 0 | Creative オブジェクトの一意キーを格納します。
CreativeReceived | FILETIME | なし | なし
CreativeSizeNum | LONG | 0 | なし
CreativeTypeNum | LONG | 0 | なし
CustomerNum | LONG | 0 | なし
SiteName | WSTR | なし | Creative オブジェクトに関連付けられたサイトの名前を格納します。

クラス キー

CreativeKey はデータ メンバ、 CreativeNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignItemCreative | Creative | CampaignItem | 2
CreativeCustomer | Customer | Creative | 2
CreativeSizeCreative | CreativeSize | Creative | 2
CreativeTypeCreative | CreativeType | Creative | 2


CreativeSize

このクラスは、Web ページ上のカスタム コンテンツのサイズを表します。1 つの CreativeSize オブジェクトが 1 つまたは複数の Creative オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CreativeSizeNum | LONG | 0 | オブジェクトの一意キーを格納します。
SiteName | WSTR | なし | このオブジェクトに関連付けられているサイト名を格納します。
SizeHeight | SHORT | なし | カスタム コンテンツ サイズの高さ (単位はピクセル) を格納します。
SizeName | WSTR | なし | カスタム コンテンツ サイズ オブジェクトの名前を格納します。
SizeTag | WSTR | なし | カスタム コンテンツ サイズに関連付けられているタグを格納します。
SizeWidth | SHORT | なし | カスタム コンテンツ サイズの幅 (単位はピクセル) を格納します。

クラス キー

CreativeSizeKey はデータ メンバ、CreativeSizeNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CreativeSizeCreative | CreativeSize | Creative | 2


CreativeType

このクラスは、Web ページ用のカスタム コンテンツのカテゴリを規定します。1 つの CreativeType オブジェクトが 0 個以上の Creative オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CreativeTypeName | WSTR | なし | オブジェクトの名前を格納します。
CreativeTypeNum | LONG | 0 | オブジェクトの一意キーを格納します。
CreativeTypeTemplate | WSTR | なし | なし
SiteName | WSTR | なし | なし

クラス キー

CreativeTypeKey はデータ メンバ CreativeTypeNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CreativeTypeCreative | CreativeType | Creative | 2
CreativeTypeCreativeTypeXrefRel | CreativeType | CreativeTypeXref | 2


CreativeTypeXRef

このクラスは、Web ページ用のカスタム コンテンツのカテゴリを規定します。1 つまたは複数の CreativeTypeXRef オブジェクトが 1 つの CreativeType にリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CreativeTypeNum | LONG | 0 | キー メンバ
GUIDCampItemType | UUID | {00000000-0000-0000-0000-000000000000} | キー メンバ
SiteName | WSTR | 継承 | このオブジェクトに関連付けられているサイト名を格納します。

クラス キー

CreativeTypeXrefKey は次のデータ メンバで構成されています。

CreativeTypeNum + GUIDCampItemType

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignItemTypesCreativeTypeXrefRel | CampaignItemTypes | CreativeTypeXref | 2
CreativeTypeCreativeTypeXrefRel | CreativeType | CreativeTypeXref | 2


Customer

このクラスは、Commerce Server 2000 Web サイトを介して広告を使う顧客を定義します。Customer オブジェクトは、顧客の業種を定義する IndustryCode オブジェクトに関連付けられています。顧客のためのマーケティング キャンペーンは、1 つ以上の Campaign オブジェクトへのリンクという形で記録されます。顧客のためのカスタム広告は、1 つ以上の Creative オブジェクトへのリンクという形で記録されます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Address | WSTR | なし | Customer オブジェクトのアドレスを格納します。
Archived | FILETIME | なし | Customer オブジェクトがアーカイブされた時刻を格納します。
Comments | WSTR | なし | Customer オブジェクトに関連するコメントを格納します。
Contact | WSTR | なし | Customer オブジェクトの担当者名を格納します。
CustomerNum | LONG | 0 | Customer オブジェクトの一意キーを格納します。
CustomerTypeNum | LONG | なし | ユーザー定義可能分類コードを格納します。
Email | WSTR | なし | Customer オブジェクトの電子メール アドレスを格納します。
Exported | FILETIME | なし | Customer オブジェクトがエクスポートされた時刻を格納します。
Fax | WSTR | なし | Customer オブジェクトの FAX 番号を格納します。
IndustryNum | LONG | 0 | なし
Modified | FILETIME | なし | Customer オブジェクトが前回変更された時刻を格納します。
ModifiedBy | WSTR | なし | Customer オブジェクトを前回変更した人を格納します。
Name | WSTR | なし | Customer オブジェクトの名前を格納します。
PassWord | WSTR | なし | Customer オブジェクトのパスワードを格納します。
Phone | WSTR | なし | Customer オブジェクトの電話番号を格納します。
SiteName | WSTR | なし | このCustomerオブジェクトに関連付けられているサイト名を格納します。
URL | WSTR | なし | Customer オブジェクトに関連付けられた URL を記録します。
UserName | WSTR | なし | Customer オブジェクトのユーザー名を格納します。

クラス キー

CustomerKey はデータ メンバ、CustomerNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignCustomer | Customer | Campaign | 2
CreativeCustomer | Customer | Creative | 2
CustomerIndustryCode | IndustryCode | Customer | 2


Date

このクラスは日付と時刻を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DTimestamp | FILETIME | 1900-1-1 0:0:0.0 | タイムスタンプを格納します。

クラス キー

DateKey はデータ メンバ、 DTimestamp で構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateBasketTimeStamp | Date | Basket | 2
DateCampaignEventTimeStamp | Date | CampaignEvent | 2
DateCampaignItemEventsByDateAndUser | Date | CampaignItemEventsByDateAndUser | 2
DateFirstUriByDate | Date | FirstUriByDate | 2
DateHitsByHour | Date | HitsByHour | 2
DateHitsInfo | Date | HitsInfo | 2
DateLastUriByDate | Date | LastUriByDate | 2
DateOrderGroup | Date | OrderGroup | 2
DateOrderTimeStamp | Date | Order | 2
DateRequestByDateByUriByQueryString | Date | RequestByDateByUriByQueryString | 2
DateToOrderFormHeader | Date | OrderFormHeader | 194
DateUniqueUserKeyByDate | Date | UniqueUserKeyByDate | 2
DateVisitInfoFirstTimeStamp | Date | VisitInfo | 2


DMItem

このクラスは、スケジュール化されたダイレクト メール項目を表します。このクラスは、住所や書式など、ダイレクト メール コンテンツの詳細情報を記録したデータ メンバを含んでいます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampItemNum | LONG | 0 | なし
DmItemAttachment | WSTR | なし | ダイレクト メール項目のアタッチメントの名前を格納します。
DmItemDefformat | SHORT | なし | ダイレクト メール項目の既定の形式コードを格納します。
DmItemDesc | WSTR | なし | ダイレクト メール項目の説明を格納します。
DmItemFrom | WSTR | なし | ダイレクト メール項目の "送信元" フィールド用の電子メール アドレスを格納します。
DmItemNum | LONG | 0 | オブジェクトの一意キーを格納します。
DmItemPersonalized | SHORT | なし | ダイレクト メール項目をパーソナライズするかどうかを指定します。
DmItemReplyTo | WSTR | なし | ダイレクト メール項目の "応答先" 電子メール アドレスを格納します。
DmItemScheduleId | WSTR | なし | なし
DmItemSource | WSTR | なし | ダイレクト メール項目のソースの名前を格納します。
DmItemSubj | WSTR | なし | ダイレクト メール項目の件名を格納します。
DmItemUserFlags | LONG | なし | ダイレクト メール項目に関連付けられたユーザー データを管理するエンコード フラグ セットを格納します。
GUIDDmItemListId | UUID | なし | なし
GUIDDmItemOptout | UUID | なし | なし
GUIDDmItemTestListId | UUID | なし | なし
SiteName | WSTR | なし | このオブジェクトに関連付けられているサイト名を格納します。

クラス キー

DmItemKey はデータ メンバ、DmItemNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DmItemCampaignItem | CampaignItem | DmItem | 2


EventType

このクラスは、マーケティング イベントのカテゴリを表します。EventType オブジェクトは、マーケティング イベントを表しています。このオブジェクトは、イベント内にある、マーケティング キャンペーンを表す 1 つ以上の Campaign オブジェクトに関連付けられます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
EventDescription | WSTR | なし | キャンペーン イベントの説明を格納します。
EventName | WSTR | 利用できません | オブジェクトの一意キーを格納します。
SiteName | WSTR | なし | このオブジェクトに関連付けられているサイト名を格納します。

クラス キー

EventTypeKey はデータ メンバ、EventName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignEventType | EventType | Campaign | 2
EventTypeBasketRel | EventType | Basket | 2
EventTypeCampaignEventRel | EventType | CampaignEvent | 2
EventTypeCampaignItemEventsByDateAndUser | EventType | CampaignItemEventsByDateAndUser | 2
EventTypeOrderRel | EventType | Order | 2


FirstUriByDate

このクラスは、日付でグループ化された各訪問の最初の URI (Uniform Resource Identifier) についての情報の要約を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Date | FILETIME | 1900-1-1 0:0:0.0 | キー メンバ
FirstUri | WSTR | 利用できません | キー メンバ
SiteName | WSTR | 利用できません | キー メンバ
TaskID | LONG | 0 | キー メンバ
VisitCount | LONG | 0 | なし

クラス キー

FirstUriByDateKey は次のデータ メンバで構成されています。

Date + FirstUri + SiteName + TaskID

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateFirstUriByDate | Date | FirstUriByDate | 2
SiteFirstUriByDate | Site | FirstUriByDate | 2
TaskHistoryFirstUriByDate | TaskHistory | FirstUriByDate | 2
uriFirstUriByDate | URI | FirstUriByDate | 2


HitsByHour

このクラスは、1 時間ごとにグループ化されたヒット情報の要約を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
HitsCount | LONG | 0 | なし
Hour | FILETIME | 1900-1-1 0:0:0.0 | キー メンバ
SiteName | WSTR | 利用できません | キー メンバ
TaskID | LONG | 0 | キー メンバ
TotalBytesReceived | LONGREAL | 0 | なし
TotalBytesSent | LONGREAL | 0 | なし

クラス キー

HitsByHourKey は次のデータ メンバで構成されています。

Hour + SiteName + TaskID

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateHitsByHour | Date | HitsByHour | 2
SiteHitsByHour | Site | HitsByHour | 2
TaskHistoryHitsByHour | TaskHistory | HitsByHour | 2


HitsInfo

このクラスは、Web サイトのヒット数の要約です。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Date | FILETIME | 1900-1-1 0:0:0.0 | キー メンバ
HitsCount | LONG | 0 | なし
HttpStatus | ULONG | 0 | キー メンバ
IsRequest | SHORT | 0 | キー メンバ
SiteName | WSTR | 利用できません | キー メンバ
TaskID | LONG | 0 | キー メンバ
URI | WSTR | 利用できません | キー メンバ
Win32Status | ULONG | 0 | キー メンバ

クラス キー

HitsInfoKey は次のデータ メンバで構成されています。

Date + HttpStatus + IsRequest + SiteName + TaskID + URI + Win32Status

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateHitsInfo | Date | HitsInfo | 2
HttpStatusHitsInfo | HttpStatus | HitsInfo | 2
SiteHitsInfo | Site | HitsInfo | 2
TaskHistoryHitsInfo | TaskHistory | HitsInfo | 2
uriHitsInfo | URI | HitsInfo | 2
Win32StatusHitsInfo | Win32Status | HitsInfo | 2


HostnameRef

このクラスは、インターネット プロトコル(IP) アドレスのホスト名の参照を表します。1 つの HostnameRef オブジェクトが 1 つ以上の IPRef オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Hostname | WSTR | 利用できません | オブジェクトの一意キーを格納します。

クラス キー

HostnameRefKey はデータ メンバ、Hostname だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
HostnameRefIPRefRel | HostnameRef | IPRef | 2


HttpStatus

このクラスは、Web サイトのログ ファイルに格納される HTTP状態コードを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
HttpStatus | ULONG | 0 | オブジェクトの一意キーを格納します。
IsSuccessCode | SHORT |  | 2xx - 成功 3xx - リダイレクト。 4xx - 失敗。 5xx - サーバーの設定が正しくありません。

クラス キー

HttpStatusKey はデータ メンバ、HttpStatus だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
HttpStatusHitsInfo | HttpStatus | HitsInfo | 2
HttpStatusRequest | HttpStatus | Request | 194


ImportOptions

このクラスは、情報のインポートのためのオプションを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
HitsBufferMaxSize | LONG | なし | なし
NumImportPipeline | LONG | なし | なし

クラス キー

このクラスにはキーが定義されていません。これは従属クラスです。

関連

このクラスには、関連は定義されていません。


IndustryCode

このクラスは、顧客の業種や、広告展開する項目が対象とする業種を規定します。1 つの IndustryCode オブジェクトは 0 個以上の Customer オブジェクトと 0 個以上の AdItem オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
IndustryCode | WSTR | なし | このオブジェクトで表わされる業種のコードを格納します。
IndustryNum | LONG | 0 | オブジェクトの一意キーを格納します。
SiteName | WSTR | なし | このオブジェクトに関連付けられているサイト名を格納します。

クラス キー

IndustryCodeKey はデータ メンバ、IndustryNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
AdItemIndustryCode | IndustryCode | AdItem | 2
CustomerIndustryCode | IndustryCode | Customer | 2


IPRef

このクラスは、LogUser オブジェクトのインターネット プロトコル(IP) 参照を表します。IPRef オブジェクトは、IP アドレス、その IP アドレスの被参照回数、および参照状態を含んでいます。

IPRef オブジェクトは、IP アドレスに関連付けられたホストを表す HostNameRef オブジェクトと関連付けられます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Hostname | WSTR | 利用できません | なし
IPAddress | WSTR | 0.0.0.0 | オブジェクトの一意キーを格納します。
LastModifiedTime | FILETIME | なし | このオブジェクトが前回変更された時刻を記録します。
Status | LONG | なし | IP アドレスが解決されているかどうかを示します。 0 - 未解決 1 - 解決済み

クラス キー

IPRefKey はデータ メンバ、IPAddress だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
HostnameRefIPRefRel | HostnameRef | IPRef | 2
IPRefUserRel | IPRef | LogUser | 2


LastUriByDate

このクラスは、日付でグループ化された各訪問の最後の URI に関する情報の要約を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Date | FILETIME | 1900-1-1 0:0:0.0 | キー メンバ
LastUri | WSTR | 利用できません | キー メンバ
SiteName | WSTR | 利用できません | キー メンバ
TaskID | LONG | 0 | キー メンバ
VisitCount | LONG | 0 | なし

クラス キー

LastUriByDateKey は次のデータ メンバで構成されています。

Date + LastUri + SiteName + TaskID

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateLastUriByDate | Date | LastUriByDate | 2
SiteLastUriByDate | Site | LastUriByDate | 2
TaskHistoryLastUriByDate | TaskHistory | LastUriByDate | 2
uriLastUriByDate | URI | LastUriByDate | 2


Level1Dir

このクラスは、階層ディレクトリ構造の最初のレベルを表します。それぞれのレベルには、URIオブジェクトへのリンクが含まれています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DirName1 | WSTR | / | オブジェクトの一意キーを格納します。

クラス キー

Level1DirKey はデータ メンバ、DirName1 だけで構成さています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Level1DirURIRel | Level1Dir | URI | 2


Level2Dir

このクラスは、階層ディレクトリ構造の 2 番目のレベルを表します。それぞれのレベルには、URI オブジェクトへのリンクが含まれています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DirName2 | WSTR | * | オブジェクトの一意キーを格納します。

クラス キー

Level2DirKey はデータ メンバ、DirName2 だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Level2DirURIRel | Level2Dir | URI | 2


Level3Dir

このクラスは、階層ディレクトリ構造の 3 番目のレベルを表します。それぞれのレベルには、URI オブジェクトへのリンクが含まれています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DirName3 | WSTR | * | オブジェクトの一意キーを格納します。

クラス キー

Level3DirKey はデータ メンバ、DirName3 だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Level3DirURIRel | Level3Dir | URI | 2


Level4Dir

このクラスは、階層ディレクトリ構造の 4 番目のレベルを表します。それぞれのレベルには、URI オブジェクトへのリンクが含まれています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DirName4 | WSTR | * | オブジェクトの一意キーを格納します。

クラス キー

Level4DirKey はデータ メンバ、DirName4 だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Level4DirURIRel | Level4Dir | URI | 2


Level5Dir

このクラスは、階層ディレクトリ構造の 5 番目のレベルを表します。それぞれのレベルには、URI オブジェクトへのリンクが含まれています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DirName5 | WSTR | * | オブジェクトの一意キーを格納します。

クラス キー

Level5DirKey はデータ メンバ、DirName5 だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Level5DirURIRel | Level5Dir | URI | 2


Level6Dir

このクラスは、階層ディレクトリ構造の 6 番目 (最後) のレベルを表します。それぞれのレベルには、URI オブジェクトへのリンクが含まれています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DirName6 | WSTR | * | オブジェクトの一意キーを格納します。

クラス キー

Level6DirKey はデータ メンバ、DirName6 だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Level6DirURIRel | Level6Dir | URI | 2


LinkMVQStringName

このクラスでは SiteURL オブジェクトを MVQStringName オブジェクトにリンクします。MVQStringName オブジェクトは、データ ストア内の複数値列を検索するカスタム クエリ文字列を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
QStringName | WSTR | DEFAULT | キー メンバ
URL | WSTR | 利用できません | キー メンバ

クラス キー

LinkMVQStringNameKey は次のデータ メンバで構成されています。

QStringName + URLID

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
MVQStringNameLinkMVQStringNameRel | MVQStringName | LinkMVQStringName | 2
SiteURLLinkMVQStringNameRel | SiteURL | LinkMVQStringName | 2


LinkSVQStringName

このクラスは SiteURL オブジェクトを SVQStringName オブジェクトにリンクします。SVQStringName オブジェクトは、データ ストア内の単一値列を検索するカスタム クエリ文字列を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
QStringName | WSTR | 既定 | キー メンバ
URL | WSTR | 利用できません | キー メンバ

クラス キー

LinkSVQStringNameKey は次のデータ メンバで構成されています。

QStringName + URL

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
SiteURLLinkSVQStringNameRel | SiteURL | LinkSVQStringName | 2
SVQStringNameLinkSVQStringNameRel | SVQStringName | LinkSVQStringName | 2


LogUser

このクラスは、Commerce Server 2000 Web サイトと対話するユーザーに関する情報を格納します。

Commerce Server 2000 Web サイトを訪れた人のことをユーザーと呼びます。LogUser オブジェクトはユーザーごとに作成され、cookie のデータやユーザー名などのそのユーザーに関する情報を記録するために使われます。ユーザーが Web サイトを訪問すると、そのたびに Visit オブジェクトが作成されます。新しく作成された Visit オブジェクトは、そのユーザーの LogUser オブジェクトにリンクされます。LogUser オブジェクトは、匿名ユーザー、組織に属しているユーザー、および Commerce Server 2000 Web サイトに登録されているユーザーを表すことができます。

ユーザーの インターネット プロトコル(IP) 情報は、LogUser オブジェクトに関連付けられた IPRef オブジェクトに格納されます。HostNameRef オブジェクトは、IPRef オブジェクトのホスト名情報を格納します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DateCreated | FILETIME | なし | なし
HasCookie | SHORT |  | なし
IpAddress | WSTR | 0.0.0.0 | なし
UserDomainName | WSTR | なし | ユーザーに関連付けられた DNS (Domain Name Service) ドメイン名を格納します。
UserId | WSTR | 利用できません | なし
UserKey | UUID | {00000000-0000-0000-0000-000000000000} | オブジェクトの一意キーを格納します。
UserName | WSTR | 利用できません | World Wide Web Consortium (W3C) 形式のログ ファイルからユーザー名 (cs-username) を格納します。

クラス キー

LogUserKey はデータ メンバ、UserKey だけで構成されてます。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
IPRefUserRel | IPRef | LogUser | 2
LogUserBasketRel | LogUser | Basket | 2
LogUserCampaignEventRel | LogUser | CampaignEvent | 2
LogUserCampaignItemEventsByDateAndUser | LogUser | CampaignItemEventsByDateAndUser | 2
LogUserOrderRel | LogUser | Order | 2
LogUserRequestRel | LogUser | Request | 2
LogUserUniqueUserKeyByDate | LogUser | UniqueUserKeyByDate | 2
RegisteredUserUserRel | RegisteredUser | LogUser | 2
UserVisit | LogUser | Visit | 194
UserVisitInfo | LogUser | VisitInfo | 2


MVQStringName

このクラスは、複数の値を持つカスタム クエリ文字列の名前を表します。MVQStringName オブジェクトは、LinkMVQStringName オブジェクトを介して SiteURL オブジェクトに関連付けます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
QStringName | WSTR | DEFAULT | 複数値クエリ文字列の名前を格納します。

クラス キー

MVQStringNameKey はデータ メンバ、QStringName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
MVQStringNameLinkMVQStringNameRel | MVQStringName | LinkMVQStringName | 2


OpenUserVisit

このクラスは、ログ ファイルがインポートされた時点で開いていた、Web サイトへの訪問を表します。このクラスによって、ログを次にインポートしたときに、オープンされていた訪問に接続し、それを閉じることが可能になります。訪問が完了する（閉じられる）と、OpenUserVisit オブジェクトが削除され、VisitInfo オブジェクトのインスタンスが作成されます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CountOfRequest | ULONG | なし | なし
FirstRequestNum | IDENTITY | なし | なし
FirstTimeStamp | FILETIME | なし | なし
FirstUri | WSTR | 利用できません | なし
LastRequestNum | IDENTITY | なし | なし
LastTimeStamp | FILETIME | なし | なし
LastUri | WSTR | 利用できません | なし
ReferrerDomainName | WSTR | 利用できません | なし
SecondRequestNum | IDENTITY | なし | なし
SecondUri | WSTR | 利用できません | なし
SiteName | WSTR | 利用できません | なし
TaskID | LONG | 0 | なし
UserAgentName | WSTR | 利用できません | なし
UserId | WSTR | 利用できません | なし
UserKey | UUID | なし | なし
VisitNum | IDENTITY | 0 | オブジェクトの一意キーを格納します。

クラス キー

OpenUserVisitKey はデータ メンバ、VisitNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
ReferrerDomainOpenUserVisit | ReferrerDomain | OpenUserVisit | 2
RegisteredUserOpenUserVisit | RegisteredUser | OpenUserVisit | 2
SiteOpenUserVisitRel | Site | OpenUserVisit | 2
TaskHistoryOpenUserVisitRel | TaskHistory | OpenUserVisit | 2
UserAgentOpenUserVisit | UserAgent | OpenUserVisit | 2


Order

このクラスは、注文の保存要求や送信要求を格納します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
EventName | WSTR | 利用できません | なし
ordergroup_id | UUID | {00000000-0000-0000-0000-000000000000} | なし
SiteName | WSTR | 利用できません | なし
TaskID | LONG | 0 | なし
TimeStamp | FILETIME |  | なし
URI | WSTR | 利用できません | なし
UserId | WSTR | 利用できません | なし
UserKey | UUID | {00000000-0000-0000-0000-000000000000} | なし
VisitNum | IDENTITY | 0 | なし

クラス キー

このクラスにはキーが定義されていません。これは従属クラスです。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateOrderTimeStamp | Date | Order | 2
EventTypeOrderRel | EventType | Order | 2
LogUserOrderRel | LogUser | Order | 2
OrderGroupOrderRel | OrderGroup | Order | 2
RegisteredUserOrderRel | RegisteredUser | Order | 2
SiteOrder | Site | Order | 2
TaskHistoryOrder | TaskHistory | Order | 2
UriOrder | URI | Order | 2


OrderDiscount

このクラスは、割引商品を表します。このクラスは、項目および販売条件を表すデータ メンバを含んでいます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampItemNum | LONG | 0 | なし
DiscAwardExpr | LONG | なし | なし
DiscAwardMax | LONG | なし | 設定された割引の最大値を格納します。
DiscClickRequired | SHORT | なし | 割引をアクティブにするためにクリックが必要かどうかを示します。
DiscCondBasis | LONG | なし | 割引の基本条件コードを格納します。
DiscCondExpr | LONG | なし | なし
DiscCondMin | LONGREAL | なし | 割引が適用されるために必要な最小消費額を格納します。
DiscDescription | WSTR | なし | 注文割引項目の説明を格納します。
DiscDisjointCondAward | SHORT | なし | 割引の設定管理を解除する条件があるかどうかを示します。
DiscExprUsedForDisplay | SHORT | なし | 割引項目を表示のみに使用するかどうかを示します。
DiscLimit | LONG | なし | 割引項目の注文の限界を格納します。
DiscNum | LONG | 0 | オブジェクトの一意キーを格納します。
DiscOfferType LONG なし 提供する割引の種類を示すコードを格納します。
  • 1 - 均一額

  • 2 - 率
DiscOfferValue | LONGREAL | なし | 提供する割引の値を格納します。
DiscOrderLevelDiscount | SHORT | なし | なし
DiscQtyCondMin | LONG | なし | 割引が適用されるために必要な最小数量を格納します。
DiscRank | LONG | なし | 割引項目の相対的ランクを格納します。
DiscSpecialOfferType | WSTR | なし | 割引に関連付けられた特別提供の種類を示すコードを格納します。
DiscTemplate | LONG | なし | 割引項目に使用されるテンプレートのコードを格納します。
SiteName | WSTR | なし | このオブジェクトに関連付けられているサイト名を格納します。

クラス キー

OrderDiscountKey はデータ メンバ、DiscNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
OrderDiscountCampaignItem | CampaignItem | OrderDiscount | 2


OrderFormHeader

このクラスは、注文フォームのヘッダ情報を表します。OrderFormHeader オブジェクトには、連絡先情報、買物客の情報、および注文フォームの処理に必要なその他のデータが格納されます。OrderFormHeader オブジェクトは、注文された項目を表す、0 個以上の OrderFormLineItems オブジェクトとリンクしています。OrderGroup オブジェクトは注文を表し、0 個以上の OrderFormHeader オブジェクトとリンクしています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
billing_currency | WSTR | なし | なし
buying_org_name | WSTR | なし | 買い物客の組織の名前を格納します。
cc_auth_number | WSTR | なし | クレジット カードの認証コードを格納します。
d_DateCreated | DATETIME | なし | なし
d_DateLastChanged | DATETIME | なし | なし
g_UserIDChangedBy | WSTR | なし | なし
OrderForm_date | DATETIME | なし | 注文フォームの日付を格納します。
OrderForm_date_UnNorm | DATETIME | なし | なし
OrderForm_Id | UUID | {00000000-0000-0000-0000-000000000000} | オブジェクトの一意キーの 2 番目の部分を格納します。
ordergroup_id | UUID | {00000000-0000-0000-0000-000000000000} | オブジェクトの一意キーの最初の部分を格納します。
po_number | WSTR | なし | なし
receiver_email_address | WSTR | なし | なし
receiver_fax_number | WSTR | なし | なし
receiver_first_name | WSTR | なし | 受取人の名を格納します。
receiver_last_name | WSTR | なし | 受信者の姓を格納します。
receiver_tel_number | WSTR | なし | なし
saved_cc_expiration | WSTR | なし | 保存されたクレジット カードの有効期限コードを格納します。
saved_cc_number | WSTR | なし | 保存されたクレジット カードの番号を格納します。
saved_cy_tax_total | CURRENCY | なし | なし
saved_cy_total_total | CURRENCY | なし | なし
selling_org_name | WSTR | なし | 販売組織の名前を格納します。
tax_exempt_code | WSTR | なし | なし
tax_exempt_id | WSTR | なし | なし
total_lineitems | LONG | なし | なし
user_email_address | WSTR | なし | 購入者の電子メール アドレスを格納します。
user_fax_number | WSTR | なし | 購入者の FAX 番号を格納します。
user_first_name | WSTR | なし | 購入者の名を格納します。
user_id | WSTR | なし | 購入者のユーザー ID を格納します。
user_last_name | WSTR | なし | 購入者の姓を格納します。
user_name | WSTR | なし | 購入者の名前を格納します。
user_org_id | WSTR | なし | 購入者の組織の識別子を格納します。
user_org_name | WSTR | なし | 購入者の組織名を格納します。
user_tel_number | WSTR | なし | 購入者の電話番号を格納します。

クラス キー

OrderFormHeaderKey は次のデータ メンバで構成されています。

ordergroup_id + OrderForm_Id

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateToOrderFormHeader | Date | OrderFormHeader | 194
OrderFormHeaderToOrderFormLineItems | OrderFormHeader | OrderFormLineItems | 2
OrderGroupToOrderFormHeader | OrderGroup | OrderFormHeader | 2


OrderFormLineItems

このクラスは、注文フォーム内の項目を表します。OrderFormHeader オブジェクトは、注文フォームの処理に使われる情報を表し、0 個以上の OrderFormLineItems オブジェクトとリンクしています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
cy_lineitem_total | CURRENCY | なし | なし
cy_unit_price | CURRENCY | なし | 割引または調整後の項目の販売価格を格納します。
d_DateCreated | DATETIME | なし | なし
d_DateLastChanged | DATETIME | なし | なし
description | WSTR | なし | なし
g_UserIDChangedBy | WSTR | なし | なし
lineitem_id | WSTR | 利用できません | キー メンバ
OrderForm_Id | UUID | {00000000-0000-0000-0000-000000000000} | キー メンバ
ordergroup_id | UUID | {00000000-0000-0000-0000-000000000000} | キー メンバ
product_catalog | WSTR | なし | なし
product_catalog_base | WSTR | なし | なし
product_id | WSTR | なし | なし
product_identifying_property | WSTR | なし | なし
product_Variant_id | WSTR | なし | なし
product_variant_identifying_property | WSTR | なし | なし
ProductNameCat | WSTR400 | 利用できません | 商品名とバリエーション名に結合されているカタログ名を格納します。
quantity | LONG | なし | なし
shipping_address_id | WSTR | なし | なし
shipping_method_name | WSTR | なし | なし
tax_exempt_code | WSTR | なし | なし
tax_id | WSTR | なし | なし
unit_code | WSTR | なし | なし

クラス キー

OrderFormLineItemsKey は次のデータ メンバで構成されています。

lineitem_id + OrderForm_id + ordergroup_id

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
OrderFormHeaderToOrderFormLineItems | OrderFormHeader | OrderFormLineItems | 2
OrderFormLineItemsToOrderGroupAddresses | OrderGroupAddresses | OrderFormLineItems | 2
OrderFormLineItemsToProducts | Products | OrderFormLineItems | 2
OrderGroupToOrderFormLineItems | OrderGroup | OrderFormLineItems | 2


OrderGroup

このクラスは注文情報を表します。OrderGroup オブジェクトは、1 つ以上の OrderFormHeader オブジェクトと 1 つ以上の OrderGroupAddresses オブジェクトとリンクします。OrderFormHeader クラスは、請求コード、税コード、および注文の処理に必要なその他のデータなど、注文を処理するための情報を表します。OrderFormHeader オブジェクトは、購入される特定の製品の内訳を表す 1 つ以上の OrderFormLineItems オブジェクトとリンクしています。OrderGroupAddresses クラスは、注文書のメール情報と出荷情報を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
alt_currency | WSTR | なし | 注文の代替通貨の種類を格納します。
alt_lcid | LONG | なし | 注文の代替通貨の識別コードを格納します。
billing_currency | WSTR | なし | 注文で使用される通貨の種類を格納します。
d_DateCreated | DATETIME | なし | 注文が作成された日付を記録します。
d_DateLastChanged | DATETIME | なし | 注文が前回変更された日付を記録します。
default_currency | WSTR | なし | 注文で使用される既定の通貨の種類を格納します。
default_lcid | LONG | なし | 注文のローカル通貨識別コードを格納します。
g_UserIDChangedBy | UUID | なし | 注文を前回変更したユーザーの GUID (グローバル一意識別子) を格納します。
order_approval_decision_date | DATETIME | なし | 注文が承認された時刻を記録します。
order_create_date | DATETIME | なし | 注文が作成された日付を記録します。
order_number | WSTR | なし | 注文番号を格納します。
order_status_code | LONG | なし | 注文の状態を示すコードを格納します。ユーザー定義可能です。
ordergroup_id | UUID | {00000000-0000-0000-0000-000000000000} | オブジェクトの一意キーを格納します。
previous_order_id | UUID | なし | 注文の前の order_id (ある場合) を格納します。
saved_cy_oadjust_subtotal | CURRENCY | なし | 注文の調整後の現在の年の代金を格納します。
saved_cy_total_total | CURRENCY | なし | 注文の保存された現在の年の合計を格納します。
saved_order_name | WSTR | なし | 注文の保存された名前を格納します。
SiteName | WSTR | 利用できません | なし
total_lineitems | LONG | なし | 品目の総数を格納します。
user_first_name | WSTR | なし | 注文に関連付けられたユーザーの名前を格納します。
user_id | WSTR | なし | 注文に関連付けられたユーザーの UUID (universally unique identifier) を格納します。
user_last_name | WSTR | なし | 注文に関連付けられたユーザーの姓を格納します。
user_name | WSTR | なし | 注文に関連付けられたユーザーのフルネームを格納します。
user_org_name | WSTR | なし | 注文に関連付けられた組織の名前を格納します。

クラス キー

OrderGroupKey はデータ メンバ、ordergroup_id だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateOrderGroup | Date | OrderGroup | 2
OrderGroupOrderRel | OrderGroup | Order | 2
OrderGroupSite | Site | OrderGroup | 2
OrderGroupToOrderFormHeader | OrderGroup | OrderFormHeader | 2
OrderGroupToOrderFormLineItems | OrderGroup | OrderFormLineItems | 2
OrderGroupToOrderGroupAddresses | OrderGroup | OrderGroupAddresses | 2
UserToOrderGroup | RegisteredUser | OrderGroup | 2


OrderGroupAddresses

このクラスは、注文書のメール情報と出荷情報を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Address_id | WSTR | 利用できません | キー メンバ
Address_Name | WSTR | なし | なし
Address_type | LONG | なし | なし
City | WSTR | なし | なし
country_code | WSTR | なし | なし
Country_Name | WSTR | なし | なし
d_DateCreated | DATETIME | なし | なし
d_DateLastChanged | DATETIME | なし | なし
First_Name | WSTR | なし | なし
g_UserIDChangedBy | UUID | なし | なし
Last_Name | WSTR | なし | なし
ordergroup_id | UUID | {00000000-0000-0000-0000-000000000000} | キー メンバ
Postal_Code | WSTR | なし | なし
region_code | WSTR | なし | なし
region_name | WSTR | なし | なし
tel_number | WSTR | なし | なし

クラス キー

OrderGroupAddressesKey は次のデータ メンバで構成されています。

Address_id + ordergroup_id

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
OrderFormLineItemsToOrderGroupAddresses | OrderGroupAddresses | OrderFormLineItems | 2
OrderGroupToOrderGroupAddresses | OrderGroup | OrderGroupAddresses | 2


PageGroup

このクラスは、マーケティング キャンペーンのために使われる Web ページのカスタム コンテンツ項目のグループを表します。ページは、1 つ以上のマーケティング キャンペーン イベントの重要な要素であり、この情報は、PageGroup オブジェクトから 1 つ以上の CampaignEvent オブジェクトへのリンクという形で表されます。CampaignItem オブジェクトはカスタム コンテンツ項目を表し、1 つ以上の PageGroupXRef オブジェクトを介して PageGroup オブジェクトにリンクしています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
PgDescription | WSTR | なし | Web ページの説明を格納します。
PgNum | LONG | 0 | オブジェクトの一意キーを格納します。
PgTag | WSTR | なし | Web ページに関連付けられた HTML タグを格納します。
SiteName | WSTR | なし | なし

クラス キー

PageGroupKey はデータ メンバ、PgNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
PageGroupCampaignEventRel | PageGroup | CampaignEvent | 2
PageGroupPageGroupXRefRel | PageGroup | PageGroupXref | 2


PageGroupXRef

このクラスは、カスタム Web ページ コンテンツと、そのコンテンツを含む、1 つの Web ページまたは複数の Web ページの論理セットとの相互参照を表します。PageGroupXRef は、カスタム コンテンツの内容を表す CampaignItem オブジェクトと、PageGroup オブジェクトとを関連付けます。PageGroup オブジェクトは、カスタム コンテンツを含む、1 つの Web ページまたは複数の Web ページの論理セットを表します。

単一のカスタム コンテンツを複数の Web ページに含めることができます。これは、1 つの CampaignItem オブジェクトを複数の PageGroupXRef オブジェクトにリンクすることで表現します。1 つの Web ページまたは複数の Web ページの論理セットには、複数の異なるコンテンツ項目を含めることができます。これは、1 つの PageGroup オブジェクトを複数の PageGroupXRef オブジェクトにリンクすることで表現します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampItemNum | LONG | 0 | キー メンバ
PgNum | LONG | 0 | キー メンバ
SiteName | WSTR | なし | このオブジェクトに関連付けられているサイト名を格納します。

クラス キー

PageGroupXRefKey は次のデータ メンバで構成されています。

CampItemNum + PageNum

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignItemPageGroupXRefRel | CampaignItem | PageGroupXRef | 2
PageGroupPageGroupXRefRel | PageGroup | PageGroupXRef | 2


Products

このクラスは、商品カタログに記載される商品を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CatalogName | WSTR | 利用できません | この商品を含むカタログの名前を格納します。
CategoryNameCat | WSTR400 | 利用できません | この商品を含むカテゴリ名に結合されているカタログ名を格納します。
cy_list_price | CURRENCY | 利用できません | なし
ProductNameCat | WSTR400 | 利用できません | 商品名とバリエーション名に結合されているカタログ名を格納します。
ProductId | WSTR | 利用できません | なし
VariantId | WSTR | 利用できません | なし

クラス キー

ProductsKey はデータ メンバ ProductNameCat だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Category | Category | Products | 3
ProductsBasketRel | Products | Basket | 2
OrderFormLineItemsToProducts | Products | OrderFormLineItems | 2


Referrer

このクラスは、要求の参照元 URL (Uniform Resource Locator) を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
ReferrerURL | WSTR | 利用できません | オブジェクトの一意キーを格納します。

クラス キー

ReferrerKey はデータ メンバ、ReferrerURL だけで構成されています。

関連

このクラスには、関連は定義されていません。


ReferrerDomain

このクラスは、要求の参照元ドメインを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
ReferrerDomainName | WSTR | 利用できません | オブジェクトの一意キーを格納します。

クラス キー

ReferrerDomainKey はデータ メンバ、ReferrerDomainName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
ReferrerDomainOpenUserVisit | ReferrerDomain | OpenUserVisit | 2
ReferrerDomainRequest | ReferrerDomain | Request | 194
ReferrerDomainVisitInfo | ReferrerDomain | VisitInfo | 194


RegisteredUser

このクラスは、ユーザー プロファイル データを表します。既定では、Commerce Server 2000 ユーザー プロファイル データ インポート データ変換サービス (DTS) タスクが UserObject テーブルからこのクラスにデータをインポートします。このテーブルのデータは、Commerce Server 2000 Web サイトのユーザーに対応していないかもしれません。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
AccountClass | LONG | なし | ユーザー アカウントの分類コードを格納します。
AccountStatus | LONG | なし | ユーザーのアカウントの状態を格納します。 0 - 非アクティブ 1 - アクティブ
ApprovalLimit | LONG | なし | ユーザーの承認された消費の上限を格納します。
ApprovalLimitCurrency | WSTR | なし | 消費の上限額の通貨の種類を格納します。
ApprovingManagerID | LONG | なし | ユーザーの消費の上限を承認したマネージャの識別コードを格納します。
AuthType | SHORT | なし | ユーザーに必要な認証の種類を格納します。
DateCreated | FILETIME | なし | オブジェクトが作成された日時を記録します。
DateLastChanged | FILETIME | なし | オブジェクトが前回変更された日付を記録します。
DateRegistered | FILETIME | なし | ユーザーがサイトに登録された日付と時刻を記録します。
DefaultBlanketPONumber | WSTR | なし | ユーザーの既定の注文番号を格納します。
DefaultBlanketPOProfileID | LONG | なし | 既定の注文プロファイル ID を格納します。
DefaultCostCenterNumber | WSTR | なし | 既定のコスト センター識別子を格納します。
DefaultCostCenterProfileID | LONG | なし | 既定のコスト センター プロファイル識別子を格納します。
Email | WSTR | なし | ユーザーの電子メール アドレスを格納します。
EmployeeClassID | LONG | なし | ユーザー従業員 ID の分類コードを格納します。
FaxNumber | WSTR | なし | ユーザーの FAX 番号を格納します。
FirstName | WSTR | なし | ユーザーの名を格納します。
ID | UUID | {00000000-0000-0000-0000-000000000000} | なし
IDCode | WSTR | なし | ユーザー ID のコードを格納します。
IDCodeQualifier | WSTR | なし | ユーザー ID の修飾子のコードを格納します。
LastName | WSTR | なし | ユーザーの姓を格納します。
LocationID | LONG | なし | 使用されません。
Logon_Name | WSTR | なし | ユーザーのログオン名を格納します。
Name | WSTR | なし | 使用されません。
OrgID | WSTR | なし | ユーザーの組織の識別子を格納します。
ShipToID | LONG | なし | 使用されません。
ShipToMethodCode | LONG | なし | ユーザーが希望する送付方法を格納します。
SiteName | WSTR | 利用できません | なし
TelephoneNumber | WSTR | なし | ユーザーの電話番号を格納します。
UserID | WSTR | 利用できません | オブジェクトの一意キーを格納します。
UserIDChangedBy | WSTR | なし | UserID を前回変更または設定した人を記録します。
UserTitle | WSTR | なし | ユーザーのタイトルを格納します。
UserType | LONG | 登録済み (1) | ユーザーの種類を格納します。 0 - ゲスト (匿名) 1 - 登録済み

クラス キー

RegisteredUserKey はデータ メンバ、UserID だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
AddressUserRel | Address | RegisteredUser | 2
RegisteredUserBasketRel | RegisteredUser | Basket | 2
RegisteredUserCampaignEventRel | RegisteredUser | CampaignEvent | 2
RegisteredUserOpenUserVisit | RegisteredUser | OpenUserVisit | 2
RegisteredUserOrderRel | RegisteredUser | Order | 2
RegisteredUserRequestRel | RegisteredUser | Request | 2
RegisteredUserUserRel | RegisteredUser | LogUser | 2
RegisteredUserVisitInfoRel | RegisteredUser | VisitInfo | 2
SiteRegisteredUserRel | Site | RegisteredUser | 3
UserToOrderGroup | RegisteredUser | OrderGroup | 2


Request

このクラスは、訪問のコンテキストで行われた要求を表します。Request オブジェクトは、ユーザーやそのほかの訪問の詳細を示す情報に接続します。

要求は URI (Uniform Resource Identifier) の一部であることもあります。この場合は、URI オブジェクトが Request オブジェクトにリンクされます。URI に含まれるクエリ文字列は、Request オブジェクトにリンクされた URIQuery オブジェクトによって表現されます。

サイト URL (Uniform Resource Locator) を使用して要求が行われることもあります。サイト URL は、URI オブジェクトで Request オブジェクトにリンクされた SiteURL オブジェクトによって表されます。SiteURL オブジェクトは、実際の Web サイト、または仮想サーバーを表します。Request オブジェクトにサイトに対するクエリ文字列が含まれている場合、SiteURL オブジェクトは、SiteURL オブジェクトをそのクエリ文字列にリンクするための 1 つ以上の LinkSVQStringName オブジェクトまたは LinkMVQStringName オブジェクトを含んでいます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
BytesReceived | LONGREAL | なし | 要求を処理する間に受信したバイト数を格納します。
BytesSent | LONGREAL | なし | 要求を処理する間に送信したバイト数を格納します。
DirName1 | WSTR | / | なし
DirName2 | WSTR | 継承 | なし
DirName3 | WSTR | 継承 | なし
DirName4 | WSTR | 継承 | なし
DirName5 | WSTR | 継承 | なし
DirName6 | WSTR | 継承 | なし
HasCommerceEvent | SHORT | なし | なし
HttpStatus | ULONG | 0 | なし
IsRequest | SHORT | なし | Visit オブジェクトと Web 構成オブジェクト間の要求またはリンクとしてこのオブジェクトを識別します。 0 - リンク 1 - 要求
IsSecure | SHORT | なし | なし
IsSuccessCode | SHORT | なし | なし
Processed | BOOL | 0 | なし
QueryString | WSTR | クエリ文字列なし | なし
ReferrerDomainName | WSTR | 利用できません | なし
RequestIndex | SHORT | なし | なし
RequestNum | IDENTITY | 0 | オブジェクトの一意キーを格納します。
SiteName | WSTR | 利用できません | なし
TaskID | LONG | 0 | なし
Timestamp | FILETIME | なし | オブジェクトが作成された日時を記録します。
Title | WSTR | 継承 | なし
URI | WSTR | 利用できません | なし
URL | WSTR | 利用できません | なし
UserAgentBrowserCategoryID | ULONG | 1 | なし
UserAgentName | WSTR | 利用できません | なし
UserAgentOperatingSystemID | ULONG | 1 | なし
UserAgentPortalID | ULONG | 1 | なし
UserAgentSecurityID | ULONG | 1 | なし
UserAgentVersionID | ULONG | 1 | なし
UserID | WSTR | 利用できません | なし
UserKey | UUID | {00000000-0000-0000-0000-000000000000} | なし
VisitNum | IDENTITY | 0 | なし
Win32Status | ULONG | 0 | なし

クラス キー

RequestKey はデータ メンバ、RequestNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
HttpStatusRequest | HttpStatus | Request | 194
LogUserRequestRel | LogUser | Request | 2
ReferrerDomainRequest | ReferrerDomain | Request | 194
RegisteredUserRequestRel | RegisteredUser | Request | 2
SiteRequestRel | Site | Request | 2
TaskHistoryRequestRel | TaskHistory | Request | 2
UriQueryRequest | UriQuery | Request | 2
UriRequest | URI | Request | 194
UserAgentRequest | UserAgent | Request | 194
Win32StatusRequest | Win32Status | Request | 194


RequestByDateByUriByQueryString

このクラスは要約を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Date | FILETIME | 1900-1-1 0:0:0.0 | キー メンバ
QueryString | WSTR | 利用できません | キー メンバ
RequestCount | LONG | 0 | なし
SiteName | WSTR | 利用できません | キー メンバ
TaskID | LONG | 0 | キー メンバ
URI | WSTR | 利用できません | キー メンバ

クラス キー

RequestByDateByUriByQueryStringKey は次のデータ メンバで構成されています。

Date + QueryString + SiteName + TaskID + URI

関連

関連の種類の説明については、「データウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateRequestByDateByUriByQueryString | Date | RequestByDateByUriByQueryString | 2
SiteRequestByDateByUriByQueryString | Site | RequestByDateByUriByQueryString | 2
TaskHistoryRequestByDateByUriByQueryString | TaskHistory | RequestByDateByUriByQueryString | 2
uriRequestByDateByUriByQueryString | URI | RequestByDateByUriByQueryString | 2
UriQueryRequestByDateByUriByQueryString | UriQuery | RequestByDateByUriByQueryString | 2


ServerBinding

このクラスは、仮想サーバーについてのサーバーへのバインド情報を表します。1 つの VirtualServer オブジェクトが 1 つまたは複数の ServerBinding オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
HostHeaderName | WSTR | 利用できません | キー メンバ
IPAddress | WSTR | 0.0.0.0 | キー メンバ
IPPort | LONG | 0 | キー メンバ
IsSecureBinding | SHORT | なし | なし

クラス キー

ServerBindingKey は次のデータ メンバで構成されています。

HostHeaderName + IPAddress + IPPort

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
ServerBindingVirtualServerRel | ServerBinding | VirtualServer | 2


ServerGroup

このクラスは、サーバー グループを表します。1 つの ServerGroup オブジェクトが 1 つ以上の VirtualServer オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
LogFileDir | WSTR | なし | サーバー グループのログ ファイルの格納に使用される既定のディレクトリを格納します。
LogFormatID | LONG | なし | なし
ServerGroupName | WSTR | 利用できません | オブジェクトの一意キーを格納します。
Timezone | LONG | なし | サーバー グループのタイム ゾーンを示すコードを格納します。

クラス キー

ServerGroupKey はデータ メンバ、ServerGroupName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
ServerGroupVirtualServerRel | ServerGroup | VirtualServer | 2


Site

このクラスは、Commerce Server 2000 Web サイトを表します。ログに記録された Commerce Server 2000 Web サイトの利用状況情報は、Site オブジェクトに格納または接続されます。サイトの URL (Uniform Resource Locator) は、SiteURL オブジェクトと URI オブジェクトを合成したものです。

サイトが仮想サーバー グループの一部になっていることがあります。この場合、サイトは SiteURL オブジェクトを介して VirtualServer オブジェクトに接続されます。URI (Uniform Resource Identifier) クエリを使用してビジネス トランザクションが実行されることがあります。これは 1 つ以上の Request オブジェクトと URI オブジェクト間のリンクによって表されます。サイトへの訪問は、1 つ以上の Visit オブジェクトを介してリンクされます。サイトにクローラが関連付けられている場合は、Crawler オブジェクトが作成され、Site オブジェクトにリンクされます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CookieIdentifiers | WSTR | なし | なし
EndImportAction | LONG | なし | ログ インポートが終了したときに実行されるアクションのコードを格納します。
IsAdjustTimeStamps | SHORT | なし | このサイトのログ データのタイムスタンプが調整されているかどうかを示します。
IsExcludeSpiders | SHORT | なし | サイト オブジェクトがスパイダを除外するかどうかを示します。
IsSeparateUriAndQueryString | SHORT | なし | なし
IsUseCookiesForInferences | SHORT | なし | サイト オブジェクトが推論に cookie を使用するかどうかを示します。
IsUseUPMCookiesForInferences | SHORT | なし | なし
IsUseUsernameForInferences | SHORT | なし | サイトが推論にユーザー名を使用するかどうかを示します。
OverlapAction | LONG | なし | サイトのログ ファイルが重複したときに実行されるアクションのコードを格納します
OverlapMins | LONG | なし | サイトの連続するログ ファイルがインポート間で重複した時間 (分) を格納します。
SiteName | WSTR | 利用できません | サイトの一意キーを格納します。
TimeZone | LONG | なし | サイトのタイム ゾーンのコードを格納します。
VisitTimeout | LONG | なし | Site オブジェクトの訪問に適用される時間の限界 (分) を格納します。
WeekStartDay | SHORT | なし | 週の開始日を格納します。

クラス キー

SiteKey はデータ メンバ、SiteName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CatalogSite | Site | CatalogGlobal | 3
OrderGroupSite | Site | OrderGroup | 2
SiteAddressRel | Site | Address | 3
SiteBasket | Site | Basket | 2
SiteCampaignEvent | Site | CampaignEvent | 2
SiteCampaignItemEventsByDateAndUser | Site | CampaignItemEventsByDateAndUser | 2
SiteCrawlerRel | Site | Crawler | 2
SiteFirstUriByDate | Site | FirstUriByDate | 2
SiteHitsByHour | Site | HitsByHour | 2
SiteHitsInfo | Site | HitsInfo | 2
SiteLastUriByDate | Site | LastUriByDate | 2
SiteOpenUserVisitRel | Site | OpenUserVisit | 2
SiteOrder | Site | Order | 2
SiteRegisteredUserRel | Site | RegisteredUser | 3
SiteRequestByDateByUriByQueryString | Site | RequestByDateByUriByQueryString | 2
SiteRequestRel | Site | Request | 2
SiteSiteSummaryRel | Site | SiteSummary | 2
SiteSiteURIRel | Site | SiteURL | 2
SiteUniqueUserKeyByDate | Site | UniqueUserKeyByDate | 2
SiteVisitInfoRel | Site | VisitInfo | 2
SiteVisitRel | Site | Visit | 2


SiteSummary

このクラスは、サイトの訪問総数や総ヒット数などの要約情報を格納します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
EndTime | FILETIME | なし | 要約が終了した時刻を記録します。
SiteName | WSTR | 利用できません | オブジェクトの一意キーを格納します。
StartTime | FILETIME | なし | 要約が開始された時刻を記録します。
TotalBadServerCount | LONG | なし | このサイトへの無効なサーバー接続の総数を格納します。
TotalBadSiteCount | LONG | なし | このサイトへの無効なサイト接続の総数を格納します。
TotalExcludeCriteriaCount | LONG | なし | このサイトの除外条件の総数を格納します。
TotalExcludeHostCount | LONG | なし | このサイトから除外されたホストの総数を格納します。
TotalHits | LONG | なし | このサイトのヒットの総数を格納します。
TotalImportHits | LONG | なし | このサイトのインポート ヒットの総数を格納します。
TotalMatchCrawlerCount | LONG | なし | このサイトのクローラ一致の総数を格納します。
TotalVisits | LONG | なし | このサイトへの訪問の総数を格納します。

クラス キー

SiteSummaryKey はデータ メンバ、SiteName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
SiteSiteSummaryRel | Site | SiteSummary | 2


SiteURL

このクラスは、サイトと仮想サーバー間の URL (Uniform Resource Locator) による接続を表します。Web サイトと仮想サーバーの関連付けは、Site オブジェクトへのリンクと VirtualServer オブジェクトへのリンクによって表されます。

SiteURL オブジェクトは、サイトの最初の部分つまり最上位の部分 (ドメイン名など) を格納します。必要に応じて SiteURL オブジェクトに URI オブジェクトがリンクされ、サイトの URL 全体が形成されます。

サイト URL に関連付けられたクエリ文字列 (SVQStringName オブジェクトまたは MVQStringName オブジェクト) がある場合は、LinkSVQStringName オブジェクトまたは LinkMVQStringName オブジェクトを使用して、クエリ文字列が SiteURL オブジェクトにリンクされます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
ExcludeCriteria | WSTR | なし | この URL の除外条件を格納します。
ExcludeHosts | WSTR | なし | この URL によるアクセスから除外されたホストを格納します。
GoodStatusCodes | WSTR | なし | なし
IncludeCriteria | WSTR | なし | なし
IsChopTopLevelDir | SHORT | なし | 最上位レベル ディレクトリを URL から切り離すかどうかを示します。
SiteName | WSTR | 利用できません | なし
URL | WSTR | 利用できません | このサイトの最初の部分または最上位レベルを格納します。URL をこのオブジェクトの一意キーとして格納します。
URLExt | WSTR | なし | URL の拡張データを格納します。
VServerName | WSTR | 利用できません | なし

クラス キー

SiteURLKey はデータ メンバ、URL だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
SiteSiteURIRel | Site | SiteURL | 2
SiteURLLinkMVQStringNameRel | SiteURL | LinkMVQStringName | 2
SiteURLLinkSVQStringNameRel | SiteURL | LinkSVQStringName | 2
SiteURLURIRel | SiteURL | URI | 2
VirtualServerSiteURLRel | VirtualServer | SiteURL | 3


SVQStringName

このクラスは、URL (Uniform Resource Locator) に関連付けられたカスタム単一値クエリ文字列を表します。SVQStringName オブジェクトは LinkSVQStringName オブジェクトによって SiteURL オブジェクトに関連付けられます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
QStringName | WSTR | DEFAULT | オブジェクトの一意キーを格納します。

クラス キー

SVQStringNameKey はデータ メンバ、QStringName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
SVQStringNameLinkSVQStringNameRel | SVQStringName | LinkSVQStringName | 2


Target

このクラスは、特定の種類のユーザーなど、マーケティング コンテンツおよびカスタム Web コンテンツの対象を定義します。TargetGroup オブジェクトは、1 つ以上の Target オブジェクトをリンクし、対象グループを編成します。対象グループのためのカスタム コンテンツは、TargetGroupXRef オブジェクトを介して TargetGroup オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
SiteName | WSTR | なし | オブジェクトに関連付けられているサイト名を格納します。
TargetAction | LONG | なし | ターゲットのアクション コードを格納します。
TargetExprID | LONG | なし | ターゲットの式 ID を格納します。
TargetGroupNum | LONG | 0 | なし
TargetNum | LONG | 0 | オブジェクトの一意キーを格納します。

クラス キー

TargetKey はデータ メンバ、TargetNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
TargetGroupTarget | TargetGroup | Target | 2


TargetGroup

このクラスは、マーケティング コンテンツおよび Web コンテンツの対象となるグループを定義します。TargetGroup オブジェクトにリンクされた 1 つ以上の Target オブジェクトにより、対象となるグループが編成されます。対象グループは、TargetGroupXRef オブジェクトを介して、そのグループ用のコンテンツへリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
SiteName | WSTR | なし | オブジェクトに関連付けられたサイトを格納します。
TargetGroupName | WSTR | なし | ターゲットのグループの名前を格納します。
TargetGroupNum | LONG | 0 | オブジェクトの一意キーを格納します。

クラス キー

TargetGroupKey はデータ メンバ、TargetGroupNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
TargetGroupTarget | TargetGroup | Target | 2
TargetGroupTargetGroupXRefRel | TargetGroup | TargetGroupXRef | 2


TargetGroupXRef

このクラスは、対象グループと対象グループ用カスタム コンテンツとの相互参照を表します。Target オブジェクトは、TargetGroup オブジェクトへリンクすることにより、対象グループを構成します。CampaignItem によって表されるカスタム コンテンツは、TargetGroupXRef オブジェクトを介して TargetGroup オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CampItemNum | LONG | 0 | キー メンバ
SiteName | WSTR | なし | このオブジェクトに関連付けられているサイト名を格納します。
TargetGroupNum | LONG | 0 | キー メンバ

クラス キー

TargetGroupXrefKey は次のデータ メンバで構成されています。

CampItemNum + TargetGroupNum

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
CampaignItemTargetGroupXRefRel | CampaignItem | TargetGroupXRef | 2
TargetGroupTargetGroupXRefRel | TargetGroup | TargetGroupXRef | 2


TaskHistory

このクラスは、DTS (データ変換サービス) タスクの実行と実行結果を監視します。データ ウェアハウス内で実行された、すべてのインポートおよび削除の履歴を保持しています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CommerceSiteName | WSTR | なし | なし
Description | WSTR | なし | なし
DetailLevel | WSTR | なし | なし
EndTime | FILETIME | なし | なし
OlapExport | SHORT | なし | なし
OperationDetailID | LONG | なし | なし
OperationID | LONG | なし | なし
SourceInfo | WSTR | なし | なし
StartTime | FILETIME | なし | なし
Status | LONG | なし | なし
TaskID | LONG | 0 | オブジェクトの一意キーを格納します。

クラス キー

TaskHistoryKey はデータ メンバ、TaskIDだけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
TaskHistoryBasket | TaskHistory | Basket | 2
TaskHistoryCampaignEvent | TaskHistory | CampaignEvent | 2
TaskHistoryCampaignItemEventsByDateAndUser | TaskHistory | CampaignItemEventsByDateAndUser | 2
TaskHistoryFirstUriByDate | TaskHistory | FirstUriByDate | 2
TaskHistoryHitsByHour | TaskHistory | HitsByHour | 2
TaskHistoryHitsInfo | TaskHistory | HitsInfo | 2
TaskHistoryLastUriByDate | TaskHistory | LastUriByDate | 2
TaskHistoryOpenUserVisitRel | TaskHistory | OpenUserVisit | 2
TaskHistoryOrder | TaskHistory | Order | 2
TaskHistoryRequestByDateByUriByQueryString | TaskHistory | RequestByDateByUriByQueryString | 2
TaskHistoryRequestRel | TaskHistory | Request | 2
TaskHistoryUniqueUserKeyByDate | TaskHistory | UniqueUserKeyByDate | 2
TaskHistoryVisitInfoRel | TaskHistory | VisitInfo | 2
TaskHistoryVisitRel | TaskHistory | Visit | 2


UniqueUserKeyByDate

このクラスは、日付でグループ化されたユーザー情報の要約を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CountRequests | ULONG | 0 | なし
Date | FILETIME | 1900-1-1 0:0:0.0 | キー メンバ
SiteName | WSTR | 利用できません | キー メンバ
TaskID | LONG | 0 | キー メンバ
userKey | UUID | {00000000-0000-0000-0000-000000000000} | キー メンバ
VisitCount | LONG | 0 | なし

クラス キー

UniqueUserKeyByDateKey は次のデータ メンバで構成されています。

Date + SiteName + TaskID + userKey

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateUniqueUserKeyByDate | Date | UniqueUserKeyByDate | 2
LogUserUniqueUserKeyByDate | LogUser | UniqueUserKeyByDate | 2
SiteUniqueUserKeyByDate | Site | UniqueUserKeyByDate | 2
TaskHistoryUniqueUserKeyByDate | TaskHistory | UniqueUserKeyByDate | 2


URI

このクラスは、URL (Uniform Resource Locator) の識別のほか、Commerce Server 2000 Web サイトでのクエリとトランザクションの実行にも使用される URI (Uniform Resource Identifier) を表します。URI オブジェクトは、SiteURL オブジェクトを介して Commerce Server 2000 Web サイトと関連付けられます。

サイトは、サイトの最初の部分または最上位レベル (ドメイン名など) を格納する SiteURL オブジェクトと、サイトの URL の残りの部分を格納するリンクされた URI オブジェクトによって識別されます。URI オブジェクトが階層的なディレクトリ構造を表している場合は、適切な LevelNDir オブジェクトにリンクされます。

ビジネス トランザクションは URI クエリを介して発生することがあります。そのトランザクションは、1 つ以上の Request オブジェクトと URI オブジェクトとのリンクにより表されます。

URI オブジェクトはページだけを表し、グラフィックス、バナーなどは表しません。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DirName1 | WSTR | / | なし
DirName2 | WSTR | 継承 | なし
DirName3 | WSTR | 継承 | なし
DirName4 | WSTR | 継承 | なし
DirName5 | WSTR | 継承 | なし
DirName6 | WSTR | 継承 | なし
Title | WSTR | なし | URI のタイトルを格納します。
URI | WSTR | 利用できません | オブジェクトの一意キーを格納します。
URL | WSTR | 利用できません | なし

クラス キー

URIKey はデータ メンバ URI だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Level1DirURIRel | Level1Dir | URI | 2
Level2DirURIRel | Level2Dir | URI | 2
Level3DirURIRel | Level3Dir | URI | 2
Level4DirURIRel | Level4Dir | URI | 2
Level5DirURIRel | Level5Dir | URI | 2
Level6DirURIRel | Level6Dir | URI | 2
SiteURLURIRel | SiteURL | URI | 2
UriBasket | URI | Basket | 2
UriCampaignEvent | URI | CampaignEvent | 2
uriFirstUriByDate | URI | FirstUriByDate | 2
uriHitsInfo | URI | HitsInfo | 2
uriLastUriByDate | URI | LastUriByDate | 2
UriOrder | URI | Order | 2
UriRequest | URI | Request | 194
uriRequestByDateByUriByQueryString | URI | RequestByDateByUriByQueryString | 2


URIQuery

このクラスは、1 つ以上のトランザクション要求に関連付けられた URI (Uniform Resource Identifier) クエリを表します。1 つの URIQuery オブジェクトが 1 つ以上の Request オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
QueryString | WSTR | クエリ文字列なし | オブジェクトの一意キーを格納します。

クラス キー

URIQueryKey はデータ メンバ、QueryStringだけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
URIQueryRequest | URIQuery | Request | 2
URIQueryRequestByDateByUriByQueryString | URIQuery | RequestByDateByUriByQueryString | 2


UserAgent

このクラスは、Web サイトを訪問したユーザーが使っている、オペレーティング システムや Web ブラウザなどのソフトウェア インフラストラクチャを表します。1 つの UserAgent オブジェクトが 1 つ以上の Request オブジェクトと 1 つ以上の VisitInfo オブジェクトにリンクします。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Processed | BOOL | 0 | なし
UserAgentBrowserCategoryID | ULONG | 1 | なし
UserAgentName | WSTR | 利用できません | オブジェクトの一意キーを格納します。
UserAgentOperatingSystemID | ULONG | 1 | なし
UserAgentPortalID | ULONG | 1 | なし
UserAgentSecurityID | ULONG | 1 | なし
UserAgentVersionID | ULONG | 1 | なし

クラス キー

UserAgentKey はデータ メンバ、UserAgentName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
UserAgentOpenUserVisit | UserAgent | OpenUserVisit | 2
UserAgentRequest | UserAgent | Request | 194
UserAgentVisitInfo | UserAgent | VisitInfo | 194


VirtualServer

このクラスは、別個の Web サイトを論理的にバインドした、仮想サーバーを表します。

仮想サーバーに関連付けられた Web サイトは、一連の SiteURL オブジェクトを介して表されます。サーバーへのバインドは、1 つ以上の ServerBinding オブジェクトと関連付けることによって発生します。

VirtualServer オブジェクトは、より大きなサーバー グループの一部となることができます。この場合、VirtualServer オブジェクトは ServerGroup オブジェクトを介してリンクされます。

URI (Uniform Resource Identifier) を使用して仮想サーバーに対するビジネス トランザクションが実行された場合は、適切な SiteURL オブジェクトと URI オブジェクトによって Request オブジェクトがリンクされます。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Description | WSTR | なし | 仮想サーバーの説明を格納します。
DirIndexes | WSTR | なし | 仮想サーバーのディレクトリ インデックスを格納します。
HostHeaderName | WSTR | 利用できません | なし
IPAddress | WSTR | 0.0.0.0 | なし
IPPort | LONG | 0 | なし
LocalDomain | WSTR | なし | 仮想サーバーのローカル ドメインの名前を格納します。
ServerGroupName | WSTR | 利用できません | なし
VServerName | WSTR | 利用できません | オブジェクトの一意キーを格納します。
VServerType | LONG | なし | 仮想サーバーの種類のコードを格納します。

クラス キー

VirtualServerKey はデータ メンバ、VServerName だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
ServerBindingVirtualServerRel | ServerBinding | VirtualServer | 2
ServerGroupVirtualServerRel | ServerGroup | VirtualServer | 2
VirtualServerSiteURLRel | VirtualServer | SiteURL | 3


Visit

このクラスは、Commerce Server 2000 Web サイトのユーザーの利用状況を示す情報を記録します。Visit オブジェクトは、LogUser オブジェクトおよび Site オブジェクトと関連付けられます。LogUser オブジェクトはユーザーに関する情報を含んでいます。Visit オブジェクトは、訪問日時など、訪問のコンテキストの内容を表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
DateCreated | FILETIME | なし | なし
HasCookie | SHORT | なし | なし
IPAddress | WSTR | 0.0.0.0 | なし
SiteName | WSTR | 利用できません | なし
TaskID | LONG | 0 | なし
Timestamp | FILETIME | なし | 訪問が開始された時刻を記録します。
UserDomainName | WSTR | なし | なし
UserID | WSTR | 利用できません | なし
UserKey | UUID | {00000000-0000-0000-0000-000000000000} | なし
UserName | WSTR | 利用できません | なし
VisitNum | IDENTITY | 0 | オブジェクトの一意キーを格納します。

クラス キー

VisitKey はデータ メンバ、VisitNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
SiteVisitRel | Site | Visit | 2
TaskHistoryVisitRel | TaskHistory | Visit | 2
UserVisit | LogUser | Visit | 194


VisitInfo

このクラスは、Web サイトへの訪問 (終了したもの) に関する情報を表しています。ログをインポートする時点で訪問が終了していない場合は、このオブジェクトではなく OpenUserVisit オブジェクトがインスタンス化されます。

VisitInfo クラスは、Commerce Server 2000 Web サイトにおけるユーザーの利用状況を記録するための基本構造です。ここでは、Commerce Server 2000 Web サイトとデータをやり取りする人のことをユーザーと呼びます。VisitInfo クラスは、ユーザーの利用状況に関する情報を記録します。

VisitInfo オブジェクトは、LogUser オブジェクトおよび UserAgent オブジェクトと関連付けられます。LogUser はユーザーに関する情報を含んでいます。UserAgent オブジェクトは、ユーザーが使っているソフトウェアとコンピュータに関する情報を含んでいます。

VisitInfo オブジェクトは、訪問日時などの、訪問のコンテキストの内容を表します。VisitInfo オブジェクトは、日付情報が含まれる Date 構造体とリンクしています。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
CountOfRequest | ULONG | なし | なし
Duration | ULONG | なし | なし
FirstHTimeStamp | FILETIME | なし | なし
FirstRequestNum | IDENTITY | なし | なし
FirstTimeStamp | FILETIME | なし | 訪問が開始された時刻を格納します。
FirstUri | WSTR | 利用できません | なし
LastRequestNum | IDENTITY | なし | なし
LastUri | WSTR | 利用できません | なし
Processed | BOOL | 0 | なし
ReferrerDomainName | WSTR | 利用できません | なし
SecondRequestNum | IDENTITY | なし | なし
SecondUri | WSTR | 利用できません | なし
SiteName | WSTR | 利用できません | なし
TaskID | LONG | 0 | なし
UserAgentBrowserCategoryID | ULONG | 1 | なし
UserAgentName | WSTR | 利用できません | なし
UserAgentOperatingSystemID | ULONG | 1 | なし
UserAgentPortalID | ULONG | 1 | なし
UserAgentSecurityID | ULONG | 1 | なし
UserAgentVersionID | ULONG | 1 | なし
UserID | WSTR | 利用できません | なし
UserKey | UUID | {00000000-0000-0000-0000-000000000000} | なし
VisitNum | IDENTITY | 0 | オブジェクトの一意キーを格納します。

クラス キー

VisitInfoKey はデータ メンバ、VisitNum だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
DateVisitInfoFirstTimeStamp | Date | VisitInfo | 2
ReferrerDomainVisitInfo | ReferrerDomain | VisitInfo | 194
RegisteredUserVisitInfoRel | RegisteredUser | VisitInfo | 2
SiteVisitInfoRel | Site | VisitInfo | 2
TaskHistoryVisitInfoRel | TaskHistory | VisitInfo | 2
UserAgentVisitInfo | UserAgent | VisitInfo | 194
UserVisitInfo | LogUser | VisitInfo | 2


Win32Status

このクラスは、Web サイトのログ ファイルに格納される Win32 状態コードを表します。

データ メンバ

データ メンバ名 | データ型 | 既定値 | 説明
Win32Status | ULONG | 0 | オブジェクトの一意キーを格納します。

クラス キー

Win32StatusKey はデータ メンバ、Win32Status だけで構成されています。

関連

関連の種類の説明については、「データ ウェアハウスのクラス」を参照してください。

関連名 | 親 | 子 | 種類
Win32StatusHitsInfo | Win32Status | HitsInfo | 2
Win32StatusRequest | Win32Status | Request | 194


データ ウェアハウスのメタモデル

Commerce Server 2000 データ ウェアハウスのメタモデルは、データ ウェアハウス論理スキーマの作成に使われる定義のセットです。これらの定義、つまりメタデータは、クラス、データ メンバ、関連、およびキーの作成方法を説明するものです。このほか、メタデータは論理スキーマに使われるデータ ソースも説明します。メタデータの主な目的は、物理スキーマから論理スキーマを分離することです。基になる物理ストアについての詳細な知識がなくても、論理スキーマにアクセスしたり拡張できます。OLE DB Provider for Commerce Server は、メタデータ属性に指定された値を使用して、ユーザー データを格納する物理テーブルと列を作成します。これによって一貫性が保たれ、データ ウェアハウスの使用が簡単になります。新しいオブジェクト クラスの作成については、「データ ウェアハウスを拡張する」を参照してください。

注

  • ActiveX Data Objects (ADO) を使ってメタデータ テーブルにアクセスすると、返された Record オブジェクト内に、テーブルにリストされているフィールドのほかにもフィールドが表示されます。ADO はこれらのフィールドに含まれるオブジェクトを認識しないので、実行時エラーが生成されます。これらのオブジェクトにアクセスするには、OLE DB Provider for Commerce Server を使います。次に、これらの列 (ADO Field オブジェクト) の一部を示します。

    __COMMIT、__NEXT、ALLMEMBERS、ATTRIBUTES、CHILDCLSDEF、CHILDREFMEMDEF、CLASSGUID、CLSDEF、DEFAULTVIEW、KEYDEFINITIONS、KEYMEMBERS、MEMBERDEF、MEMDEFS、MEMNONREFDEFS、PARENTCLASSES、PARENTCLSDEF、PARENTKEYDEF、PERSISTENTKEYMEMS、REFERENCEMEMBERS、REFMEMBERS、RELMEMDEFS、TOPLEVELMEMBERS

ここでは、次のトピックについて説明します。

  • 規則 : メタデータ テーブルで使われる値について説明します。

  • クラス定義メタデータ : クラス定義に使われる属性について説明します。

  • メンバ定義メタデータ : クラス メンバ定義に使われる属性について説明します。

  • キー定義メタデータ : クラス キー定義に使われる属性について説明します。

  • キー メンバ定義メタデータ : キー メンバ定義に使われる属性について説明します。

  • 関連定義メタデータ : クラス関連定義に使われる属性について説明します。

  • 関連メンバ定義メタデータ : クラス メンバ関連定義に使われる属性について説明します。

  • ソース定義メタデータ : データ ウェアハウスのデータ ソースの属性について説明します。


規則

クラス名/メンバ名/キー名/関連名

  • 有効な文字は、A ～ Z、0 ～ 9、および '_' です。

  • 二重アンダースコア文字 '__' は使用できません。

"必要条件" の列

  • 引用符で囲まれた値は、ユーザーが指定する必要があります。

  • 引用符で囲まれていない値は既定値です。既定値はユーザーが変更できます。

  • "空白のまま" は、属性を割り当ててはならないことを示します。

  • "省略可能" は、ユーザーが割り当てる値ですが、空白にすることもできます。

  • "必須" は、ユーザーが必ず割り当てる必要がある値です。


クラス定義メタデータ

クラス メタデータは、クラスを定義するために使われる属性を含みます。OLE DB Provider for Commerce Server は、属性値に基づいてクラス情報を格納するために必要なテーブルとリンクを作成します。クラスは、論理的に関連するデータのセットを定義します。クラスは通常、物理オブジェクト (ユーザー、商品、サーバー、組織) または概念上のエンティティ (訪問、Web のヒット、イベント) をモデル化します。クラスはクラス関連によって組み合わされて、論理構造を構成します。

これらのクラスをプライマリ ビジネス カテゴリに論理的にグループ化する概要については、「プライマリ ビジネス カテゴリ」を参照してください。

新しいクラスの作成については、「新しいクラスを作成する」を参照してください。

次の表は、クラス定義に使われる属性を示しています。これらの属性のセットは、定義するクラスごとに ClsDef テーブルに格納されます。

属性 | データ型 | 条件 | 必要条件 | 説明
ClassDefID | int | Not Null | 空白のまま | クラスの一意識別子を格納します。
BaseClassName | nvarchar (128) | Null | 省略可能 | 基本クラスの名前を格納します。集計に使われます。
CatalogID | int | Null | 空白のまま | スキーマ カタログの識別子を格納します。
CatalogName | nvarchar (128) | Null | 空白のまま | スキーマ カタログの名前 "DWSchema" を格納します。
ClassDefName | nvarchar (128) | Null | 必須 | クラスの名前を格納します。
ClassGUID | varbinary (16) | Null | 空白のまま | クラスの GUID を格納します。
ClassType | smallint | Null | 省略可能 | クラスの種類を格納します。有効な種類は次のとおりです。 0 = cdtNone 1 = cdtDimension 2 = cdtFact 3 = cdtAggregation
CreatedTime | Date/Time | Null | 空白のまま | クラスが作成された時刻を格納します。
DefaultParentURL | nvarchar (128) | Null | 空白のまま | クラスの既定の親 URL を格納します。
DefaultTableName | nvarchar (128) | Null | 空白のまま | クラスに関連付けられた既定のテーブル名を格納します。この属性が空白のままか、GenerateTableDef が True の場合は、このクラスの名前が使用されます。
Description | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のあるクラスの説明を格納します。
DisplayName | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のある名前を格納します。
GenerateIdentity | tinyint | Null | 空白のまま | True (1) は、クラスの ID が自動的に生成されることを示します。
GenerateKeyDef | tinyint | Null | 1 | True (1) は、クラス キー定義が自動的に生成されることを示します。
GeneratePartitionDef | tinyint | Null | 空白のまま | True (1) は、パーティション定義が自動的に生成されることを示します。
GenerateTableDef | tinyint | Null | 空白のまま | True (1) は、テーブル定義が自動的に生成されることを示します。
IdSize | int | Null | 空白のまま | 識別子データのサイズをバイト単位で格納します。
InstExclusionExpr | nvarchar (128) | Null | 省略可能 | 集計のフィルタとして使われます。
IsAbstract | tinyint | Null | 0 | クラスが抽象クラスかどうかを示します。
IsActive | tinyint | Null | 1 | クラスがアクティブかどうかを示します。アクティブな場合は、インスタンスを追加できます。
IsPersistent | tinyint | Null | 1 | 基になるデータ ストアに、このクラスを保存するかどうかを示します。
IsReadOnly | tinyint | Null | 0 | クラスが読み取り専用かどうかを示します。
IsTransactioned | tinyint | Null | プロファイル システムでは省略可能 分析では空白のまま | プロファイル システムで使われます。
IsUIDeletedEnabled | tinyint | Null |  | 予約されています。
MajorVersion | int | Null | 省略可能 | クラスのメジャー バージョン番号を格納します。
MinorVersion | int | Null | 省略可能 | クラスのマイナ バージョン番号を格納します。
ModifiedTime | Date/Time | Null | 空白のまま | クラスが前回変更された時刻を格納します。
PartCriteriaExpr | nvarchar (128) | Null | 空白のまま | 使用されません。
PartitionID | int | Null | 空白のまま | 予約されています。
PartitionName | nvarchar (128) | Null | 空白のまま | クラスの既定のパーティションの名前を格納します。
PartViewName | nvarchar (128) | Null | 空白のまま | 予約されています。
SourceDefName | nvarchar (128) | Null | 必須 | データ ソースの名前を格納します。
SourceID | int | Null | 空白のまま | データ ソースの識別子を格納します。
Status | int | Null | 空白のまま | 予約されています。


メンバ定義メタデータ

メンバ メタデータは、既存のクラスにデータ メンバを追加するために使われる属性を含みます。これらのデータ メンバの属性には、データ メンバの名前やデータ メンバのデータ型などがあります。プロバイダは、基になるストア内のテーブルに、これらのメタデータ属性値を使って構成した列を作成します。

クラスのメンバを作成するには、クラス定義が既に作成されている必要があります。ClassDefName 属性は、このクラスを含んでいるクラスへの実際のリンクを作成するので、このクラスを含んでいるクラスの ClassDefName 属性とクラス名が一致している必要があります。

既存のクラスの新しいデータ メンバの作成については、「新しいクラス データ メンバを作成する」を参照してください。

次の表は、データ メンバ定義に使われる属性を示しています。これらの属性のセットは、定義するクラス メンバごとに MemDef テーブルに格納されます。

属性 | データ型 | 条件 | 必要条件 | 説明
MemberDefID | int | Not Null | 空白のまま | データ メンバの一意識別子を格納します。
CatalogID | int | Null | 空白のまま | スキーマ カタログの識別子を格納します。
CatalogName | nvarchar (128) | Null | 空白のまま | スキーマ カタログの名前 "DWSchema" を格納します。
ClassDefID | int | Null | 空白のまま | この属性が含まれているクラスの識別子を格納します。
ClassDefName | nvarchar (128) | Null | 必須 | この属性が含まれているクラスの名前を格納します。
ColumnID | int | Null | 空白のまま | データ メンバの列の識別子を格納します。
ColumnName | nvarchar (128) | Null | GenerateColumnDef が False の場合は必須 それ以外の場合は、空白のまま | データ メンバを格納する列の名前を格納します。
CreatedTime | Date/Time | Null | 空白のまま | データ メンバ定義が作成された時刻を記録します。
DefaultValueAsStr | nvarchar (128) | Null | 省略可能 | データ メンバの既定値を文字列として格納します。この属性が Null 以外の場合は、IsDfltNull 属性を False に設定する必要があります。
Description | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のある説明を格納します。
DisplayName | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のある名前を格納します。
ExpressionStr | nvarchar (128) | Null | 省略可能 | 集計クラスによって使われます。データ メンバを使う式文字列を格納します。有効な基本クラス メンバまたは集計関数を含むことができます。
GenerateColumnDef | tinyint | Null | 1 | True (1) は、基になるデータ ストア内のテーブル列定義が自動的に生成されることを示します。
IdxFileGroupPolicy | smallint | Null | 空白のまま | 使用されません。
IsActive | tinyint | Null | 1 | データ メンバがアクティブかどうかを示します。アクティブな場合は、インスタンスを追加できます。
IsCached | tinyint | Null | 0 | より速くアクセスできるように、データ メンバがキャッシュされるかどうかを示します。プロファイル システムのみで使われます。
IsDateDeleteMember | tinyint | Null | 省略可能 | 複数の日付メンバがあるクラスの場合に、日付によってファクト データを削除するときにどの日付メンバを使うかを決定するために使われます。
IsDfltNull | tinyint | Null | 0 | データ メンバの既定値が Null かどうかを示します。既定値が指定されている場合は、この属性は False (0) である必要があります。
IsDimension | tinyint | Null | 省略可能 | データ メンバがディメンションを表すかどうかを示します。
IsEncrypted | tinyint | Null | 省略可能 | データ メンバが暗号化されているかどうかを示します。プロファイル システムのみで使われます。
IsExported | tinyint | Null | 0 | クラスの子クラスがデータ メンバを継承するかどうかを示します。プロファイル システムのみで使われます。
IsHashingKey | tinyint | Null | 省略可能 | データ メンバがハッシュ キーかどうかを示します。プロファイル システムのみで使われます。
IsHidden | tinyint | Null | 省略可能 | データ メンバが非表示かどうかを示します。
IsIdentityMember | tinyint | Null | 0 | データ メンバが ID データ メンバかどうかを示します。
IsJoinKey | tinyint | Null | 空白のまま | データ メンバがクラス間の結合キーとして使われるかどうかを示します。
IsMeasure | tinyint | Null | 省略可能 | データ メンバがメジャーを表すかどうかを示します。
IsMultiValued | tinyint | Null | 空白のまま | データ メンバが複数の値を持つかどうかを示します。
IsPersistent | tinyint | Null | 1 | 基になるデータ ストアに、データ メンバを保存するかどうかを示します。
IsPrimaryKey | tinyint | Null | 省略可能 | データ メンバがクラスのプライマリ キーの一部であるかどうかを示します。
IsPrivate | tinyint | Null | 省略可能 | データ メンバが非公開かどうかを示します。
IsRDNAttribute | tinyint | Null | 省略可能 | Active Directory データ ソースを参照する場合、True は、この属性がクラスの RDN 属性であることを示します。
IsRequired | tinyint | Null | 0 | データ メンバに値が必要かどうかを示します。
IsSearchable | tinyint | Null | 0 | データ メンバが検索可能かどうかを示します。
IsTextSearchable | tinyint | Null | 0 | データ メンバがテキスト検索エンジンで検索可能かどうかを示します。
IsUniqueKey | tinyint | Null | 空白のまま | データ メンバがクラスの一意キーの一部であるかどうかを示します。
LinkTableName | nvarchar (128) | Null | 空白のまま | 複数の値を持つデータ メンバのリンク テーブルの名前を格納します。
MajorVersion | int | Null | 省略可能 | データ メンバ定義のメジャー バージョン番号を格納します。
MemberDefName | nvarchar (128) | Null | 必須 | データ メンバの名前を格納します。
MinorVersion | int | Null | 省略可能 | データ メンバのマイナ バージョン番号を格納します。
ModifiedTime | Date/Time | Null | 空白のまま | データ メンバ定義が前回変更された時刻を記録します。
OrdinalPosInClass | int | Null | 空白のまま | クラス内でのデータ メンバの順番を示します。プロファイル システムのみで使われます。
ParentGroupName | nvarchar (128) | Null | 空白のまま | 親グループの名前を格納します。プロファイル システムのみで使われます。
RelationName | nvarchar (128) | Null | 空白のまま | メンバ関連オブジェクトの関連の名前を格納します。
Status | int | Null | 空白のまま | 予約されています。
TypeID | int | Null | 空白のまま | データ メンバのデータ型の識別コードを格納します。
TypeName | nvarchar (128) | Null | 必須 | データ メンバのデータ型の名前を格納します。このテーブルの直後にあるテーブルを参照してください。
UseHashInSearch | tinyint | Null | 空白のまま | このデータ メンバを検索するときにハッシュ インデックスを使うかどうかを示します。プロファイル システムのみで使われます。
ValColumnName | nvarchar (128) | Null | 省略可能 | データ メンバの値列の名前を格納します。複数の値を持つメンバを作成するときに使われます。
ValTableName | nvarchar (128) | Null | 省略可能 | 値テーブルの名前を格納します。複数の値を持つメンバを作成するときに使われます。

次の表は、メンバ メタデータの TypeName 属性に使われる有効なデータ型を示しています。バイナリ データはサポートされません。

TypeName | 説明
BOOL | ブール値 (0 または 1)
CURRENCY | 64 ビット通貨
DATE | 標準日付
DATETIME | SQL 日付/時刻
FILETIME | 標準のファイル日付/時刻スタンプ
IDENTITY | 48 ビット数値識別子
IDENTITY6 | 48 ビット数値識別子
INT64 | 64 ビット整数
LONG | 32 ビット整数
LONGREAL | 64 ビット浮動小数点数
None | 空の型
Null | 値なし
REAL | 32 ビット浮動小数点数
SHORT | 16 ビット整数
TIME | 標準時刻
UINT64 | 64 ビット符号なし整数
ULONG | 32 ビット符号なし整数
UUID | GUID に使われるパック 10 進数
WORD | 16 ビット符号なし整数
WSTR | 長さ 255 文字の Unicode 文字列
WSTR8、WSTR12、WSTR16、WSTR24、WSTR32、WSTR48、WSTR64、WSTR80、WSTR96、WSTR112、WSTR128、WSTR144、WSTR160、WSTR255、WSTR400、WSTR512 | 指定された長さの Unicode 文字列


キー定義メタデータ

キー メタデータは、クラスのキーを定義するための属性を含みます。キーはクラスの一意識別子を定義します。手動で単一キーを指定したり、複合キーを作成するには、キー メタデータを使います。

キーを作成するには、クラス定義が既に作成されている必要があります。ClassDefName 属性は、このクラスを含んでいるクラスへの実際のリンクを作成するので、ClassDefName 属性のクラス名が必要なクラスの ClassDefName 属性と一致している必要があります。

キー メタデータとキー メンバ メタデータを使う代わりに、メンバ メタデータの IsPrimaryKey 属性を使って単一キーを設定することもできます。複数値キーは、キー メタデータとキー メンバ メタデータを使って定義する必要があります。

新しいクラス キーの作成については、「新しいクラス キーを作成する」を参照してください。

次の表は、クラス キー定義に使われる属性を示しています。これらの属性のセットは、定義するクラス キーごとに ClsKeyDef テーブルに格納されます。

属性 | データ型 | 条件 | 必要条件 | 説明
ClassKeyDefID | int | Not Null | 空白のまま | キーの一意識別子を格納します。
CatalogID | int | Null | 空白のまま | Commerce Server 2000 スキーマ カタログの識別子を格納します。
CatalogName | nvarchar (128) | Null | 空白のまま | スキーマ カタログの名前を格納します。Commerce Server の今回のリリースでは、カタログ名は "DWSchema" です。
ClassDefName | nvarchar (128) | Null | 必須 | キーに関連付けられているクラスの名前を格納します。
ClassID | int | Null | 空白のまま | キーに関連付けられているクラスの識別子を格納します。
ClassKeyDefName | nvarchar (128) | Null | 必須 | クラス キーの名前を格納します。
CreatedTime | Date/Time | Null | 空白のまま | キーが作成された時刻を記録します。
Description | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のあるキーの説明を格納します。
DisplayName | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のあるキーの名前を格納します。
IsPrimaryKey | tinyint | Null | 省略可能 | このキーがプライマリ キーかどうかを示します。既定値は False (0) です。
MajorVersion | int | Null | 省略可能 | キーのメジャー バージョン番号を格納します。
MinorVersion | int | Null | 省略可能 | キーのマイナ バージョン番号を格納します。
ModifiedTime | Date/Time | Null | 空白のまま | キーが前回変更された時刻を記録します。
Status | int | Null | 空白のまま | 予約されています。


キー メンバ定義メタデータ

キー メンバ メタデータは、キーのメンバを定義するための属性を含みます。メタデータは、複数値キーのデータ メンバの順番を示します。キー定義とメンバ定義が既に完了している必要があります。クラスのメンバ定義で IsPrimaryKey 属性が True に設定されている場合は、キー メンバ定義は必要ありません。

次のパラグラフは、データ ウェアハウスと分析よりもプロファイル システムに密接に関係しています。

キーの一部としてデータ メンバを設定するには、次の 3 つの属性を設定する必要があります。キー メンバ メタデータの MemDefName 属性は、メンバ メタデータで指定した MemberDefName 値に設定する必要があります。キー メンバ メタデータの KeyDefName 属性は、キー メタデータで指定した ClassKeyDefName 値に設定する必要があります。また、OrdinalPosInKey 属性は、キー内のこのデータ メンバの位置に設定する必要があります。たとえば、キーが 3 つのデータ メンバから構成されている場合、OrdinalPosInKey 属性の設定は、最初のメンバが 0、2 番目のメンバが 1、3 番目のメンバが 2 になります。データ メンバの順番は、一意キーの構成に重要です。

クラス キーの新しいキー メンバの作成については、「新しいクラス キー メンバを作成する」を参照してください。

次の表は、キー メンバ定義に使われる属性を示しています。これらの属性のセットは、定義するキー メンバごとに KeyMem テーブルに格納されます。

属性 | データ型 | 条件 | 必要条件 | 説明
KeyMemID | int | Not Null | 空白のまま | キー メンバの一意識別子を格納します。
CatalogID | int | Null | 空白のまま | スキーマ カタログの識別子を格納します。
CatalogName | nvarchar (128) | Null | 空白のまま | スキーマ カタログの名前 "DWSchema" を格納します。
CreatedTime | Date/Time | Null | 空白のまま | キー メンバが作成された時刻を記録します。
Description | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のあるキー メンバの説明を格納します。
DisplayName | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のあるキー メンバの名前を格納します。
KeyDefID | int | Null | 空白のまま | このキー メンバを含むキーの識別子を格納します。
KeyDefName | nvarchar (128) | Null | 必須 | クラス キーの名前を格納します。
MajorVersion | int | Null | 省略可能 | キー メンバのメジャー バージョン番号を格納します。
MemDefID | int | Null | 空白のまま | このキー メンバとして使われるデータ メンバの識別子を格納します。
MemDefName | nvarchar (128) | Null | 必須 | このキー メンバとして使われるデータ メンバの名前を格納します。
MinorVersion | int | Null | 省略可能 | キー メンバのマイナ バージョン番号を格納します。
ModifiedTime | Date/Time | Null | 空白のまま | キー メンバが前回変更された時刻を記録します。
OrdinalPosInKey | int | Null | 必須 | キー内のキー メンバの位置を表す、0 から始まるインデックスを格納します。
Status | int | Null | 空白のまま | 予約されています。


関連定義メタデータ

関連メタデータは、2 つのクラス間の関連を作成するための属性を含みます。関連を定義するには、親クラスと子クラスの両方のクラス定義が既に作成されている必要があります。Commerce Server 2000 データ ウェアハウスでは、ほとんどの関連が一対多型です。

2 つのクラスをリンクするには、関連の ParentClassName 属性を親 Class オブジェクトの ClassDefName に設定する必要があります。同様に、関連の ChildClassName 属性を子 Class オブジェクトの ClassDefName に設定する必要があります。親のデータ メンバが継承されるようマークされている場合、関連を作成すると、そのデータ メンバが子にコピーされます。

特定のクラス メンバをリンクするには、関連にリンクするメンバを定義する関連メンバを作成します。

2 つの既存のクラス間の新しい関連の作成については、「新しいクラスの関連を作成する」を参照してください。

関連定義メタデータは、関連の種類を定義するために使われる属性 (RelType) を含みます。次の表は、有効な関連の種類とそれに対応する種類コードを示しています。Commerce Server 2000 データ ウェアハウスでは、ほとんどの関連が一対多型です。

関連の種類 | コード | 説明
一対多 | 2 | それぞれの親はゼロ以上の子を持ち、それぞれの子は 1 つの親を持ちます。親の識別子 ("クラス名" ID) は、子によって外部キーとして使われます。
多対多 | 3 | それぞれの親はゼロ以上の子を持ち、それぞれの子は 1 つ以上の親を持ちます。
継承を含む一対多 | 194 | 親のすべてのメンバが子に対して表示可能である以外は、一対多の関連と同じです。通常の一対多の関連では、親クラスのキー メンバだけが表示されます。

次の表は、クラス関連定義に使われる属性を示しています。これらの属性のセットは、定義するクラス関連ごとに RelDef テーブルに格納されます。

属性 | データ型 | 条件 | 必要条件 | 説明
RelDefID | int | Not Null | 空白のまま | 関連の一意識別子を格納します。
CatalogID | int | Null | 空白のまま | スキーマ カタログの識別子を格納します。
CatalogName | nvarchar (128) | Null | 空白のまま | スキーマ カタログの名前 "DWSchema" を格納します。
ChildClassID | int | Null | 空白のまま | 関連の子クラスのクラス識別子を格納します。
ChildClassName | nvarchar (128) | Null | 必須 | 関連の子クラスの名前を格納します。
CreatedTime | Date/Time | Null | 空白のまま | 関連が作成された時刻を記録します。
Description | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のある説明を格納します。
DisplayName | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のある名前を格納します。
MajorVersion | int | Null | 省略可能 | 関連のメジャー バージョン番号を格納します。
MinorVersion | int | Null | 省略可能 | 関連のマイナ バージョン番号を格納します。
ModifiedTime | Date/Time | Null | 空白のまま | 関連が前回変更された時刻を記録します。
ParentClassID | int | Null | 空白のまま | 関連の親クラスのクラス識別子を格納します。
ParentClassKey | nvarchar (128) | Null | 必須 | 親クラスのキーの名前を格納します。
ParentClassName | nvarchar (128) | Null | 必須 | 関連の親クラスの名前を格納します。
RelDefName | nvarchar (128) | Null | 必須 | 関連の名前を格納します。
RefMemName | nvarchar (128) | Null | 空白のまま | 予約されています。
RelType | smallint | Null | 必須 | 関連の種類を格納します。
Status | int | Null | 空白のまま | 予約されています。


関連メンバ定義メタデータ

関連メンバ メタデータは、親クラスから子クラスへの特定のメンバの正規化を解除するための属性を含みます。関連内の特定のメンバをリンクするには、関連定義が既に作成されている必要があります。また、関連メンバはその関連を構成するクラスのメンバを指定するので、これらのクラス メンバも既に定義されている必要があります。RelationName 属性は、この関連を含んでいる関連への実際のリンクを作成するので、RelationName 属性の関連名が必要な関連の RelDefName 属性と一致している必要があります。

メンバ メタデータは、クラス メンバを定義するための必須フィールドを含みます。ParentMemName 属性と ChildMemName 属性は対応するクラス メンバへのリンクを作成するので、これらのクラス メンバ名がクラスのメンバ オブジェクトの必須データ メンバの MemberDefName 属性と一致している必要があります。

クラスの新しい関連メンバの作成については、「新しいクラス関連メンバを作成する」を参照してください。

次の表は、関連メンバ定義に使われる属性を示しています。これらの属性のセットは、定義する関連メンバごとに RelMem テーブルに格納されます。

属性 | データ型 | 条件 | 必要条件 | 説明
RelMemDefID | int | Not Null | 空白のまま | 関連メンバの一意識別子を格納します。
CatalogID | int | Null | 空白のまま | スキーマ カタログの識別子を格納します。
CatalogName | nvarchar (128) | Null | 空白のまま | スキーマ カタログの名前 "DWSchema" を格納します。
ChildMemID | int | Null | 空白のまま | 関連付ける子クラスのデータ メンバの識別子を格納します。
ChildMemName | nvarchar (128) | Null | 必須 | 関連付ける子クラスのデータ メンバの名前を格納します。
CreatedTime | Date/Time | Null | 空白のまま | 関連メンバが作成された時刻を記録します。
Description | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のある関連メンバの説明を格納します。
DisplayName | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のある関連メンバの名前を格納します。
MajorVersion | int | Null | 省略可能 | 関連メンバのメジャー バージョン番号を格納します。
MinorVersion | int | Null | 省略可能 | 関連メンバのマイナ バージョン番号を格納します。
ModifiedTime | Date/Time | Null | 空白のまま | 関連メンバが前回変更された時刻を記録します。
ParentMemID | int | Null | 空白のまま | 関連付ける親クラスのデータ メンバの識別子を格納します。
ParentMemName | nvarchar (128) | Null | 必須 | 関連付ける親クラスのデータ メンバの名前を格納します。
RelationID | int | Null | 空白のまま | 関連メンバを含む関連の識別子を格納します。
RelationName | nvarchar (128) | Null | 必須 | クラス関連の名前を格納します。
Status | int | Null | 空白のまま | 予約されています。


ソース定義メタデータ

ソース メタデータは、Commerce Server 2000 データ ウェアハウスのデータ ソースを記述します。ソース メタデータの SourceName 属性と SourceID 属性は、それぞれクラス メタデータの SourceDefName 属性と SourceID 属性で使われます。

次の表は、SourceDef メタデータの属性を定義しています。

属性 | データ型 | 条件 | 必要条件 | 説明
SourceID | int | Not Null | 空白のまま | ソースの一意識別子を格納します。
SourceName | nvarchar (128) | Null | 必須 | データ ソースの名前を格納します。
ADDomainName | nvarchar (128) | Null | プロファイル システムでは省略可能 分析では空白のまま | プロファイル システムのみで使われます。
CatalogID | int | Null | 空白のまま | Commerce Server 2000 スキーマ カタログの識別子を格納します。
CatalogName | nvarchar (128) | Null | 空白のまま | スキーマ カタログの名前を格納します。Commerce Server の今回のリリースでは、カタログ名は "DWSchema" です。
ClsComponentID | int | Null | 省略可能 | プロファイル システムで使われます。
ConnStr | nvarchar (128) | Null | 必須 | データ ソースへの接続文字列を格納します。
CreatedTime | Date/Time | Null | 空白のまま | ソース定義が作成された時刻を記録します。
DBCodePage | int | Null | 省略可能 | プロファイル システムで使われます。
Description | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のあるソースの説明を格納します。
DisplayName | nvarchar (128) | Null | 省略可能 | UI に表示される可能性のあるソースの名前を格納します。
DoesDistributedTrans | tinyint | Null | 省略可能 | データ ソースが分散トランザクションをサポートするかどうかを示します。
DoesSQLBatch | tinyint | Null | 省略可能 | データ ソースが SQL バッチ操作をサポートするかどうかを示します。
DoesSQLDelete | tinyint | Null | 省略可能 | データ ソースが SQL の Delete 操作をサポートするかどうかを示します。
DoesSQLInsert | tinyint | Null | 省略可能 | データ ソースが SQL の Insert 操作をサポートするかどうかを示します。
DoesSQLStoredProc | tinyint | Null | 省略可能 | データ ソースがストアド プロシージャの格納をサポートするかどうかを示します。
DoesSQLUpdate | tinyint | Null | 省略可能 | データ ソースが SQL の Update 操作をサポートするかどうかを示します。
DoesTransactions | tinyint | Null | 省略可能 | データ ソースがトランザクションをサポートするかどうかを示します。
IsDefault | tinyint | Null |  | このデータ ソースが既定のデータ ソースかどうかを示します。
MajorVersion | int | Null | 省略可能 | メジャー バージョン番号を格納します。
MaxColNameSize | int | Null | 省略可能 | データ ソース内の列の名前の最大サイズを格納します。
MaxTblNameSize | int | Null | 省略可能 | データ ソース内のテーブルの名前の最大サイズを格納します。
MinorVersion | int | Null | 省略可能 | マイナ バージョン番号を格納します。
ModifiedTime | Date/Time | Null | 空白のまま | ソース定義が前回変更された時刻を記録します。
SourceGroupName | nvarchar (128) | Null | プロファイル システムでは省略可能 分析では空白のまま | プロファイル システムのみで使われます。
Status | int | Null | 空白のまま | 予約されています。
Type | int | Null | 省略可能 | データ ソースの種類のコードを格納します。このテーブルの直後にあるテーブルを参照してください。

次の表は、ソース メタデータの Type 属性に使われる有効なソースの種類を示しています。この情報は、データ ウェアハウスと分析よりもプロファイル システムに密接に関係しています。

ソースの種類 | コード | 説明
stOLEDB20 | 1 | 汎用 OLE DB 2.0
stSQL7x | 2 | SQL Server 7.0 以降
stSQL65 | 3 | SQL Server 6.5
stActiveDirectory | 4 | Active Directory
stGeneric | 5 | 汎用データ ソース


物理スキーマ

ここでは、データ ウェアハウスの基になる物理データ ストアについて説明します。

既定では、論理クラスは同じ名前の物理テーブルにマップされます。この既定の操作を変更するには、ClsDef テーブルの GenerateTableDef 属性を False に設定し、DefaultTableName 属性でテーブル名を指定します。

既定では、継承されず、複数の値を持たないクラス メンバは、同じ名前の物理列にマップされます。この既定の操作を変更するには、MemDef テーブルの GenerateColumnDef 属性を False に設定し、ColumnName 属性で列名を指定します。

継承されるクラス メンバは、親テーブルの関連列にマップされます。

複数の値を持つクラス メンバ (MemDef テーブルで IsMultiValued が True のクラス メンバ) の場合は、関連付けられたリンクと値のテーブルが自動的に生成され、この既定の操作を変更できません。これらのテーブルの名前は MemDef テーブルの LinkTableName 属性と ValTableName 属性に格納されます。

Commerce Server 2000 はパーティションをサポートしないので、データ ソース 1 つに対してパーティションは 1 つだけです。


予測スキーマ

ここでは、モデルとモデル設定に使われる予測スキーマについて説明します。

Microsoft Commerce Server 2000 では、予測モデルとセグメント モデルという 2 種類の分析モデルを利用できます。予測モデルは、商品を推奨し、欠落したプロファイル データを入力するために使われます。セグメント モデルは、同じ行動と属性を持つユーザーのグループであるセグメントにユーザーを分類します。セグメント モデルは、ユーザーを 1 つ以上のセグメントに分類するために使われます。

これらの分析モデルでは、さまざまなケースの特定の集合を、予測の基礎として使います。ケースは、以前のユーザーに関する既知の情報すべてであり、属性と値の組み合わせで構成されます。属性は社会的な分類 (年齢、所得、特定の商品を購入したかどうか、など) です。ケースは通常トランザクション データを含みますが、人口統計学的なデータを含むこともあります。

モデル構成には、予測リソースがモデルを構築するために使う情報が含まれています。この情報は、ケース情報とモデル構築プロパティを含むテーブルおよびビューへのポインタを含みます。モデル構成は、データベース内のテーブルのコレクションとして格納されます。新しいモデル構成を作成するために利用できる API (アプリケーション プログラミング インターフェイス) はありません。テーブルを直接変更する必要があります。

ここでは、必要なテーブルとエントリ、モデル構成の作成例、および予測モデルとセグメント モデルの構築結果についても説明します。

次のトピックについて説明します。

  • PredictorModelCfgs テーブル : 利用できるモデル構成を示します。

  • PredictorDataTables テーブル : ソース データ テーブルおよび属性テーブルへのインデックスとして機能します。

  • 属性テーブル : モデルを構築するために使われるプロパティの属性について説明します。

  • PredictorModels テーブル : これらを構築するために使われた実際のモデルとパラメータを格納します。

  • 予測スキーマの例 : モデル構成の作成例および予測モデルとセグメント モデルの構築結果を示します。

関連項目

予測オブジェクト

PredictorClient オブジェクト

PredictorServiceAdmin オブジェクト

PredictorServiceSiteAdmin オブジェクト

PredModelBuilder オブジェクト

予測リソースの実行


PredictorModelCfgs テーブル

このテーブルは、モデル構成の一覧です。Commerce Server マネージャで、予測リソースの下にある [モデル構成] ノードを選択すると、モデル構成が表示されます。

列名 | 種類 | 説明 | 必須/省略可能
ModelCfgName | DBTYPE_WSTR | モデル構成名です。 | 必須
SiteName | DBTYPE_WSTR | 使われません。 | 省略可能


PredictorDataTables テーブル

このテーブルは、ソース データ テーブルおよび属性テーブルへのインデックスとして機能します。モデル構成ごとに、少なくとも 1 つの高密度 (Type 0) または低密度 (Type 1) のソース データ テーブルと 1 つの属性 (Type 2) テーブルが必要です。高密度テーブルは 1 つしか作成できませんが、低密度テーブルは複数作成できます。何も指定されない場合、空の属性テーブルが作成されます。

列名 | 種類 | 説明 | 必須/省略可能
ModelCfgName | DBTYPE_WSTR | モデル構成名 (PredictorModelCfgs テーブルへの外部キー) です。 | 必須
TableName | DBTYPE_WSTR | テーブル名です。 | 必須
Type DBTYPE_UI2 テーブルの種類です。
  • 0 = 高密度 (人口統計学的な情報などのように、1 ユーザーごとに 1 行ある) テーブル

  • 1 = 低密度 (商品購入などのように、1 トランザクションごとに 1 行ある) テーブル

  • 2 = 属性テーブル
 必須
AggregateColumn DBTYPE_WSTR PivotColumn を集計する列です。

たとえば、QTY 列が各 SKU の購入数量を表す場合は QTY です。

 Type が低密度の場合は、必須です。

それ以外の場合は、省略可能です。
AggregateOperation DBTYPE_UI2 有効な値は、次のとおりです。
  • 0 = 合計 (既定値)

  • 1 = 最大値

  • 2 = 最小値

  • 3 = 平均値

  • 4 = カウント
 Type が低密度の場合は、必須です。

それ以外の場合は、省略可能です。
CaseColumn DBTYPE_WSTR ケース ID (通常 UserID) が格納される TableName 内の列です。 Type が高密度または低密度の場合は、必須です。

Type が属性の場合は、指定しません。
PivotColumn DBTYPE_WSTR ピボットするトランザクション プロパティを指定する TableName 内の列です。

たとえば、SKU 列がユーザーが購入した商品を含む場合は SKU です。

 Type が低密度の場合は、必須です。

それ以外の場合は、省略可能です。


属性テーブル

このテーブルは、モデルで使われる各属性のプロパティを示しています。属性のプロパティには、属性の分布の種類、属性を使ってモデルを構築するか、モデルで属性を予測するかなどがあります。既定の動作を変更する必要がない限り、属性テーブルへの入力は必要ありません。既定の操作は、各属性を使って予測したり、各属性を予測するためのものです。既定の分布は Autodetect です。何も指定されない場合、空の属性テーブルが作成されます。

注

  • Attributes という名前のテーブルはありません。各モデル構成で、PredictorDataTables テーブルのエントリとして、それぞれの属性テーブルの名前を指定します。
列名 | 種類 | 説明 | 必須/省略可能
PropID | DBTYPE_UI4 | 一意キー – プロパティ ID です。 | 必須
ParentID | DBTYPE_UI4 | 親の ID (0 = ルート) です。 | 必須
Name | DBTYPE_WSTR | 属性、階層要素、またはピボット列の名前です。 | 必須
TableName | DBTYPE_WSTR | 使用されません。 | 省略可能
ColumnName | DBTYPE_WSTR | 使用されません。 | 省略可能
Distribution DBTYPE_UI2 分布の種類です。

B - Model As Binary

NB - Not Model As Binary

有効な値は、次のとおりです。

  • 0 - Discrete、NB

  • 1 – Continuous、Normal、NB

  • 2 – Continuous、LogNormal、NB

  • 3 - Invalid

  • 4 - Discrete、Autodetect、B

  • 5 - Continuous、Normal、B

  • 6 - Continuous、Lognormal、B

  • 分布の種類については、この表の後で説明します。
 省略可能

NULL は Autodetect を意味します。

行が階層要素を表す場合、NULL です。
Predict DBTYPE_BOOL このプロパティが出力プロパティかどうかを示します。

有効な値は、次のとおりです。

  • True (既定値) – このプロパティを予測できるモデルを構築します。

  • False – このプロパティを予測しません。
 省略可能

NULL はTrue を意味します。

行が階層要素を表す場合、NULL です。
UseToPredict DBTYPE_BOOL このプロパティが入力プロパティかどうかを示します。

有効な値は、次のとおりです。

  • True (既定値) – ほかのプロパティを予測するための入力プロパティとして使います。

  • False – ほかのプロパティの予測にはこのプロパティを使いません。
 省略可能

NULL はTrue を意味します。

行が階層要素を表す場合、NULL です。

分布属性

  • Discrete と Continuous : Discrete は、特定のデータ値だけが有効で、個々の連続する値の間には何の関係性もないことを意味します。たとえば、2 文字の状態略語は Discrete です。すべての非数値属性は、Discrete として処理されます。数値属性は、Discrete であることもそうでないこともあります。

  • Normal と LogNormal : 所得などの連続データを表現するには Normal (ガウス) 分布が適していますが、商品購入数量などのデータを表現するには、0 の方に偏って非対称的に分布する LogNormal 分布が適しています。LogNormal 分布属性とは、属性の対数が Normal 分布であるという意味です。

  • Autodetect : 上のプロパティを自動検出するアルゴリズムを使うことができます。Discrete 属性の場合、有用な値が 1 つしかないか、値が多すぎる (500 以上ある) 属性は、このアルゴリズムによって削除されます。"欠落している値" も値としてカウントされることに注意してください。

  • Model As Binary : Model As Binary 属性を持つプロパティの場合、モデルは、プロパティの値ではなく、プロパティが存在するかどうかについてのみ関係します。たとえば、商品購入数量に対応する属性の場合を考えてみると、購入数量のモデルを構築するよりも、商品を購入したかどうかのモデルを構築する方が有用なことがあります。


PredictorModels テーブル

モデルを構築するときに、実際のモデルとそのモデルの構築に使われるパラメータが、予測リソースによってこのテーブルに格納されます。Commerce Server マネージャで、予測リソースの下にある [モデル] ノードを選択すると、モデルが表示されます。"入力/出力" 列は、パラメータが入力パラメータと出力パラメータのどちらであるかを指定します。"モデルの種類" 列は、どのモデルの種類がそのパラメータを使うかを指定します。最後のData 列は、実際のモデル データのバイナリ表現を含む BLOB (Binary Large Object) です。

列名 データ型 入力/
出力 		モデルの
種類 		説明 必須/省略可能
ModelName | DBTYPE_WSTR | 入力 | 両方 | モデルの名前です。 | 必須
ModelCfgName | DBTYPE_WSTR | 入力 | 両方 | モデル構成名 (PredictorModelCfgs テーブルへの外部キー) です。 | 必須
ModelType DBTYPE_UI2 入力 両方 モデルを構築するために使われるアルゴリズムです。既定は予測です。

有効な値は、次のとおりです。

  • 0 = 予測 (従属関係ネットワーク)

  • 1 = セグメント (クラスタリング)
 省略可能
BuildTime | DBTYPE_UI4 | 出力 | 両方 | モデル構築に要した時間 (単位はミリ秒) です。 | 省略可能
ComplexityPenality DBTYPE_UI4 入力 予測 大きい値を設定することによって、ツリーが大きくなりすぎないようにすることができます (予測モデルのみ)。

有効な範囲は、1 ～ MaxInt です。

既定値 = 100

 省略可能
DataFitScore DBTYPE_R8 出力 予測 欠落しているプロファイル データを提供するための予測の質を測定します。スコアが高いほど、良いモデルです。

有効な範囲は、負の無限大 ～ 正の無限大です。

 省略可能
DateCreated DBTYPE_DB
TIMESTAMP 		出力 両方 モデルが構築された日付です。

既定値は getdate() です。

 必須
InputAttributeFraction DBTYPE_R8 入力 両方 予測への入力として機能選択に使われる属性の割合です。

既定では、属性の数は、1000 またはすべての属性の数のどちらか少ない方です。

有効な範囲は 0 ～ 1 です。

  • 1 - すべての属性を使います。

  • < 1 - 機能選択を最重要属性の識別に使います。より小さいモデルになります。
 省略可能
K DBTYPE_UI4 入力 セグメント 構築するセグメントの数です。

既定値は 10 です。

有効な範囲は 1 ～ 32756 です。

 省略可能
MaxBufferSize DBTYPE_UI4 入力 セグメント 最大バッファ サイズ (単位はバイト) です。

既定値は 1,056,784 バイト (1 MB) です。

 省略可能
MeasuredAccuracy
MaxPredictions 		DBTYPE_UI4 入力 両方 推奨の最大数です。

有効な範囲は、1 ～ MaxInt です。

既定値は 10 です。

 省略可能
MeasuredAccuracy
SampleFraction 		DBTYPE_R8 入力 両方 自動精度測定用に取り出すサンプル データの割合です。

有効な範囲は 0 ～ 1 です。

既定値は、全ケースの 40% (0.4) または 1000 のどちらか少ない方です。

 省略可能
MinimumCasesToSplit DBTYPE_UI4 入力 予測 ツリー内で分割が発生するケースの最小数です。

既定値 = 5

 省略可能
OutputAttributeFraction DBTYPE_R8 入力 両方 予測への出力として機能選択に使われる属性の割合です。

既定では、属性の数は、1000 またはすべての属性の数のどちらか少ない方です。

有効な範囲は 0 ～ 1 です。

  • 1 - すべての属性を予測できるモデルを構築します。

  • < 1 - 機能選択を重要属性の識別に使います。より小さいモデルになります。
 省略可能
RecommendScore DBTYPE_R8 出力 予測 推奨のランク付けリストの質を測定します。スコアが高いほど、良いモデルです。

有効な範囲は 0 ～ 1 です。

 省略可能
SampleSize DBTYPE_UI4 入力 両方 入力データからランダム サンプリングするケース数です。

既定値は、-1 (すべてのデータを使用) または 20,000 のどちらか少ない方です。

 省略可能
Data | DBTYPE_BYTES | モデル データを含む BLOB (Binary Large Object) です。 | 省略可能


予測スキーマの例

この例では、PurchaseCfg1 という名前のモデル構成のすべての関連テーブルおよびエントリを示します。

PredictorModelCfgs

ModelCfgName | SiteName
PurchaseCfg1 | Retail

この例では、PurchaseCfg1 モデル構成が 3 つのデータ ソースから構成されていると仮定します。

User テーブルからの人口統計学的な情報 (追加行は表示されていません)

UserID | Age | Gender | Education
jilluser@roguecellars.com | 23 | F | 19
barneyuser@arborshoes.com | 49 | M | 3
jackuser@frogkick.com | 28 | M | 13

Purchases テーブルからの商品購入情報 (追加行は表示されていません)

UserID | SKU | QTY
jilluser@roguecellars.com | wine_fine_au_zin_19 | 3
jilluser@roguecellars.com | tv_big_36_m3 | 1
jilluser@roguecellars.com | pumps_bl_6 | 1

AdClicks テーブルからの広告クリック情報 (追加行は表示されていません)

UserID | URL | Count
jilluser@roguecellars.com | www.thewinecellar.com/ad_zin12 | 3
jilluser@roguecellars.com | www.thewinecellar.com/ad_cab3 | 2
jilluser@roguecellars.com | www.arborshoes.com/ad4c | 1

PredictorDataTables

ModelCfgName | TableName | Type | Case Column | Pivot Column | Aggregate Column | Aggregate Type
PurchaseCfg1 | User | 0 | UserID | <NULL> | <NULL> | <NULL>
PurchaseCfg1 | Purchases | 1 | UserID | SKU | QTY | 0
PurchaseCfg1 | AdClicks | 1 | UserID | URL | Count | 0
PurchaseCfg1 | PurchaseCfg1_Attributes | 2 | なし | <NULL> | <NULL> | <NULL>

次の表のエントリは、既定の動作より優先されます。最初の 3 つのエントリは、"tv_big_36_m3" が "TVs" の子であり、 "TVs" が "Electronic Devices" の子である階層を構成します。"Electronic Devices" は階層の最上位にあるので、親はありません。4 番目のエントリは、すべての SKU が Discrete および Model As Binary 分布を持つように指定します。5 番目の行は、年齢属性を使ってほかの属性を予測するが、年齢属性は予測しないよう指定します。これは、年齢属性を予測する判断ツリーを作成しないことを意味します。このエントリは、分布が Continuous、Lognormal、および Not Model As Binary であることも指定します。

PredictorAttributes_PurchaseCfg1

Prop ID | Parent ID | Name | Table Name | Column Name | Distri- bution | UseTo Predict | Predict
1 | 0 | Electronic Devices | <NULL> | <NULL> | <NULL> | <NULL> | <NULL>
2 | 1 | TVs | <NULL> | <NULL> | <NULL> | <NULL> | <NULL>
3 | 2 | tv_big_36_m3 | <NULL> | <NULL> | 4 | True | True
4 | 0 | SKU | <NULL> | <NULL> | 4 | True | True
5 | 0 | Age | <NULL> | <NULL> | 2 | True | False

次の表は、PurchaseCfg1 モデル構成から構築された 2 つのモデルを示しています。最初のモデル Purchase1 は、予測 (type 0) モデルとして構築されたモデルです。2 番目のモデル Demog1 は、セグメント (type 1) モデルとして構築されたモデルです。

PredictorModels

Model Name | ModelCfg Name | Model Type | Date Created | Build Time | Measured Accuracy Sample Fraction | Measured Accuracy Max Predictions | K
Purchase1 | PurchaseCfg1 | 0 | getdate() | 30000 | .05 | 10 | <NULL>
Demog1 | PurchaseCfg1 | 1 | getdate() | 45000 | .05 | 10 | 10

(PredictorModels の続き)

Max Buffer Size | Input Attribute Fraction | Output Attribute Fraction | Sample Size | Complexity Penality | Minimum CasesTo Split | Data Fit Score | Recommend Score | Data
<NULL> | 1 | 1 | -1 | 100 | 5 | 11.08 | 0.3946 | <Binary>
1000000 | 1 | 1 | 16000 | <NULL> | <NULL> | 4.177 | 0.1874 | <Binary>


プロファイル スキーマ

プロファイル スキーマは、プロファイルの構造を定義します。プロファイルはビジネス オブジェクト (サイト ユーザー、顧客、取引先など) を表し、Commerce Server データ ウェアハウス内のクラスに対応します。

ここでは、Microsoft Commerce Server 2000 に含まれているプロファイル スキーマについて説明します。これらのスキーマを拡張または削除する機能は、Commerce Server ビジネス デスクのプロファイル デザイナで簡単に利用できます。Commerce Server マネージャのプロファイル定義スナップインを使うことにより、新しいスキーマを作成できます。

次のトピックについて説明します。

  • 規則 : プロファイルを記述するために使われるテーブル エントリについて説明します。

  • Address プロファイル スキーマ : 住所エンティティの構造を定義します。

  • Organization プロファイル スキーマ : 組織エンティティの構造を定義します。

  • UserObject プロファイル スキーマ : 登録済みユーザー エンティティと匿名ユーザー エンティティの構造を定義します。

関連項目

プロファイル オブジェクト

プロファイルの XML 構造

ProfileObject オブジェクト

ProfileService オブジェクト


規則

ここでは、論理プロファイル スキーマを記述するために使われるテーブル エンティティについて説明します。

データ型

この列は、プロパティのデータ型を示します。定義済みプロファイルの場合、論理プロパティは、データ型の最初の文字とアンダースコアをプレフィクスとして持つ同じ名前の物理プロパティにマップされます。たとえば、GUID データ型の論理 address_id は物理 g_address_id にマップされます。

エクスポート (Exp)

True (1) は、このプロパティが Commerce Server 2000 ユーザー インポート DTS タスクによってデータ ウェアハウスにエクスポートされることを示します。DTS タスクは、どんな新しいプロパティにも対応できるようデータ ウェアハウス スキーマを拡張します。このプロパティは、XML 表現の Property 要素の IsExported 属性で設定されます。プロファイル定義の 1 つ以上のプロパティに対して IsExported を True に設定する場合は、プロファイル定義に date_last_changed プロパティを定義する必要があります。

グループ

グループは関連プロファイル プロパティのコレクションです。たとえば、GeneralInfo という名前のグループは、Name プロパティ、Address プロパティ、および Phone プロパティを含むグループと定義することができます。グループ名は、プロファイルに対して一意な名前である必要があります。プロパティ名も、すべてのグループ内で一意な名前である必要があります。プロファイル プロパティにアクセスするには、プロパティ名、またはプロパティ名とグループ名を Group.Property の形式で組み合わせた名前 (GeneralInfo.address_line1 など) を使います。

必須 (Req)

この列は、そのプロパティが必須かどうかを示します。


Address プロファイル スキーマ

このプロファイル スキーマのインスタンスは、ユーザーの住所と組織の住所の両方を格納します。プロファイルは物理 Addresses テーブルにマップされます。Commerce Server 2000 ユーザー インポート DTS タスクは、Exported (Exp) 属性が True (1) に設定されているプロパティの場合、データ ウェアハウスを拡張し、データをデータ ウェアハウスにエクスポートします。Address プロファイルのエクスポート先のデータ ウェアハウス内で対応するクラスは、Address プロファイルの DWClassName 属性を使って設定され、既定値は "Address" です。テーブル エントリについては、「規則」を参照してください。

プロパティ名 | データ 型 | Req | Exp | グループ | 表示名/説明
address_id (プライマリ キーおよび結合キー) | GUID | T | T | 一般情報 | 住所の ID システムが指定します。
address_line1 | Unicode 文字列 | T | F | 一般情報 | AddressLine1
address_line2 | Unicode 文字列 | F | F | 一般情報 | AddressLine2
address_name | Unicode 文字列 | F | T | 一般情報 | 住所名
address_type | Integer | F | T | 一般情報 | 住所の種類 0 – 住所 1 – 送付先住所 2 – 請求先住所
city | Unicode 文字列 | F | T | 一般情報 | 市町村
country_code | Unicode 文字列 | T | T | 一般情報 | 国/地域 (ISO) コード
country_name | Unicode 文字列 | F | T | 一般情報 | 国/地域名
date_created | Date/ Time | F | T | プロファイル システム | 作成日時 既定値は getdate()
date_last_changed | Date/ Time | F | T | プロファイル システム | 最終変更日時 既定値は getdate()
description | Unicode 文字列 | F | F | 一般情報 | 説明
first_name | Unicode 文字列 | F | T | 一般情報 | (ユーザーの) 名
id | GUID | F | F | 一般情報 | このエントリが参照する組織/ユーザーの ID
last_name | Unicode 文字列 | F | T | 一般情報 | (ユーザーの) 姓
locale | Integer | F | F | 一般情報 | ロケール ID 住所フォームを表示するロケール (文字セット)
postal_code | Unicode 文字列 | T | T | 一般情報 | 郵便番号
region_code | Unicode 文字列 | T | T | 一般情報 | 都道府県/州コード
region_name | Unicode 文字列 | F | T | 一般情報 | 都道府県/州名
tel_extension | Unicode 文字列 | F | T | 一般情報 | 内線番号
tel_number | Unicode 文字列 | F | T | 一般情報 | この住所の電話番号
user_id_changed_by | Unicode 文字列 | F | F | 一般情報 | 変更者 最後に変更した人


Organization プロファイル スキーマ

このプロファイル スキーマのインスタンスは、組織についてのデータ (取引先、本社、子会社など) を格納します。既定では、このプロファイルはデータ ウェアハウスにインポートされません。テーブル エントリについては、「規則」を参照してください。

プロパティ名 | データ 型 | Req | Exp | グループ | 表示名/説明
org_id (結合キー) | GUID | T | F | 一般情報 | 組織 ID システムが指定します。
name (プライマリ キー) | Unicode 文字列 | T | F | 一般情報 | 名前
date_created | Date/ Time | F | F | プロファイル システム | 作成日時 既定値は getdate()
date_last_changed | Date/ Time | F | F | プロファイル システム | 最終変更日時 既定値は getdate()
org_catalog_set | Unicode 文字列 | F | F | 一般情報 | 組織カタログ セット 組織固有のカタログ セットです。
trading_partner_number | Unicode 文字列 | F | F | 一般情報 | 取引先番号 サプライアが顧客の組織に割り当てるアカウント番号です。
user_id_admin_contact | GUID | F | F | 一般情報 | 管理連絡先
user_id_changed_by | GUID | F | F | 一般情報 | 変更者 最後に変更した人
user_id_purchasing_manager | GUID | F | F | 購入 | 購入側組織の購買マネージャ
user_id_receiver | GUID | F | F | 一般情報 | 受取人 サプライアからの商品を受け取る既定の担当者です。


UserObject プロファイル スキーマ

このプロファイル スキーマのインスタンスは、登録済みユーザーと匿名ユーザーの両方の情報を格納します。Commerce Server 2000 ユーザー インポート DTS タスクは、Exported (Exp) 属性が True (1) に設定されているプロパティの場合、データ ウェアハウスを拡張し、データをデータ ウェアハウスにエクスポートします。UserObject プロファイルのエクスポート先のデータ ウェアハウス内で対応するクラスは、UserObject プロファイルの DWClassName 属性を使って設定され、既定値は "RegisteredUser" です。テーブル エントリについては、「規則」を参照してください。

プロパティ名 | データ 型 | Req | Exp | グループ | 表示名/説明
user_id (結合キー) | GUID | T | T | 一般情報 | ユーザーの ID 既定では、システムが指定します。
logon_name (プライマリ キー) | Unicode 文字列 | T | T | 一般情報 | ログオン名 ユーザーの原則名です。既定では、Commerce Server ビジネス デスク/取引先デスクでは電子メールに設定されます。
account_status | Integer | F | T | アカウント 情報 | アカウントの状態 Windows アカウントの状態ビットマスク (アクティブ/非アクティブを含む) です。
date_created | Date/ Time | F | T | プロファイル システム | 作成日時 既定値は getdate()
date_last_changed | Date/ Time | F | T | プロファイル システム | 変更日付 既定値は getdate()
date_registered | Date/ Time | F | T | アカウント 情報 | サイト登録日と時刻
email_address | Unicode 文字列 | F | T | 一般情報 | 電子メール アドレス
fax_extension | Unicode 文字列 | F | F | 一般情報 | FAX 内線番号
fax_number | Unicode 文字列 | F | F | 一般情報 | FAX 番号
first_name | Unicode 文字列 | F | T | 一般情報 | 名
last_name | Unicode 文字列 | F | T | 一般情報 | 姓
org_id | GUID | F | F | 一般情報 | ユーザーが所属する組織 ID
partner_desk_role | Integer | F | F | ビジネス デスク | PartnerDeskRoleFlags ユーザーのロール ID です。
tel_extension | Unicode 文字列 | F | F | 一般情報 | 内線番号
tel_number | Unicode 文字列 | F | T | 一般情報 | 電話番号
user_catalog_set | Unicode 文字列 | F | F | アカウント 情報 | ユーザー カタログ セット
user_id_changed_by | GUID | F | F | 一般情報 | 変更者 最後に変更した人
user_security_password | Unicode 文字列 | F | F | 一般情報 | ユーザー パスワード ユーザーを識別し、認証するためのものです。
user_title | Unicode 文字列 | F | F | 一般情報 | ユーザー タイトル (例 : "購買マネージャ")
user_type | Integer | F | T | 一般情報 | ユーザーの種類 0 = 匿名 1 = 登録済み (既定値)


データベース テーブル リファレンス

ここでは、Commerce Server データベースに含まれるテーブルのリストを示します。これらのテーブルは、プロダクト リソース別に分類されています。これらは、ユーザーの構成でのテーブルの分布を必ずしも反映するものではありません。これらのテーブルの場所は、各サイトをアンパックするときに作成したデータベースによって異なります。既定では、Commerce Server は、管理、ダイレクトメーラー、Commerce、およびデータ ウェアハウスの各データベースを作成します。インストールするリソースに基づいて、Commerce データベースをより小さいデータベースに分割することもできます。

ここでは、次のトピックについて説明します。

  • 管理データベース テーブル

  • 分析とレポートのデータベース テーブル

  • データ ウェアハウスのデータベース テーブル

  • ダイレクト メーラーのデータベース テーブル

  • マーケティングのデータベース テーブル

  • 予測データベース テーブル

  • 商品カタログのデータベース テーブル

  • プロファイルのデータベース テーブル

  • トランザクションのデータベース テーブル

  • トランザクション構成のデータベース テーブル


管理データベース テーブル

次のテーブルは、MSCS_Admin データベースに含まれます。

テーブル名 | 説明
ExtendedProps | システム内のすべてのリソースに格納されている、すべてのプロパティのスキーマが含まれます。ただし、SystemProps テーブルに含まれるものは除きます。
PupDBScripts | GenericPuP オブジェクトで使われる SQL スクリプトが含まれます。
ResourceProps | スキーマが ExtendedProps テーブルにリストされているプロパティのインスタンス データが含まれます。
Resources | スキーマが SystemProps テーブルにリストされているプロパティのインスタンス データが含まれます。
SiteResources | サイト内のすべてのリソースのキー (またはリンク) が含まれます。
Sites | このデータベースに含まれるサイトをリストします。
SystemProps | すべてのリソースが共通して持つ必要があるプロパティのスキーマ（フラグなど）が含まれます。


分析とレポートのデータベース テーブル

次のテーブルは、データ ウェアハウスに含まれます。

テーブル名 | 説明
Report | 主なレポート定義テーブルに使われる属性を示します。
ReportDbObject | 静的レポートで使うために作成されるデータベース オブジェクトを示します。
ReportDimension | ディメンションをレポートに追加するために使う属性を示します。
ReportInstanceDbObject | 静的レポートで使うために作成されるデータベース オブジェクトのインスタンスを示します。
ReportInstanceParam | クエリ式用のユーザー インターフェイスから入力されるパラメータを格納するために使う属性を示します。
ReportParam | パラメータ化されたクエリ式を静的レポートに追加するために使う属性を示します。
ReportStatus | 静的レポートについての状態情報を取得するために使う属性を示します。


データ ウェアハウスのデータベース テーブル

データ ウェアハウスには、クラスと関連が含まれています。これらは、論理スキーマとそれを作成するために使うメタモデルを構成します。データ ウェアハウスに含まれるテーブルについては、「データ ウェアハウスのスキーマ」を参照してください。


ダイレクト メーラーのデータベース テーブル

次のテーブルは、ダイレクト メーラー データベースに含まれます。

テーブル名 | 説明
Dml_attachments | ダイレクト メーラー ジョブのファイル アタッチメントを指定するために使われる属性が含まれます。
Dml_job_errors | ダイレクト メーラー メッセージの送信中に発生したエラーを記述するために使われる属性が含まれます。
Dml_jobs | ダイレクト メーラー ジョブのリストが含まれます。


マーケティングのデータベース テーブル

マーケティングのテーブルは、キャンペーン サイト リソースによって参照されるデータベースにあります。

テーブル名 | 説明
Ad_item | Web ページ用にスケジュール設定された広告コンテンツを示し、広告の実行時刻を表すデータ メンバと広告をその対象商品にリンクするコードが含まれます。
Campaign | 広告主のマーケティング キャンペーン実行に関係するビジネス プロセスを定義します。
Campaign_item | マーケティング キャンペーンまたはスケジュール設定された広告、あるいはこの両方に含まれるコンテンツを示します。
Campaign_item_types | マーケティング システムで使用できるキャンペーン項目のタイプを示します。
Campaigns_version | スキーマ バージョン情報が含まれます。カスタム キャンペーン項目タイプを作成した場合は、ここに登録する必要があります。
Creative | 広告または割引の表示方法についての情報が含まれます。
Creative_property | 各クリエイティブ タイプに含まれる置換文字列を、クリエイティブ タイプの置換文字列ごとに 1 エントリずつ示します。
Creative_property_value | クリエイティブ プロパティの値が含まれます。
Creative_size | 特定のクリエイティブをページに表示するために必要なスロットのサイズを示します。
Creative_type | クリエイティブの表示方法を記述する書式設定情報が含まれます。
Creative_type_xref | 各タイプのキャンペーン項目に使用できるクリエイティブ タイプ (テンプレート) を決定します。
Customer | Commerce Server 2000 Web サイトを介して広告を使う顧客を定義します。
Dm_item | 住所や書式設定情報などのスケジュール設定されたダイレクト メール項目を示します。
Event_type | マーケティング イベントを分類します。
Industry_code | 選択アルゴリズムによって同じページに同じ業種の異なる顧客からの 2 つの広告が表示されないようにする属性が含まれます。
Order_discount | 割引された販売項目を表します。このクラスは、項目および販売条件について説明したデータ メンバを含んでいます。
Order_discount_expression | 値引きに必要な資格式を識別します。
Order_discount_misc | 内部ビジネス デスクにのみ使います。
Page_group | Web ページでマーケティング キャンペーンのために使われるカスタム コンテンツ項目のグループを表します。
Page_group_xref | カスタム Web ページ コンテンツと、そのコンテンツを含む、1 つの Web ページまたは複数の Web ページの論理セットを相互に参照します。
Performance_total | 各キャンペーン項目に対するクリックや要求などのイベントの集計カウントを記録します。
Target | 特定の種類のユーザーなど、マーケティング コンテンツおよびカスタム Web コンテンツの対象を定義します。
Target_group | マーケティング コンテンツおよびカスタム Web コンテンツの対象となるグループを定義します。
Target_group_xref | 対象グループと対象グループ用カスタム コンテンツを相互に参照します。


予測データベース テーブル

次のテーブルは、データ ウェアハウスに含まれます。

テーブル名 | 説明
PredictorModelCfgs | 利用できるモデル構成を示します。
PredictorDataTables | ソース データ テーブルおよび属性テーブルへのインデックスとして機能します。
PredictorModels | これらを構築するために使われた実際のモデルとパラメータを格納します。


商品カタログのデータベース テーブル

商品カタログのテーブルは、商品カタログ サイト リソースによって参照されるデータベースにあります。

次の表は、商品カタログ データベース内の各テーブルを説明しています。

テーブル名 | 説明
CatalogAttributes | 各ユーザーが定義したカタログ プロパティ定義の行が含まれ、プロパティの属性を説明しています。
CatalogDefinitions | 各カテゴリまたは商品定義の行が含まれます。
CatalogDefinitionProperties | カテゴリと商品定義を、それらが持つプロパティと関連付けます。
CatalogGlobal | 各商品カタログの行が含まれます。
CatalogUsedDefinitions | 1 つまたは複数のカタログで使われている商品またはカタログ定義を記録します。
CatalogEnumValues | カタログ列挙データ型プロパティの有効な値を定義します。
CatalogStatus | インポートおよびエクスポート操作の状態を記録します。
CatalogCustomCatalogs | 各カスタム カタログの行が含まれます。
CatalogCustomPrices | カスタム カタログのカテゴリに適用される特別価格のルールを記録します。
catalogname_ProductsComplete | カタログ catalogname のすべての商品、商品バリエーション、およびカテゴリが含まれます。
catalogname_Relationships | カタログ catalogname の商品とカテゴリ間の関連付けがすべて含まれます。
catalogname_Hierarchy | カタログ catalogname のカテゴリ階層 (親子関係) を記録します。
CatalogSet_Catalogs | カタログからカタログ セットへのマッピングを定義します。
CatalogSet_Info | カタログ セットの詳細が示されている各カタログ セットの行が含まれます。
CatalogToVendorAssociation | 各カタログに関連付けられた製造元についての詳細が含まれます。


プロファイルのデータベース テーブル

プロファイルのテーブルは、プロファイル サイト リソースによって参照されるデータベースにあります。

テーブル名 | 説明
Addresses | ユーザーと組織の住所が含まれます。サイトによって収集されたプロファイル システムのランタイム データを格納するために使われます。
BlanketPOs | 注文情報が含まれます。サイトによって収集されたプロファイル システムのランタイム データを格納するために使われます。
ClassDef | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
ClsAttrib | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
ColDef | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
CommerceServerCatalogs | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
ES_ExprExprDeps | 式相互の依存関係が含まれます。
ES_ExprInfo | 式についての情報が含まれます。
ES_ExprProfDeps | 式とプロファイルの依存関係が含まれます。
GroupMem | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
MemAttrib | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
MemberDef | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
OrganizationObject | 組織オブジェクト情報が含まれます。サイトによって収集されたプロファイル システムのランタイム データを格納するために使われます。
RelDef | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
SourceAttrib | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
SourceDef | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
TableDef | プロファイルまたはデータ ウェアハウスのスキーマ情報が含まれます。
UserObject | ユーザー オブジェクト情報が含まれます。サイトによって収集されたプロファイル システムのランタイム データを格納するために使われます。


トランザクションのデータベース テーブル

トランザクションのテーブルは、トランザクション サイト リソースによって参照されるデータベースにあります。

テーブル名 | 説明
BasketGroup | status=basket または status=template の注文グループを保持します。
CatalogProducts_AuctionBid | オークション品目の入札価格を保持します。
CatalogProducts_AuctionItem | オークションに出される品目を示します。
counters | GenId オブジェクトによって使われるカウンタが含まれます。たとえば、連続する注文追跡番号に使われます。
OrderFormHeader | 注文グループ情報を注文フォーム レベルで保存します。
OrderFormLineItems | 注文グループ情報を項目レベルで保存します。
OrderGroup | 外部レベルの注文グループ情報を保持します。
OrderGroupAddresses | 注文グループに含まれる住所を保持します。
TransCategory | トランザクション DTS タスクが転送するテーブルが含まれます。
TransDimension | DTS がユーザー インターフェイスに表示する列が含まれます。既定では、キー フィールドは転送され、ユーザー インターフェイスには表示されません。RequiredDim 列は、ユーザー インターフェイスの既定の列を決定します。
UserFilter | 顧客および取引先サービス用に、ユーザーの検索状態を保持します。


トランザクション構成のデータベース テーブル

トランザクション構成のテーブルは、トランザクション構成サイト リソースによって参照されるデータベースにあります。

テーブル名 | 説明
CatalogCache_Virtual_Directory | カタログ情報に基づいてキャッシュを使うアプリケーションのリストが含まれます。このテーブルは、Web ファームのサーバが、カタログ情報をビジネス デスクにキャッシュしていることを通知するために使います。
Decode | コードをデコードします (たとえば、1=バスケット、2=テンプレート、3=注文)。
Region | 国/地域および州/都道府県を示す名前とコードを保持します。
RegionalTax | SampleRegionalTax パイプライン コンポーネントの税率が含まれます。
ShippingConfig | 使用可能な送付方法についての情報が含まれます。
TableShippingRates | StepwiseShipping パイプライン コンポーネントの送料についての情報が含まれます。
TxVirtual_Directory | 送料および税キャッシュを使用しているアプリケーションのリストが含まれます。これは、Web ファームのサーバが、ビジネス デスクに対してそのキャッシュを通知するために使います。


スタイル シート リファレンス

.css という拡張子を持つファイルであるカスタマイズ可能なスタイル シートを使うと、表示される HTML 要素のクラスごとの外観を、1 つの場所からまとめて制御することができます。Commerce Server ビジネス デスクでは、このようなスタイル シート ファイルを 2 つ、さまざまな場面で使っています。1 つは Bizdesk.css で、もう 1 つは Navtree.css です。Bizdesk.css はコンテンツ ウィンドウの表示を制御するために使われ、Navtree.css はナビゲーション ウィンドウの表示を制御するために使われます。

注

  • スタイルを変更すると、ビジネス デスクの他の箇所で望ましくない影響が現れる可能性もあります。そのため、変更は慎重に行う必要があります。

  • これらの 2 つの .css ファイルに定義されたスタイルの中には、使われなくなっているものもあります。このリファレンスで説明されていないスタイルは使われなくなっていると考えてください。

これらの 2 つのファイルには多数のスタイルが定義されているので、このリファレンスでは、スタイルを論理的に区分し、概要を説明します。

ここでは、次のトピックについて説明します。

  • Bizdesk.css : Bizdesk.css ファイルに定義されている、コンテンツ ペインの表示を制御するためのスタイルについて説明します。

  • Navtree.css : Navtree.css ファイルに定義されている、ナビゲーション ペインの表示を制御するためのスタイルについて説明します。


Bizdesk.css

カスタマイズ可能なスタイル シート ファイル Bizdesk.css には、Commerce Server ビジネス デスクのコンテンツ ペインで使われるスタイルが定義されています。これらのスタイルは 2 つのカテゴリに分類できます。1 つは、コンテンツ ペインに表示される操作ページに直接適用されるスタイルです。もう 1 つは、操作ページで共通に使われる HTML コンポーネント (HTC) の 1 つに適用されるスタイルです。

ここでは、これらのカテゴリの詳細を説明します。

次のトピックについて説明します。

  • 操作ページのスタイル : Bizdesk.css ファイルに定義されている操作ページのスタイルについて説明します。

  • HTML コンポーネントのスタイル : Bizdesk.css ファイルに定義されている HTC のスタイルについて説明します。


操作ページのスタイル

操作ページのスタイルは、操作ページ全体に適用されるスタイル、タイトル バーのスタイル、タスク バーのスタイル、ステータス バーのスタイル、検索ペインのスタイルの 5 つの基本カテゴリに分類できます。ここでは、この分類に基づいて、詳細に説明します。

次のトピックについて説明します。

  • 操作ページの基本スタイル : Bizdesk.css ファイルに定義されている、操作ページに直接適用されるスタイルについて説明します。

  • タイトル バーのスタイル : Bizdesk.css ファイルに定義されている、タイトル バーに適用されるスタイルについて説明します。

  • タスク バーのスタイル : Bizdesk.css ファイルに定義されている、タスク バーに直接適用されるスタイルについて説明します。

  • ステータス バーのスタイル : Bizdesk.css ファイルに定義されている、ステータス バーに直接適用されるスタイルについて説明します。

  • 検索ペインのスタイル : Bizdesk.css ファイルに定義されている、検索ペインに直接適用されるスタイルについて説明します。


操作ページの基本スタイル

Commerce Server ビジネス デスクの操作ページには基本スタイルが含まれており、この基本スタイルに適合していれば、Bizdesk.css ファイルで集中的にスタイルを変更できます。

これらのスタイルは、HTML 要素、特定の class 属性値に関連付けられた要素、および特定の id 属性値に関連付けられた要素に対して定義されています。これらの 3 つのスタイル カテゴリについて、次に説明します。

要素スタイル

A

アンカー タグを表示するときに使われるスタイル特性を定義します。

BODY

ボディ タグを表示するときに使われる基本スタイル特性を定義します。

BUTTON

ボタン タグを表示するときに使われるスタイル特性を定義します。

DIV

DIV タグを表示するときに使われるスタイル特性を定義します。

FORM

フォームを表示するときに使われるスタイル特性を定義します。

H1

第 1 レベルの見出しを表示するときに使われるスタイル特性を定義します。

H2

第 2 レベルの見出しを表示するときに使われるスタイル特性を定義します。

H3

第 3 レベルの見出しを表示するときに使われるスタイル特性を定義します。

H4

第 4 レベルの見出しを表示するときに使われるスタイル特性を定義します。

H5

第 5 レベルの見出しを表示するときに使われるスタイル特性を定義します。

H6

第 6 レベルの見出しを表示するときに使われるスタイル特性を定義します。

INPUT

単一行テキスト ボックス要素を表示するときに使われるスタイル特性を定義します。

LABEL

ラベル要素を表示するときに使われるスタイル特性を定義します。

OPTION

選択オプション要素を表示するときに使われるスタイル特性を定義します。

P

段落を表示するときに使われるスタイル特性を定義します。

SELECT

選択要素を表示するときに使われるスタイル特性を定義します。

SPAN

範囲要素を表示するときに使われるスタイル要素を定義します。

SPAN.bdexpandicon

"bdexpandicon" クラスが関連付けられている範囲要素を表示するときに使われるスタイル特性を定義します。"bdexpandicon" クラスは、左矢印、右矢印、上矢印、または下矢印をそれぞれ生成する、Webdings フォントで表示される "3"、"4"、"5"、または "6" の文字を含む要素に使われます。

STRONG

強調個所として指定されている内容を表示するときに使われるスタイル特性を定義します。

TD

標準テーブル セルを表示するときに使われるスタイル特性を定義します。

TEXTAREA

複数行テキスト ボックス要素を表示するときに使われるスタイル特性を定義します。

TH

テーブルの見出しセルを表示するときに使われるスタイル特性を定義します。

クラス スタイル

.bdbutton

コンテンツ ペイン内のボタンを表示するときに使われる共通の特性の基本スタイルを定義します。このクラスは、ビジネス デスク内に表示されるあらゆるボタンに使われます。

.bdDebug

デバッグが有効になっているときの、デバッグ テキストに適用されるスタイル特性を定義します。デバッグは、Global.asa ファイルでグローバル変数 SHOW_DEBUG_TEXT を True に設定することにより有効になります。

.editPageContainer

編集ページ上の要素 (通常 DIV) を含むメイン ページを表示するときに使われるスタイル特性を定義します。

.waitDisplay

コンテンツ ペイン、ExpressionBuilder HTC、または ListSheet HTC 内の wait 表示を表示するときに使われるスタイル特性を定義します。

.webdings

webding フォントを使う要素を表示するときに使われるスタイル特性を定義します。"webdings" クラスは、左矢印、右矢印、上矢印、または下矢印をそれぞれ生成する、Webdings フォントで表示される "3"、"4"、"5"、または "6" の文字を含む要素に使われます。

ID スタイル

#bdcontentarea

タスク バーとステータス バーの間にある、操作ページの要素 (通常 DIV) を含むコンテンツ領域を表示するときに使われるスタイル特性を定義します。

#bdhelparea

タスク バーの右端にあるヘルプ ボタン領域を表示するときに使われるスタイル特性を定義します。


タイトル バーのスタイル

次のスタイルは、タイトル バーに関連するもので、class 属性と id 属性を使います。

クラス スタイル

.bdcolorbar

一覧ページと編集ページを区別する、色付きタイトル バーおよびステータス バーを表示するときに使われるスタイル特性を定義します。

.bdcolorbar IMG

色付きタイトル バーでタイトル バー イメージを表示/非表示するために使われるスタイル特性を定義します。

.bdeditmode .bdcolorbar

編集ページに色付きタイトル バーおよびステータス バーを表示するときに使われるスタイル特性を定義します。

.bdeditmode .bdcolorbar IMG

編集ページの色付きタイトル バーに、ページ タイトル バー イメージを表示するときに使われるスタイル特性を定義します。

ID スタイル

#bdtitlebar

タイトル バーを表示するときに使われるスタイル特性を定義します。

#bdtitletext

タイトル バー内のページ タイトル テキストを表示するときに使われるスタイル特性を定義します。


タスク バーのスタイル

次のスタイルは、タスク バーに関連するもので、class 属性と id 属性を使います。

クラス スタイル

.bdtaskbutton

標準タスク ボタンを表示するときに使われるスタイル特性を定義します。

.bdtaskbutton IMG

標準タスク ボタン内のタスク アイコン イメージを表示するときに使われるスタイル特性を定義します。

.bdtaskbuttonmenu

ドロップダウン タスク ボタンを表示するときに使われるスタイル特性を定義します。

.bdtaskbuttonmenu IMG

ドロップダウン タスク ボタン内のタスク アイコン イメージを表示するときに使われるスタイル特性を定義します。

.bdtaskdisabled

無効にされているタスクを表示するときに使われるスタイル特性を定義します。

.bdtaskdisabled IMG

無効にされているタスク内のタスク アイコン イメージを表示するときに使われるスタイル特性を定義します。

.bdtaskmenu

タスク メニューを表示するときに使われるスタイル特性を定義します。

.bdtaskmenu DIV

タスク メニュー内のメニュー項目を表示するときに使われるスタイル特性を定義します。

.bdtaskover

マウスでポイントされたときのタスク ボタンを表示するときに使われるスタイル特性を定義します。

.bdtaskpress

マウスで押された (クリックされた) ときのタスク ボタンを表示するときに使われるスタイル特性を定義します。

.bdtasktextbutton

(タスク アイコンが定義されていない場合) テキスト ベースのタスク ボタンを表示するときに使われるスタイル特性を定義します。

BUTTON.bdtaskover IMG

マウスでポイントされたときのボタンに関連付けられたタスク アイコン イメージを表示するときに使われるスタイル特性を定義します。

BUTTON.bdtaskpress IMG

マウスで押された (クリックされた) ときのボタンに関連付けられたタスク アイコン イメージを表示するときに使われるスタイル特性を定義します。

ID スタイル

#bdtaskarea

タスク バーの左端にあるタスク ボタン領域を表示するときに使われるスタイル特性を定義します。

#bdtaskbar

id 属性値 "bdtaskarea" と "bdhelparea" に関連付けられた領域を含むタスク領域全体を表示するときに使われるスタイル特性を定義します。


ステータス バーのスタイル

次のスタイルは、ステータス バーに関連するもので、class 属性と id 属性を使います。

クラス スタイル

.bdcolorbar

一覧ページと編集ページを区別する、色付きタイトル バーおよびステータス バーを表示するときに使われるスタイル特性を定義します。

.bdcolorbar IMG

色付きタイトル バーでタイトル バー イメージを表示/非表示するために使われるスタイル特性を定義します。

.bdeditmode .bdcolorbar

編集ページに色付きタイトル バーおよびステータス バーを表示するときに使われるスタイル特性を定義します。

.bdeditmode .bdcolorbar IMG

編集ページの色付きタイトル バーに、ページ タイトル バー イメージを表示するときに使われるスタイル特性を定義します。

ID スタイル

#bdstatusbar

右側のペインの下にあるステータス バーを表示するときに使われるスタイル特性を定義します。

#bdstatusbar IMG

ステータス バー内のアニメーション ローディング イメージを表示するときに使われるスタイル特性を定義します。

#bdstatusbar NOBR

ステータス バーの NOBR 要素内のテキストを表示するときに使われるスタイル特性を定義します。


検索ペインのスタイル

次のスタイルは、検索ペインに関連するもので、class 属性と id 属性を使います。

クラス スタイル

DIV.filtertext

class 属性値 "filtertext" に関連付けられた DIV 要素を表示するときに使われるスタイル特性を定義します。このクラスは、フィルタ処理されたリスト上に表示される "Filtered View" テキストを書式設定するために使われます。

.findByContent

検索ペインに表示される要素を表示するときに使われるスタイル特性を定義します。このスタイルは、class 属性値 "bdfindbycontent" を持ち、検索ペインに表示されるすべての UI コントロールを含む一覧ページの要素で使われる必要があります。

ID スタイル

#bdfindbybody

タイトルの下にある検索ペインの部分を表示するときに使われるスタイル特性を定義します。これは、InsertTaskBar ルーチンと InsertEditTaskbar ルーチンによって描画される、一覧ページの "id=bdfindbycontent" 要素が表示されるコンテナです。

#bdfindbyclose

閉じるボタンを含む検索ペインの右側の部分を表示するときに使われるスタイル特性を定義します。

#bdfindbycontent

検索ペイン内のページ上の検索条件の内容を表示するときに使われるスタイル特性を定義します。"bdfindbycontent" という ID を持つ要素は、検索ペインに表示されるすべての UI コントロールを含む必要があります。class 属性として "findByContent" が設定されている必要もあります。

#bdfindbytitle

検索ペイン タイトル バーの左側のタイトル テキスト部分を表示するときに使われるスタイル特性を定義します。

#bdfindbytitlebar

タイトル テキストと閉じるボタンを含む検索ペインの部分を表示するときに使われるスタイル特性を定義します。

DIV#bdfindby

タイトル バーと検索内容領域を含む検索ペイン全体を含む DIV 要素を表示するときに使われるスタイル特性を定義します。

#bdtaskbtnfindclose

検索ペインの閉じるボタン (検索ペインの右上隅の "x") を表示するときに使われるスタイル特性を定義します。


HTML コンポーネントのスタイル

HTML コンポーネント (HTC) のスタイルは、スタイルを適用する HTC の種類によって次の基本カテゴリに分類できます。ここでは、この分類に基づいて、詳細に説明します。

次のトピックについて説明します。

  • Calendar HTC のスタイル : Bizdesk.css ファイルに定義されている、Calendar HTC に適用されるスタイルについて説明します。Calender HTC は、Date 型の EditField HTC 用のドロップダウン リストで使われます。

  • DynamicTable HTC のスタイル : Bizdesk.css ファイルに定義されている、DynamicTable HTC に適用されるスタイルについて説明します。

  • EditField HTC のスタイル : Bizdesk.css ファイルに定義されている、EditField HTC に適用されるスタイルについて説明します。

  • EditSheet HTC のスタイル : Bizdesk.css ファイルに定義されている、EditSheet HTC に適用されるスタイルについて説明します。

  • ExpressionBuilder HTC のスタイル : Bizdesk.css ファイルに定義されている、ExpressionBuilder HTC に適用されるスタイルについて説明します。

  • ListBox HTC のスタイル : Bizdesk.css ファイルに定義されている、ListBox HTC に適用されるスタイルについて説明します。

  • ListEditor HTC のスタイル : Bizdesk.css ファイルに定義されている、ListEditor HTC に適用されるスタイルについて説明します。

  • ListSheet HTC のスタイル : Bizdesk.css ファイルに定義されている、ListSheet HTC に適用されるスタイルについて説明します。

  • QueryBuilder HTC のスタイル : Bizdesk.css ファイルに定義されている、QueryBuilder HTC に適用されるスタイルについて説明します。

  • TreeView HTC のスタイル : Bizdesk.css ファイルに定義されている、TreeView HTC に適用されるスタイルについて説明します。


Calendar HTC のスタイル

次のスタイルは、Calender HTC に関連するもので、class 属性を使います。Calendar HTC のインスタンスを作成するには、class 属性値 "calendar" を要素に追加します。

クラス スタイル

.calendar

Calendar.htc ファイルに実装された DHTML の動作を要素に関連付けます。これは、Date 型の EditField HTC のドロップダウン内のカレンダ コントロールを作成するために使われます。

.WholeCalendar

Calendar HTC 全体を構成する、このクラスを含んでいるテーブルを表示するときに使われるスタイル特性を定義します。

.WholeCalendar .CalTable

Calendar HTC の日付グリッドを含むテーブルを表示するときに使われるスタイル特性を定義します。

.WholeCalendar .DateControls

Calendar HTC の上部にある月コントロールと年コントロールを表示するときに使われるスタイル特性を定義します。

.WholeCalendar .Day

表示されている月の、現在選択されていない日の日付セルを表示するときに使われるスタイル特性を定義します。

.WholeCalendar .DaySelected

Calendar HTC 内の現在選択されている日付セルを表示するときに使われるスタイル特性を定義します。

.WholeCalendar .DayTitle

Calendar HTC 内の日付グリッドの上部にある曜日タイトル セルを表示するときに使われるスタイル特性を定義します。

.WholeCalendar .OffDay

現在表示されている月の日ではなく、先月の終わり付近の日または来月の始め付近の日を表示するときに使われるスタイル特性を定義します。


DynamicTable HTC のスタイル

次のスタイルは、DynamicTable HTC に関連するもので、class 属性を使います。DynamicTable HTC のインスタンスを作成するには、class 属性値 "dynamictable" を要素に追加します。

クラス スタイル

.dtBtn

DynamicTable HTC 内の [Accept] ボタン、[Cancel] ボタン、[New] ボタン、および [Remove] ボタンを表示するときに使われるスタイル特性を定義します。

.dtContainer

DynamicTable HTC の主要なコンテナ DIV 要素を表示するときに使われるスタイル特性を定義します。

.dtDataRow TD.dtCell

DynamicTable HTC のデータ テーブル内の標準テーブル セルを表示するときに使われるスタイル特性を定義します。

.dtHeaderTable TD

DynamicTable HTC のヘッダー行内の標準テーブル セルを表示するときに使われるスタイル特性を定義します。

.dtHeaderTable TR

DynamicTable HTC のヘッダー行を表示するときに使われるスタイル特性を定義します。

.dtTableStyle

DynamicTable HTC の主要なテーブル要素を表示するときに使われるスタイル特性を定義します。

.dtTableStyle .dtDataRow

DynamicTable HTC 内のデータ行を表示するときに使われるスタイル特性を定義します。

.dtTableStyle .efDisabled

DynamicTable HTC のコントロール行内の無効にされている EditField HTC を表示するときに使われるスタイル特性を定義します。

.dtTableStyle .lsRowOver TD

DynamicTable HTC 内でマウスでポイントされたときの標準テーブル データを表示するときに使われるスタイル特性を定義します。

.dtTableStyle DIV.dtContainer

DynamicTable HTC 内の主要なコンテナ DIV 要素を表示するときに使われるスタイル特性を定義します。

.dtTableStyle TH.dtCell

DynamicTable HTC 内のテーブル見出しセルを表示するときに使われるスタイル特性を定義します。

.dtTableStyle TR.lsRowSelected TD、.dtTableStyle TR.lsRowSelected INPUT

DynamicTable HTC 内の選択されているデータ テーブル セルまたは選択されている単一行テキスト ボックスを表示するときに使われるスタイル特性を定義します。Password 型の列にデータが表示されるときは "password" 型の HTML INPUT 要素が使われるため、パスワード テキストの代わりに "*" 文字が表示されます。

.dynamicTable

DynamicTable.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efField

EditSheet および DynamicTable HTC 内に、さまざまな種類の EditField HTC を表示するときに使われる共通のスタイル特性を定義します。

.efHide

DynamicTable HTC の EditField HTC セルを非表示にするときに使われるスタイル特性を定義します。


EditField HTC のスタイル

次のスタイルは、EditField HTC に関連するもので、class 属性を使います。EditField HTC のインスタンスを作成するには、class 属性値 "editfield" を要素に追加します。インスタンスを記述するために使われる EditField メタデータ内のノードの種類によって、どのサブコントロールの種類 ("efText"、"efDate" など) の HTC がそのインスタンスに関連付けられるかが決まります。

クラス スタイル

.editField

EditField.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efBoolean

efBoolean.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efBoolean INPUT

Boolean 型の EditField HTC の子であるチェック ボックスを表示するときに使われるスタイル特性を定義します。

.efBorderless

EditField HTC 内の入力要素の境界を削除するスタイル特性を定義します。

.efBrowseReadOnly

EditField HTC 内の対応する参照ボタンを使う必要があると定義されている要素を表示するときに使われるスタイル特性を定義します。

.efBrowseReadOnly INPUT

EditField HTC 内の対応する参照ボタンを使う必要があると定義されている単一行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efBrowseReadOnly TEXTAREA

EditField HTC 内の対応する参照ボタンを使う必要があると定義されている複数行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efDate

efDate.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efDatePicker

Date 型の EditField HTC 内の、クリックするとカレンダが表示されるドロップダウンを表示するときに使われるスタイル特性を定義します。

.efDisabled

無効として指定されている EditField HTC 要素を表示するときに使われるスタイル特性を定義します。

.efDisabled INPUT

EditField HTC 内の無効として指定されている単一行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efDisabled LABEL

Boolean 型の EditField HTC 内の無効として指定されている LABEL 要素を表示するときに使われるスタイル特性を定義します。

.efDisabled TEXTAREA

long テキスト型の EditField HTC 内の無効として指定されている複数行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efDownBtn

カレンダ型の EditField HTC と選択型の EditField HTC に関連付けられた下矢印ボタンを表示するときに使われるスタイル特性を定義します。

.efDropDown

カレンダ型の EditField HTC と選択型の EditField HTC に関連付けられたドロップダウン DIV 要素を表示するときに使われるスタイル特性を定義します。

.efEllipsisBtn

いずれかの EditField HTC に関連付けることができる参照ボタンを表示するときに使われるスタイル特性を定義します。

.efField

EditSheet および DynamicTable HTC 内に、さまざまな種類の EditField HTC を表示するときに使われる共通のスタイル特性を定義します。

.efHide

DynamicTable HTC の EditField HTC セルを非表示にするときに使われるスタイル特性を定義します。

.efInvalid

無効なデータを含んでいるか、必須であるが値が空である EditField HTC を表示するときに使われるスタイル特性を定義します。

.efInvalid INPUT

無効なデータを含んでいるか、必須であるが値が空である単一行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efInvalid TD DIV

EditField HTC 内の、無効なデータを含んでいるか、必須であるが値が空である DIV 要素を表示するときに使われるスタイル特性を定義します。

.efInvalid TEXTAREA

long テキスト型の EditField HTC 内の、無効なデータを含んでいるか、必須であるが値が空である複数行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efNumeric

efNumeric.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efOption

選択型の EditField HTC ドロップダウン リスト内のオプションを表示するときに使われるスタイル特性を定義します。

.efOptionSelect

選択型の EditField HTC ドロップダウン リスト内の選択されているオプションを表示するときに使われるスタイル特性を定義します。

.efPrompt

EditField HTC 内のプロンプト テキストを表示するときに使われるスタイル特性を定義します。

.efReadOnly

読み取り専用の EditField HTC を表示するときに使われるスタイル特性を定義します。

.efReadOnly INPUT

EditField HTC 内の読み取り専用単一行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efReadOnly TEXTAREA

long テキスト型の EditField HTC 内の読み取り専用複数行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efReadWrite

読み取りと書き込みが可能な EditField HTC を表示するときに使われるスタイル特性を定義します。

.efSelect

efSelect.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efSelectScroll

スクロール可能な選択型の EditField HTC を表示するときに使われるスタイル特性を定義します。このスタイルを使うのは、7 つ以上のオプションを持つ選択型の EditField HTC です。オプションがそれより少ない場合、このスタイルは使われません。

.efText

サブタイプが "short" または "password" で、高さが 1 行と定義されているときに、efText.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efTextLong

サブタイプが "long" で、高さが複数行と定義されているときに、efText.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efTextLong .efPrompt

long テキスト型の EditField HTC 内のプロンプト テキストを表示するときに使われるスタイル特性を定義します。

.efTextLong TEXTAREA

long テキスト型の EditField HTC 内の複数行テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.efTime

efTime.htc に実装された DHTML 動作を要素に関連付けます。


EditSheet HTC のスタイル

次のスタイルは、EditSheet HTC に関連するもので、class 属性を使います。EditSheet HTC のインスタンスを作成するには、class 属性値 "editsheet" を要素に追加します。

クラス スタイル

DIV.esCollapsed

EditSheet HTC 内の折りたたまれている編集グループを表示するときに使われるスタイル特性を定義します。

DIV.esCollapsed DIV.esEditgroup

EditSheet HTC 内の折りたたまれている DIV 要素内の編集グループを表示するときに使われるスタイル特性を定義します。

DIV.esContainer

EditSheet HTC 内の編集グループ用コンテナ DIV 要素を表示するときに使われるスタイル特性を定義します。

DIV.esEdittitle

EditSheet HTC 内の編集グループ用タイトル DIV 要素を表示するときに使われるスタイル特性を定義します。

DIV.esExpanded

EditSheet HTC 内の展開されている編集グループを表示するときに使われるスタイル特性を定義します。

DIV.esExpanded DIV.esEditgroup

EditSheet HTC 内の展開されている DIV 要素内の編集グループを表示するときに使われるスタイル特性を定義します。

.editSheet

EditSheet.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.efField

EditSheet および DynamicTable HTC 内に、さまざまな種類の EditField HTC を表示するときに使われる共通のスタイル特性を定義します。

.esEditgroup

EditSheet HTC 内の編集グループを表示するときに使われるスタイル特性を定義します。

.esEditgroup DIV.esContainer

ほかの EditSheet HTC の編集グループ内にネストされている EditSheet HTC コンテナ DIV 要素を表示するときに使われるスタイル特性を定義します。

.esEditgroup DIV.esEdittitle

ほかの EditSheet HTC の編集グループ内にネストされている EditSheet HTC タイトル DIV 要素を表示するときに使われるスタイル特性を定義します。

.esEditgroup SPAN.bdexpandicon

ほかの EditSheet HTC の編集グループ内にネストされている EditSheet HTC 内の展開アイコンを含む範囲を表示するときに使われるスタイル特性を定義します。

.esEditgroup SPAN.esEditbar

ほかの EditSheet HTC の編集グループ内にネストされている EditSheet HTC のタイトル バーを含む範囲を表示するときに使われるスタイル特性を定義します。

.esTableStyle .esDataCell

class 属性が "esTableStyle" に設定されているテーブル内の標準データ セル (EditSheet HTC 内の標準レイアウトの右側) を表示するときに使われるスタイル特性を定義します。

.esTableStyle .esLabelCell

class 属性が "esTableStyle" に設定されているテーブル内のラベル セル (EditSheet HTC 内の標準レイアウトの左側) を表示するときに使われるスタイル特性を定義します。

.esTableStyle .reqIcon

class 属性が "esTableStyle" に設定されているテーブル内の必要なアイコン テーブル セルを表示するときに使われるスタイル特性を定義します。

SPAN.esEditbar

EditSheet HTC のタイトル バーを含む範囲を表示するときに使われるスタイル特性を定義します。

TABLE.esTableStyle

class 属性値 "esTableStyle" が関連付けられたテーブルを表示するときに使われるスタイル特性を定義します。


ExpressionBuilder HTC のスタイル

次のスタイルは、ExpressionBuilder HTC に関連するもので、class 属性と id 属性を使います 。

クラス スタイル

.clsBtnDrop

ExpressionBuilder HTC 内のドロップダウン リストに関連付けられたボタンを表示するときに使われるスタイル特性を定義します。

.clsClauseBldr

ExpressionBuilder HTC 内の QueryBuilder HTC を表示するときに使われるスタイル特性を定義します。

.clsClauseInput

ExpressionBuilder HTC 内のテキスト入力要素を表示するときに使われるスタイル特性を定義しています。

.clsClauseList

ExpressionBuilder HTC 内の句リストを表示するときに使われるスタイル特性を定義します。

.clsClauseList TR

ExpressionBuilder HTC 内の句リスト内のテーブル行を表示するときに使われるスタイル特性を定義します。

.clsDropDown

ExpressionBuilder HTC 内のドロップダウン リストに関連付けられたテキスト ボックスを表示するときに使われるスタイル特性を定義します。

.clsExprBldr

ExpressionBuilder HTC を表示するときに使われるスタイル特性を定義します。

.clsExprBldr TD

ExpressionBuilder HTC 内の標準テーブル セルを表示するときに使われるスタイル特性を定義します。

.clsExprBldr TH

ExpressionBuilder HTC 内のテーブル見出しセルを表示するときに使われるスタイル特性を定義します。

.clsExprRef

ExpressionBuilder HTC 内にネストされている式の参照を表示するときに使われるスタイル特性を定義します。

ID スタイル

#pmGroup、#pmMarker、#pmProfile

QueryBuilder HTC によって内部的に使われます。ExpressionBuilder HTC でも使われます。変更しないでください。


ListBox HTC のスタイル

次のスタイルは、ListBox HTC に関連するもので、class 属性を使います。ListBox HTC のインスタンスを作成するには、class 属性値 "listbox" を要素に追加します。

クラス スタイル

.lbDisabled

無効にされている ListBox HTC を表示するときに使われるスタイル特性を定義します。

.listBox

Listbox.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.listBox .lbHighlighted

ListBox HTC 内の強調表示されている項目を表示するときに使われるスタイル特性を定義します。


ListEditor HTC のスタイル

次のスタイルは、ListEditor HTC に関連するもので、class 属性と id 属性を使います。ListEditor HTC のインスタンスを作成するには、class 属性値 "listeditor" を要素に追加します。

クラス スタイル

.listEditor

ListEditor.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.listEditor .listSheetF

ListEditor HTC 内に埋め込まれている ListSheet HTC を表示するときに使われるスタイル特性を定義します。

.listEditor .lsNoSort

ListEditor HTC 内の並べ替えできない列見出しを表示するときに使われるスタイル特性を定義します。

ID スタイル

.listEditor #leListContainer

ListEditor HTC 内に埋め込まれている ListSheet HTC 用コンテナ要素を表示するときに使われるスタイル特性を定義します。


ListSheet HTC のスタイル

次のスタイルは、ListSheet HTC に関連するもので、class 属性と id 属性を使います。ListSheet HTC のインスタンスを作成するには、class 属性値 "listsheet" を要素に追加します。

クラス スタイル

.listSheet

ListSheet.htc ファイルに実装された DHTML 動作を要素に関連付けます。

.listSheet .lsPageButton

ListSheet HTC 内のページ ボタンを表示するときに使われるスタイル特性を定義します。

.listSheet .lsPageText

ListSheet HTC 内のページ番号テキスト ボックスを表示するときに使われるスタイル特性を定義します。

.listSheet .lsSelectButtons

ListSheet HTC 内の選択ボタンを表示するときに使われるスタイル特性を定義します。

.listSheetF

ListSheetF.htc ファイルに実装された DHTML 動作を要素に関連付けます。これは、階層リスト、ページング、または複数選択をサポートしない ListSheet の機能縮小バージョンです。この HTC は、ListEditor HTC 内に埋め込まれています。

.listSheetF TR

ListEditor HTC 内で使われる ListSheet HTC 内のデータ テーブル行を表示するときに使われるスタイル特性を定義します。

.lsListArea

ListSheet HTC 内のデータ行を含むスクロール可能領域を表示するときに使われるスタイル特性を定義します。

.lsSpacer

ListSheet HTC の見出し行内の列のサイズ変更コントロールを表示するときに使われるスタイル特性です。

.lsTableStyle .lsNoSort

ListSheet HTC 内の並べ替えできない列見出しを表示するときに使われるスタイル特性を定義します。

.lsTableStyle .lsRowClosed TD

ListSheet HTC の閉鎖行内の標準テーブル セルを表示するときに使われるスタイル特性を定義します。

.lsTableStyle .lsSortButton

ListSheet HTC 内の列見出し並べ替えボタンを表示するときに使われるスタイル特性を定義します。

.lsTableStyle TD.lsCell SPAN

ListSheet HTC 内のテーブル セル内のデータがバインドされた範囲を表示するときに使われるスタイル特性を定義します。

.lsTableStyle TD.lsCell SPAN.bdexpandicon

ListSheet HTC 内のテーブル セル内の展開アイコンを含む範囲を表示するときに使われるスタイル特性を定義します。グループを閉じるときは右矢印、グループを展開するときは下矢印で表示されます。

.lsTableStyle TD.lsObjectCell

2 層式 ListSheet HTC の詳細行内のサブオブジェクト テーブル セルを表示するときに使われるスタイル特性を定義します。

.lsTableStyle TH.lsCell

ListSheet HTC 内のテーブル見出しセルを表示するときに使われるスタイル特性を定義します。

.lsTableStyle THEAD TR

ListSheet HTC 内のテーブル見出し行を表示するときに使われるスタイル特性を定義します。

.lsTableStyle TR TR.lsRowClosed TD

ListSheet HTC 内の閉鎖行内の標準テーブル セルを表示するときに使われるスタイル特性を定義します。

.lsTableStyle TR.lsRowOver

ListSheet HTC 内の、マウスでポイントされたときのテーブル行を表示するときに使われるスタイル特性を定義します。

.lsTableStyle TR.lsRowSelected、.lsTableStyle TR.lsRowSelected INPUT

ListSheet HTC 内の、単一行テキスト ボックスを含む行など、選択されているテーブル行を表示するときに使われるスタイル特性を定義します。Password 型の列にデータが表示されるときは "password" 型の HTML INPUT 要素が使用されるため、パスワード テキストの代わりに "*" 文字が表示されます。

TABLE.lsTableStyle

ListSheet HTC 内のテーブルを表示するときに使われるスタイル特性を定義します。

TABLE.selected #objectTable TR .lsCell

ListSheet HTC 内の選択されている行の下にあるサブオブジェクト テーブル内のセルを表示するときに使われるスタイル特性を定義します。

TABLE.selected #objectTable TR TH.lsNoSort

ListSheet HTC 内の選択されている行の下にあるサブオブジェクト テーブル内の並べ替えできないテーブル見出しセルを表示するときに使われるスタイル特性を定義します。

TABLE.selected TD.lsCell

ListSheet HTC 内の選択されているテーブル内の標準データ セルを表示するときに使われるスタイル特性を定義します。

#objectTable TR TH.lsNoSort

ListSheet HTC 内のサブオブジェクト テーブル内の詳細行内の並べ替えできないテーブル見出しセルを表示するときに使われるスタイル特性を定義します。

.selected, .selected INPUT

選択されている行内にある ListSheet HTC 要素、およびそれらの要素の子である単一行テキスト ボックスを表示するときに使われるスタイル特性を定義します。Password 型の列は "password" 型に設定された INPUT 要素を使って表示されるので、値の代わりに "*" 文字が表示されます。

.wait DIV、.wait SPAN、.wait TD、.wait TH、.wait BUTTON、.wait INPUT

"wait" クラスの要素、およびそれらの要素の子である DIV 要素、範囲、標準テーブル セル、テーブル見出しセル、ボタン、単一行テキスト ボックスを表示するときに使われるスタイル特性を定義します。このクラスは、ListSheet を読み込み中にすべての要素に wait カーソルを追加するために使われます。

.waitDisplay

コンテンツ ペイン、ExpressionBuilder HTC、または ListSheet HTC に wait表示を表示するときに使われるスタイル特性を定義します。

ID スタイル

.listSheet #btnSelectAll、.listSheet #btnUnselectAll

ListSheet HTC 内の [Select All] ボタンと [Deselect All] ボタンを表示するときに使われるスタイル特性を定義します。


QueryBuilder HTC のスタイル

次のスタイルは、QueryBuilder HTC に関連するもので、class 属性を使います。QueryBuilder HTC のインスタンスを作成するには、動作スタイル "/widgets/exprbldHTC/querybuilder.htc" を要素に追加します。

クラス スタイル

.clsQueryBldr

QueryBuilder HTC 全体を表示するときに使われるスタイル特性を定義します。

.clsQueryBldr .clsDisabled

無効として指定されている QueryBuilder HTC の子要素を表示するときに使われるスタイル特性を定義します。

.clsQueryBldr .clsDisabled A

無効にされている QueryBuilder HTC の子要素内のアンカー要素を表示するときに使われるスタイル特性を定義します。

.clsQueryBldr .clsSelected、.clsQueryBldr .clsSelected TD

選択対象と指定されている QueryBuilder HTC の子要素、およびそれらの子要素内の標準テーブル セルを表示するときに使われるスタイル特性を定義します。

.clsQueryBldr TD

QueryBuilder HTC 内の標準テーブル セルを表示するときに使われるスタイル特性を定義します。

.clsQueryBldr TH

QueryBuilder HTC 内のテーブル見出しセルを表示するときに使われるスタイル特性を定義します。

.clsQueryBldr TR

QueryBuilder HTC 内のテーブル行を表示するときに使われるスタイル特性を定義します。

ID スタイル

.clsQueryBldr #menuitem

QueryBuilder HTC 内のドロップダウン リスト内のメニュー項目を表示するときに使われるスタイル特性を定義します。

.clsQueryBldr #popupmenu

QueryBuilder HTC 内のポップアップ (サブ) メニューを表示するときに使われるスタイル特性を定義します。

.clsQueryBldr #submenumark

QueryBuilder HTC 内のサブメニューの存在を示す矢印を表示するときに使われるスタイル特性を定義します。


TreeView HTC のスタイル

次のスタイルは、TreeView HTC に関連するもので、class 属性を使います。TreeView HTC のインスタンスを作成するには、class 属性値 "treeview" を要素に追加します。

クラス スタイル

.treeView

TreeView.htc に実装された DHTML 動作を要素に関連付けます。

.treeView DIV DIV

TreeView HTC 内の第 2 レベルの DIV 要素を表示するときに使われるスタイル特性を定義します。

.treeView DIV.tvClosed DIV

TreeView HTC 内の閉じられている第 1 レベルの DIV 要素内の第 2 レベルの DIV 要素を表示するときに使われるスタイル特性を定義します。

.treeView DIV.tvDisabled

TreeView HTC 内の無効にされている DIV 要素を表示するときに使われるスタイル特性を定義します。

.treeView DIV.tvGroupOver

TreeView HTC 内のリーフ ノードではなく、強調表示されている DIV 要素を表示するときに使われるスタイル特性を定義します。

.treeView DIV.tvHide

TreeView HTC 内の DIV 要素を非表示にするときに使われるスタイル特性を定義します。

.treeView DIV.tvOver

TreeView HTC 内のリーフ ノードである、強調表示されている DIV 要素を表示するときに使われるスタイル特性を定義します。

.treeView DIV.tvSkip DIV

TreeView HTC 内のスキップされた DIV 要素内の DIV 要素を表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip DIV DIV

TreeView HTC 内のスキップされた DIV 要素の下の第 2 レベルの DIV 要素を表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip DIV LABEL

TreeView HTC 内のスキップされた DIV 要素の下のラベルを表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip DIV SPAN

TreeView HTC 内のスキップされた DIV 要素の下の DIV 要素内の範囲を表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip DIV.tvClosed DIV

TreeView HTC 内のスキップされた DIV 要素の下の閉じられた DIV 要素内の DIV 要素を表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip DIV.tvDisabled DIV

TreeView HTC 内のスキップされた DIV 要素の下の無効にされている DIV 要素内の DIV 要素を表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip DIV.tvHide DIV

TreeView HTC 内のスキップされた DIV 要素の下の非表示 DIV 要素内の DIV 要素を表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip LABEL

TreeView HTC 内のスキップされた DIV 要素内のラベルを表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView DIV.tvSkip SPAN

TreeView HTC 内のスキップされた DIV 要素内の範囲を表示するときに使われるスタイル特性を定義します。"tvSkip" クラスを含むスタイルは、スキップされた要素内のデータ要素を書式設定するために使われます。

.treeView LABEL

TreeView HTC 内のラベルを表示するときに使われるスタイル特性を定義します。

.treeView LABEL.tvSelected

TreeView HTC 内の選択されているラベルを表示するときに使われるスタイル特性を定義します。

.treeView SPAN

TreeView HTC 内の範囲を表示するときに使われるスタイル特性を定義します。


Navtree.css

カスタマイズ可能なスタイル シート ファイル Navtree.css には、Commerce Server ビジネス デスクのナビゲーション ペインで使われるスタイルが定義されてます。スタイルには、要素のスタイルとクラスのスタイルがあります。要素のスタイルは、その要素のクラス属性や ID 属性の設定とは無関係に、その要素に適用されるスタイルです。クラスのスタイルは、クラス属性が特定の指示された値を持っている場合にだけ、1 つ以上の要素の型に適用されるスタイルです。スタイルが適用される状況は、親または親の親の何らかの特性に応じて制限されます。

ここでは、これらのスタイル カテゴリの詳細を説明します。

要素スタイル

.bdcategory NOBR

ナビゲーション ペインのカテゴリ レベルに改行のないテキストを表示するときに使われるスタイル特性を定義します。

BODY

ナビゲーション ペイン内の本体要素の内容を表示するときに使われるスタイル特性を定義します。

.categoryhighlight NOBR

ナビゲーション ペイン内の強調表示されているカテゴリ レベルのエントリ内に改行のないテキストを表示するときに使われるスタイル特性を定義します。

.categoryhighlight NOBR SPAN

ナビゲーション ペイン内の強調表示されているカテゴリ レベルのエントリ内に改行のないテキスト内の範囲を表示するときに使われるスタイル特性を定義します。

DIV.bdcs4 A

ナビゲーション ペイン内の www.microsoft.com へのリンクがあるアンカー タグを表示するときに使われるスタイル特性を定義します。

DIV.bdmenu UL

ナビゲーション ツリー内のカテゴリ レベルで並べ替えられていないリスト要素を表示するときに使われるスタイル特性を定義します。

DIV.bdmenu UL DIV

ナビゲーション ツリー内の最初のレベルで並べ替えられていないリスト要素内の DIV 要素を表示するときに使われるスタイル特性を定義します。

DIV.bdmenu UL UL

ナビゲーション ツリー内のモジュール レベルで並べ替えられていないリスト要素を表示するときに使われるスタイル特性を定義します。

DIV.bdmenu UL UL DIV

ナビゲーション ツリー内のモジュール レベルで並べ替えられていないリスト要素内の DIV 要素を表示するときに使われるスタイル特性を定義します。

.expanded NOBR

ナビゲーション ツリー内の展開されているカテゴリ内に改行のないテキストを表示するときに使われるスタイル特性を定義します。

HTML

ナビゲーション ペイン内の HTML を表示するときに使われる基本スタイル特性を定義します。

クラス スタイル

.bdDebug

デバッグが有効になっているときの、デバッグ テキストに適用されるスタイル特性を定義します。デバッグは、Global.asa ファイルでグローバル変数 SHOW_DEBUG_TEXT を True に設定することにより有効になります。

.bdmodule

ナビゲーション ペイン内のモジュール エントリを表示するときに使われるスタイル特性を定義します。

.categoryselect

ナビゲーション ペイン内の選択されているカテゴリを表示するときに使われるスタイル特性を定義します。

.collapsed SPAN.bdcollapseicon

ナビゲーション ペイン内のカテゴリが縮小されたときの縮小アイコンを表示するときに使われるスタイル特性を定義します。

.collapsed SPAN.bdexpandicon

ナビゲーション ペイン内のカテゴリが縮小されたときの展開アイコンの表示を抑制するために使われるスタイル特性を定義します。

.collapsed UL.bdmodulelist

ナビゲーション ペイン内のカテゴリが縮小されたときの対応するモジュールの表示を抑制するために使われるスタイル特性を定義します。

DIV.bdfooter

ナビゲーション ペイン内の Microsoft.com へのリンクを含むフッター領域を表示するときに使われるスタイル特性を定義します。

DIV.bdlogo

ナビゲーション ペイン内の [バージョン情報] ダイアログ ボックスへのリンクを含むロゴ領域を表示するときに使われるスタイル特性を定義します。

DIV.bdmenu

ナビゲーション ペイン内のナビゲーション ツリー全体を含む DIV 要素を表示するときに使われるスタイル特性を定義します。

DIV.bdscrollwindow

ナビゲーション ツリー全体を含むスクロール可能なウィンドウを表示するときに使われるスタイル特性を定義します。

.expanded

ナビゲーション ペイン内の展開されているカテゴリを表示するときに使われるスタイル特性を定義します。

.expanded SPAN.bdcollapseicon

ナビゲーション ペイン内のカテゴリが展開されたときの縮小アイコンの表示を抑制するために使われるスタイル特性を定義します。

.expanded SPAN.bdexpandicon

ナビゲーション ペイン内のカテゴリが展開されたときの展開アイコンを表示するときに使われるスタイル特性を定義します。

.expanded UL.bdmodulelist

ナビゲーション ペイン内のカテゴリが展開されたときの対応するモジュールを表示するときに使われるスタイル特性を定義します。

.modulehighlight

ナビゲーション ペイン内の強調表示されているモジュールを表示するときに使われるスタイル特性を定義します。

.moduleselect

ナビゲーション ペイン内の選択されているモジュールを表示するときに使われるスタイル特性を定義します。

.scrollbtn

ナビゲーション ペインの上下にあるスクロール ボタンを表示するときに使われるスタイル特性を定義します。


Commerce Server のトラブルシューティング

ここでは、Microsoft Commerce Server 2000を使用しているときによく起きる問題について説明します。

テクニカル サポートについて、Microsoft では Web サイトを通じてオンライン ニュースグループを運営しています。Commerce Server 2000 ニュースグループの詳細については、www.microsoft.com/japan/commerceserver/ にアクセスしてください。

また、Microsoft Commerce Server 2000 Readme も参照してください。Readmeは、このバージョンの Commerce Server に関する既知の問題と最新情報の一覧が記載されており、Commerce Server 2000 のインストール CD-ROM に含まれています。

ここでは、次のトピックについて説明します。

  • アプリケーションのトラブルシューティング アプリケーションとビジネス デスクの開発および管理中に発生する可能性のある問題について説明し、その解決方法を示します。

  • サイト パッケージャのトラブルシューティング Commerce Server サイト パッケージャの使用中に発生する可能性のある問題について説明し、その解決方法を示します。

  • Commerce Server リソースのトラブルシューティング DTS タスク、予測リソース、プロファイル リソース、およびダイレクト メーラーの使用中に発生する可能性のある問題について説明し、その解決方法を示します。

  • トラブルシューティングに関する追加情報 システム管理者が利用できる、その他のトラブルシューティングの一覧を示します。


アプリケーションのトラブルシューティング

ここでは、アプリケーションおよび Commerce Server ビジネス デスクの開発および管理中に発生する可能性のある問題について説明します。

ここでは、次のトピックについて説明します。

  • 可用性を高めるために 64 ビット通貨を使用する

  • 合計 1,000 万通貨単位を超える注文に失敗する

  • Web サーバーの [コンピュータを委任に対して信頼する] を有効にする

  • OLAP/SQL Server が Windows NT の認証を要求する

  • Active Directory データの長さの制限

  • 広告または割引が Web サイトに表示されない

  • デバッガで regtrace.exe を使う

  • Web アプリケーションに管理者としてログオンできない

  • コンピュータ名を変更すると Commerce Server が停止する

  • システムの日付区切り記号を変更するとエラーが返される

  • ヘルプの検索機能で検索結果が返されない

  • 一部の DLL が自動登録をサポートしていない

  • 新しい管理データベースを作成する

  • ビジネス デスク : 管理パスワードを変更するとビジネス デスク クライアントの接続が切断される

  • ビジネス デスク : 複数の値を持つプロパティを追加する

  • ビジネス デスク : 更新した構成が反映されない

  • ビジネス デスク : リスト マネージャまたはユーザー モジュールにデータが表示されない

  • ビジネス デスク : "ライブラリは登録されていません" または regexp のその他の問題

  • ビジネス デスク : 管理者権限を持つユーザーがビジネス デスクのデータにアクセスできない

  • ビジネス デスク : ビジネス デスクへのアクセス中にランタイム エラーが発生する

  • ビジネス デスク : ビジネス デスクに Administrator としてログインしたときにサイトにアクセスできない

  • レポートの問題の要約

  • レポート : 買い物客の参照の状況レポートのエラー

  • レポート : 動的 SQL レポートを表示できない

  • レポートにデータが含まれていない

アプリケーションのデバッグについては、次のトピックを参照してください。

  • デバッグ ツール

  • ビジネス デスクをデバッグする

  • コンテンツ選択フレームワークの概念


可用性を高めるために 64 ビット通貨を使用する

ユーザーが合計 1,000 万通貨単位を超える項目の入ったバスケットを作成すると、バスケットが使用できなくなります。ユーザーに対して次のメッセージが表示されます。

'_product_list_price' を計算中にオーバーフローが発生しました。範囲の拡張情報に関するヘルプを参照してください。

このユーザーのその後の注文は、すべて失敗します。

解決方法

パイプライン エディタで通貨サポートを 32 ビットから 64 ビットへアップグレードします。

64 ビット通貨を設定するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. 開く をクリックし、次にパイプライン ファイルの場所へ移動します。パイプライン ファイルをダブルクリックして開きます。

  3. [編集] メニューの [プロパティ] をクリックします。

  4. [パイプラインのプロパティ] ダイアログ ボックスの [通貨モード] ボックスで [通貨 (有効桁数)] を選択し、[OK] をクリックします。

    注

    • 有効桁数モードでパイプラインを実行するには、パイプラインに Microsoft Site Server 3.0 Commerce Edition のパイプライン コンポーネントが含まれていないことが必要です。Site Server 3.0 のパイプライン コンポーネントの詳細については、「Pipeline Component Reference」を参照してください。
  5. Web サーバーを再起動します。

関連項目

合計 1,000 万通貨単位を超える注文に失敗する


合計 1,000 万通貨単位を超える注文に失敗する

ユーザーが合計 1,000 万通貨単位を超える項目の入ったバスケットを作成すると、バスケットが使用できなくなります。ユーザーに対して次のメッセージが表示されます。

'_product_list_price' を計算中にオーバーフローが発生しました。範囲の拡張情報に関するヘルプを参照してください。

このユーザーのその後の注文は、すべて失敗します。

解決方法

1,000 万通貨単位を超える注文のサポートを有効にするには、パイプライン エディタの通貨サポートを 32 ビットから 64 ビットへアップグレードする必要があります。

64 ビット通貨を設定するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に [Microsoft Commerce Server 2000] をポイントし、[パイプライン エディタ] をクリックします。

  2. 開く をクリックし、次にパイプライン ファイルの場所へ移動します。パイプライン ファイルをダブルクリックして開きます。

  3. [編集] メニューの [プロパティ] をクリックします。

  4. [パイプラインのプロパティ] ダイアログ ボックスの [通貨モード] ボックスで [通貨 (有効桁数)] を選択し、[OK] をクリックします。

    注

    • 有効桁数モードでパイプラインを実行するには、パイプラインに Microsoft Site Server 3.0 Commerce Edition のパイプライン コンポーネントが含まれていないことが必要です。Site Server 3.0 のパイプライン コンポーネントの詳細については、「Pipeline Component Reference」を参照してください。
  5. Web サーバーを再起動します。


Web サーバーの [コンピュータを委任に対して信頼する] を有効にする

Web サーバーで実行している Active Server Pages (ASP) ページが、Active Directory に格納されているユーザーのパスワードを設定およびリセットできるのは、当該の Web サーバーが委任に対して信頼されている場合だけです。

解決方法

このオプションを有効にするには、Active Directory でコンピュータ アカウントのプロパティ シートを開き、[コンピュータを委任に対して信頼する] チェック ボックスがオンになっていることを確認します。

[コンピュータを委任に対して信頼する] オプションを設定するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[Active Directory ユーザーおよびコンピュータ] をクリックします。

  2. 設定する必要のあるコンピュータ アカウント、たとえば、Active Directory ユーザーとコンピュータ/<ドメイン名>/Computers/<コンピュータ名> に移動します。

  3. 右側の一覧で、コンピュータ名をダブルクリックします。[アカウント] タブの [アカウントは委任に対して信頼する] チェック ボックスをオンにし、[OK] をクリックします。

この設定を有効にするには、関連付けられた Web サーバーの再起動が必要な場合があります。


OLAP/SQL Server が Windows NT の認証を要求する

SQL Server コンピュータに別のドメインまたはワークグループからリモートで接続すると、Commerce Server サイト パッケージャが、データ ウェアハウスのオンライン分析処理 (OLAP) 接続のために OLE DB を作成しようとしたときに失敗します。

解決方法

データ ウェアハウスのオンライン分析処理 (OLAP) 接続のための OLE DB には、Microsoft Windows NT の認証が必要です。

これを確立するには、ワークグループ SQL Server コンピュータに同じアカウントを作成する必要があります。たとえば、<コンピュータ名>\share がデータ ウェアハウスに接続できるように、<コンピュータ名>\share を作成します。

注

  • SQL Server が信頼されるドメインにある場合、そのドメインのアカウントは、OLAP 管理アカウントの一部である必要があります。

関連項目

Windows 認証を有効にする


Active Directory データの長さの制限

Commerce Server ビジネス デスク モジュールが Active Directory の共通名に格納されているデータに依存している場合、文字列の長さは最大 64 文字です。また、Active Directory に格納される組織名には、グループ名 (11 文字の _Admingroup、または 10 文字の _Usergroup) が含まれます。

解決方法

組織名を Active Directory に格納する場合は、組織名とグループ名は合わせて最大 64 文字になります。名前がこの制限内であることを確認してください。


広告または割引が Web サイトに表示されない

作成され、Web サイトに表示されるはずの広告または割引が表示されません。

解決方法

この問題は、次の 2 つの方法のいずれかで解決できます。

  • TraceScores.asp ファイルを使うには

  • DumpContentList.asp ファイルを使う

TraceScores.asp ファイルを使うには

  1. TraceScores.asp ファイルを Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Debug からサイトの仮想ディレクトリへコピーします。

  2. ContentSelector オブジェクトを作成するコードを変更し、TraceScores.asp ファイルを組み込む行を追加します。

  3. Trace プロパティを True に設定する行を追加します。

  4. TraceScores サブルーチンを呼び出す行を追加します。

コード例

次の TraceScores.asp ファイルのコード例では、追加する行は太字で示してあります。

<!-- #include file="TraceScores.asp" -->

<%
' Create a ContentSelectorObject
Set CSO = Server.CreateObject("Commerce.ContentSelector")
CSO.Trace = true
' Use the GetContent method to get some content.Use the dictionary
' previously created in the Global.asa and referenced through the
' Application collection.
Set 広告 = CSO.GetContent(Application("CSFAdsContext"))
' 広告 is a SimpleList containing the selected content.
' Write the content to the page, if any.
For Each Ad in 広告
Response.Write(Ad)
Next
Response.Write("<P>")
Call TraceScores(CSO)
%>

出力例

追跡が有効になると、コンテンツの項目に対する変更がすべて追跡されます。TraceScore.asp ファイルが発見した広告の変更は、次の例で太字で示されています。

ad:Volcano erupts (item_id=1) score: 1.028331

Commerce.CSFAdvertisingNeedOfDelivery,=1.89,Paid Ad Need of Delivery.
Commerce.CSFHistoryPenalty,*0.54,Reselect penalty applied

ad:Cuckoo clock (item_id=2) score: 1.112223

Commerce.CSFAdvertisingNeedOfDelivery,=1.89,Paid Ad Need of Delivery.
Commerce.CSFHistoryPenalty,*0.59,Reselect penalty applied

ad:MSPress (item_id=3) score: 1.012156

Commerce.CSFAdvertisingNeedOfDelivery,=2.02,Paid Ad Need of Delivery.
Commerce.CSFHistoryPenalty,*0.50,Reselect penalty applied

ad:Trey Research (item_id=4) score: 1

Commerce.CSFAdvertisingNeedOfDelivery,=1.00,House Ad Need of Delivery (Weight)

表示されるはずの広告が追跡の中にない場合は、キャッシュに読み込まれていません。Commerce Server ビジネス デスクのキャンペーンの発行モジュールで、再びキャンペーンをサーバーに発行します。それでも広告が表示されない場合は、次の点を確認してください。

  • 広告の開始日および終了日を確認します。

  • 顧客、キャンペーン、およびキャンペーン項目がアクティブであることを確認します。

注

  • TraceScores フラグが On に設定されていると、コンテンツ選択フレームワーク (CSF) パイプラインのパフォーマンスは大幅に低下します。

関連項目

キャンペーン項目が Web サイトに予想どおりに表示されない

追跡とデバッグ

DumpContentList.asp ファイルを使う

DumpContentList.asp ファイルは、スレッドおよび割引機能の問題を解決するために使用できるもう 1 つのツールです。このツールは、現在メモリに読み込まれているすべての広告または割引と、そのプロパティをすべて表示します。また、ContentList オブジェクトのスキーマを表示します。これは、ContentList オブジェクトまたは ContentListFactory オブジェクトのコンテンツのダンプに使用できます。

DumpContentList.asp を使うには

  1. DumpContentList.asp ファイルを Program Files\Microsoft Commerce Server\SDK\Samples\Marketing\Debug からサイトの仮想ディレクトリへコピーします。

  2. ContentSelector オブジェクトを作成するコードを変更し、DumpComtentList.asp ファイルを組み込む行を追加します。

  3. DumpContentList サブルーチンを呼び出す行を追加します。

コード例

次の例では、追加する行は太字で示してあります。

<!-- #include file="DumpContentList.asp" -->

<%
' Create a ContentSelectorObject
Set CSO = Server.CreateObject("Commerce.ContentSelector")
' Use the GetContent method to get some content.Use the dictionary
' previously created in the Global.asa and referenced through the
' Application collection.
Set 広告 = CSO.GetContent(Application("CSFAdsContext"))
' 広告 is a SimpleList containing the selected content.
' Write the content to the page, if any.
For Each Ad in 広告
Response.Write(Ad)
Next
Response.Write("<P>")
Call DumpContentList(CSO.Value("Order").Value("_Content"))
%>


デバッガで regtrace.exe を使う

Regtrace.exe は、次の広告および割引コンポーネントで追跡を有効にするために使われるツールです。

  • CacheManager

  • CSFLoadAdvertisements

  • CSFLoadCampaignsCommon

  • CSFLoadDiscount

  • EvalTargetGroups

  • OrderDiscount

regtrace.exe を使うには

  1. [スタート] ボタンをクリックし、次に [ファイル名を指定して実行] をクリックします。

  2. [ファイル名を指定して実行] ダイアログ ボックスに「regtrace.exe」と入力し、[OK] をクリックします。

  3. [Trace Settings] ダイアログ ボックスの [Traces] タブで、追跡のレベルを選択します。

  4. [Output] タブで [Debugger (OutputDebugString)] を選択します。

  5. [OK] をクリックします。

  6. サイト コードの実行箇所を処理するには、WinDBG または Visual C++ 6.0 などのデバッガに接続する必要があります。コンポーネントがこれらのツールに読み込まれると、追跡メッセージが記録され、デバッガに表示されます。

追跡メッセージが記録されていない場合は、インターネット インフォメーション サービス (IIS) のリセットを実行し、再びデバッガに接続します。

注

  • 追跡を有効にすると、パフォーマンスは低下します。使っていないときは追跡を無効にする必要があります。


Web アプリケーションに管理者としてログオンできない

Commerce Server ビジネス デスクには管理者としてログオンできますが、ほかの Commerce Server アプリケーションに管理者としてログオンできません。

解決方法

この問題の原因は、ビジネス デスクと Windows ドメイン名の競合です。この問題を避けるには、ビジネス デスクでユーザーを作成し、そのユーザーを適切なドメイン グループに置くことによってアクセス権限を割り当てます。ビジネス デスクにアクセスする必要のあるユーザーは、ドメイン管理者として追加でき、標準のユーザー名を使ってビジネス デスクにアクセスできます。


コンピュータ名を変更すると Commerce Server が停止する

コンピュータ名を変更すると、SQL Server が自動的に管理データベースを検索しない場合があります。次のメッセージが表示されることがあります。

"2735 CA_ADMIN_ValidateDB"

解決方法

Commerce Server マネージャで必要な接続文字列の設定を変更し、新しいコンピュータ名を使うようにします。変更する設定は、Commerce Server の配置に使われたトポロジーによって異なります。管理データベースのフィールドを手動で新しい名前に編集します。

また、現在の SQL Server の登録情報を削除し、新しい SQL Server のインスタンスを登録する必要があります。管理データベースの SQL Server ログインとパスワードを変更する必要があります。このためには、現在の SQL Server の登録情報を削除し、新しい SQL Server のインスタンスを登録します。新しい SQL Server のインスタンスを登録するには、次の手順を実行します。

管理データベースの SQL Server ログインとパスワードを変更するには

  1. Microsoft Commerce Server マネージャのコンソールで、[Commerce Server マネージャ] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [Commerce Server マネージャーのプロパティ] ダイアログ ボックスの [管理データベース] タブで、[変更] をクリックします。

    [データ リンク プロパティ] ダイアログ ボックスが表示されます。

  3. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

注

  • [データ リンク プロパティ]ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ]ダイアログ ボックスの [ヘルプ]をクリックして [Microsoft データ リンク] ヘルプ ファイルを開いてください。


システムの日付区切り記号を変更するとエラーが返される

システムの日付区切り記号をスラッシュ (/)、ピリオド (.)、またはダッシュ (-) 以外の文字に変更し、Commerce Server ビジネス デスクを開こうとすると、次のエラーが表示されます。

"ビジネス デスクを読み込み中にエラーが発生しました。"

このエラーは、インターネット インフォメーション サービス (IIS) 5.0 を再起動した後にのみ発生します。

解決方法

ビジネス デスクを閉じ、システムの日付区切り記号をスラッシュ (/) に戻します。

システムの日付区切り記号を変更するには

  1. [スタート] ボタンをクリックし、[設定] をポイントします。次に [コントロール パネル] をクリックします。

  2. [地域のオプション] をダブルクリックし、次に [日付] タブをクリックします。

  3. [区切り記号] ボックスの [/] をクリックし、[OK] をクリックします。

    注意

    • IIS を再起動すると、Web サイトの運用が一時的に停止します。先へ進む前に IIS を再起動する必要があるので、注意してください。
  4. IIS を再起動します。

  5. 再びビジネス デスクを開きます。

IIS を再起動するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[インターネット サービス マネージャ] をクリックします。

  2. プラス記号 (+) をクリックし、サーバー名のグループを展開します。

  3. [既定の Web サイト] をマウスの右ボタンでクリックし、[停止] をクリックします。

  4. [既定の Web サイト] をマウスの右ボタンでクリックし、[開始] をクリックします。

IIS が再起動し、再びビジネス デスクを開くことができます。


ヘルプの検索機能で検索結果が返されない

Commerce Server ビジネス デスクのオンライン ヘルプで語句またはトピックを検索した場合、検索結果が返されません。次のメッセージが表示されます。

"そのクエリには、これ以上ドキュメントはありません。"

解決方法

Web サーバーでインデックス作成サービスを起動します。インデックス作成サービスが起動してから、ビジネス デスクのオンライン ヘルプのコンテンツを格納したフォルダが利用可能になるまでに長い遅延時間がある場合があるため、インデックス作成サービスは必ず "自動起動" に設定してください。

詳細については、Windows 2000 Server のオンライン ヘルプを参照してください。


一部の DLL が自動登録をサポートしていない

一部のダイナミック リンク ライブラリ (DLL) ファイルは、Regsvr32.exe ファイルを使って自動登録しようとすると失敗します。このような DLL ファイルを以下に示します。

BizDataManager.dll
CalcRenderer.dll
CatalogSets.dll
CatalogVendorAssociation.dll
CSDWDTSCatalogImp.dll
CSDWDTSDelete.dll
CSDWDTSIpResolution.dll
CSDWDTSLogImports.dll
CSDWDTSPostImport.dll
CSDWDTSSyncAdmin.dll
CSDWDTSTransImport.dll
DictionaryXMLTransforms.dll
DWMBToAdmin.dll
DWSyncAdmin.dll
Dyntablemarshaler.dll
GenericPup.dll
MSCSCfg.dll
MSCSPredDWHelper.dll
GenericPup.dll
Regionaltax.dll
ReportRenderer.dll
Requisition.dll
CSDWDTSMarketingImport.dll
Shipmgr.dll
Splitter.ocx
UPMDtsHlpr.dll
UPMDTSTask.dll


新しい管理データベースを作成する

前の管理データベースにロール バックするか、または新しい管理データベースを作成する必要がありますが、Commerce Server を再インストールできません。Commerce Server セットアップを修復モードで実行しても、再インストールできません。

解決方法

MSCS_Admin という名前の新しいデータベースを作成し、それに対して SQL Query Analyzer を使って admin_schema.sql ファイルを実行します。新しい管理データベースが作成されます。このスクリプトを実行すると、管理データベースのスキーマは生成されますが、リソースは作成されません。

新しい管理データベースを作成するには

  1. 必要があれば、既存の管理データベースを削除するか、または名前を変更します。

  2. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  3. Enterprise Manager で [Microsoft SQL Servers] を展開し、[SQL Server グループ] を展開します。次に、新しい管理データベースを作成しようとするサーバー名を展開します。

  4. [データベース] をマウスの右ボタンでクリックし、[新規データベース] をクリックします。

  5. [データベース プロパティ] ダイアログ ボックスの [全般] タブで、[名前] ボックスに「MSCS_Admin」と入力します。

  6. [OK] をクリックします。

新しいデータベースが作成されます。次の手順では、admin_schema.sql ファイルを実行します。

admin_schema.sql ファイルを実行するには

  1. Enterprise Manager で MSCS_Admin データベースをクリックします。

  2. [ツール] メニューの [SQL クエリ アナライザ] をクリックします。

  3. [ファイル] メニューの [開く] をクリックします。

  4. Program Files\Microsoft Commerce Server を参照し、admin_schema ファイルを選択します。次に、[開く] をクリックします。

  5. [クエリ] メニューの [実行] をクリックします。

再びサイトをアンパッケージし、Commerce Server セットアップを使ってダイレクト メーラー サービスおよび予測リソースを再インストールする必要があります。

注

  • サイトをインストールした直後、および Commerce Server の配置の構成を変更したときはいつでも、別の名前を使って管理データベースのバックアップをとる必要があります。このコピーは、後から行った変更をロール バックするときに使用できます。


ビジネス デスク : 管理パスワードを変更するとビジネス デスク クライアントの接続が切断される

Commerce Server ビジネス デスクがインストールされているサーバーで管理パスワードを変更すると、ビジネス デスク クライアント コンピュータがビジネス デスクにアクセスしようとしたときにエラーが発生します。次のエラーが表示されることがあります。

  • ビジネス デスクを読み込み中にエラーが発生しました。

  • ビジネス デスク アプリケーションを読み込み中にエラーが発生しました。

解決方法

サーバーで Commerce Server の管理パスワードを変更する場合は、Commerce Server のパスワードも変更し、次に Global.asa ファイルを保存する必要があります。

Commerce Server のパスワードを変更するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[コンポーネント サービス] をクリックします。

  2. ノードを展開して、コンポーネント サービス\コンピュータ\マイ コンピュータ\COM+ アプリケーション\Commerce Event Logging を開きます。

  3. [Commerce Event Logging]をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  4. [Commerce Event Logging のプロパティ] ダイアログ ボックスの [ID] タブで、[パスワード] ボックスに新しいパスワードを入力します。

  5. [パスワードの確認入力] ボックスに新しいパスワードをもう一度入力し、[OK] をクリックします。

パスワードが更新され、ビジネス デスクを開けるようになります。

Global.asa ファイルを保存するには

  1. ビジネス デスクの仮想ディレクトリへ移動します。たとえば、C:\Inetpub\wwwroot\retailbusinessdesk に移動します。

  2. Global.asa ファイルをメモ帳で開きます。

  3. パスワードの変更を保存するには、[ファイル] メニューで [上書き保存] をクリックし、次に [メモ帳の終了] をクリックします。

Global.asa ファイルへの変更が保存されます。パスワードの変更を更新するには、すべてのユーザーがビジネス デスクを閉じ、再び開く必要があります。

注

  • リスト マネージャ、ダイレクト メーラー、および予測リソースなどの Commerce Server サービスのパスワードも変更する必要があります。

関連項目

サービスのアカウントまたはパスワードを変更する


ビジネス デスク : 複数の値を持つプロパティを追加する

Commerce Server ビジネス デスクで複数の値を持つデータを入力する場合は、セミコロン (;) で値を区切ります。これは、ユーザー プロファイル データ、組織プロファイル データ、およびキャンペーン式モジュールの式に適用されます。

注

  • 日付または日付/時刻データ型のデータ ソースにマップするユーザー プロファイル定義に複数の値を持つプロパティを追加した場合、ユーザー プロファイル データ インポート タスクは、プロパティをデータ ウェアハウスへエクスポートします。Commerce Server 2000 は、複数の値を持つ日付または日付/時刻メンバをサポートしていません。


ビジネス デスク : 更新した構成が反映されない

Commerce Server ビジネス デスクの構成を変更し、Web サイトの停止および開始を順次行っても、ビジネス デスクがこの変更によって更新されません。アプリケーションの再読み込みが行われず、古い .xml ファイルがそのまま使われます。

解決方法

ビジネス デスクの構成を変更した後、その変更を反映するには、Web サーバーでビジネス デスクを再起動する必要があります。これには、Global.asa ファイルを開いて保存することにより、"最終更新" 時刻を変更し、構成の更新をビジネス デスクに反映する必要があります。

Global.asa ファイルを開いて保存するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[アクセサリ] をポイントし、[メモ帳] をクリックします。

  2. [ファイル] メニューの [開く] をクリックします。Global.asa ファイルへ移動し、ファイルをダブルクリックして開きます。[ファイル] メニューの [上書き保存] をクリックし、Global.asa ファイルを変更せずに保存します。

  3. メモ帳を終了するには、[ファイル] メニューの [メモ帳の終了] をクリックします。

ビジネス デスクの構成の変更が保存されます。構成の変更を表示するには、すべてのビジネス デスク クライアント ユーザーがビジネス デスクを閉じ、再び開く必要があります。


ビジネス デスク : リスト マネージャまたはユーザー モジュールにデータが表示されない

ユーザー モジュールおよび組織モジュールで、大量のユーザー データ セットに対する一括更新操作または検索操作を実行すると、処理タイムアウトが発生することがあります。

大量のデータ セットに対してリスト マネージャ モジュールを使ってユーザー リストを構築する場合にも、同じタイムアウト エラーが発生することがあります。

操作のタイムアウトはさまざまな要因によって発生し、データを表示できないこともあります。多数のエンティティが取得されることも、要因の 1 つとなりえます。

そのほか、このタイムアウトの要因には次のものがあります。

  • バックエンドの構成 (Active Directory のみか、SQL のみか、Active Directory と SQL か)

  • ネットワークの帯域幅

  • システム構成 (コンピュータが低速か、高速か)

解決方法

OLE DB Provider for Commerce Server に対するカスタム スクリプトを使って一括更新操作を実行する必要が生じる場合があります。カスタム スクリプトは、ASP 固有の Session オブジェクトに対する Session.Timeout プロパティの制限は受けません。Session.Timeout プロパティは、次のように設定できます。<% Session.Timeout = 10 %>これによって、セッション タイムアウトは 10 分に設定されます。Session.Timeout プロパティの最大値は 24 時間です。

一括操作用のカスタム スクリプト作成の詳細については、「ADO および SQL を使用した一括操作を実行するコード」を参照してください。

関連項目

ListManager.WaitOnOperation


ビジネス デスク : "ライブラリは登録されていません" または regexp のその他の問題

Commerce Server ビジネス デスクを使っているときに、"ライブラリは登録されていません"、または regexp (正規表現) COM オブジェクトに問題があるというその他のメッセージが表示された場合は、サーバーの Windows System32 フォルダにある Vbscript.dll ファイルの登録を解除し、再登録する必要がある場合があります。

このエラー メッセージは、テキスト編集コントロール (EditField) があるどのページでも発生する可能性があります。

解決方法

VBScript.dll ファイルの登録を解除し、再登録します。次の手順は、Windows が C:\winnt にインストールされていることを前提としています。

VBScript.dll ファイルの登録を解除するには

  • コマンド プロンプトで、次のように入力します。regsvr32.exe c:/winnt/system32/VBScript.dll /u

VBScript.dll ファイルを再登録するには

  • コマンド プロンプトで、次のように入力します。regsvr32.exe c:/winnt/system32/VBScript.dll


ビジネス デスク : 管理者権限を持つユーザーがビジネス デスクのデータにアクセスできない

Windows で Everyone ユーザー グループ サービス アカウントを削除するか、またはこのグループへの権限を拒否すると、管理者ユーザーが Commerce Server ビジネス デスクからロック アウトされます。

解決方法

Everyone ユーザー グループを削除したり、既定の権限を変更しないでください。サービスのアカウントまたはパスワードを変更する方法については、「サービスのアカウントまたはパスワードを変更する」を参照してください。


ビジネス デスク : ビジネス デスクへのアクセス中にランタイム エラーが発生する

Commerce Server ビジネス デスクにアクセスすると、次のいずれかのエラーが発生します。

  • ランタイム エラーが発生しました。

  • デバッグしますか?

解決方法

ビジネス デスクのルート フォルダが、Web 共有を許可するように構成されていることを確認してください。特に指定しない限り、Commerce Server は 3 個のフォルダに対する Web 共有を許可します。ビジネス デスク のフォルダに対する Web 共有を許可するには、次の手順を実行します。

ビジネス デスクのフォルダに対する Web 共有を許可するには

  1. Windows エクスプローラで、ビジネス デスク アプリケーションのあるフォルダへ移動します。既定では、このフォルダは C:\Inetpub\wwwroot フォルダにあります。

  2. フォルダ名 (既定では、Commerce Server に含まれている Blank ソリューション サイトは、このフォルダに blankbizdesk という名前を付けます) をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  3. [プロパティ] ダイアログ ボックスの [Web 共有] タブをクリックします。

  4. [Web 共有] タブで、[このフォルダを共有する] をクリックします。

  5. [エイリアス] ボックスで [blankbizdesk] を選択し、次に [プロパティの編集] をクリックします。

  6. [エイリアスの編集] ダイアログ ボックスの [アクセス許可] ボックスで、次の説明に従ってこのエイリアスのアクセス権を選択します。

    [読み取り] ユーザーにこのサイトのファイルの読み取りを許可します。これが選択されていることを確認してください。

    [書き込み] ユーザーにこのサイトへのファイルの書き込みを許可します。

    [スクリプト ソース アクセス] ユーザーにスクリプト ソース コードへのアクセスを許可します。

    [ディレクトリの参照] ユーザーにこのフォルダの内容の参照を許可します。

  7. [実行アクセス権] ボックスで、次の説明に従ってアプリケーションのアクセス権を選択します。

    [なし] ユーザーがこのフォルダでアプリケーション ファイルを実行できないようにします。

    [スクリプト] ユーザーがこのフォルダでアプリケーションは実行できないが、スクリプトは実行できるようにします。

    [実行 (スクリプトを含む)] ユーザーがこのフォルダでスクリプトとアプリケーションを実行できるようにします。

  8. [OK] をクリックします。[プロパティ] ダイアログ ボックスで、共有エイリアスの一覧を確認し、もう一度 [OK] をクリックします。


ビジネス デスク : ビジネス デスクに Administrator としてログインしたときにサイトにアクセスできない

Microsoft Windows 2000 で作成した Administrator アカウントを使って、Commerce Server ビジネス デスクへのログオンに成功しました。しかし、サイトにアクセスできません。ビジネス デスクでは、Administrator としてサイトへアクセスできません。この名前のビジネス デスク ユーザー プロファイルがしないからです。しかし、コンピュータには既にこの名前があるため、ビジネス デスクでは Administrator という名前のユーザーは作成できません。

解決方法

ビジネス デスクには、ビジネス デスクで作成したユーザー アカウントを使ってログオンします。このアカウントには、適切なアクセス権限があることを確認してください。必要があれば、ビジネス デスク ユーザーを Administrators グループに追加します。


レポートの問題の要約

次の表は、レポートに関する既知の問題の要約を示します。

レポート | 問題
利用状況の傾向 | [集計] は、特定の日のユーザー数に基づいています。これは、指定したレポート期間に対応しないことがあります。
一般的な利用状況の統計 (動的レポート) | 日ごとの平均訪問数として報告される数値が正確ではないことがあります。これは、"特定の訪問数を指定された期間の週数で割った数値" として計算されます。このレポートは、正確な平均を報告しない場合があります。時間ごと、または日ごとの訪問数にも同様の問題があります。
買い物客の参照の状況 | 購入した登録済みユーザーの比率が、レポートに記述されているような登録済みユーザーではなく、すべてのユーザーに基づいています。
顧客の消費の要約、および商品別の売り上げ | これらのレポートは、いずれも単価が不正確です。


レポート : 買い物客の参照の状況レポートのエラー

買い物客の参照の状況レポートを実行し、エラー メッセージが表示された場合は、プロファイル システムの cookie が無効になっている可能性があります。このため、登録済みユーザーのデータがデータ ウェアハウスにインポートされず、登録済みユーザー データが BuyerVisits キューブに追加されません。登録済みユーザー データは、買い物客の参照の状況レポートに利用できません。

解決方法

これは、3 つの方法のいずれかで解決できます。

  1. プロファイル システムの cookie を有効にし、ユーザー データをデータ ウェアハウスにインポートします。次に、レポート準備 DTS タスクを実行します。買い物客の参照の状況レポートを再び実行します。

  2. 匿名登録済みユーザーについて、登録済みユーザーによる買い物客の活動について報告するカスタム静的レポートを追加します。匿名登録済みユーザーは、dbo.RegisteredUser テーブルのログオン名が NULL 値になっています。買い物客の参照の状況レポートの代わりに、このレポートを実行します。

  3. Basket キューブと Web Usage キューブから、RegisteredUser 共有ディメンションを削除します。プロファイル システム cookie が再び有効になったら、RegisteredUser 共有ディメンションを元に戻すことができます。買い物客の参照の状況レポートを再び実行します。レポートには登録済みユーザーのデータは表示されません。


レポート : 動的 SQL レポートを表示できない

データ ファイルとログ ファイルをデータ ウェアハウスへインポートし、レポート準備データ変換サービス (DTS) タスクを実行した後、動的 SQL Server レポートを実行すると、ピボット コントロールが次のエラー メッセージを返します。

"ピボット テーブル リスト "Pivot Table" はデータ ソースに接続できませんでした。データ ソースについては、ファイルの作成者に相談してください。(0x80040e4d)"

読み取りまたは書き込みアクセス権を与えられていない SQL Server データベースにアクセスしている動的レポートを表示しようとすると、レポートを表示できません。この問題は、動的オンライン分析処理 (OLAP) レポートには影響しません。

次のレポートには影響します。

  • 広告の表示回数とヒット率 (キャンペーン別)

  • 広告の表示回数とヒット率 (キャンペーン項目別) (動的レポート)

  • 広告の表示回数とヒット率 (日単位) (動的レポート)

  • キャンペーン項目の要約 (動的レポート)

  • ユーザー数と訪問数 (週単位) (動的レポート)

  • ユーザー数 (日単位) (動的レポート)

  • 登録済みユーザー数 (登録日別) (動的レポート)

  • ユーザー登録までの日数 (動的レポート)

  • ユーザーの登録状況 (動的レポート)

  • 訪問数 (ブラウザ/バージョン/OS 別)

解決方法

レポートがアクセスするデータベースに対する読み取りおよび書き込み権限が必要です。Microsoft Windows 2000 のユーザー グループで、SQL Server データベースへの読み取り/書き込み権限を定義できます。次に、これらの権限を必要とするユーザーを追加できます。

ユーザー グループに読み取り/書き込み権限を定義するには

  1. Windows 2000 で新しいユーザー グループを作成します。このグループに含めるユーザーを追加します。

  2. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  3. コンソールのルート ノードを展開し、Microsoft SQL Server/SQL Server グループ/<サーバー名>/セキュリティ/ログインを開きます。

  4. [ログイン] をマウスの右ボタンでクリックし、[新規ログイン] を選択します。

  5. [SQL Server ログインのプロパティ - 新規ログイン] ダイアログ ボックスの [全般] タブで、[名前] ボックスに新しいグループ ログイン名を入力するか、または [image] をクリックして新しいグループ名を参照します。

  6. [追加] をクリックし、[OK] をクリックします。

  7. [SQL Server 認証] を選択し、グループのパスワードを入力します。

  8. [データベース アクセス] タブで、アクセス権を与えるデータベース、たとえば、Retail_dw の[権限] オプションを選択します。

    User 列に新しいグループ ログイン名が表示されます。

  9. [データベース ロール] ボックスで、[db_datareader] および [db_datawriter] の [権限] チェック ボックスをオンにし、[OK] をクリックします。

自分と任意のユーザーをこのグループに追加することで、動的 SQL Server レポートにアクセスできます。


レポートにデータが含まれていない

データのないレポートが表示された場合、次のいずれか、または複数のキューブから SiteUnfiltered 共有ディメンションが削除されている可能性があります。

  • BandWidth

  • Basket Events

  • Buyer Visits

  • OrderEvents

  • Users

  • Web Usage

  • Weekly User Trends

解決方法

このディメンションが削除された場合、分析マネージャで適切なキューブに SiteUnfiltered 共有ディメンションを追加する必要があります。

SiteUnfiltered 共有ディメンションを追加するには

  1. まず、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server 2000] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. [Analysis Servers] ノードを展開し、<サーバー名>/<OLAP データベース名>/キューブ/<キューブ名>/ を開きます。

  3. キューブ名をマウスの右ボタンでクリックし、[編集] をクリックします。

  4. [キューブ エディタ] ダイアログ ボックスで、[ディメンション] をマウスの右ボタンでクリックし、[既存のディメンション] を選択します。

  5. [ディメンション マネージャ] ダイアログ ボックスの [共有ディメンション] ボックスで、[SiteUnFiltered] をクリックし、右向き矢印 (>) ボタンをクリックします。

  6. [OK] をクリックし、次にツール バーの 上書き保存 をクリックします。

  7. [キューブ エディタ] を閉じ、再びレポート準備 (Commerce Server) DTS タスクを実行します。

注

  • 分析マネージャで手動でキューブを再処理することもできます。


サイト パッケージャのトラブルシューティング

ここでは、Commerce Server サイト パッケージャの使用中に発生する可能性のある問題について説明し、その解決方法を説明します。

ここでは、次のトピックについて説明します。

  • サイト パッケージャのエラー メッセージ

  • データ ウェアハウスのアンパッケージ中に "ユーザーはログインできませんでした" というエラーが表示される

  • サイトを Web サーバーへアンパッケージできない

  • サイトのアンパッケージ中に "指定したパスは、存在しません。" というエラーが表示される

  • サイトのアンパッケージ中に "Error invoking Import API…" というエラーが表示される

  • サイトをアンパッケージした後に "Profile missing" というエラーが表示される

  • サイトをアンパッケージした後にデータベースが表示されない


サイト パッケージャのエラー メッセージ

ここでは、Commerce Server サイト パッケージャを使うときに、サイト パッケージャのイベント ログの記録 (Pup.log) ファイルに記録されることのあるいくつかのエラー メッセージについて情報を提供します。これは、すべてのメッセージの一覧ではありません。

<アプリケーション> <エラー番号>:<エラーの説明> のディレクトリを検索中にエラーが発生しました

インターネット インフォメーション サービス (IIS) 5.0 のメタベースのエントリからアプリケーションを検索するときか、または物理パスを検索するときにエラーが発生しました。このエラーは、存在しないディレクトリをメタベースが参照している場合か、またはメタベースのアプリケーションのエントリが削除されている場合に発生します。このエラーはパッケージ処理中にのみ発生します。

<アプリケーション名> の IIS オブジェクトを検索中にエラーが発生しました: <エラーの説明>

<アプリケーション名> の IIS 設定にアクセスするときにエラーが発生しました。メタベースが壊れているか、または存在しない仮想ディレクトリをアプリケーションが参照しています。パッケージのアプリケーションが、実際に存在する仮想ディレクトリを参照していることを確認してください。

Error importing URL for <アプリケーション名> <エラー番号>:<エラーの説明>

アプリケーションの仮想ディレクトリを作成するときか、またはアプリケーション ファイルをフォルダにコピーするときにエラーが発生しました。IIS の設定を変更する管理者権限があることを確認してください。

<リソース名> のオブジェクトを <ファイル名> <エラー番号>:<エラーの説明> にエクスポート中にエラーが発生しました

リソースまたはアプリケーションのデータをエクスポートするときにエラーが発生しました。データが存在しないか、またはオートメーション エラーが発生しています。このエラー メッセージは、パッケージ処理中にのみ表示されます。

<リソース名> のオブジェクトをファイル <ファイル名> <エラー番号>:<エラーの説明> からインポート中にエラーが発生しました

リソースまたはアプリケーションのデータをインポートするときにエラーが発生しました。データが壊れているか、またはオートメーション エラーが発生しています。このエラー メッセージは、アンパッケージ処理中にのみ表示されます。

参照リソース <参照リソース> を <グローバル リソース> <エラー番号>:<エラーの説明> のために作成中にエラーが発生しました

指定されたグローバル リソースに対するグローバル リソース ポインタを作成するときにエラーが発生しました。問題を特定して修正した後、再びサイト パッケージャを実行し、カスタム モードを使ってリソースを既存のアプリケーションに追加します。

関連項目

サイト パッケージャについて


データ ウェアハウスのアンパッケージ中に "ユーザーはログインできませんでした" というエラーが表示される

Commerce Server サイト パッケージャを使ってカスタム モードでデータ ウェアハウスをアンパッケージしているときに、"ユーザー <ユーザー名> はログインできませんでした。" というエラー メッセージが表示されます。[OK] をクリックすると、[データ ウェアハウスのプロパティ] ダイアログ ボックスが表示されます。

解決方法

アンパッケージを継続するには

  • [データ ウェアハウスのプロパティ] ダイアログ ボックスで、[パスワード] ボックスのアスタリスク (**) を削除し、パスワードを入力します。次に、[OK] をクリックします。

    パスワードを設定しない場合は、このボックスを空白のままにします。

Commerce Server サイト パッケージャがサイトのアンパッケージを完了します。


サイトを Web サーバーへアンパッケージできない

Commerce Server をコンピュータ A に、データ ウェアハウスをコンピュータ B にインストールしたら、コンピュータ A にサイトをアンパッケージできません。

解決方法

データベース サーバーが Web サーバーとセキュリティ コンテキストを共有していない場合、この問題が発生します。この問題を解決するには、データベース サーバーで次のコマンドを実行します。

net use \\<Web サーバー名> /u:<ローカル コンピュータ名>\administrator *

入力を求められたら、SQL Server のパスワードを入力します。

もう 1 つ確認すべき項目は、コンピュータで許可されている SQL 接続の数です。Microsoft SQL Server をインストールすると、特に指定しない限り、SQL Server 接続の数は 0 (ゼロ) に設定されます。これは、接続数が無制限であることを意味します。接続数を変更する場合、Commerce Server 環境の各コンピュータに 4 つの接続を割り当てます。

現在使用している SQL Server 接続の数を確認するには

SQL Server 接続を設定するには

注

  • サイトのアンパッケージには、少なくとも 20 の接続を利用可能にすることをお勧めします。

現在使用している SQL Server 接続の数を確認するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[クエリ アナライザ] をクリックします。開いたウィンドウで [OK] をクリックします。

  2. [クエリ] ウィンドウに次のクエリを入力します。
    select * from master..sysprocesses where hostname <>''

    '' はアポストロフィ 2 個です。

  3. ツール バーの [クエリ実行] ボタンをクリックします。

クエリ アナライザが、現在使用している SQL Server 接続の数を表示します。行の数が SQL Server 接続の数に相当します。

SQL Server 接続を設定するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[Enterprise Manager] をクリックします。

  2. 接続を追加する SQL Server をマウスの右ボタンでクリックし、[プロパティ] をクリックします。次に、[接続] タブをクリックします。

  3. [接続] タブの [同時ユーザー接続の最大数 (0 = 無制限)] ボックスに必要な接続数を入力し、[OK] をクリックします。


サイトのアンパッケージ中に "指定したパスは、存在しません。" というエラーが表示される

サイトをアンパッケージしようとすると、次のエラーが表示されます。

"指定したパスは、存在しません。パスを確認し、もう一度やり直してください。"

特殊文字を含むフォルダにサイトをアンパッケージしようとすると、このエラーが発生することがあります。たとえば、Commerce Server サイト パッケージャは、'my commerce $$%' という名前のフォルダにはアンパッケージしません。

Commerce Server は特殊文字を含むフォルダにインストールできますが、このフォルダにサイトをアンパッケージできません。

解決方法

パッケージを別のディレクトリにコピーし、アンパッケージしてください。


サイトのアンパッケージ中に "Error invoking Import API…" というエラーが表示される

サイトをアンパッケージしようとすると、次のエラーが表示されます。

"Error invoking Import API on Commerce.CatalogPUP for Product Catalog 80040E14:Source:Microsoft OLE DB Provider for SQL ServerDescription: フルテキストサービス (Microsoft Search) は使用できません。システム管理者がこのサービスを起動する必要があります。"

Commerce Server サイト パッケージャがカタログを作成するためにスクリプトを実行したときに、Microsoft Search サービスが実行されていないと、このエラーが発生します。

解決方法

Microsoft Search サービスを起動します。次に、サイトを削除して再びアンパッケージか、またはカタログ リソースだけを削除してアンパッケージします。

Microsoft Search サービスを起動するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[管理ツール] をポイントし、[サービス] をクリックします。

  2. [サービス] ダイアログ ボックスで、[Microsoft Search] を選択します。

  3. [Microsoft Search] をマウスの右ボタンでクリックし、[開始] をクリックします。


サイトをアンパッケージした後に "Profile missing" というエラーが表示される

このエラーは、Supplier ソリューション サイトに発生します。このエラーは、プロファイル サービスが Microsoft Active Directory でユーザーを見つけられなかった場合に発生します。

"The user name might not be included in the following Active Directory containers: OU=MSCS_40_Root and OU=site_name."

解決方法

推奨される解決方法は、エラー メッセージがいつ表示されるかによって異なります。

Microsoft Commerce Server 2000 ランタイム コンポーネントで作成された名前を使って Supplier サイトにログオンします。

サイトをアンパッケージした直後にこのエラーが発生した場合

この場合は、サイトが既定で Windows 統合認証を使っており、ユーザーが Commerce Server ビジネス デスクやプロファイル リソースで作成されたものではないログイン名を使おうとしたことがエラーの原因です。

ビジネス デスクを使ってユーザー アカウントを作成し、新しく作成されたユーザーとしてサーバーにログオンします。次に、Supplier サイトにアクセスできます。

もう 1 つの解決方法は、Supplier サイトでインターネット インフォメーション サービス (IIS) 5.0 の基本認証を有効にすることです。サイトにログオンします。ユーザー名を入力するときに、必ず次のいずれかの形式を使います。

  • ドメイン名\ユーザー名

  • ユーザー名@完全なドメイン名

Windows 認証モードで認証フィルタを使っているときにこのエラー (または同様のエラー) が発生した場合

ログイン ページで GetProfileByKey メソッドが正しく機能しているかどうかを判断します。このメソッドが不正な認証モードのエラー メッセージを生じている場合、匿名ユーザーには、ユーザー プロファイルを取得するか、または読み取る権限がありません。詳細については、「IProfileService::GetProfileByKey」を参照してください。

このような場合は、ユーザーが、Active Directory からユーザー プロファイル プロパティを取得して読み取るための権限を有する Windows ユーザー アカウントを持っていることを確認します。

もう 1 つの解決方法は、ISAPI フィルタである認証フィルタがなくてもサイトにアクセスできるようにすることです。

認証フィルタを使わずにサイトにアクセスするには

  1. インターネット サービス マネージャでフィルタを削除します。

  2. Supplier サイトについてのみ、セキュリティ モードを基本認証に設定します。IIS をリセットします。

  3. 正しい資格情報を使ってサイトへのアクセスを試行します。

成功しなかった場合は、ビジネス デスクでユーザー アカウントを作成し、それが有効になっていることを確認します。

関連項目

サイト セキュリティとフィルタを使用する


サイトをアンパッケージした後にデータベースが表示されない

コンピュータ A でサイトをアンパッケージし、コンピュータ B でリソースのデータベースを作成すると、サイトのアンパッケージが完了した後、コンピュータ B に新しいデータベースが表示されません。

解決方法

数分間待機します。サイト パッケージャは コンピュータ A で実行されているため、ネットワークに輻輳があると、リソースが作成されるまでに遅延時間が生じることがあります。また、再び Commerce Server サイト パッケージャを実行し、コンピュータ A ではなく コンピュータ B にデータベースを作成したことを確認することもできます。


Commerce Server リソースのトラブルシューティング

ここでは、Commerce Server リソースの使用中に発生する可能性のある問題について説明し、その解決方法を説明します。

ここでは、次のトピックについて説明します。

  • DTS タスク : レポート準備タスクが失敗する

  • DTS タスク : ターミナル サービスとレポート準備タスクの互換性がない

  • DTS タスク : ユーザー プロファイル データ インポート タスクが複数の値を持つ日付をサポートしていない

  • 予測 : 分析モデルが構築されない

  • 予測 : 分析モデルの構築にかかる時間が長すぎる

  • 予測 : データ ウェアハウスからの分析モデルの読み込みにかかる時間が長すぎる

  • 予測 : 1 つのアプリケーションに複数の分析モデルを作成する

  • 予測 : 予測時間が長すぎる

  • 予測 : 入力に関係なく同じ予測の推奨が返される

  • 予測 : モデル名に DBCS 文字を使うと分析モデルが構築されない

  • プロファイル リソース : ユーザーのログインに失敗する

  • ダイレクト メーラー : ジョブがエラー メッセージを返さずに失敗する

  • ダイレクト メーラー : ジョブのエラーの詳細を調べる


DTS タスク :レポート準備タスクが失敗する

システムのリアルタイム スキャンを実行するソフトウェア (たとえば、ウィルス保護ソフトウェア) を実行しているコンピュータにデータ ウェアハウスをインストールした場合、レポート準備データ変換サービス (DTS) タスクを正常に実行できない場合があります。

解決方法

この問題を解決するには、Windows 2000 のタスク マネージャを使って、スキャン ソフトウェアを実行しているプロセスを終了します。


DTS タスク :ターミナル サービスとレポート準備タスクの互換性がない

レポート準備データ変換サービス (DTS) タスクは、サーバーで直接実行する必要があります。レポート準備 DTS タスクは、ターミナル サービスから実行するパッケージから実行しないでください。実行した場合、DTS にエラーが発生します。

また、この問題はその後のサイトのアンパッケージにも影響を及ぼします。データ ウェアハウスをアンパッケージのときに、OLAP データベースが正しく作成されない可能性があります。


DTS タスク :ユーザー プロファイル データ インポート タスクが複数の値を持つ日付をサポートしていない

ユーザー プロファイルで、日付または日付/時刻データ型のデータ ソースにマップする複数の値を持つプロパティを定義した場合、それらは Commerce Server 2000 のプロファイル データ インポート タスクによってデータ ウェアハウスへエクスポートされません。Commerce Server 2000 は、複数の値を持つ日付または日付/時刻メンバをサポートしていません。


予測 : 分析モデルが構築されない

予測モデルまたはセグメント モデルを構築しようとすると、構築に失敗します。

解決方法

レポート準備データ変換サービス (DTS) タスクが完了する前、またはレポート準備 DTS タスクが失敗した後に、モデル構築要求が発生しました。

レポート準備 DTS タスクを再び実行します。正常に完了するまで待ってから、予測モデルおよびセグメント モデルを構築します。


予測 : 分析モデルの構築にかかる時間が長すぎる

分析モデルの構築に必要な時間は、入力データのサイズ (ケースの総数)、サンプル サイズ、データ内の属性の数、入力データの統計に関するさまざまな要素、およびハードウェアとネットワークの特性とトポロジによって異なります。

解決方法

以下は、構築のパフォーマンスを向上させるための方法です。

  • サンプル サイズを小さくします。サンプル サイズが大きくなると、精度は上がりますが、それには上限があります。たとえば、入力ケースの総数が 1,000,000 の場合、まず 5,000 ケースで分析モデルを構築し、次に 10,000 ケースで構築します。この作業を分析モデルの精度がさほど上がらなくなるまで続けます。

  • カタログに含まれる商品数が膨大 (1,000 点以上) で、予測モデルを構築する場合は、[モデル構築のプロパティ] ダイアログ ボックスで [入力属性分数] と [出力属性分数] の値を 1.0 未満に設定することをお勧めします。

関連項目

新しい分析モデルを構築する


予測 : データ ウェアハウスからの分析モデルの読み込みにかかる時間が長すぎる

データ ウェアハウスから大きな分析モデルを読み込もうとすると、読み込みに時間がかかることがあります。分析モデルをファイルから読み込むと、必要な読み込み時間が短くなることがあります。

解決方法

毎回 LoadModelFromDB メソッドを使うのではなく、IPredictorClient::SaveModelToFile メソッドを使ってモデルを Web サーバーのファイルとしてキャッシュし、LoadModelFromFile メソッドを使ってそれを読み込みます。ファイルからの読み込みは高速で、データ ウェアハウスが利用できない場合でも機能します。

関連項目

IPredictorClient::SaveModelToFile

PredictorClient.SaveModelToFile


予測 : 1 つのアプリケーションに複数の分析モデルを作成する

特定のアプリケーションに対して複数の分析モデルが必要な場合、ページごとに IPredictorClient インターフェイスでプロパティをリセットすることは避けてください。PredictorClient オブジェクトが維持するのは、オブジェクトに対して設定されたプロパティと、現在読み込まれている分析モデルの状態だけだからです。

解決方法

1 つのアプリケーションに対して複数の分析モデルを作成するには、ページごとにモデルを読み込むのではなく、PredictorClient オブジェクトの独立したインスタンスを使います。Application_OnStart で、Microsoft インターネット インフォメーション サービス (IIS) 5.0 を使ってアプリケーション コンテキストに PredictorClient オブジェクトを作成し、個々の Active Server Pages (ASP) ページに対してこのオブジェクトを再利用します。

関連項目

PredictorClient Object

PredictorClient Object


予測 : 予測時間が長すぎる

予測モデルを予測モデル ビューアで開くのにかかる時間が長すぎるか、またはセグメント モデルをセグメント ビューアで開くのにかかる時間が長すぎます。

解決方法

必要な予測時間が長すぎる場合、次の情報が役立ちます。

  • すべての予測を要求してその出力を後処理するのではなく、IPredictorClient::Predict で lMaxPredictions インターフェイスを使って予測の数を制限します。要求する予測の数が少なければ、それだけ予測時間が短くなります。

  • 予測にセグメント モデルを使っている場合は、セグメント モデルの構築に使われるセグメント数を制限できます。構築時に要求されるセグメントの数が少なければ、それだけセグメント モデルの構築が高速に行われます。

注

  • リアルタイムの推奨にはセグメント モデルを使わないことをお勧めします。セグメント モデルは、このような目的には最適化されておらず、予測モデルが生成する推奨ほど正確な推奨を生成しないからです。サイトに関するリアルタイムの推奨には、必ず予測モデルを構築、使用してください。

関連項目

IPredictorClient::Predict

PredictorClient.Predict

新しい分析モデルを構築する


予測 : 入力に関係なく同じ予測の推奨が返される

入力に関係なく同じ推奨が返される場合は、予測リソースが入力属性の名前を認識していない可能性があります。特に指定しない限り、PredictorClient オブジェクトは認識できない入力属性を無視します。

解決方法

bFailOnUnknownInputAttributes プロパティに True を設定すると、PredictorClient オブジェクトが入力プロパティを認識できない場合、予測時にエラーが生成されます。予測モデルの場合、予測モデル ビューアを使ってツリーを表示すると、予測可能な対象と、特定の出力属性の予測に使用される入力属性を確認できます。予測対象の属性が、予測モデルに含まれるほど入力属性に強く依存していない場合もあります。予測モデル ビューアの使い方については、「予測モデル ビューア」を参照してください。

関連項目

PredictorClient Object

PredictorClient Object


予測 : モデル名に DBCS 文字を使うと分析モデルが構築されない

モデル名にダブルバイト文字セット (DBCS) 文字を使って分析モデルを構築しようとすると、"モデルを読み込めませんでした" というエラー メッセージが表示されます。

解決方法

予測モデルまたはセグメント モデルのモデル名に DBCS 文字を使う場合は、データを格納している SQL Server が互換性のある文字セットでインストールされていることを確認してください。


プロファイル リソース : ユーザーのログインに失敗する

次のエラー メッセージが表示されます。

"Microsoft OLE DB Provider for SQL Server: ユーザー <ユーザー名> はログインできませんでした。"

プロファイル リソースに関連付けられた SQL Server データベース テーブルをバックアップし、それらを同じ SQL Server の別のデータベース、または別にインストールした SQL Server に復元した場合、新しい SQL Server に復元した後のデータベース テーブルへの文字列が有効ではない可能性があるため、プロファイル リソースが初期化されない場合があります。ログオン資格情報が有効ではないか、インストールされた SQL Server にデータベースがないか、またはその両方の理由により、接続文字列が有効ではない可能性があります。

注

  • データベースを直接バックアップし、復元することはお勧めしません。代わりに、Commerce Server サイト パッケージャを使ってデータベースをバックアップ、および復元してください。

解決方法

プロファイル システムは、s_CommerceProviderConnectionString 接続文字列に依存しています。この接続文字列は、OLE DB Provider for Commerce Server によって使われ、Commerce Server 管理データベースの中に格納されています。データベースのバックアップから管理データベースを復元した場合、この接続文字列が間違ったものになる場合があり、リセットする必要があります。

s_CommerceProviderConnectionString 接続文字列をリセットするには

  1. [Commerce Server マネージャ] を展開し、[グローバル リソース] を展開します。次に、[プロファイル] をマウスの右ボタンでクリックし、[プロパティ] をクリックします。

  2. [プロファイルのプロパティ] ダイアログ ボックスの [接続文字列] タブで[s_CommerceProvideConnectionString] を選択し、[変更] をクリックします。

  3. [データ リンク プロパティ] ダイアログ ボックスの内容を必要に応じて変更し、[OK] をクリックします。

    注

    • [データ リンク プロパティ]ダイアログ ボックスの各項目の設定方法については、[データ リンク プロパティ]ダイアログ ボックスの [ヘルプ]をクリックして [Microsoft データ リンク] のヘルプ ファイルを開いてください。


ダイレクト メーラー :ジョブがエラー メッセージを返さずに失敗する

予定されたダイレクト メーラー ジョブが実行されるときに、SQL Server Agent が停止するしている場合、そのジョブは実行されません。ジョブの起動に失敗したことを示すメッセージは表示されず、ログ ファイルにエラー メッセージは記録されません。

解決方法

実行されなかったジョブを起動するには、SQL Enterprise Manager の SQL Server Agent コントロールから手動でジョブを起動する必要があります。

ダイレクト メール ジョブを手動で起動するには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、インストールされているデータベースに応じて [Microsoft SQL Server] または [Microsoft SQL Server 7.0] をポイントし、[Enterprise Manager] をクリックします。

  2. ノードを展開して次のパスを開きます。\Microsoft SQL Server\SQL サーバー グループ\<SQL サーバー名>\管理\SQL Server エージェント\ジョブ

  3. [ジョブ] をクリックします。SQL Server Enterprise Manager の右側のウィンドウに、ダイレクト メーラー ジョブが表示されます。


ダイレクト メーラー :ジョブのエラーの詳細を調べる

ダイレクト メーラー ジョブが完了すると、ダイレクト メーラーはアプリケーション イベント ログの記録にイベントを記録します。このイベントには、ジョブ番号、ジョブの開始時刻、ジョブの終了時刻、メールの受信者の総数、および発生したエラーの件数が含まれます。

エラーに関してより詳細な情報を得るには、ダイレクト メーラー データベースの dml_job_erros テーブルを調べる必要があります。

解決方法

イベント ビューアを開き、ダイレクト メーラーが記録したアプリケーション イベント ログの記録を探します。

イベント ビューアを開くには

  1. まず、[スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft Commerce Server] をポイントし、[Commerce Server マネージャ] をクリックします。

  2. [イベント ビューア] ノードを展開し、[アプリケーション] をダブルクリックします。

  3. イベントの一覧で、[ソース] が [Commerce Server ダイレクト メールer]、[イベント ID] が [18] のイベントを探します。

  4. このイベント メッセージをダブルクリックし、[イベントのプロパティ] ダイアログ ボックスを開きます。

  5. [イベントのプロパティ] ダイアログ ボックスで、ジョブ番号を Microsoft クリップボードにコピーし、次に SQL Server クエリ アナライザを開きます。

SQL Server クエリ アナライザを開くには

  1. [スタート] ボタンをクリックし、[プログラム] をポイントします。次に、[Microsoft SQL Server] をポイントし、[クエリ アナライザ] をクリックします。開いたウィンドウで [OK] をクリックします。

  2. [SQL Server の接続] ダイアログ ボックスで、サーバーの実行対象として構成されているダイレクト メーラー データベースに接続します。

  3. [クエリ アナライザ] ウィンドウに次のクエリを入力します。
    "SELECT * FROM dml_job_errors WHERE job_id = '<ジョブ ID>'

    <ジョブ ID> は、「イベント ビューアを開くには」のステップ 5 でコピーしたジョブ番号です。

返された結果セットは、ダイレクト メーラー ジョブの処理中に発生した各エラーのエラー コードと説明を示しています。


トラブルシューティングに関する追加情報

トラブルシューティングに関する追加情報については、次の資料を参照してください。

資料 | 場所
Commerce Server 2000 ヘルプのデバッグに関する項目
  • 「デバッグ ツール」

  • 「ビジネス デスクをデバッグする」

  • 「コンテンツ選択フレームワークの概念」
Commerce Server 2000 Readme | Commerce Server 2000 インストール CD
Microsoft Commerce Server Web サイト | www.microsoft.com/japan/commerceserver
Commerce Server ソリューション サイト 技術情報および Commerce Server ソリューション サイトのダウンロード版があります。

www.microsoft.com/japan/commerceserver/productinfo/solsites.htm
TechNet 電子商取引 Web サイトの計画、開発、配置、および管理に役立つ技術情報とツールがあります。

Commerce Server の詳細については、画面左側の [製品別技術情報] メニューの [Commerce Server] を選択してください。

www.microsoft.com/japan/technet/
Commerce Server 2000 Software Development Kit (SDK) | Commerce Server アプリケーション プログラミング インターフェイス (API) と統合する必要のあるプログラム、またはインテリジェント Web ページを作成する開発者向けの技術情報があります。SDK には、プログラマー向けのガイドと、Commerce Server および商取引の各種技術の紹介があります。また、プログラムの作成に使用できるサンプルとヘッダー ファイルも含まれています。Commerce Server 2000 に含まれています。
MSDN 情報 | Commerce Server 2000 およびその他の Microsoft .NET Enterprise Server に関する情報があります。このサイトは定期的に訪問すると役立つでしょう。関連文書およびホワイト ペーパーを検索するには、[このサイトの検索] ボックスに「Commerce Server 2000」と入力します。 www.microsoft.com/japan/developer/
Microsoft Servers サイト IT 専門家、開発者、およびインターネット専門家向けの Microsoft サーバー製品全種類のガイドです。

www.microsoft.com/japan/servers/
ニュースグループ ほかの管理者、開発者、およびMicrosoft Most Valuable Professionals (MVP) と Commerce Server について議論するには、ピア ツー ピア ニュースグループを使います。これらのニュースグループまたはサイトについては、Microsoft は監視またはサポートを行いません。

www.microsoft.com/japan/support/news/newsg.htm
Premier Support Premier Support for Developers は、Microsoft がサイトの分析を支援し、その他の開発に関する問題についても支援するために提供しているプログラムです。

「Commerce Server 2000 の紹介」


用語集

数字

3 層アーキテクチャ

ネットワーク対応のアプリケーションを、ユーザー インターフェイス層 (上位層)、ビジネス ロジック層 (中間層)、データベース層 (下位層またはバック エンド) の 3 つの論理領域に分割するアーキテクチャ。各層には、1 つ以上のコンポーネントがあります。たとえば、上位層に 1 つ以上のユーザー インターフェイスが存在する場合があります。また、各ユーザー インターフェイスは中間層の複数のアプリケーションと同時に通信でき、中間層のアプリケーションは複数のデータベースを同時に使用できます。1 つの層のコンポーネントをほかの層から独立したコンピュータで実行し、ネットワーク経由でほかのコンポーネントと通信させることができます。

A

Active Directory Service Interfaces (ADSI)

Component Object Model (COM) ベースのディレクトリ サービス モデル。ADSI 準拠のクライアント アプリケーションは、単一の、標準的なインターフェイスを使って、Windows のディレクトリ サービス、Lightweight Directory Access Protocol (LDAP)、Novell Directory Services (NDS) などのさまざまな種類のディレクトリ プロトコルにアクセスできます。ADSI は、クライアント アプリケーションを、基になるデータ ストアやプロトコルの実装および処理の詳細から見えなくします。

Active Directory

Windows NT 4.0 および Windows 2000 Server 用のディレクトリ サービス。Active Directory には、ネットワーク上のオブジェクトに関する情報が格納され、権限を持つシステム管理者とユーザーに公開されます。これにより、ネットワーク ユーザーは 1 つのログオン プロセスを使って、ネットワーク上の任意の許可されているリソースにアクセスできます。また、システム管理者はネットワークを直感階層的に表示できるので、すべてのネットワーク オブジェクトを集中管理できます。

Active Server Pages (ASP)

動的な Web ページの作成や Web アプリケーションの構築に使われる、サーバー側のスクリプト環境。ASP ページは、HTML タグ、テキスト、およびスクリプト コマンドを含むファイルです。ASP ページから Component Object Model (COM) コンポーネントを呼び出すと、データベースへの接続や業務計算などの処理を実行できます。ASP を使って、Web ページに対話型のコンテンツを追加したり、顧客とのインターフェイスに HTML ページを使う Web アプリケーション全体を構築することができます。

Active Template Library (ATL)

小さく効率的な COM コンポーネントの開発に役立つ、C++ テンプレートのライブラリ。ATL は Microsoft が開発したライブラリで、Visual C++ に組み込まれています。

Active User Object (AUO)

すべてのユーザー プロファイル情報に対する単一の、統一されたアクセス機能を提供し、スクリプトの作成者がユーザー ID やプロファイルの格納場所の指定をしなくても済むようにするフレームワーク。システム管理者は、コンピュータを構成してプロファイル情報の仮想的な名前空間を定義し、さまざまなソースのプロファイル データへのアクセスに必要な構成情報を指定できます。

AUO は、技術的にはADSI オブジェクトのコンテナです。システム管理者は、AUO に含まれるオブジェクトの数を定義し、そのオブジェクトの管理に使用する情報を提供します。これにより、新しいストア プロバイダや代替プロファイル ソースを追加するための拡張可能モデルを利用できるようになります。ADSI のプロバイダを作成または再利用することで、どのストアにあるプロファイル情報にもアクセスできます。

ActiveX Data Objects (ADO)

データ アプリケーション用に最適化された、高レベルで言語に依存しない、オブジェクト ベースのデータ アクセス インターフェイス。ADO を利用すると、クライアント アプリケーションから OLE DB プロバイダを通じて、データベース サーバーのデータにアクセスして操作できます。

関連項目 :ActiveX Data Objects (Multidimensional) (ADO MD)

ActiveX Data Objects (Multidimensional) (ADO MD)

マルチディメンション データ アプリケーション用に最適化された、高レベルで言語に依存しない、オブジェクト ベースのデータ アクセス インターフェイス。Visual Basic などのオートメーション言語は、マルチディメンション データ記憶域へのデータ アクセス インターフェイスとして ADO MD が使われます。ADO MD は、ADO 2.0 以降のバージョンに組み込まれています。

関連項目 :ActiveX Data Objects (ADO)

ADO MD

「ActiveX Data Objects (Multidimensional)」を参照してください。.

ADO

「ActiveX Data Objects」を参照してください。

ADSI

「Active Directory Service Interfaces」を参照してください。

Application Center 2000

Windows 2000 上に構築された可用性の高い Web アプリケーションを配置および管理するための、Microsoft のツール。

ASP

「Active Server Pages」を参照してください。.

ATL

「Active Template Library」を参照してください。

ATL パイプライン コンポーネント ウィザード

ATL と追加のテンプレートを使って、パイプライン コンポーネントの開発を容易にする Visual C++ のウィザード。

AUO

「Active User Object」を参照してください。

B

B to B サイト

既に取引関係がある企業間で、注文書の作成と送信を行うために設計された Commerce Web サイト。Supplier (サプライア) サイトまたは B2B サイトとも呼ばれます。

B to C サイト

一般の顧客のショッピング用に設計された Commerce Web サイト。Retail (リテール) サイトまたは B2C サイトとも呼ばれます。

BizTalk Server 2000

ビジネス文書の処理に使用するアプリケーションの種類にかかわらず、さまざまなプラットフォームやオペレーティング システムの間でビジネス文書を交換するために必要なツールとインフラストラクチャを提供する Microsoft 製品。

Buy Now

衝動買いを誘うために Commerce Server で使われるテンプレート。ユーザーは、インターネット上のどの Web ページからでも商品を購入できます。ユーザーが商品のイメージをクリックすると、送付先とクレジット カード情報の入力を求めるダイアログ ボックスが表示されます。

C

COM

「Component Object Model」を参照してください。

Commerce Server ビジネス デスク

Commerce Server 2000 で利用できる Web ベースのサイト管理ツール。Commerce サイトの管理および分析に使用するビジネス管理モジュールのホストになります。たとえば、カタログの価格情報を更新したり、新しい広告の対象を特定のユーザーに指定することができます。さらに、レポートを実行して、これらの変更がサイトの生産性に及ぼす影響を測定できます。Commerce Server ビジネス デスクには、Microsoft Internet Explorer 5.5 を実行しているすべてのコンピュータからアクセスできます。また、このツールは Web ベースであるため、ローカル アクセスもリモート アクセスも可能です。

特に指定しない限り、すべての Commerce Server Web サイトにビジネス デスクの個別のインスタンスが関連付けられます。フレームワークは、主に Dynamic Hypertext Markup Language (DHTML) で実装されます。サイト開発者は、ビジネス デスクに備わっている管理機能を変更したり拡張することができます。

Commerce Server サイト パッケージャ

サイト、アプリケーション、およびリソースを 1 つのファイル (.拡張子は pup です) にパッケージ化し、ほかのコンピュータに移動するための配置ツール。サイト パッケージャを使うと、分散環境の複数のコンピュータにサイトを配置できます。Web サーバー インストールまたは完全インストールを実行するか、またはカスタム インストールで Runtime オブジェクト機能を選択すると、Commerce Server サイト パッケージャは自動的にインストールされます。

Commerce Server ダイレクト メーラー

Windows 2000 のサービスでもあるグローバル リソース。ダイレクト メーラーは、ダイレクト メール キャンペーンを実行します。ダイレクト メーラーは受信者リストを処理し、Web ページまたは静的ファイルからパーソナライズされたメッセージ本文を作成し、メール メッセージを受信者に送信します。ダイレクト メーラーの構成と管理、およびダイレクト メーラー データベースへのデータベース接続文字列の指定を行うには、Commerce Server マネージャを使います。Web サーバー インストールまたは完全インストールを実行するか、またはカスタム インストールでダイレクト メーラーを選択すると、ダイレクト メーラーとダイレクト メーラー データベースがインストールされます。

関連項目 :パーソナライズ、ダイレクト メーラー データベース

Commerce Server ビジネス デスク フレームワーク

ビジネス デスク モジュールで使うための一連のサービス。これらのサービスには、ナビゲーション、セキュリティ、ユーザー インターフェイスの各コントロールが含まれます。また、フレームワークには Commerce Server ビジネス デスクのモジュールを統合する方法を規定する、標準化されたしくみも用意されています。

Commerce Server マネージャ

Commerce Server のリソース、サイト、アプリケーション、および Web サーバーの管理と構成を行うためのシステム管理ツール。Web サーバー インストールまたは完全インストールを実行するか、またはカスタム インストールで管理ツール機能を選択すると、Commerce Server マネージャが自動的にインストールされます。Microsoft 管理コンソール (MMC) が Commerce Server マネージャのホストになります。

Commerce アプリケーション

「アプリケーション」を参照してください。

Commerce 以外の Web サーバー

Commerce Server がインストールされていない Web サーバー。この Web サーバーが生成する W3C 形式のログ ファイルは、データ ウェアハウスにインポートして分析に使用できます。Commerce 以外の Web サーバーでは、インターネット インフォメーション サービス (IIS) が実行されている場合と実行されていない場合があります。

Commerce 以外のアプリケーション

アプリケーションの一般的なプロパティが設定された、Commerce 以外の Web サーバーのコンテナ。Commerce アプリケーションと、その Commerce Web サーバーのメンバに相当します。

Component Object Model (COM)

1 つのアプリケーション内または複数のアプリケーション間でオブジェクトが対話する方法を定義する、オブジェクト指向のプログラミング モデル。COM では、クライアント ソフトウェアがインターフェイス (関連するプロパティとメソッドの集合) へのポインタを通じてオブジェクトにアクセスします。

Component Object Model (COM) コンポーネント

1 つ以上のクラス ファクトリ、COM クラス、レジストリ エントリ機構、読み込みコードなどのコードを含むバイナリ ファイル。

cookie

ファイルに保存された ID 番号、パスワード、クリック履歴、サイトを訪問した回数など、ユーザーに関する情報。cookie には、チケット データも保存できます。Commerce Server では、固定 cookie と非固定 cookie の両方がサポートされています。固定 cookie は、ユーザーのコンピュータ上に保存されます。非固定 cookie は、サイトを訪問する認証済みユーザーの利用状況を追跡するときに使います。セッションが終了すると、非固定 cookie は削除されます。

関連項目 :チケット

CSF

「コンテンツ選択フレームワーク」を参照してください。

csv

「カンマ区切り値ファイル」を参照してください。

CS 認証リソース

グローバル レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを通じて管理します。CS 認証は、サイトの認証オプションを構成するときに使います。

D

Dictionary オブジェクト

メモリ内の名前と値の対の作成、格納、および取得のサポートに使用されるオブジェクト。Dictionary オブジェクトの要素はすべてバリアント型 (Variant) なので、ほかの Dictionary オブジェクトを含む、ほぼすべての種類の値から成る Dictionary オブジェクトを作成できます。また、同じ Dictionary オブジェクトに、どのような組み合わせのバリアント型 (Variant) でも格納できます。

DTC

「デザイン時コントロール」を参照してください。

DTS

「データ変換サービス」を参照してください。

DynamicTable HTML コンポーネント (HTC)

表形式のデータに表示される列を編集するための HTML コンポーネント (HTC)。

E

EDI

「電子データ交換」を参照してください。

EditField HTML コンポーネント (HTC)

さまざまな種類のデータの個々の項目を編集するための HTML コンポーネント (HTC)。EditField HTC は、DynamicTable、EditSheet、ListEditor などのほかの HTC に埋め込まれることが多いコンポーネントです。

EditSheet HTML コンポーネント (HTC)

データの編集に使用されるコントロールを束ねるための HTML コンポーネント (HTC)。

ExpressionBuilder HTML コンポーネント (HTC)

名前付きの式を作成するための HTML コンポーネント (HTC)。作成した式は対象化に使用できます。ExpressionBuilder HTC では、埋め込み版の QueryBuilder HTC を利用します。

F

FrontPage server extensions

FrontPage 拡張 Web サイトの管理、作成、および参照に使用できる一連のプログラム。

G

GUID

「グローバル一意識別子」を参照してください。

H

HTA

「HTML アプリケーション」を参照してください。

HTC

「HTML コンポーネント」を参照してください。

HTML アプリケーション (HTA)

HTML をスタンドアロンのアプリケーションとして表示するための Internet Explorer のしくみ。Commerce Server ビジネス デスクは HTA として実装され、通常のブラウザ インスタンス内で実行されないようにするコードを含んでいます。

HTML コンポーネント (HTC)

Internet Explorer DHTML の動作を使って実装されるコントロール。HTC は、Commerce Server ビジネス デスク モジュールで、データの表示と操作を行う場合に使われます。

HTTP

「ハイパーテキスト転送プロトコル」を参照してください。

I

IIS

「インターネット インフォメーション サービス」を参照してください。

IIS アプリケーション

「アプリケーション」を参照してください。

ISP

「インターネット サービス プロバイダ」を参照してください。

ISV

「独立系ソフトウェア ベンダ」を参照してください。

L

LCID

「通貨ロケール ID」を参照してください。

ListBox HTML コンポーネント (HTC)

リストからリストへのコピーおよび移動の操作に使用される HTML コンポーネント (HTC)。

ListEditor HTML コンポーネント (HTC)

表形式のデータを編集するための HTML コンポーネント (HTC)。個々のレコードの編集は、リストが含まれるテーブルの下の別のテーブルで行います。

ListSheet HTML コンポーネント (HTC)

レコードのリストを表示し、その中から 1 つ以上のレコードを選択して編集するための HTML コンポーネント (HTC)。ListSheet HTC は読み取り専用です。

M

MDX

「マルチディメンション式」を参照してください。

Microsoft 管理コンソール (MMC)

コンソールと呼ばれる管理ツールのホストの働きをするフレームワーク。コンソールには、ツール、フォルダ、その他のコンテナ、Web ページ、およびその他の管理項目が含まれます。これらの項目は、コンソールの左側のウィンドウに表示され、コンソール ツリーと呼ばれます。コンソールには、コンソール ツリーを表示できる 1 つ以上のウィンドウがあります。メインの MMC ウィンドウには、コンソールを作成するためのコマンドとツールが用意されています。

関連項目 :スナップイン

MIME

「Multipurpose Internet Mail Extensions」を参照してください。

MMC

「Microsoft 管理コンソール」を参照してください。

MSCSAuth チケット

「認証チケット」を参照してください。

MSCSProfile チケット

「プロファイル チケット」を参照してください。

Multipurpose Internet Mail Extensions (MIME)

Simple Mail Transfer Protocol (SMTP) を拡張して、ビデオ、サウンド、バイナリ ファイルなどのデータを ASCII 形式に変換せずにインターネットの電子メールで送信できるようにする規格。

N

NOD

「表示頻度」を参照してください。

O

OLAP

「オンライン分析処理」を参照してください。

P

ProfileDesigner HTML コンポーネント (HTC)

ユーザー プロファイルなどのプロファイルを編集するための HTC。

ProgID

「プログラム ID」を参照してください。

PUP

「Commerce Server サイト パッケージャ」を参照してください。

Q

QueryBuilder HTML コンポーネント (HTC)

簡単なクエリを作成するための HTML コンポーネント (HTC)。

S

server extensions

FrontPage 拡張 Web サイトの管理、作成、および参照をサポートする、Web サーバーの一連のプログラム。

SKU

在庫保管単位。Commerce Server では、SKU は商品の一意識別子で、通常は英数字が使われます。SKU を使うと、在庫管理のために商品を追跡できます。SKU は、購入可能なあらゆる項目に関連付けることができます。たとえば、スタイル番号が 3726 でサイズが 8 号のシャツには、3726-8 などの SKU を関連付けます。

T

TreeView HTML コンポーネント (HTC)

拡張マークアップ言語 (XML) 構造を、展開可能なツリー形式で表示するための HTML コンポーネント (HTC)。

TRUSTe

インターネットのユーザーの信用と信頼を築くために、公正な情報の実践という TRUSTe の理念を推進している独立した非営利団体。Microsoft は TRUSTe の後援企業で、TRUSTe プライバシー プログラムのメンバーです。

U

Uniform Resource Locator (URL)

インターネットでアクセス可能なファイル (リソース) のアドレス。リソースの種類は、インターネット アプリケーション プロトコルによって異なります。たとえば、Web で使われるハイパーテキスト転送プロトコル (HTTP) であれば、リソースは HTML ページ、イメージ ファイル、Common Gateway Interface (CGI) アプリケーションや Java アプレットなどのプログラム、または HTTP でサポートされるその他のファイルになります。URL には、リソースへのアクセスに必要なプロトコル名、インターネット上の特定のコンピュータを識別するドメイン名、およびコンピュータ上のファイルの場所を示す階層型の記述が含まれます。

URI

「統一リソース識別子」を参照してください。

URL

「Uniform Resource Locator」を参照してください。

W

Web アプリケーション

「アプリケーション」を参照してください。

Web サーバー

一般的には、HTTP などのインターネット プロトコルを使って、伝送制御プロトコル/インターネット プロトコル (TCP/IP) ネットワーク上で Web クライアントの要求に応じるサーバー ソフトウェアがインストールされたコンピュータを意味します。

Commerce Server では、Web サーバーはインターネット インフォメーション サービス (IIS) 5.0 を実行している物理的なサーバー コンピュータで、IIS Web サイトからプロパティを継承します。Web サーバーは、Commerce Server マネージャ コンソールで、アプリケーションの下に表示されます。1 つの Commerce アプリケーションから、そのアプリケーションのさまざまな種類のコンテンツを配信する複数の Web サーバーを使用できます。

Web サイト

一般的には、特定のテーマや題材を扱い、特定の人または組織によって管理され、Web アドレスを通じてアクセスされるファイルとアプリケーションの集合を意味します。Web サイトは、Web ネットワークに接続されたサーバー上で運用され、世界中のユーザーが昼夜を問わずいつでも利用できるコンテンツを提供します。Web サイトでは、通常、HTML を使って、情報の書式設定と掲載が行われ、ユーザーがサイト内や Web 全体を移動するためのナビゲーション機能が提供されます。インターネット インフォメーション サービス (IIS) 5.0 では、Web サイトは特に仮想サーバーを意味します (既定の Web サイトなど)。仮想サーバーは、HTTP サーバー上で稼動する仮想的なコンピュータですが、ユーザーからは独立した HTTP サーバーに見えます。1 台のコンピュータで複数の仮想サーバーを稼働させて、各仮想サーバーで個別のプログラムを実行したり、入力デバイスや周辺デバイスに個別にアクセスすることができます。各仮想サーバーは、独自のインターネット ドメイン名とインターネット プロトコル (IP) アドレスを持ちます。

Web ファーム

リソースと要求負荷を共有するために接続された 2 台以上の Web サーバー。Web ファームは、通常、負荷分散、フォールト トレランス、およびフェールオーバーをサポートし、ユーザーからは単一のインターネット プロトコル (IP) アドレスを持つ単独のサーバーに見えます。サーバー ファームまたはサーバー クラスタとも呼ばれます。

関連項目 :クラスタ、サーバー クラスタ

Windows スクリプト ホスト (WSH)

32 ビットの Windows プラットフォーム用の、言語に依存しないスクリプト環境。特に指定しない限り、Windows 2000 と IIS と共にインストールされます。WSH を使うと、任意のスクリプト言語を使ってサーバー上の管理作業を自動化できます。

Windows メディア サービス広告

高品質のオーディオとビデオによる広告を表示する広告。

WSH

「Windows スクリプト ホスト」を参照してください。

X

XML

「拡張マークアップ言語」を参照してください。

XMLHTTP 操作

「拡張マークアップ言語/ハイパーテキスト転送プロトコル (XMLTHHP) 操作」を参照してください。

XML データアイランド

「拡張マークアップ言語 (XML) データアイランド」を参照してください。

あ

アーク

依存関係ネットワークで表示されるように、統計的関係をグラフィックで表したもの。たとえば、ノード A からノード B へのアークは、属性 A が属性 B の予測に役立つことを意味しますが、属性 B が属性 A の予測に役立つことは意味しません。

関連項目 :依存関係ネットワーク

値

プロファイル プロパティに割り当てられる実際のデータ。たとえば、プロファイル プロパティの "First Name" には "John" などの値が割り当てられます。

アップセル

ユーザーが表示中またはバスケットに入れた商品を、より良い商品に交換するように勧める、特定の種類の関連セル。サイトにアップセル機能を追加するには、Software Development Kit を使います。

関連項目 :インテリジェント クロスセル

アパートメント スレッド コンポーネント

単一の実行スレッドに存在する COM コンポーネント。アパートメント スレッド コンポーネントは、COM を利用してコンポーネントへの呼び出しを同期させます。Visual Basic で作成する COM オブジェクトは、すべてアパートメント スレッドです。

アプリケーション

Commerce Server 2000 においては、1 つの Uniform Resource Locator (URL) を通じてアクセスできる ASP アプリケーションを意味します。アプリケーションは、Commerce Server と IIS の両方のコンソール ツリーに表示されます。Commerce Server マネージャのコンソール ツリーに表示されるアプリケーションは、IIS のアプリケーションを論理的に表したものです。

アプリケーション既定の構成リソース

サイト レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを使って管理します。アプリケーション既定の構成リソースは、通貨のオプション、請求のオプション、BizTalk Server の統合などの領域で、サイトの機能を指定するプロパティを設定するときに使います。

アプリケーションのキャッシュ

頻繁に使用される文書、イメージ、Common Gateway Interface (CGI) スクリプトや ASP スクリプト、または Internet Server API (ISAPI) 拡張ダイナミック リンク ライブラリ (DLL) をメモリに保存し、パフォーマンスを向上させること。詳細については、IIS のヘルプの「アプリケーションをキャッシュする」を参照してください。ファイル キャッシュまたは文書キャッシュとも呼ばれます。

依存関係ネットワーク

予測モデルに含まれる予測関係 (依存関係) をグラフィックで表した要約。依存関係ネットワークを表示するには、予測モデル ビューアを使います。

関連項目 :アーク、判断ツリー

一意キー

テーブルの各レコードに対応する一意識別子が含まれるフィールド。たとえば、社会保険番号のフィールドは、社員のレコードに対応する一意キーです。

関連項目 :プライマリ キー

一覧ページ

Commerce Server ビジネス デスクの 2 種類の主要な操作ページの 1 つ。一覧ページには、いくつかの種類のデータが読み取り専用で表示され、通常はそのデータに対してフィルタ処理、並べ替え、選択、およびその他の操作を行うことができます。通常、一覧ページは ListSheet HTC と、場合によっては ListSheet HTC 上部の検索ウィンドウで構成されます。一覧ページとナビゲーション ウィンドウは、ビジネス デスクのワークスペースを共有します。

関連項目 :編集ページ

イベント

ユーザーが実行する特定のアクションの発生。代表的なイベントには、キーボードによるキー入力、マウスのクリックによるボタンの選択などがあります。イベントは、発生した時刻と共に記録されます。プログラマは、これらのアクションに応答するコードを記述します。

関連項目 :頻度

イメージ

イラスト、写真、背景テクスチャなど、Web ページで使用されるビジュアルな要素。Web ベースのイメージは、通常、.gif または .jpg 形式です。

インターネット

ゲートウェイで結合された異種コンピュータ ネットワークの集合。ゲートウェイは、送信側のネットワークから受信側のネットワークが使用するプロトコルへのデータ転送とメッセージ変換を処理します。これらのネットワークとゲートウェイでは、伝送制御プロトコル/インターネット プロトコル (TCP/IP) のプロトコル群が使われます。

インターネット アドレス

「インターネット ドメイン名」を参照してください。

インターネット インフォメーション サービス (IIS)

Web サイトの作成、構成、管理、およびその他のインターネット機能をサポートする Windows 2000 のサービス。Commerce Server をインストールする前に、サーバーに IIS をインストールしておく必要があります。

インターネット サービス プロバイダ (ISP)

インターネットへのリモート接続の公共プロバイダ。ISP は、ダイヤルアップ接続を提供するか、または専用線を設置して、リモート ユーザーがインターネットにアクセスできるようにする企業です。ISP が 1 つのサーバーまたはサーバー クラスタ上で複数のサイトを運用し、顧客企業の代わりに Commerce サイトのホストを務める場合があります。ISP では、顧客がリモート コンピュータからサイトをある程度管理できるようにしながら、インフラストラクチャを提供し、すべてのサイトに共通する管理作業を行います。

インターネット ドメイン名

インターネット上でサイトを運用するために使用する名前。インターネット ドメイン名は、ピリオド (.) で区切られた、セカンド レベルのドメイン名 ("Microsoft" など) とトップ レベルのドメイン名 ("com" や "net" など）の組み合わせで構成されます。企業は、インターネット上で Commerce サイトを開設する前に、認定されたドメイン ネーム システム (DNS) 登録機関にセカンドレベルのドメイン名を申請し、登録する必要があります。この名前は、外部 DNS 名の要件を満たしている必要があります。また、既に登録または使用されている名前は使用できません。名前を登録するには、インターネットで使用できる有効なインターネット プロトコル (IP) アドレスを最低 1 つ、およびインターネットで現在アクティブになっている DNS サーバーの IP アドレスを最低 2 つ取得する (またはインターネット サービス プロバイダ (ISP) に代行取得してもらう) 必要があります。インターネット アドレス、ドメイン名、または URL とも呼ばれます。

インテリジェント クロスセル

過去の購入行動と、ユーザーが表示またはバスケットに追加した商品に基づいて、ユーザーに表示する推奨商品を動的に適応させる方法。Web サイトにインテリジェント クロスセル機能を追加するには、予測リソースを使います。

関連項目 :関連セル、アップセル

イントラネット

会社または組織内の情報処理用に設計されたネットワーク。イントラネットは、文書の配布、ソフトウェアの配布、データベースへのアクセス、トレーニングなどの用途に使われます。イントラネットという名前は、一般に Web ページ、Web ブラウザ、ファイル転送プロトコル (FTP) サイト、電子メール、ニュースグループ、メーリング リストなどのインターネット関連のアプリケーションが使われるものの、社内または組織内からしかアクセスできないことに由来します。

エクストラネット

サプライアや顧客とのコミュニケーションを促進するために、Web の技術を使って会社のイントラネットを拡張したもの。エクストラネットを利用すると、顧客やサプライアが一定の制限内で会社のイントラネットにアクセスできるため、コミュニケーションの速度が向上し、取引関係が効率化します。

エンベロープ

特定のビジネス文書を表す一連の名前付きプロパティ。エンベロープのプロパティにはエンベロープ書式が含まれ、場合によってはエンベロープ仕様へのポインタが含まれます。また、電子ビジネス データを転送用にカプセル化するヘッダーとフッターの情報、またはヘッダーの情報だけが含まれることもあります。

親カテゴリ

商品の集合を階層にまとめるためにカタログで使用されるエンティティ。 たとえば、Music は親カテゴリで、Rock、Country、および Classical は子カテゴリです。親カテゴリと子カテゴリを作成し、サイトで表示される商品を整理します。

関連項目 :先祖カテゴリ、子カテゴリ、子孫カテゴリ、ルート カテゴリ

オンライン分析処理 (OLAP)

最新のデータにその都度アクセスし分析できるように設計された技術の一種。OLAP データは、マルチディメンション データベースに格納されます。このデータベースは、各データ属性 (商品、地理的な営業区域、期間など) を個別のディメンションと見なします。OLAP データは、共有ディメンションごとにグループ化され、キューブにまとめられます。データ ウェアハウスは、インポートされたデータを OLAP キューブを使って格納します。これにより、レポートとクエリ処理の速度が向上します。

関連項目 :ディメンション、キューブ

か

価格カテゴリ

すべての商品がカテゴリから価格を取得するカテゴリ。つまり、商品レベルで割り当てられた価格にカテゴリが優先します。

確信間隔

予測した値が特定の範囲内に収まる確率を示す数字。

拡張

Web サーバーまたはサーバー クラスタの処理能力を拡張して、サイトのトラフィックの増加に対処し、サイトのパフォーマンスを向上させること。

拡張マークアップ言語 (XML)

Web 上での構造化文書交換用のデータ形式。HTML のような固定形式ではないため、拡張マークアップ言語と呼ばれます。XML は、Web 上で Standard Generalized Markup Language (SGML) を利用できるように設計されています。XML は単体のマークアップ言語ではありません。作成者がマークアップ言語を設計できるメタ言語です。通常のマークアップ言語では、特定の種類の文書 (HTML など) で情報を記述する方法を定義します。XML では、作成者がさまざまな種類の文書用にカスタマイズしたマークアップ言語を定義できます。

拡張マークアップ言語 (XML) データアイランド

ASP ページに含まれているか、または ASP ページからアクセスできる XML データ。XML データアイランドの定義には、xml とスクリプトの 2 つの要素のいずれかが使われます。特定の XML データアイランドの参照には、これらの要素の ID 属性が使われます。データ自体がこれらの要素の中に存在することが多いですが、ソース属性を使って代わりの場所の Uniform Resource Locator (URL) を提供するときは、データはほかの場所に存在していてもかまいません。

拡張マークアップ言語/ハイパーテキスト転送プロトコル (XMLHTTP) 操作

ListSheet HTML コンポーネント (HTC) と TreeView HTC が、サーバーから XML データを取得するためのしくみ。データが表示されているページ全体を再表示することなく、新しいデータを表示できます。

確率分布

離散型の確率変数 X の場合は、各 X の値に対応する確率の集合のこと。

連続型の確率変数 X の場合、X の値が a から b までのときの確率は、ある関数を a から b まで積分して求めます。この関数のことを X の確率分布または確率密度関数と呼びます。

カスタム カタログ

基本カタログと同じカテゴリおよび商品を含み、さらに商品に対する独自の価格設定ルールも含むカタログ。

仮想サーバー

Web サイトとも呼ばれます (既定の Web サイトなど)。HTTP サーバー上で動作するものの、ユーザーからは独立した HTTP サーバーに見える仮想的なコンピュータです。1 台のコンピュータで複数の仮想サーバーを稼働させて、各仮想サーバーで個別のプログラムを実行したり、入力デバイスや周辺デバイスに個別にアクセスすることができます。

各仮想サーバーは、独自のインターネット ドメイン名とインターネット プロトコル (IP) アドレスを持ち、ユーザーからは独立した Web サイトに見えます。独自のドメイン名の使用を希望する顧客のために、仮想サーバーを使っているインターネット サービス プロバイダ (ISP) もあります。ISP では複数の インターネット インフォメーション サービス (IIS) 5.0 Web サイトを作成し、個々の IIS Web サイトに顧客ごとの Commerce アプリケーションをアンパッケージします。個別の IIS Web サイトの下で実行される Commerce アプリケーションは、グローバル リソースを共有できます。

仮想ディレクトリ

サーバーの物理ディレクトリに対応する、Web アドレスで使用されるディレクトリ名。URL マッピングと呼ばれることもあります。インターネット インフォメーション サービス (IIS) 5.0 では、仮想ディレクトリは Microsoft 管理コンソール (MMC) の階層の Web サイト (仮想サーバー) のすぐ下にある項目で、Web サイトからプロパティを継承します。継承されるプロパティには、仮想ディレクトリ レベルで設定を変更できるものとできないものがあります。Commerce Server アプリケーションをはじめとするアプリケーションは、IIS の仮想ディレクトリ レベルにあり、Web サイトとの間で同じ親子関係を持ちます。

カタログ

カテゴリと商品の集まり。

カタログ エディタ モジュール

カタログの編集と管理を行うための Commerce Server ビジネス デスク モジュール。カタログ エディタ モジュールでは、商品とカテゴリの追加、編集、削除に加えて、カタログのインポートとエクスポート、およびフルテキスト インデックスの更新もサポートされています。

カタログ式

カタログのどの商品に割引を適用するかを指定する式。

カタログ スキーマ

カテゴリ定義、商品定義、およびプロパティ定義を指定するカタログの記述。1 つのスキーマを複数のカタログで共有できます。カタログ スキーマの管理には、カタログ デザイナ モジュールを使います。

カタログ セット

特定のユーザーや組織に公開する 1 つ以上のカタログのグループ。たとえば、特定の組織のメンバーに表示する 2 つのカスタム カタログを作成し、さらにほかの組織に公開するほかのカタログを 2 つ作成します。これにより、2 つのカタログ セットに分類された 4 つのカタログが作成されます。

カタログ セット モジュール

カタログ セット作成と管理を行うための Commerce Server ビジネス デスク モジュール。

カタログ データ

カタログの内容。個々の商品項目と項目が属するカテゴリに関するデータが含まれます。

カタログ デザイナ モジュール

カタログ スキーマの作成と管理を行うための Commerce Server ビジネス デスク モジュール。カタログ スキーマは、カテゴリ定義、商品定義、およびプロパティ定義で構成されます。これらのコンポーネントが、カタログ内のカテゴリ、商品、およびプロパティの基礎になります。

カタログ プロパティ

名前、開始日、終了日、通貨、計量単位、商品の一意の ID など、カタログを表す基本的なプロパティ。カタログ プロパティの管理には、カタログ エディタ モジュールを使います。

カテゴリ (Commerce Server ビジネス デスク)

ナビゲーション ウィンドウ内で使われる組織構造。関連性のある Commerce Server ビジネス デスク モジュールをグループ化できます。

カテゴリ

商品またはサブカテゴリのコンテナ。各カテゴリは、カテゴリ定義の個々のインスタンスです。たとえば、Description と Manager というプロパティを含む "Department" カテゴリ定義に基づいたカテゴリには、Hardware という名前と、Power Tools (Description) および Frank Lee (Manager) というプロパティが設定されます。カテゴリの管理には、カタログ エディタ モジュールを使います。

カテゴリ階層

1 つのカテゴリが親に指定され、1 つ以上のカテゴリが子になる、カテゴリ内の階層。1 つのカテゴリが、同じカテゴリの親と子 (子孫) の両方になることはできません。

カテゴリの関連付け

1 つの商品をほかの商品またはカテゴリと関連付ける方法。カテゴリの関連付けには、名前、説明、および対象があります。カテゴリは、ほかのカテゴリに関連付けることができます (Jeans カテゴリから Belts カテゴリへの関連付けなど)。また、カテゴリを個々の商品に関連付けることもできます (カテゴリ内の目玉商品への関連付けなど)。カテゴリには、ほかのカテゴリや商品との複数の関連付けを設定できます。

カテゴリ プロパティ

カテゴリ定義を形成するプロパティ。たとえば、Department カテゴリ定義は、Description と Manager というプロパティを持ちます。カテゴリ プロパティの管理には、カタログ デザイナ モジュールを使います。

カテゴリ定義

特定の種類のカテゴリで利用できるプロパティ。1 つのカテゴリ定義は複数のカテゴリで使用できます。たとえば、Department カテゴリ定義に Description と Manager というプロパティが含まれる場合があります。カテゴリ定義の管理には、カタログ デザイナ モジュールを使います。

加入

ユーザーがメーリング リストに登録するために行う操作。

可用性

コンピュータ、サーバー クラスタ、またはシステムとそのプログラムのフォールト トレランスの尺度。可用性の高いコンピュータやシステムとは、許容できるサービス レベルで最低 99.9% の時間は動作し続けるコンピュータまたはシステムのことです。

監査

指定した種類のイベントをサーバーまたはワークステーションのセキュリティ ログに記録して、ユーザーの活動を追跡すること。

完成したレポート モジュール

実行中の静的レポートの状態を確認し、完了したレポートを表示するための Commerce Server ビジネス デスク モジュール。

間接価格

価格カテゴリに関連付けられた価格。商品レコードの価格フィールドは無視されます。

関連項目 :直接価格

カンマ区切り値ファイル (.csv)

列またはデータベース フィールドの区切り文字にカンマを使用するテキスト ファイル。大部分のデータベースやその他のプログラムでは CSV ファイルをエクスポートおよびインポートできるため、1 つのプログラムで作成したデータベース ファイルをほかのプログラムで利用できます。

カンマ区切りファイル

「カンマ区切り値ファイル」を参照してください。

管理者

「システム管理者」を参照してください。

管理データベース

Commerce Server の同じ (論理) インストール環境の一部として実行されている、すべてのコンピュータの構成データを格納する SQL Server データベース。このデータベースは、Commerce Server のセットアップ プログラムによって作成されます。

関連

「クラスの関連」と「クラス メンバの関連」を参照してください。

関連セル

ユーザーが表示中の商品、またはバスケットに入れた商品と、ほかの関連商品との間に関連付けを作成し、ユーザーに追加の商品を表示する宣伝活動の一種。サイトにアップセルとクロスセルの機能を追加するには、Commerce Server 2000 Software Development Kit を使います。インテリジェント クロスセルの機能を追加するには、予測リソースを使います。

関連項目 :クロスセル、インテリジェント クロスセル

キー

データ ファイルのレコードまたはレコード グループの識別子。キーは、レコード内のフィールドまたはフィールド セットの特殊なプロパティを示します。使用できるキーの種類には、組み合わせキー、結合キー、プライマリ キー、および一意キーがあります。

関連項目 :クラス キー

既定の確信

購入の確率を表す値。この数値を上回る購入の確率を持つ項目だけが返されます。

既定のコンポーネント

ステージにとって重要な値が存在するかどうかを確認する Component Object Model (COM) サーバー オブジェクト。既定のコンポーネントは、通常、ステージの先頭近くに表示されます。

関連項目 :ステージ

基本カタログ

カスタム カタログの基になるソース カタログ。

基本通貨

サイトで計算を実行するために使用される通貨単位。

関連項目 :代替通貨

キャッシュ

頻繁に使用されるデータ値を複製し、すばやくアクセスできるようにするメモリ サブシステム。キャッシュには、頻繁にアクセスされる RAM の場所の内容と、そのデータ項目が格納されているアドレスが格納されます。プロセッサがメモリのアドレスを参照すると、キャッシュは自分がそのアドレスを保持しているかどうかを調べます。保持している場合は、データをプロセッサに返します。保持していない場合は、通常のメモリ アクセスが発生します。

キャッシュされたメモリはメインの RAM メモリより高速なので、マイクロプロセッサの速度に比べて RAM のアクセスが遅いときにはキャッシュが役立ちます。Commerce Server ビジネス デスクを使うと、サイトのプロファイル データ、カタログ データ、トランザクション データ、およびキャンペーン データが格納されているキャッシュを空にできます。次に Commerce Server がこのデータに対する要求を受け取ると、更新されたデータがキャッシュに読み込まれます。

関連項目 :キャンペーンの発行モジュール、プロファイルの発行モジュール、トランザクションの発行モジュール

キャッシュ ライタ

CacheManager オブジェクトがキャッシュの Dictionary オブジェクトから利用状況データを書き込むときに使うコンポーネント。このコンポーネントはパイプライン コンポーネントとして実装されますが、パイプラインのコンテキストでは実行されません。

キャッシュ ローダー

CacheManager オブジェクトがキャッシュの Dictionary オブジェクトにデータを読み込むときに使用するコンポーネント。このコンポーネントはパイプライン コンポーネントとして実装されますが、パイプラインのコンテキストでは実行されません。

キャパシティ プラン

予想されるサイトのトラフィックをサポートし、サイトのパフォーマンス目標を達成するために、必要なアプリケーション、ハードウェア、およびネットワークの計画を立てること。

キャンペーン

さまざまなコミュニケーション手段 (広告やダイレクト メールなど) を使って、市場シェアの拡大、新商品の発売、顧客の維持など、特定の目的を達成するマーケティング プログラム。

キャンペーン項目

キャンペーンの特定の目的を実現するために使用されるコミュニケーション手段。Commerce Server では、広告、ダイレクト メール、割引の 3 種類のキャンペーン項目を作成できます。サードパーティの製品を使うと、ほかの種類のキャンペーン項目も作成できます。

キャンペーン項目 ID

キャンペーン項目に対してコンピュータが生成する ID 番号。

キャンペーン式モジュール

式の作成と管理を行うための Commerce Server ビジネス デスク モジュール。

関連項目 :パーソナライズ

キャンペーンの発行モジュール

新しいキャンペーン情報を使ってサイトを更新するための Commerce Server ビジネス デスク モジュール。キャンペーンの発行モジュールは、サイトのキャンペーン情報が格納されているキャッシュを空にします。次回 Commerce Server がキャンペーン データに対する要求を受け取ると、更新されたデータがキャッシュに読み込まれます。

関連項目 :キャッシュ

キャンペーン マネージャ モジュール

顧客のアカウントを作成し、その後で広告キャンペーン、割引キャンペーン、ダイレクト メール キャンペーンの作成と管理を行うための Commerce Server ビジネス デスク モジュール。

キャンペーン目標設定

特定の時間内に配信する広告の数を決めること。目標は、クリック数や販売金額など、任意のイベント単位で設定できます。Commerce Server では、広告の目標設定はサポートされていますが、割引の目標設定はサポートされていません。Commerce Server ビジネス デスクを使うと、キャンペーン レベルまたは広告レベルでキャンペーンの目標を設定できます。

たとえば、キャンペーン レベルで目標を設定していて、顧客から 25,000 回の広告要求の注文を受けたとします。キャンペーン項目レベルでは、一方の広告が広告要求の 60% 表示されるように設定し、もう一方の広告が広告要求の 40% 表示されるように設定します。たとえば、顧客が広告要求の数を 40,000 回に変更した場合でも、広告が表示される回数を手動で変更する必要はありません。表示回数は 60% と 40% のままになります。キャンペーン項目レベルで目標を設定する場合は、広告要求の目標を広告ごとに設定します。

関連項目 :広告要求

キャンペーン リソース

サイト レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを使って管理します。キャンペーン データが格納されているデータベースへの接続文字列を構成するときに使います。

キューブ

Commerce Server データ ウェアハウスのデータのサブセットを含む構造体。共有のディメンションとメジャーによって定義されます。Commerce Server のキューブはアンパッケージ処理時に作成され、レポート準備 DTS タスクの実行時にデータが取り込まれて、データ取得用に処理されます。キューブにデータを格納すると、データ取得の速度が向上します。

関連項目 :オンライン分析処理 (OLAP)

業種コード

自動車、航空機、飲料など、特定の業種に対応する識別子。業種コードは参照テーブル モジュールを使って作成します。業種コードを使うと広告の関連業種を識別できるため、同じ業種で競合する広告主の広告が同じページに表示されるのを防ぐことができます。業種コードは、顧客レベルでキャンペーンに関連付けられるため、その顧客のすべての広告キャンペーンに業種コードが既定で使われます。業種コードを顧客レベルで関連付けない場合は、広告レベルで関連付ける必要があります。

クエリ

データの取得、変更、または削除を行うための特定の要求。

国/地域コード

商品の送付先や取引先の国/地域を識別するために、Commerce Server ビジネス デスクで使われる 3 文字のデータ コード。ビジネス デスクの税率モジュールを使うには、国/地域コードを設定する必要があります。

クライアント

クライアントとサーバーの関係で、要求を行う側のプログラムまたはユーザー。たとえば、Commerce Server ビジネス デスクを使用するユーザーは、ビジネス デスク サーバーにクライアントとして情報を要求します。

クラス

関連するデータ メンバの論理コレクション。クラスは通常、物理オブジェクト (ユーザー、商品) または概念上のエンティティ (訪問、Web のヒット) をモデル化します。クラスのインスタンスは、Commerce Server データ ウェアハウスにインポートされるユーザー データを表します。クラスは、基になるリレーショナル データベースのテーブル定義にマップされます。

関連項目 :データ メンバ

クラス キー

クラスのインスタンスを一意に識別する値を持つ、クラスのデータ メンバのサブセット。

関連項目 :キー

クラス キー メンバ

複数の値を持つクラス キーのメンバの 1 つ。

クラスタ

Commerce Server の予測機能で、特定のプロファイル特性を共有するユーザーのグループ。クラスタは予測リソースによって識別され、セグメント ビューア モジュールを使って表示できます。

関連項目 :Web ファーム

クラスの関連

2 つのクラス間の親子関係による結びつき。関連によって、各クラスのインスタンスの数が定義されます。Commerce Server データ ウェアハウスでは、ほぼすべてのクラスの関連が多対一です。つまり、親に子がない場合も、1 つ以上の子がある場合もあります。

クラス メタデータ

Commerce Server データ ウェアハウス論理スキーマのクラスを作成するために指定する属性を表す概念モデル。

クラス メンバの関連

クラスの関連における 2 つのクラスの特定データ メンバ間の関連。

クリエイティブ

広告スケジュールに配置されるコンテンツ。広告業界では、クリエイティブがコンテンツの所有権を示します。実行中の広告を所有している会社の承認なしでは、広告のどの部分も変更できません。

クリック時のリンク先

ユーザーが Web サイトのコンテンツをクリックするか、またはダイレクト メール メッセージの内容をクリックすると表示される URL。

クリックの頻度

クリックの回数をクリック数の達成率で割った値。

関連項目 :達成率

グループ

折りたたみ可能な見出しを含む Commerce Server ビジネス デスク画面内の領域。ユーザーは必要に応じて、その領域の情報を表示したり、非表示にすることができます。セクションとも呼ばれます。

グローバル一意識別子 (GUID)

グローバルに一意であることが保証されている 128 ビットの数字。以前から、GUID は Guidgen.exe コマンド ライン プログラムを使って作成されてきました。Guidgen.exe プログラムは、何度実行しても、何台のコンピュータで実行しても、同じ数字を 2 度生成することは決してありません。Commerce Server では、GenID オブジェクトを使って GUID を生成できます。

グローバル リソース

すべてのサイトで利用できるリソース。グローバル リソースは、Commerce Server マネージャのグローバル レベル、およびグローバル リソースを使用するサイトのサイト レベルで、オブジェクトを公開します。グローバル リソースのプロパティは、グローバル レベルで構成されます。

Commerce Server に組み込まれているグローバル リソースには、ダイレクト メーラーと予測 (これらは Windows 2000 のサービスでもあります)、CS 認証、ビジネス データ サービス、およびデータ ウェアハウスがあります。Commerce Server で機能する独自のグローバル リソースをサード パーティが開発することもできます。グローバル リソースの管理には、Commerce Server マネージャを使います。

関連項目 :リソース

グローバル リソース ポインタ

サイト レベルで公開されるリソース オブジェクトで、そのサイトで使用されているグローバル リソースを参照する働きをします。このようなグローバル リソースは、ほかのサイトから参照および使用されることもあります。

クロスセル

ユーザーが既にバスケットに入れた商品に関連した商品をユーザーに勧める、特定の種類の関連セル。サイトにクロスセル機能を追加するには、Commerce Server 2000 Software Development Kit (SDK) を使います。

関連項目 :関連セル

掲載単位

「広告要求」を参照してください。

継承

新しく作成されたオブジェクトが、既存のオブジェクトのプロパティを自動的に受け継ぐ機能。たとえば、新しく作成された子ディレクトリは、親ディレクトリのアクセス制御設定を継承できます。

ケース

ユーザー プロファイル データやトランザクション履歴など、特定のユーザーに関してわかっているすべての情報。個々のケースは、Commerce Server データ ウェアハウスのデータを基に作成されます。ケースは Commerce Server が予測モデルを構築する際の情報源になります。

ケース ID

ユーザーごとに一意の ID。

ケース エクストラクタ

Commerce Server データ ウェアハウスからデータを読み込んで、モデル構築用のケースを生成するコンポーネント。

結合キー

1 つのテーブルまたはクエリのフィールドと、ほかのテーブルまたはクエリの同じデータ型のフィールドとの関連付け。Commerce Server では、結合キーを使って、プロファイル リソースが使う 1 つのデータ ストアのデータを、やはりプロファイル リソースが使うほかのデータ ストアのデータに関連付けます。たとえば、User Name プロパティに存在する結合キーが、Active Directory のデータに保存された User Name フィールドを、SQL Server テーブルのデータに保存された User Name フィールドに関連付ける場合などがあります。

関連項目 :2 重のキー

権限

ユーザーが Web ページやデータベースなどのリソースにアクセスするための適切なアクセス権限を持っているかどうか、またはバックアップなどの作業を実行するための適切な権限を持っているかどうかを確認する処理。権限は、通常、システム管理者かサイト開発者が設定し、コンピュータによってチェックおよび許可されます。ユーザーは、コード番号やパスワードなど、コンピュータが内部レコードと照合する特定の種類の識別情報を提示します。

検索ペイン

Commerce Server ビジネス デスクで、一覧ページのモジュール コンテンツ ウィンドウの上部にある領域。検索ペインには検索条件を入力します。入力した条件は検索処理で使われます。ほとんどの場合、モジュール コンテンツ ウィンドウの下部は ListSheet HTC で構成され、ここに検索処理の結果が表示されます。

広告

表示頻度 (NOD) と呼ばれる配信用の特定の計算式に基づいて Commerce Server が配信するコンテンツ。

広告 ID

広告に対してコンピュータが生成する ID 番号。この番号は、キャンペーン マネージャ モジュールを使って Commerce Server に追加されます。

広告キャンペーン目標設定

「キャンペーン目標設定」を参照してください。

広告クリック

Web ページに表示される、広告またはリンクが設定された要素をユーザーがクリックする操作。この操作はサーバーに記録され、クリックによって新しいページやコンテンツが表示されます。

関連項目 :広告クリック率

広告クリック率

広告クリックに結び付いた広告要求の割合。

関連項目 :広告クリック、広告要求

広告対象

広告の対象になる状況またはユーザーを表す式の結果。

広告要求

Web サイトの訪問者に広告の要素を配信する機会。要求は、特定のページに対する要求や特定の品目の購入など、サイト上のイベントによって発生します。要求を満たすために使用される広告は、表示頻度 (NOD) によって決定されます。キャンペーン マネージャ モジュールを使ってキャンペーンまたはキャンペーン項目を作成するときに、Commerce Server で記録するそのキャンペーンやキャンペーン項目に対する広告要求数またはクリック数を入力できます。

関連項目 :広告クリック率、キャンペーン目標設定、表示頻度 (NOD)

更新

フルテキスト インデックスを再構築すること。Commerce Server ビジネス デスクのカタログ エディタ モジュールでのみ使われます。

購読

ユーザーが、コンテンツを受信するために自分の電子メール アドレスをリスト マネージャのリストに追加する処理。または、コンテンツを取得したりサービスやサイトにアクセスするために、登録情報を入力する処理。

コード値

国/地域、都道府県/州、注文状況など、プロパティの文字情報を表すために使用される略語。たとえば、WA はワシントン州のコード値です。

子カテゴリ

商品の集合を階層にまとめるためにカタログで使用されるエンティティ。子カテゴリは、親カテゴリに従属します。たとえば、Music は親カテゴリで、Rock、Country、および Classical は子カテゴリです。親カテゴリと子カテゴリを作成し、サイトで表示される商品を整理します。

関連項目 :ルート カテゴリ、先祖カテゴリ、子孫カテゴリ、親カテゴリ

顧客

キャンペーンの実施対象になる企業または個人。顧客は、代理店、広告主、または自社のビジネスの場合もあります。

コンソール ツリー

コンソールに含まれる項目が表示される、MMC インターフェイスの左側のウィンドウ。特に指定しない限り、コンソール ウィンドウの左側に表示されますが、非表示にすることもできます。コンソール ツリーの項目とその階層構造によって、コンソールの機能が決まります。

コンテンツ レプリケーション

Web サイトのコンテンツを 1 つのサーバー ノードからほかのサーバー ノードにコピーする方法。ファイルを手動でコピーすることも、レプリケーション ソフトウェアを使ってコンテンツを自動的にコピーすることもできます。レプリケーションは、フォールト トレランスを実現する上でクラスタリングに必須の機能です。

コンテンツ ウィンドウ

Commerce Server ビジネス デスクで、操作ページが表示されるウィンドウ。

コンテンツ サイズ

コンテンツの高さと幅をピクセル単位で表した値。新しいコンテンツ サイズを定義する場合は、参照テーブル モジュールを使います。コンテンツ サイズを作成または変更すると、更新した情報がキャンペーン マネージャ モジュールの [コンテンツ サイズ] ドロップダウン リストに表示されます。

コンテンツ選択スコア

コンテンツ選択フレームワーク (CSF) 内で、広告や割引などの対象化されたコンテンツを選択する際の基準になる数値。Initial Scoring ステージで、各項目に初期スコアが割り当てられます。値が設定されていない場合、初期スコアは既定値の 1 になります。このスコアは、項目が対象化の条件に一致する度合いに応じて調整されます。SelectWinners コンポーネントが、最も高いスコアに調整された項目を選択し、Web サイトのユーザーに表示します。スコアがゼロ (0) の項目は選択されません。

コンテンツ選択フレームワーク (CSF)

対象化したコンテンツの配信のための開発フレームワーク。コンテンツ選択フレームワーク (CSF) には、ビジネス固有のメッセージング システムを構築するためのコンポーネントが備わっています。CSF は、コンテンツをユーザーに対象化する決定を迅速に下すためのプラットフォームを提供します。

さ

サーバー クラスタ

リソースと要求負荷を分担するために接続された、2 台以上のコンピュータ。サーバー クラスタの各メンバをノードと呼びます。サーバー クラスタのノードは、個別に記憶デバイスを持つことも、共通デバイスを共有することもできます。サーバー クラスタは、通常、負荷分散、フォールト トレランス、およびフェールオーバーのサポートを行います。

関連項目 :Web ファーム

サーバー ファーム

「サーバー クラスタ」と「Web ファーム」を参照してください。

サービス

特定のシステム機能を実行して、ほかのプログラム、特に低レベルの (ハードウェアに近い) プログラムをサポートするプログラム、ルーチン、またはプロセス。サービスをネットワーク経由で提供する場合は、サービスを Active Directory で公開して、サービス中心の管理と利用を促進できます。各サービスは、共通の管理機能を備えています。たとえば、サービスは開始、停止、一時停止、または再開することができます。サービスの開始パラメータは変更できます。また、コマンド ライン ユーティリティとスクリプトを使ってサービスを管理できます。Commerce Server には、リソースであると同時にサービスでもあるダイレクト メーラー、予測、およびリスト マネージャが含まれています。

関連項目 :リソース

サイト

Commerce Server マネージャで、Commerce Server アプリケーションとサイト レベルのリソース用のコンテナ。たとえば、Retail サイトには、B to C Web サイトと B to B Commerce Server ビジネス デスクの 2 つのアプリケーションが含まれ、どちらも同じサイト レベルのリソースを共有します。

サイト開発者

Web サイト用の HTML/ASP コードを記述し、ビジネスに合わせてサイトをカスタマイズする人。サイト開発者は、レポートをカスタマイズしたり、ビジネス デスク モジュールの追加または変更を行い、独自のビジネス ニーズに合わせて機能を拡張することもあります。

サイト構成ストア

基本通貨、代替通貨、SMTP サーバー名など、サイトの構成設定が格納されている管理データベース。

サイト パッケージャ

「Commerce Server サイト パッケージャ」を参照してください。

サイト ボキャブラリ

Site Server 3.0 で、ユーザーとコンテンツの属性用に階層型に配置された選択値。Commerce Server 2000 では、サイト ボキャブラリがサイト用語になります。

関連項目 :サイト用語

サイト用語

サイトに関係する特定の値のリスト。サイト用語を使って、用語と呼ばれるこの値のリストを、プロパティ型としてプロファイル プロパティに割り当てます。たとえば、"性別" という名前のサイト用語を作成し、"女性"、"男性"、"不明)" などの選択値を定義できます。"性別" という名前のプロファイル プロパティを作成し、性別のサイト用語を型参照として割り当てると、ユーザーは Web サイトの性別のプロパティに対応して表示されるドロップダウン リストから、[女性]、[男性]、または [不明] を選択できるようになります。ユーザーは、プロパティの選択値から 1 つの値だけを選択できます。

サイト用語をプロファイル プロパティに割り当てて、Commerce Server 全体で使用できる共通の用語を設定することで、たとえば広告の内容をユーザーに合わせて対象化できます。

関連項目 :サイト用語エディタ モジュール、サイト ボキャブラリ

サイト用語エディタ モジュール

サイト用語の追加と編集を行うための Commerce Server ビジネス デスク モジュール。

関連項目 :サイト用語

サイト リソース

特定のサイトで利用できるリソース。サイトで使用するリソースはすべて、Commerce Server マネージャのサイト レベルでオブジェクトを公開します。たとえば、グローバル リソースはサイト リソースになることもできます。その場合、サイトで使用するグローバル リソースは、サイト レベルでオブジェクトを公開します。オブジェクトが公開する唯一のプロパティは、グローバル レベルの関連するグローバル リソースへのポインタです。

サイト リソースは、すべてのプロパティをサイト レベルで持つことも、すべてのプロパティをグローバル レベルで持つこともできますが、両方で持つことはできません。サイト リソースのプロパティはサイト レベルで設定します。Commerce Server には、一連のサイト リソースが含まれています。また、サード パーティがカスタム サイト リソースを開発することもできます。サイト リソースの管理には、Commerce Server マネージャを使います。

関連項目 :リソース

サプライア

B to B サイトの取引先。サプライアをサイトに追加するには、Microsoft BizTalk Server を使います。製造元とも呼ばれます。

参照テーブル モジュール

コンテンツ サイズ、業種コード、およびページ グループの作成と管理を行うための Commerce Server ビジネス デスク モジュール。

式

プロファイルに対して評価され、コンテンツを配信するか、またはその他のアクションを実行するかを決定する条件。たとえば、"ユーザー訪問回数 > 100" のように指定します。この式の評価結果が "True" であれば、特定のコンテンツがユーザーに表示されます。式の作成にはキャンペーン式モジュールを使用し、式を評価した後で実行するアクションに式を結合します。

関連項目 :式ビルダ

式ストア

式の情報を格納する Commerce Server データベースのテーブル。

関連項目 :ストア

式ビルダ

式を作成するためのツール。式ビルダには、よく使われる式のリストが用意されています。この中から式を選択して、対象とするプロパティを定義できます。式ビルダは、キャンペーン式モジュールから新しい対象式またはカタログ式を作成するときに使います。

関連項目 :式

識別

サポートされている識別スキーマにオブジェクトをマッピングするか、または一意のユーザー ID (UID) を取得する処理。通常は、オペレーティング システム、IIS、または Commerce Server によってこの識別が提供されます。

自社広告

有料広告がその表示頻度のスケジュールに先行して配信されている場合に配信される広告。たとえば、顧客が 1,000 回の有料広告を 4 か月かけて配信する注文をしているにもかかわらず、最初の 2 か月で 850 回の広告が配信されたとします。この場合、表示頻度のスケジュールを調整するために、自社広告を配信します。また、要求に適した有料広告がない場合にも、自社広告が配信されます。

たとえば、すべての有料広告が、要求される対象に適さない場合や、除外に該当している場合は、自社広告が配信されます。自社広告は、売れ残りの在庫を割引価格で販売するためにも使います。また、サイトの広告が特定の配信目標を持たないものの、指定した優先度で広告を実行する場合にも使います。

関連項目 :優先度

システム管理者

Commerce Server マネージャの主要なユーザー。システム管理者は、Commerce Server のインストール、構成、および管理を行う責任を負います。

子孫カテゴリ

1 つ以上の親子関係を通じて、別のカテゴリに従属するカテゴリ。子カテゴリは子孫カテゴリであり、子カテゴリの子カテゴリも子孫カテゴリです。

関連項目 :先祖カテゴリ、子カテゴリ、派生商品、ルート カテゴリ、親カテゴリ

実売価格

正確な金額を指定する特別価格。実売価格は、基本カタログで指定された価格に優先します。

支払い

Web サイトでの購入を完了させる処理。たとえば、顧客が Web サイトで買い物をするときは、いくつかの品目を選択し、それらをショッピング バスケットに保存します。買い物が終わると、顧客は支払いリンクまたはグラフィックで表されたボタンをクリックして、名前、請求先、支払いの種類、および送料の情報を入力するオンライン フォームに移動します。

集計

オンライン分析処理 (OLAP) キューブ用にあらかじめ計算されたデータを含むテーブルまたは構造体。集計では、マルチディメンション データベースの高速で効率的なクエリ処理がサポートされます。

集計カタログ

複数のサプライアなど、いくつかの種類のソースから構築されるカタログ。データはアカウンティング システムやその他の文書からインポートすることも、カタログ エディタ モジュールを使って入力することもできます。

条件指定検索

カテゴリ、商品、プロパティなどのパラメータ制約を指定して、徐々に対象を絞り込みながら商品を検索できる検索方法。条件指定検索を実行する場合は、検索条件に一致する商品の数を徐々に減らしていきながら、プロパティを検索します。条件指定検索は、すべての商品からプロパティを検索せず、その代わりに商品のグループを特定する必要がある場合に役立ちます。

条件指定検索可能

プロパティ定義の "はい/いいえ" フラグ。条件指定検索を通じてそのプロパティを検索できるようにするかどうかを指定します。

商品

カタログ内で販売される品目。各商品は、商品定義の個々のインスタンスです。たとえば、"Author"、"Title"、および "List Price" というプロパティを含む Book 商品定義に基づく商品には、"Bill Gates"、"The Road Ahead"、"1500 円" などのプロパティが設定されます。商品の管理には、ビジネス デスクのカタログ エディタ モジュールを使います。

商品 ID

在庫保管単位 (SKU) など、カタログ内の商品を一意に識別する必須プロパティ。商品 ID を商品定義から削除することはできません。 .

商品価格

特定の商品について、特定のユーザーに請求する代金を決めること。

商品カタログ リソース

サイト レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを通じて管理します。商品カタログ リソースは、カタログ データが格納されているデータベースへの接続文字列を構成するときに使います。

商品グループ

商品バリエーションを持つ商品。たとえば、"Women's Thermal Shirts" という商品グループには、red shirt、blue shirt、green shirt などの商品バリエーションが含まれます。商品グループには、商品名など、常に一意の識別子があります。

商品定義

特定の種類の商品で利用できるプロパティ。各商品は、商品定義に関連付けられます。たとえば、Book 商品定義には、"Author"、"Title"、"List Price" などのプロパティが含まれます。商品定義は、在庫保管単位 (SKU) などの商品 ID を 1 つ持つ必要があります。また、常に List Price プロパティを持ちます。商品定義の管理には、ビジネス デスクのカタログ デザイナ モジュールを使います。

商品の関連付け

カタログ内の 1 つの商品をほかの商品またはカテゴリと関連付ける方法。たとえば、プリンタを、ほかのカテゴリにあるプリンタ リボンやインク カートリッジと関連付けることができます。商品の関連付けには、関連付けの種類を示す名前 ("アクセサリ" など) があります。また、関連付ける側の商品またはカテゴリと、関連付けられる側の商品またはカテゴリがあります。商品の関連付けの管理には、ビジネス デスクのカタログ デザイナ モジュールを使います。

商品バリエーション

関連性のあるバリエーションでグループ化され、まとまって 1 つの商品を形成する特定の項目。バリエーションでは、通常、互いに 1 つ以上のプロパティが異なります。たとえば、サイズが M、色がグリーン、在庫保管単位 (SKU) が 14678 のシャツは、Shirt 商品の 1 つの商品バリエーションです。この場合、サイズ、色、および SKU がまとまって 1 つの商品バリエーションを形成します。商品バリエーションには、SKU などの一意の識別子と価格が必ず含まれます。各商品バリエーションは、同じ商品定義に基づいています。

商品バリエーション プロパティ

商品バリエーション間で異なるプロパティ。たとえば、サイズが M で色がグリーンのシャツの商品バリエーションには、サイズと色の 2 つの商品バリエーション プロパティがあります。

商品プロパティ

商品定義を形成するプロパティ。たとえば、Book 商品定義には、"Author"、"Title"、"List Price" などの商品プロパティが含まれます。商品プロパティの管理には、ビジネス デスクのカタログ デザイナ モジュールを使います。

信頼性

障害が発生する間隔の尺度 (平均故障時間)。この場合の障害は、アプリケーション、コンピュータ システム、またはネットワーク システムに対する満足なサービスを受けられなくなる状態と定義されます。これに対して可用性には、信頼性に加えて、障害の発生 (または定期点検やアップグレードによる停止) からシステムを通常の運用状態に戻すのに必要な時間も含まれます。Commerce Server のインストールを計画する際には、必要なレベルの信頼性が得られるように、ハードウェア、ネットワーク、および運用手順を計画します。

推奨スコア

クロスセル用の商品の推奨に使用された分析モデルの品質を測定する値。このスコアで、モデルから返されたランク付き推奨リストの品質を測定します。

関連項目 :スコア

垂直方向拡張

サーバー クラスタ内のサーバーの物理的な設置面積と台数は変えずに、たとえば RAM やプロセッサの追加など、ハードウェアをアップグレードして Web サイトの処理能力を向上させること。スケール アップとも呼ばれます。

関連項目 :水平方向拡張

水平方向拡張

サーバー クラスタにサーバーを追加して、Web サイトの処理能力を向上させること。スケール アウトとも呼ばれます。

関連項目 :垂直方向拡張

スケール アウト

「水平方向拡張」を参照してください。

スケール アップ

「垂直方向拡張」を参照してください。

スコア

分析モデルが新しいデータをどの程度正確に予測しているかの測定。これらのスコアを使って、[モデル構築のプロパティ] ダイアログ ボックスの [サンプル サイズ]、[入力属性分数]、[出力属性分数] の各パラメータに使用されている値を調整しながら、分析モデルの効果を測定します。

関連項目 :データ フィット スコア、推奨スコア

ステージ

コンポーネントを論理的にまとめる働きをする、パイプラインの一部分。たとえば、税ステージは、特定の注文に適用する税の計算に関連するパイプライン コンポーネントをまとめます。

関連項目 :既定のコンポーネント、ステージの関連性

ステージの関連性

特定のステージ内で機能できるコンポーネントの特性。コンポーネントが関連性を持つステージを指定するには、新しいコンポーネントのクラス ID を Microsoft Windows NT レジストリの \HKEY_CLASSES_ROOT\CLSID\component_classid\implemented categories\stage_catid キーに書き込みます。stage_cat_id は、コンポーネントが関連性を持つステージのグローバル一意識別子 (GUID) です。component_class_id は、コンポーネント自体のクラス ID です。

関連項目 :ステージ

ステータス バー

Commerce Server ビジネス デスクのコンテンツ ウィンドウの一番下にある、高さは低く幅の広い表示領域。ここには、読み込み中のメッセージなどの現在のタスクの状態と、操作ページの HTML コンポーネント (HTC) で使用されている重要情報が表示されます。

関連項目 :操作ページ

ストア

データベースの特定のテーブル群。

関連項目 :式ストア

ストレス テスト

Commerce Server アプリケーションが、予想される数の同時ユーザーをサポートし、ピーク時のユーザー負荷を処理しながら、必要なレベルのパフォーマンスを維持できるかどうかを確認するテスト。ストレス テストは、システム管理者が定めた負荷を生成し、予想されるサイトの利用パターンを模倣するストレス ツールを使って実施します。負荷テストとも呼ばれます。

スナップイン

Microsoft 管理コンソール (MMC) でサポートされているコンソールに追加できるツールの一種。スタンドアロン スナップインは単独で追加できます。拡張スナップインは、ほかのスナップインの機能を拡張する場合にのみ追加できます。

関連項目 :Microsoft 管理コンソール (MMC)

スポンサー

サイトの特定のセクションまたはページで広告を実行し、ほかのすべての広告を除外することに対して代金を支払う広告主。これらの広告は、対象を指定した広告を含めて、ほかのすべての広告に優先します。多くの場合、これらの広告は、たとえば "の提供でお届けします" というメッセージ付きの切り替え広告のように、コンテンツに独占的に統合されたメッセージになっています。スポンサーは、ページと対象の両方に設定できます。この種類の広告を設定するには、ビジネス デスクの対象グループ モジュールを使って、対象式でスポンサー アクションを指定します。

静的リスト

要求に応じて直ちに作成され、リスト マネージャ データベースに格納されるユーザー レコードのリスト (リストの作成に必要な情報だけがリスト マネージャ データベースに格納される動的リストとは、この点が異なります)。静的リストは、まれに実行するダイレクト メール キャンペーンに使ったり、受信者リストが頻繁に変更されない場合に使います。

関連項目 :動的リスト

静的レポート

要求に応じて直ちに実行され、データと共にデータ ウェアハウスに格納されるレポート (レポートの作成に必要な情報だけがデータ ウェアハウスに格納される動的レポートとは、この点が異なります)。静的レポートは Web サイトに掲載できます。また、静的レポートのデータは、ビジネス デスクのリスト マネージャ モジュールにエクスポートできます。静的レポートの実行にはレポート モジュールを使用し、表示には完了レポート モジュールを使います。

税率モジュール

Web サイトの税テーブルと税率を更新するための Commerce Server ビジネス デスク モジュール。

セグメント

セグメント ビューア モジュールで、類似のプロファイル プロパティを共有するユーザーのグループ。

セグメント化

互いに類似するケースのグループを識別する、データ マイニングの手法。セグメント化を行うには、セグメント ビューア モジュールを使います。

セグメント階層

セグメント ビューア モジュールで、子セグメント内のすべてのユーザーが親セグメントに含まれる、セグメントとセグメント グループの階層型の配置。最上位のセグメント グループは、ユーザー全体を表します。

セグメント グループ

セグメント ビューア モジュールで、類似したセグメントの集まり。

セグメント比較

セグメント ビューア モジュールで、選択したセグメントどうしの違いを示す表示。

セグメント ビューア モジュール

利用状況の動向を確認し、ユーザー間の類似性に基づいてマーケティングの決定を下すための Commerce Server ビジネス デスク モジュール。

セグメント モデル

セグメント ビューア モジュールで、セグメント化のアルゴリズムが使用するデータの要約。セグメント モデルを表示するには、Commerce Server ビジネス デスクのセグメント ビューア モジュールを使います。

セグメント要約

セグメント ビューア モジュールで、セグメントの特性を表す最も重要なプロパティを基準に並べ替えたリスト。

接続文字列

セミコロン (;) で区切られた一連の引数。データベースの場所とその接続方法を定義します。

先祖カテゴリ

1 つ以上の親子関係を通じて、ルート カテゴリにより近い位置にあるカテゴリ。親カテゴリは先祖カテゴリであり、同様に親カテゴリの親カテゴリも先祖カテゴリになります。

関連項目 :子カテゴリ、ルート カテゴリ、子孫カテゴリ、親カテゴリ

操作データ

毎日、または一定期間ごとに、通常はログ ファイルに収集されるデータ。収集された操作データは、多くの場合、データ ウェアハウスにインポートされます。

操作ページ

Commerce Server ビジネス デスクのモジュールに関連付けられた機能の特定の側面を提供する、単一の ASP ファイル。たとえば、特定の商品のプロパティを定義する場合などに使います。操作ページは、通常、ナビゲーション ウィンドウでモジュール名をクリックするか、または同じモジュールのほかの操作ページにあるタスク ボタンをクリックすると表示されます。

関連項目:ステータス バー

送付方法モジュール

送料を重量、数量、または小計のいずれかで定義するための Commerce Server ビジネス デスク モジュール。

属性

プロパティ、オブジェクト、または個人を表す特性。属性には、プロパティのデータ型 (数値、テキスト、10 進など)、プロパティを Commmerce Server データ ウェアハウスにエクスポートするかどうか、プロパティをユーザーに対して表示するかどうか、プロパティをフルテキスト インデックス化するかどうかなどの情報を含めることができます。属性では、髪の毛の色や年齢などの値のセットを参照できます。表されるプロパティやオブジェクトの種類によっては、属性は変数、列、またはディメンションと呼ばれることもあります。

関連項目 :ノード

組織

ビジネス文書の交換で、送付元または送付先として Commerce Server ビジネス デスク内で指定する、会社、部門、課、または会社内のその他の業務単位。文書の電子交換に関連する組織の主な特性を表す一連のプロパティは、組織プロファイルと呼ばれます。また、組織はユーザーの集まりでもあります。

関連項目 :組織モジュール

組織プロファイル

会社、部門、課、または会社内のその他の業務単位を表す一連のプロパティ。たとえば、名前、アカウント番号、支出限度、企業割引などはすべて、1 つの組織プロファイルを構成するプロパティです。Commerce Server ビジネス デスクでは、取引関係のある会社の組織プロファイルを設定できます。

組織モジュール

組織プロファイルの追加、変更、または削除を行うための Commerce Server ビジネス デスク モジュール。

関連項目 :組織

ソリューション サイト

特定のサイト環境に合わせてあらかじめ構成され、パッケージ ファイルにバンドルされている Commerce Server の機能。Commerce Server には、Blank ソリューション サイトが同梱されています。ほかにも、Retail と Supplier の 2 つのサイトを、http://www.microsoft.com/japan/commerceserver/productinfo/solutionsites.htm からオンラインで入手できます。各ソリューション サイトは、アンパッケージしてから、サイトのニーズに合わせてカスタマイズできるように設計されています。

た

ダイジェスト認証

IIS の既定の Web サイトまたはアプリケーション レベルで設定できる認証方式の 1 つ。ダイジェスト認証では、平文のパスワードの代わりに、ハッシュ値がネットワーク経由で送信されます。この方式は、プロキシ サーバー間とファイアウォール間で機能する、認証されたアクセスの高度なセキュリティ形態です。

対象

いつ、どこで、だれにコンテンツを表示するかを識別する 1 つ以上の式。特定のユーザー層、Web サイトのセクション、またはその両方を対象に指定できます。

関連項目 :対象グループ、対象式

対象アクション

対象に適合しないときよりも、対象に適合するときにより多くコンテンツを表示することを指定するオプション。対象アクションは、キャンペーン項目の対象化目標に対する配信が難しい場合 (たとえば、そのコンテンツの表示を必要とする対象が十分にいない場合) に使います。たとえば、アラスカ州に住むユーザーに 1000 の広告要求を配信することになっていて、アラスカ州にユーザーが 15 人しかいない場合は、アラスカ州以外に住むユーザーにもその広告を配信する必要があります。式の対象アクションを指定するには、ビジネス デスクの対象グループ モジュールを使います。

対象化

特定のコンテンツを特定のユーザーに配信すること。

対象グループ

コンテンツを表示する対象の集合。対象グループを作成するときは、2 つ以上の式を組み合わせます。対象グループで式を組み合わせることにより、OR ステートメントを使った式を作成し、より幅広い客層を効果的に対象化できます。

関連項目 :パーソナライズ、対象

対象グループ モジュール

対象グループを管理するための Commerce Server ビジネス デスク モジュール。

対象式

Commerce Server のキャンペーンでは、いつ、どこで、だれにコンテンツを表示するかを識別する式。たとえば、特定のプロファイル プロパティを持つユーザーをコンテンツの対象に設定できます。Web サイトの特定のセクションをコンテンツの対象にすることもできます。たとえば、スポーツのページにのみ特定の広告を表示する対象式を作成できます。

関連項目 :パーソナライズ、対象

代替通貨

サイトで 2 種類の通貨を表示するために、第 2 通貨への変換とその設定を行う通貨単位。通常、このプロパティは、EuroDisplay オブジェクトを使って基本通貨とユーロの両方の形式で価格を表示するヨーロッパのサイトで使われます。

関連項目 :基本通貨

代替テキスト

Web ページの読み込み中、グラフィックスが表示されていないとき、またはユーザーがイメージ自体をマウスでポイントしたときに、イメージの代わりに表示されるテキスト文字列。グラフィックス対応のブラウザを使っていないユーザーや、グラフィックスのダウンロードを無効にしているユーザーは、表示されないグラフィックスを代替テキスト文字列で識別できます。

ダイレクト メーラー

「Commerce Server ダイレクト メーラー」を参照してください。

ダイレクト メーラー ジョブ ファイル

パーソナライズされたメッセージ本文を配信するかどうか、メール メッセージ ヘッダーの形式、受信者リストの場所など、ダイレクト メーラー ジョブに関する情報を指定するテキスト ファイル。ダイレクト メーラー ジョブ ファイルは、スタンドアロン モードのダイレクト メーラーにのみ使われます。

ダイレクト メーラー データベース

電子メール メッセージの本文、イベント データ、およびジョブ データが格納される SQL Server データベース。Commerce Server ダイレクト メーラーをインストールすると、ダイレクト メーラー データベースもインストールされます。このデータベースは、ダイレクト メーラーと同じコンピュータにインストールされます。ダイレクト メーラーからダイレクト メーラー データベースへの接続文字列を指定するには、Commerce Server マネージャを使います。

関連項目 :Commerce Server ダイレクト メーラー

ダイレクト メール

特定のユーザーに向けて送信され、ダイレクト メール キャンペーンの特定の要件を満たすメール メッセージ。

ダイレクト メール キャンペーン

対象となるユーザー グループに電子メール メッセージの広告を配信するキャンペーン。メールに高い応答率を得ることが目的となります。

タスク

Commerce Server ビジネス デスクで、操作ページから実行する操作。多くの場合、この操作によって、タスクの詳細を実行するほかの操作ページが表示されます。タスクは、タスク ボタンをクリックして起動します。タスクの中には、編集や削除のように状況依存のものがあります。これらのタスクは、現在の操作ページで選択されている項目に適用されます。

達成率

特定の広告をクリックするなど、特定のアクションを実行した一意のユーザーの数。

関連項目 :頻度、クリックの頻度

脱退

ユーザーがメーリング リストへの登録を解除するために行う操作。この操作を行ったユーザーは脱退リストに追加されます。

脱退リスト

メーリング リストへの登録を解除したユーザーのリスト。

チケット

ユーザーに関する認証やその他の情報を格納するためのプロパティと値の対になった文字列。たとえば、"userID/joeuser" はプロパティ/値の対ということになります。チケット データは、cookie または URL クエリ文字列に格納できます。

関連項目 :認証チケット、cookie、プロファイル チケット

チャネル

文書のソースを識別し、特定の処理手順を定義する一連の名前付きプロパティ。この処理手順は、チャネルが関連付けられているメッセージ ポートで指定された送信先に文書が配信される前に、BizTalk Server によって実行されます。

注文

ユーザーが Web サイトに送信したオンラインでの購入。注文には、通常、1 つ以上の品目、ユーザーの名前と住所、および支払いフォームが含まれます。

注文状況コード

Web サイトで使用されている注文状況の種類を識別するために、Commerce Server ビジネス デスクで使用される数値のデータ コード。たとえば、保存した注文、削除した注文、または未処理の注文を定義する注文状況コードを作成できます。

注文状況モジュール

注文状況の情報を確認し、注文ヘッダーや品目情報など、注文に関連するすべての詳細を表示するための Commerce Server ビジネス デスク モジュール。

注文処理パイプライン

複数のコンポーネントを連結し、それらを順に実行するソフトウェア インフラストラクチャ。Commerce Server には、商品、計画、購入の 3 つの注文処理パイプラインが用意されています。

注文フォーム オブジェクト

特定のユーザーの購入に関する、現在の、また場合によってはそれまでの状況データを格納するオブジェクト。

直接価格

価格カテゴリではなく、カタログの特定の商品に関連付けられた価格。

関連項目 :間接価格

通貨の有効桁数

Site Server 3.0 Commerce Edition で使われていた 32 ビットの整数に対して、64 ビットの整数で表され 10000 で位取りされる通貨の値。Commerce Server 2000 の表現では、$1.99 は 19900 として表されます。通貨の有効桁数が割り当てられているキーには、cy_ というプレフィックスが付きます。たとえば、_oadjust_adjustedprice というキーに正確な通貨の値が割り当てられると、_cy_oadjust_adjustedprice になります。

通貨ロケール ID (LCID)

通貨処理のロケールを識別します。既定値はゼロ (0) で、この場合はサーバーの既定のロケール ID が使われます。

ツール バー

コンテンツ ウィンドウが表示されているときに、Commerce Server ビジネス デスクの画面の最上部にボタンが並んで表示されている水平な列。これらのボタンを使って、そのビジネス デスクの画面から利用できる機能にアクセスします。

ディメンション

メジャーの記述的属性。通常は文字形式で離散型です。たとえば、ディメンションが購入数を表す場合があります。数値がメジャーになります。

関連項目 :オンライン分析処理 (OLAP)、メジャー

データ ウェアハウス

Commerce Server で、SQL Server データベース、オンライン分析処理 (OLAP) データベース、およびシステム管理者が複数のデータ ソースから大量のデータをインポートして管理するために使用する一連のプロセスの組み合わせ。

データ ウェアハウス メタモデル

データ ウェアハウス論理スキーマのクラス、データ メンバ、関連、およびキーの作成方法を表す概念モデル。

データ ウェアハウス リソース

グローバル レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを使って管理します。データ ウェアハウス リソースは、データ ウェアハウス データベースへのデータベース接続文字列を指定するときに使います。

データ ウェアハウス論理スキーマ

「論理スキーマ」を参照してください。

データ型

使用できる値の範囲を指定するデータの定義。データ型には、数値、10 進、テキストなどがあります。

データ コード

国/地域、都道府県/州、注文状況など、プロパティの文字情報を表すために使用されるコード値。たとえば、WA はワシントン州のデータ コードです。

データ コード モジュール

注文状況コード、都道府県/州コード、および国/地域コードを追加したり維持するための Commerce Server ビジネス デスク モジュール。国/地域コードと都道府県/州コードは、税率モジュールを使って税テーブルを更新する前に設定する必要があります。

データ ストア

登録済みユーザー、商品、広告に関する情報など、Commerce サイトで使用するデータが格納されている、SQL Server データベースまたはその他のデータベース。また、データが格納されているサーバー (データ ストア サーバー) を表す場合もあります。

データ制限

プロパティに使用できる値の制限。データ制限はデータ型によって異なります。たとえば、数値の場合は、最小値と最大値などで制限されます。

データ フィット スコア

欠落したデータを埋めるときに分析モデルが行った予測の品質を測定する値。

関連項目 :スコア

データ変換サービス (DTS)

異なるデータ ソースからのデータのインポート、エクスポート、および変換に使用する SQL Server コンポーネント。Commerce Server には、Commerce Server データ ウェアハウスにデータをインポートするための一連の DTS タスクが用意されています。

データ マーシャリング

データを記憶領域に保存しておき、後からアンパッケージ処理によって抽出できるようにアンパッケージする方法。Commerce Server では、データ マーシャリングを使って Dictionary オブジェクトの内容をデータベースに保存します。

データ メンバ

データの格納に使用されるクラスのメンバ。データ メンバは、基になるデータ ウェアハウスのリレーショナル データベースの列にマップされます。

関連項目 :クラス

テキスト ファイル

テキスト文字で構成されたファイル。テキスト ファイルは、ワード プロセッサで作成されたファイルの場合も、ほぼすべてのコンピュータで読み取り可能な形式でエンコードされたプレーンの ASCII ファイルの場合もあります。キャンペーン マネージャ モジュールでは、テキストは広告と割引に利用できる表示の種類の 1 つです。この種類の広告は、数行のテキストとしてページに表示されます。

デザイン時コントロール (DTC)

編集環境でテキストの生成に使用する特殊な種類の ActiveX コントロール。通常は、コントロールのいくつかの選択肢がユーザーに示されます。ユーザーが選択する項目によって、編集中のページに配置されるスクリプト コードまたは HTML のセクションの詳細が変わります。

電子商取引

インターネットを介して商品やサービスを売買する手順。

電子データ交換 (EDI)

インターネットなどのネットワークを使った、異なる企業間でのデータの転送。インターネットに接続する企業の増加に伴い、企業が情報を購入、販売、および交換するしくみとしての EDI が、ますます重要性を帯びてきています。

統一モデリング言語

ソフトウェア システム用のビジュアルなモデリング言語。

統一リソース識別子 (URI)

インターネット上のコンテンツの位置を識別します。コンテンツには、テキストのページ、ビデオ クリップまたはサウンド クリップ、イメージ、プログラムなどがあります。最もよく使用される形式の URI は、Uniform Resource Locator (URL) とも呼ばれる Web ページのアドレスです。URI は、通常、リソースのファイル名、リソースが置かれているコンピュータの名前、およびリソースへのアクセスに使うプロトコルで構成されます。たとえば、http://www.microsoft.com/sql/techinfo/security/password.htm のように指定します。

統合 Windows 認証

IIS の Web サイトまたはアプリケーション レベルで設定できる認証方式の 1 つ。この方式では、認証に Windows のログオン ユーザー名とパスワードを使いますが、現在のログオンの認証が失敗しない限り、ユーザーがこの情報の入力を求められることはありません。この方式は、プロキシ接続経由では機能せず、イントラネットのプライベート領域で使われます。

動的リスト

リスト データをエクスポートするときなど、リストが必要になったときに、リスト マネージャ サービスが実行時に作成するユーザー レコードのリスト。リストを要求されるたびに、リスト マネージャはデータ ウェアハウスにある最新データを収集します。リスト マネージャ データベースには、リストの作成に必要な情報が格納されます (ユーザー レコードのリスト全体がリスト マネージャ データベースに格納される静的リストとは、この点が異なります)。動的リストは、頻繁に実行するダイレクト メール キャンペーンに使ったり、受信者のリストが頻繁に更新される場合に使います。

関連項目 :静的リスト

動的レポート

実行時に作成されるレポート。レポートを実行するたびに、データ ウェアハウスにある最新データが収集されます。時間が経過しても変わらないレポート定義のみが格納されます (レポートがデータと共にデータ ウェアハウスに格納される静的レポートとは、この点が異なります)。動的レポートは、ピボットテーブルまたはピボットグラフに表示できます。動的レポートを実行するには、レポート モジュールを使います。

登録済みユーザー

Web サイトを訪問し、名前、住所、電話番号などの個人情報を自らの意志で開示したユーザー。この情報はサーバーに送信され、男性と女性の顧客数、特定の品目を購入した人数、常に同じ商品を注文する顧客などの詳細な情報を知るために利用できます。

特別価格

カスタム カタログの商品に適用される特定の価格設定ルール。特別価格には、値引率、値引額、および実売価格の 3 種類があります。

匿名アクセス

「匿名認証」を参照してください。

匿名認証

Web サイトまたは IIS のアプリケーション レベルで設定できる認証方式の 1 つ。匿名認証は、ユーザー名やパスワードを入力せずに匿名の Web (HTTP) 接続を確立するときに使われます。インターネット サイトの公開領域で一般的に使用される認証方式です。サイトで匿名認証が有効になっていると、認証されたアクセスが同時に有効になっている場合でも、要求される個々のファイルに対して制限のより厳しい NTFS アクセス権が設定されていない限り、匿名の接続が行われます。匿名アクセスとも呼ばれます。

匿名ユーザー

ユーザー ログイン名とパスワードを入力せずに Web サイトのコンテンツにアクセスするユーザー。ゲスト ユーザーと呼ばれることもあります。

独立系ソフトウェア ベンダ (ISV)

Commerce Server に組み込んで機能を拡張できる、税、送料、在庫ソフトウェアなどのソフトウェアを開発するサード パーティ ベンダ。ソリューション プロバイダは、ISV とは異なり、Commerce Server を特定の顧客または垂直市場向けにカスタマイズし、システムの設計と導入を行います。

都道府県/州コード

商品の送付先となる州または都道府県を識別するために、Commerce Server ビジネス デスクで使用される 3 文字のデータ コード。Commerce Server ビジネス デスクの税率モジュールで、州ごとに異なる税率を設定する場合は、都道府県/州コードをあらかじめ設定しておく必要があります。

トランザクション

ログに記録され、エラーが発生した場合は必要に応じて元に戻すことができる一連の操作。Commerce Server 2000 には、トランザクションをサポートするパイプライン オブジェクトが用意されています。

トランザクション構成リソース

サイト レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを通じて管理します。トランザクション構成リソースは、トランザクション メタデータが格納されているデータベースへの接続文字列を構成するときに使います。

トランザクション データ

ユーザーがサイトから商品を購入するときに生成されるデータ。トランザクション データには、商品ページ、バスケット ページ、支払いページのいずれかで記録されたユーザー活動を含めることができます。たとえば、名前、送付先、日時、購入商品、および注文金額合計を含めることができます。

トランザクションの発行モジュール

新しい税率や送付方法などの新しいトランザクション情報を使ってサイトを更新するための Commerce Server ビジネス デスク モジュール。トランザクションの発行モジュールは、サイトのトランザクション情報が格納されているキャッシュを空にします。次回 Commerce Server がトランザクション データに対する要求を受け取ると、更新されたデータがキャッシュに読み込まれます。

関連項目 :キャッシュ

トランザクション パイプライン

COM+ トランザクションをサポートしているパイプライン。トランザクションをサポートしているオブジェクトは、MtsTxPipeline と PooledTxPipeline だけです。トランザクション パイプラインのいずれかのコンポーネントが失敗すると、パイプラインのそれ以前のコンポーネントの処理は元に戻され、オブジェクトがトランザクションを終了させます。

関連項目 :非トランザクション パイプライン、パイプライン、パイプライン オブジェクト

トランザクション リソース

サイト レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを通じて管理します。トランザクション リソースは、トランザクション メタデータが格納されているデータベースへの接続文字列を構成するときに使います。

取引先

組織が電子データを交換する相手の外部組織。取引先間でのデータの交換は、組織と取引先の間で作成されるアグリーメント、パイプライン、および配布リストに基づいて管理されます。取引先間でのデータの交換は、Microsoft BizTalk Server 2000 によって処理されます。

な

ナビゲーション ウィンドウ

Commerce Server ビジネス デスクで、一覧ページの左側にあるウィンドウ。カテゴリとモジュールの階層が表示されます。

2 重のキー

プライマリ キーと結合キーの組み合わせから成るキーの種類。2 重のキーは、Commerce Server ビジネス デスクでプロファイルの属性を追加するときに使用できます。「結合キー」と「プライマリ キー」も参照してください。

関連項目 :結合キー、プライマリ キー

人気ペナルティ

予測に適用され、人気のある (よく知られた) 項目が推奨される確率を減らすペナルティ。

認証サービス

「CS 認証リソース」を参照してください。

認証されたアクセス

IIS の既定の Web サイトまたはアプリケーション レベルで設定できるユーザー アクセス オプション。匿名アクセスとは反対に、認証されたアクセスでは、サイトにアクセスするユーザーが有効なアカウントとパスワードを持っている必要があります。認証されたアクセスには、基本認証、ダイジェスト認証、および統合 Windows 認証の 3 種類があります。

認証チケット

登録済みユーザー用に Commerce Server が作成するチケット。MSCSAuth チケットとも呼ばれます。

関連項目 :チケット、プロファイル チケット

値引額

標準価格を特別価格にするために差し引く金額。

値引率

標準価格を特別価格にするために差し引く金額の割合。たとえば、20% を差し引くと、価格は標準価格の 80% になります。

値増額

標準価格を特別価格にするために上乗せする金額。

ノード

予測モデル ビューアに表示されるように、属性をグラフィックスで表したもの。

関連項目 :属性

は

パーソナライズ

ユーザー プロファイルのデータと、ユーザーが以前に要求したコンテンツに基づいて、Web ベースのコンテンツや電子メールのメッセージをユーザー向けにすることができる機能。

関連項目 :対象グループ、キャンペーン式モジュール、Commerce Server ダイレクト メーラー、予測リソース、対象式

ハイパーテキスト転送プロトコル (HTTP)

Web 上のすべてのデータの送信と受信に使用されるクライアント/サーバー プロトコル。ブラウザに URL を入力すると、実際には情報のページに対する HTTP 要求が Web サーバーに送られます。

パイプライン

1 ステージ以上のビジネス プロセスを定義して相互にリンクし、それらを連続して実行し、特定のタスクを完了するソフトウェア インフラストラクチャ。パイプラインの各ステージには、1 つ以上のパイプライン コンポーネント (COM オブジェクト) が含まれ、それらをサイト独自の要件に合わせて構成できます。

関連項目 :非トランザクション パイプライン、パイプライン オブジェクト、トランザクション パイプライン

パイプライン エディタ

Commerce Server パイプライン構成 (.pcf) ファイルの作成と編集を行うためのアプリケーション。パイプライン エディタでは、パイプラインがパイプのグラフィックスで表示され、パイプラインの各ステージはパイプのセグメントとして表示されます。ステージで使用されるコンポーネントは、バルブとして表示されます。

パイプライン オブジェクト

パイプライン構成ファイルを使って一連のコンポーネントを実行するオブジェクト。Commerce Server 2000 には、パイプラインを実行する MtsPipeline、MtsTxPipeline、PooledPipeline、PooledTxPipeline、OrderGroup、OrderPipeline の 6 つのオブジェクトが用意されています。MtsPipeline オブジェクトと PooledPipeline オブジェクトは、COM+ トランザクションをサポートしていません。MtsTxPipeline オブジェクトと PooledTxPipeline オブジェクトは、COM+ トランザクションをサポートしています。

関連項目 :非トランザクション パイプライン、パイプライン、トランザクション パイプライン

パイプライン構成テンプレート

新しいパイプラインの作成に使用されるテンプレート ファイル。パイプライン構成テンプレートを使って作成したパイプラインは、パイプライン構成 (.pct) ファイルとして保存されます。このテンプレートは、カスタム パイプラインを作成する際の基盤となります。ステージとコンポーネントの追加、削除、または名前の変更は、どのテンプレートでも行うことができます。

パイプライン構成ファイル

パイプラインの構成データが含まれているファイル。このファイルで指定されたパイプラインが作成され、パイプライン オブジェクトによって実行されます。ファイルに含まれるステージとコンポーネントは、パイプライン エディタを使ってカスタマイズできます。

パイプライン コンポーネント

必要なパイプライン コンポーネント インターフェイスを実装する Component Object Model (COM) サーバー オブジェクト。各コンポーネントは、OrderForm オブジェクトまたは Dictionary オブジェクトをパイプラインの次のコンポーネントまたはステージに送る前に、オブジェクトの一部に対する処理を行います。

バスケット

ユーザーが Commerce Web サイトから選択して購入する品目のリスト。このリストは、通常、ファイルにまとめられます。

関連項目 :バスケット マネージャ モジュール

バスケット マネージャ モジュール

Web サイトを訪問するユーザーのショッピング バスケットを管理するための Commerce Server ビジネス デスク モジュール。ユーザーは、後でサイトに戻って品目を購入できるように、ショッピング バスケットを保存しておくことができます。放棄されたバスケット (保存されたまま長期間非アクティブなバスケット) を検索して削除するには、バスケット マネージャを使います。

関連項目 :バスケット

派生商品

1 つのカテゴリまたはそのいずれかの子孫カテゴリに関連付けられた商品。

関連項目 :子孫カテゴリ

パッケージ

Commerce Server サイト パッケージャ配置ツールで作成したファイル。このファイルには、サイトをほかのコンピュータに配置するために必要なすべてのデータが含まれます。その中には、管理データベースに格納されたリソース プロパティの設定をはじめとする、アプリケーションとリソースも含まれます。パッケージには、コンピュータに固有のプロパティの設定 (接続文字列など) は含まれません。パッケージ ファイルの拡張子は .pup です。

ハッシュ キー

ほとんどがデータベースの 1 つの列または列のグループになっている一意のキー。巨大なリストから項目をすばやく検索するために使われます。

バリエーション

商品に利用できる属性の 1 つの組み合わせ。たとえば、特定の種類のシャツであれば、色、サイズ、および一意の在庫保管単位 (SKU) のそれぞれの組み合わせがバリエーションになります。各商品バリエーションには、在庫保管単位 (SKU) などの一意識別子と価格が必ず含まれます。各商品バリエーションは、同じ商品定義に基づいています。

判断ツリー

履歴データに基づいて 1 つのイベントが次のイベントを導きだす確率を示す、予測ルールの集合をグラフィックで表したもの。属性 X の判断ツリーは、確率分布 p( X | X を予測する属性) をエンコードします。

関連項目 :依存関係ネットワーク

ビジネス デスク

「Commerce Server ビジネス デスク」を参照してください。

ビジネス デスク フレームワーク

HTML コンポーネント (HTC)、ユーティリティ ルーチン、インクルード ファイル、構成ファイル、ナビゲーションのしくみ、および規則の集合。ビジネス デスク モジュールを、より簡単に、より標準化された方法で実装できるようにします。

ビジネス マネージャ

Commerce Server ビジネス デスクの主要なユーザー。ビジネス マネージャは、通常、優れた電子商取引 Web サイトの作成と運用に必要な、事業目標、戦略、および処理に関する知識を備えています。

必須コンポーネント

ステージを出るデータの整合性を確保する Component Object Model (COM) サーバー オブジェクト。必須コンポーネントは、すべての Site Server 3.0 Commerce Edition コンポーネントを含むステージが、すべての Commerce Server 2000 コンポーネントを含むステージと共に正しく実行されるように、通貨と整数の変換も行います。

ヒット

広告のクリックなど、ユーザーが Web サイトで行う単一のアクション。これにより、Web サーバー ログ ファイルにデータが 1 行追加されます。

非トランザクション パイプライン

COM+ トランザクションをサポートしていないパイプライン。非トランザクション パイプラインをサポートしているオブジェクトは、MtsPipeline と PooledPipeline だけです。

関連項目 :パイプライン、パイプライン オブジェクト、トランザクション パイプライン

ビネット広告

広告を表示するイメージと、それに隣接して表示されるテキストで構成される広告。テキストは、広告イメージの左側、右側、または上部に配置できます。

ピボットグラフ レポート

対話型のグラフに表示されるレポート。ピボットテーブル レポートと同じような方法で、チャートを使ってデータをグラフィック表示したり、再配置することができます。Commerce Server では、動的レポートをピボットグラフ レポートとして表示できます。ピボットグラフ レポートを表示するには、Commerce Server ビジネス デスクのレポート モジュールを使います。

ピボットテーブル レポート

対話型のテーブルに表示されるレポート。テーブルの行と列を回転させて、ソース データのさまざまな要約を表示したり、データをフィルタ処理したり、さまざまな分野の詳細なデータを表示することができます。Commerce Server では、動的レポートをピボットテーブル レポートとして表示できます。ピボットテーブル レポートを表示するには、Commerce Server ビジネス デスクのレポート モジュールを使います。

表示上限回数

1 回のセッション中にユーザーにコンテンツを表示できる回数。特に指定しない限り、表示上限回数は無制限に設定されます。表示上限回数は、1 セッション 1 ユーザーあたり 10 回以内にすることをお勧めします。

表示頻度 (NOD)

Commerce Server が、コンテンツを配信する時間と頻度を決めるために使用する計算式。この計算式では、配信するコンテンツの合計数と、その数量を配信する期間が考慮に入れられます。表示頻度は、コンテンツ選択フレームワークによる広告要求の処理が終わった後で、広告要求ごとに計算されます。表示頻度は有料広告にのみ適用され、自社広告には適用されません。

関連項目 :広告要求

頻度

イベントの数をイベント数の達成率で割った値。

関連項目 :イベント、達成率

ファイアウォール

イントラネットをインターネット (またはインターネット グループ) から切り離すセキュリティ チェックポイント。特定のデータだけがファイアウォールを通過できます。

プールされたパイプライン

COM+ に登録され、オブジェクト プーリングを利用するパイプライン オブジェクト。

ファイル キャッシュ

「アプリケーションのキャッシュ」を参照してください。

フェールオーバー

一方のサーバー クラスタ ノードでリソースを個別に、またはまとめてオフライン状態にし、もう一方のノードでオンライン状態に戻す処理。オフラインとオンラインの移行は、あらかじめ決められた順序で行われます。ほかのリソースに依存するリソースは、依存先のリソースよりも前にオフライン状態にされ、依存先のリソースよりも後でオンライン状態に戻されます。

フェッチ ページ

標準の拡張マークアップ言語 (XML) データ形式のデータが含まれる XML 文書を返す Active Server Pages (ASP) ページの種類。返されるページには XML データだけが存在します。ListSheet HTC と TreeView HTC は、XMLHTTP 操作を実行しているときに、このデータ形式が返されることを期待します。

負荷テスト

「ストレス テスト」を参照してください。

負荷分散

クライアントの要求をサーバー クラスタ内の複数のサーバー間で分散することにより、サーバー ベースのプログラム (Web サーバーなど) のパフォーマンスを向上させること。各ホストで処理する負荷の割合を指定することも、負荷をすべてのホストで均等に分散することもできます。1 台のホストで障害が発生すると、負荷は残りのホスト間で動的に再分散されます。ネットワーク負荷分散は Windows クラスタリングで使われる負荷分散ソリューションで、Windows 2000 Advanced Server で利用できます。

複数選択プロパティ

あらかじめ定義された値を含むプロパティ。たとえば、Shirt_Size という名前の複数選択プロパティを作成して、S、M、L という選択値を定義できます。

物理ストア

データ ウェアハウスを構成する物理データベース。

プライマリ キー

テーブル内の各レコードを一意に識別する値を持つ 1 つ以上のフィールド (列など)。プライマリ キーに Null 値は指定できず、常に一意のインデックスを指定する必要があります。プライマリ キーは、テーブルをほかのテーブルの外部キーに関連付けるときに使います。

関連項目 :一意キー、2 重のキー

フリースレッド コンポーネント

複数の実行スレッドに存在できる COM コンポーネント。このコンポーネントは複数のクライアントからのアクセスをサポートしており、コンポーネントへの呼び出しの同期に COM を利用しません。

フリーテキスト検索

プロパティ定義の "はい/いいえ" フラグ。フリーテキスト検索でそのプロパティを検索できるかどうかを指定します。このフラグを "はい" に設定するには、プロパティ型が文字列 (string) または列挙 (enumerated) であることが必要です。フリーテキスト検索では、指定した単語と、その単語から語形変化する語句が検出されます。たとえば、"drive" という単語を検索すると、drives、drove、driving、および driven に一致する語句が検出されます。

フルテキスト インデックス

特定のテーブルのすべてのフルテキスト語句とその場所が格納される、フルテキスト カタログの部分。商品の追加や削除、フリーテキスト検索フィールドの値の変更など、カタログに変更を加えた場合は、フルテキスト インデックスを更新して変更を反映する必要があります。

フルテキスト カタログ

データベースのフルテキスト インデックスが格納される SQL Server オブジェクト。

プロキシ サーバー

ローカル エリア ネットワーク (LAN) を出入りするインターネット トラフィックを管理し、文書のキャッシングやアクセス制御などの機能を備える、ファイアウォール コンポーネント。プロキシ サーバーを利用すると、アクセスの多い Web ページなど、頻繁に要求されるデータをキャッシュしておいて直接配信することで、パフォーマンスを向上させることができます。また、専有ファイルへの不正なアクセス要求など、所有者が不適切と考える要求をフィルタ処理して破棄することもできます。

プログラム ID (ProgID)

プログラムまたは Component Object Model (COM) オブジェクトを識別する一意の名前。グローバル一意識別子 (GUID) と異なり、ProgID には通常、"Commerce.Dictionary" などの明瞭な意味を持つ英数字の文字列が使われます。

プロパティ

商品、カテゴリ、またはプロファイルの特性。すべてのプロパティには、名前とデータ型 (たとえば、名前が "説明" でデータ型が "テキスト" 型のプロパティなど) があります。

プロパティ定義

プロファイル定義、カテゴリ定義、または商品定義で利用できるプロパティの仕様。たとえば、"文字列 (String)" 型で "説明" という名前のプロパティ定義を作成できます。または、"列挙 (Enumerated)" 型で "性別" という名前の、"男性" または "女性" という 2 つの値だけを受け付けるプロパティ定義を作成することもできます。プロパティ定義の管理には、ビジネス デスクのカタログ デザイナ モジュールとプロファイル デザイナ モジュールを使います。

プロパティによる検索

特定の値が指定されたプロパティ (2,000円 を超える価格、色が青など) を持つ商品をカタログから検索できる検索方法。

プロファイル

ユーザー、会社、ビジネス プロセスなど、ビジネスに関連する項目を定義する特性。各プロファイルは、プロファイル定義の個々のインスタンスです。たとえば、"新しいユーザー" というプロファイル定義に基づくプロファイルは、Amy Egert、52 歳、女性などのプロパティが含まれます。ユーザー モジュールがサイトを訪問するユーザーについて収集するプロファイル データを指定できます。この情報には、名前、年齢、性別、住所などが含まれると考えられます。

プロファイル チケット

Commerce Server が匿名 (ゲスト) ユーザー用に作成するチケット。MSCSProfile チケットとも呼ばれます。

関連項目 :認証チケット、チケット

プロファイル定義

特定の種類のプロファイルで利用できるプロパティ。各プロファイルは、プロファイル定義に関連付けられます。たとえば、"新しいユーザー" というプロファイル定義には、名前、年齢、性別、住所などのプロパティが含まれていると考えられます。プロファイル定義の管理には、ビジネス デスクのプロファイル デザイナ モジュールを使います。

プロファイル デザイナ モジュール

プロファイル定義の追加と変更を行うための Commerce Server ビジネス デスク モジュール。

プロファイルの発行モジュール

新しいプロファイル情報を使ってサイトを更新するための Commerce Server ビジネス デスク モジュール。プロファイルの発行モジュールは、サイトのプロファイル情報が格納されているキャッシュを空にします。次回 Commerce Server がプロファイル データに対する要求を受け取ると、更新されたデータがキャッシュに読み込まれます。

関連項目 :キャッシュ

プロファイル プロパティ

ユーザーが Web サイトを訪問したときに、どのプロファイル データを収集するかを指定する特性。たとえば、"名" プロパティはユーザーの名を収集します。プロファイル プロパティの管理には、ビジネス デスクのプロファイル デザイナ モジュールを使います。

プロファイル プロパティ属性

プロファイル プロパティを表す特性。プロファイル プロパティ属性には、プロファイル プロパティのデータ型 (数値、テキスト、10 進など)、プロパティが単一の値 (たとえば、"名" には 1 つの値しか指定できません) か複数の値か、Web サイトを訪問するユーザーがこのプロパティを使って検索を実行できるかどうかなどの情報が含まれます。

プロファイル リソース

グローバル レベルのプロパティを持つ Commerce Server リソース。Commerce Server マネージャを通じて管理します。プロファイル リソースは、ユーザー プロファイル データが格納されているデータベースへのデータベース接続文字列を指定するときに使います。また、プロファイル プロパティとプロファイルの作成、編集、および削除にも使います。SQL Server データベースや Active Directory データ ソースなどのデータ ソースを追加したり削除することができます。

ページ グループ

ビジネス デスクの参照テーブル モジュールを使って作成する、関連性のある Web ページの集合。たとえば、新聞のサイトを運用している場合は、トップ記事用に 1 つとローカル ニュース用に 1 つ、スポーツのページ グループを作成できます。ページ グループ単位で広告料を設定したり、レポートを実行してページ グループに対するヒット数の合計を表示したり、広告が特定のページ グループで実行されるように対象を指定することができます。サイト開発者は、Web ページをページ グループに割り当てる前に、Web ページの広告表示を有効にする必要があります。

編集ページ

Commerce Server ビジネス デスクの 2 種類の主要な操作ページの 1 つ。編集ページには、ビジネス デスクでデータを変更するためのしくみが備わっています。編集ページとナビゲーション ウィンドウは、ビジネス デスクのワークスペースを共有しません。編集ページが表示されているときはナビゲーションウィンドウが非表示になるため、編集ページを閉じて一覧ページに戻るまで、ユーザーはほかのモジュールに移動できません。

関連項目 :一覧ページ

訪問

ユーザーによる一連の要求。訪問は、ユーザーがリンク経由でサイトに移動してきたとき、またはユーザーがブラウザにサイトの URL を入力したときに開始します。サイトへの新たな要求がないまま、指定した時間 (既定では 30 分) が経過すると、訪問は終了します。

訪問時間

訪問の最初の要求から最後の要求までの時間。この時間には、ユーザーが訪問の最後の要求を表示する時間は含まれません。

ポート

「メッセージ ポート」を参照してください。

ま

マスター構成ファイル

Commerce Server ビジネス デスクの特定のインスタンス内で利用できるカテゴリとモジュールを定義する XML 構成ファイル。各モジュール エントリは、そのモジュールの構成情報を含むモジュール構成ファイルを識別します。

マルチディメンション式 (MDX)

OLAP サーバー キューブに格納されているマルチディメンション データのクエリおよび操作に使用される式。

未登録ユーザー

Web サイトを訪問し、登録に必要な個人情報または識別情報を自らの意志で開示していないユーザー。

明示対象化

サイトを参照するユーザーに関する既存の情報を使って、対象を指定したコンテンツを配信すること。

明示プロファイル

Web サイトを訪問するユーザーに、自分自身に関するプロファイル データを開示してもらう情報収集処理。たとえば、オンライン フォームにユーザーの名前、住所、電話番号などの情報を入力してもらいます。

関連項目 :黙示プロファイル

メーリング リスト

ダイレクト メーラーで使用するリスト。メーリング リストには、rcp_email、rcp_guid、rcp_fmt、rcp_locale、および rcp_url という 5 つの標準的なフィールドが含まれています。

メールが利用可能なリスト

ユーザーの電子メール アドレスが含まれる rcp_email 列があるリスト。

メジャー

ビジネス イベントを測定する、通常は数値のデータ。たとえば、ユーザーによる購入の数はメジャーです。

関連項目 :ディメンション

メタデータ

ほかのデータを表すために使用されるデータ。たとえば、データ型はプロパティを表すメタデータの 1 つです。

メッセージ ヘッダー

電子メール メッセージの先頭部分。受信者のアドレス、メッセージ形式、言語、および必要に応じてグローバル一意識別子 (GUID) を指定します。

メッセージ ポート

BizTalk メッセージ マネージャを使って構成する一連のルール。これによって、文書をどのようにエンベロープ化し、保護し、指定した宛先の組織に転送するかを指示できます。

メッセージ本文

電子メール メッセージで配信される内容。

黙示対象化

既存のユーザー データを使って、サイトを参照するユーザーに関する未知の情報を推測し、対象を指定したコンテンツを配信すること。Commerce Server では、予測リソースを使ってユーザーをセグメント化し、黙示対象化を行うことができます。

黙示プロファイル

Web サイトを訪問するユーザーがサイト内を移動したりサイトと対話するときに、その操作や動作を記録する情報収集処理。

関連項目 :明示プロファイル、予測リソース

目標設定

「キャンペーン目標設定」を参照してください。

モジュール

Commerce Server ビジネス デスクのナビゲーション ウィンドウから選択できる項目。たとえば、キャンペーン マネージャ、カタログ デザイナ、レポート モジュールなどを選択できます。各モジュールは、特定の種類の関連機能を提供し、ナビゲーション ウィンドウからの 1 つ以上のエントリ ポイントで組織化される ASP ファイルの集合です。

モジュール構成ファイル

Commerce Server ビジネス デスク モジュール (またはモジュール群) のアクション、タスク、およびエントリ ポイントを定義する XML 構成ファイル。モジュールのエントリ ポイントは、そのエントリ ポイントが関連付けられているカテゴリを識別します。

や

ユーザー

少なくとも一度は Commerce サイトを訪問した人。ユーザーとは、登録済みかどうかにかかわらず、サイトでマウスをクリックしたあらゆる人を意味します。

ユーザー プロファイル

ユーザーの特性を表すあらかじめ定義された一連のプロパティ。たとえば、名前、住所、および性別のプロパティでユーザー プロファイルを構成できます。

ユーザー モジュール

ユーザー レコードを変更し、ユーザー情報の追加と削除を行うための Commerce Server ビジネス デスク モジュール。

ユーザー リスト

ユーザー ID が含まれる rcp_guid 列があるリスト。

優先度

特定の顧客のすべてのキャンペーン項目との相関関係で、キャンペーン項目をいつ表示するかを決める方法。キャンペーンでは、キャンペーン レベルで目標が設定されている広告にのみ優先度が適用されます。自社広告では、優先度は、すべての顧客とすべてのキャンペーンに対するほかのすべての自社広告と相関関係にあります。有料広告では、優先度は同じキャンペーンのほかの有料広告との相関関係になります。割引キャンペーン項目を表示するタイミングを決めるには、優先度ではなく優先順位を使います。

関連項目 :自社広告

要求

URL からのコンテンツの取得を求めるインターネット サイトへの接続。ヒットと異なり、要求はコンテンツとユーザーの操作に関連付けられます。たとえば、3 つのグラフィックス ファイルが含まれる HTML ページをユーザーが要求すると、Web サーバーは 3 つのグラフィックス ファイルと HTML ページのログ エントリを作成し、また場合によってはオーバーヘッドの数行を追加します。ただし、ビジネス デスクの分析モジュールで実行されるレポートの場合は、1 つの要求だけがカウントされます。Web 要求または HTTP 要求とも呼ばれます。

要求時間

同じ訪問で、2 つの連続する要求の間の時間。

予測モデル

予測のアルゴリズムで使用されるデータの要約。予測モデルを表示するには、Commerce Server マネージャの予測モデル ビューアを使います。

予測モデル構成

予測モデルまたはセグメント モデルに使用されるデータの、ユーザー定義の記述。

予測モデル ビューア

予測モデルの依存関係ネットワークと個々の判断ツリーの両方を表示するためのブラウザ ツール。

予測リソース

Windows 2000 のサービスでもあるグローバル リソース。予測リソースは、Commerce Server マネージャを通じて管理され、強力なデータ マイニング エンジンで構成されます。これを使って、サイトを訪問するユーザー全体のプロパティの集計を基に、Web サイトに予測機能を追加できます。予測リソースを使って分析モデルを構築し、それを Web サイトに配置してユーザー情報を分析します。

関連項目 :黙示プロファイル、パーソナライズ

ら

リスト マネージャ サービス

Commerce Server ビジネス デスクのリスト マネージャ モジュールで指定した作業を行う Windows 2000 のサービス。たとえば、ユーザー レコードのリストの作成、削除、インポート、エクスポート、コピーおよびマージを行うことができます。リストを作成するときには、データをフラット ファイル、SQL Server データベース、データ ウェアハウス、および予測リソースのセグメントからインポートできます。リストは、フラット ファイルと SQL Server データベースにエクスポートできます。

リスト マネージャ データベース

ユーザー レコードのリストが格納されるデータベース。ユーザー レコードのリストの作成には、Commerce Server ビジネス デスクのリスト マネージャ モジュールを使います。ダイレクト メーラで、このリストを使ってダイレクト メール キャンペーンを実行できます。また、ビジネス デスクのユーザー モジュールで使用することもできます。

リスト マネージャ モジュール

ユーザー レコードのリストの作成、インポート、エクスポート、コピー、削除、およびマージを行うための、Commerce Server ビジネス デスク モジュール。たとえば、ダイレクト メール キャンペーンの受信者リストを作成できます。

リソース

Commerce Server サイトのアプリケーションに機能を与えるエンティティ。リソースには、1 つ以上の COM オブジェクトがあります。これらの COM オブジェクトは、アプリケーションの Web ページでリソースの機能にアクセスするために使われます。リソースは、グローバル プロパティまたはサイト レベルのプロパティを持つことがありますが、その両方を持つことはありません。リソースのプロパティは、管理データベースに格納されます。リソースは Commerce Server に同梱されますが、その一部は Windows 2000 のサービスでもあります。Commerce Server で機能するカスタム リソースをサード パーティが開発することもできます。リソースの管理には、Commerce Server マネージャを使います。

関連項目 :グローバル リソース、サービス、サイト リソース

利用状況プロファイル

サイトのトラフィック パターンを表す一連のプロパティ。たとえば、利用状況プロファイルには、特定のページを参照したユーザーの数、参照者に対する購入者の割合、および品目をバスケットに追加後、削除したユーザーの数が表示されます。システム管理者は利用状況プロファイルを使って、必要な Web サーバーの数を判断し、サイトを構成します。

ルート カテゴリ

ほかのどのカテゴリの子カテゴリにもなっていないカテゴリ。ルート カテゴリには子カテゴリがある場合とない場合がありますが、親カテゴリはありません。

関連項目 :子カテゴリ、先祖カテゴリ、子孫カテゴリ、親カテゴリ

ルート商品

カタログ内でどのカテゴリにも関連付けられていない商品。

レプリケーション

コンテンツ、構成、またはその両方を、 1 つのサーバー ノードからほかのサーバー ノードにコピーする処理。ファイルを手動でコピーすることも、レプリケーション ソフトウェアを使って自動的にコピーすることもできます。レプリケーションは、フォールト トレランスを実現する上でサーバー クラスタリングに必須の機能です。

レポート定義

レポートの実行時にデータが取り込まれるフィールドとクエリ。レポートには、それぞれ独自のレポート定義があります。レポートをカスタマイズするときには、データが含まれるレポートではなく、レポート定義をカスタマイズします。

レポート モジュール

レポートを選択し実行するための Commerce Server ビジネス デスク モジュール。

ログ ファイル

コンピュータ システムで発生するトランザクションや利用状況の記録。ファイルは、テキスト ファイルまたはデータベース ファイルになります。Commerce Server では、ログ ファイルがデータ ウェアハウスにインポートされるため、Commerce Server ビジネス デスクの分析モジュールを使ってサイトの利用状況を分析できます。

論理スキーマ

データ ウェアハウスで、物理ストアのデータにマップされ、データをわかりやすい形で表示する概念モデル。開発者は、データ ウェアハウスのデータにアクセスしたり、データを変更するためのコードを作成するときに、論理スキーマと対話します。Commerce Server は、論理スキーマを通じてデータ ウェアハウスのアクセス データを処理します。

わ

割引

買物客が一定の条件を満たす場合に、特定の商品または商品グループを安い価格で購入できるようにする、特定の種類の販売促進活動。Commerce Server の割引には、対象化コンポーネントと表示コンポーネントがあります。

割増率

標準価格を特別価格にするために上乗せする金額の割合。たとえば、20% を上乗せすると、価格は標準価格の 120% になります。


オンライン サポート
と情報

* | Microsoft Commerce Server 2000 Web サイト
* | Microsoft Commerce Server 2000 ソリューション サイト
* | Commerce Server 2000 ISV Partners Web サイト
* | Microsoft 製品サポート サービス Web サイト
* | MSDN Online
* | MSDN Online Library
* | Microsoft COM Web サイト
* | Microsoft SQL Server Web サイト
* | Microsoft Accessibility Web サイト


著作権

このソフトウェアの仕様およびマニュアルに記載されている事柄は、将来予告なしに変更することがあります。特に記載していない場合、このソフトウェアおよびマニュアルで使用している会社、組織、製品、人物、キャラクタ、データなどの名称は架空のものです。実在する商品名、団体名、個人名などとは一切関係ありません。このソフトウェアおよびマニュアルは、本製品の使用許諾契約書のもとでのみ使用することができます。このソフトウェアおよびマニュアルのいかなる部分も、米国 Microsoft Corporation の書面による許諾を受けることなく、その目的を問わず、どのような形態であっても、複製または譲渡することは禁じられています。ここでいう形態とは、複写や記録など、電子的な、または物理的なすべての手段を含みます。

マイクロソフトは、このマニュアルに記載されている内容に関し、特許、特許申請、商標、著作権、またはその他の無体財産権を有する場合があります。このマニュアルはこれらの特許、商標、著作権、またはその他の無体財産権に関する権利をお客様に許諾するものではありません。

© 1999-2000 Microsoft Corporation.All rights reserved.

Microsoft、Active Directory、ActiveX、BackOffice、BizTalk、Developer Studio、FrontPage、Hotmail、JScript、MSDN、MS-DOS、MSN、Outlook、PivotChart、PivotTable、Verdana、Visual Basic、Visual C++、Webdings、Win32、Windows、Windows Media、および Windows NT は、米国 Microsoft Corporation の米国およびその他の国における登録商標または商標です。

記載されている会社名、製品名には、各社の商標のものもあります。


[ダイレクト メールのプロパティ] - [接続文字列] タブ

次の表は、[ダイレクト メールのプロパティ] ダイアログ ボックスの [接続文字列] タブで利用できるオプションとその機能を示します。

項目 | 操作
[このリソース内の接続文字列] | ダイレクト メーラーの接続文字列を選択します。
[選択した接続文字列の説明] | 選択した接続文字列の説明を示します。
[選択した接続文字列の値] | 選択した接続文字列の値を示します。


[ダイレクト メールのプロパティ] - [プロパティ] タブ

次の表は、[ダイレクト メールのプロパティ] ダイアログ ボックスの [プロパティ] タブで利用できるオプションとその機能を示します。

項目 | 操作
[プロパティ] | プロパティ名を選択します。
[選択したプロパティ値] | 選択したプロパティの値を入力します。
[説明] | 選択したプロパティの説明を示します。