Distributed Tuning Interface のリファレンス : PvGetProductsInfo()
 
このページをシェアする                  
PvGetProductsInfo()
License Manager で検出されたすべての PSQL 製品についての情報を持つ xml 文字列を取得します。
ヘッダー ファイル:dtilicense.h(ヘッダー ファイルも参照)
関数が最初に利用可能になるライブラリ:w3dbav90.dll(Windows)、libpsqldti.so(Linux)、libpsqldti.dylib(OS X)(リンク ライブラリも参照)
構文
BTI_API PvGetProductsInfo(
   BTI_LONG           hConnection,
   BTI_CHAR_PTR       productInfo,
   BTI_ULONG_PTR      pBufSize);
引数
 
In
hConnection
サーバーを識別する接続ハンドル。接続ハンドルは PvConnectServer() 関数によって取得されます。
Out
productInfo
返された製品情報を持つ XML 文字列。
In/Out
pBufSize
文字列を受け取るために割り当てられたバッファーのサイズを格納する、符号なし Long 型のアドレス。選択文字列の実際の長さを受け取ります。
戻り値
 
DBU_SUCCESS
操作は成功しました。
P_E_FAIL
その他の理由により失敗しました。
ライセンス管理または認証に関するステータス コード
License Administrator のステータス コードおよび許可 ステータス コードは、『Status Codes and Messages』を参照してください。
備考
前提条件
以下の前提条件を満たす必要があります。
PvStart() 呼び出しによって DTI セッションが開始されている。
PvConnectServer() によって接続が確立している。ただし、ローカル マシンで操作を実行する場合は、接続ハンドルとして P_LOCAL_DB_CONNECTION を使用できます。
PvGetProductsInfo() によって返される製品情報
以下に、PvGetProductsInfo() によって返される XML 文字列のドキュメント型定義(DTD)とその用語について説明します。
<!DOCTYPE products [
<!ELEMENT products (product*)>
<!ELEMENT product (name,id,licenses)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT licenses (license*)>
<!ELEMENT license (type,productCode*,productKey*,state*,feature*,edition*,maxUserCount*,maxSessionCount*,maxDataInUseGB*,platform*,sequence*,userCount*,sessionCount*,dataInUseGB*,timeStamp*,oemId*,application*,description*,isremovable*,gracePeriodEnd*)>
<!ELEMENT type (#PCDATA)>
<!ELEMENT productCode (#PCDATA)>
<!ELEMENT productKey (#PCDATA)>
<!ELEMENT state (#PCDATA)>
<!ELEMENT feature (#PCDATA)>
<!ELEMENT edition (#PCDATA)>
<!ELEMENT maxUserCount (#PCDATA)>
<!ELEMENT maxSessionCount (#PCDATA)>
<!ELEMENT maxDataInUseGB (#PCDATA)>
<!ELEMENT platform (#PCDATA)>
<!ELEMENT sequence (#PCDATA)>
<!ELEMENT userCount (#PCDATA)>
<!ELEMENT sessionCount (#PCDATA)>
<!ELEMENT dataInUseGB (#PCDATA)>
<!ELEMENT timeStamp (#PCDATA)>
<!ELEMENT oemId (#PCDATA)>
<!ELEMENT application (#PCDATA)>
<!ELEMENT description (#PCDATA)>
<!ELEMENT isremovable (#PCDATA)>
<!ELEMENT gracePeriodEnd (#PCDATA)>
]>
products
PvGetProductsInfo() によって返される全製品のコンテナー。
product
単独製品に関する情報のコンテナー。
name
製品の名前。
id
PSQL 製品コード。dtilicense ヘッダー ファイルで、返される製品コードの一覧を参照してください。
licenses
製品に適用される全ライセンスのコンテナー。
license
単独ライセンスに関する情報のコンテナー。
type
ライセンスの種類。
1:期限なし
2:発行時に適用される期限付きライセンス
4:インストール時に適用される期限付きライセンス
7:追加ユーザー
productCode
PSQL 製品コード。dtilicense ヘッダー ファイルで、返される製品コードの一覧を参照してください。
productKey
製品認証に使用するキー。製品認証が使用されない場合は空になります。
state
現在のライセンスの状態。
0:アクティブ
1:期限切れ
2:無効
3:非アクティブ
4:検証失敗
feature
予約済み
edition
予約済み
maxUserCount
許可される最大同時使用ユーザー数。PSQL Server および PSQL Workgroup の場合、0(ゼロ)はユーザー数が無制限であることを示します。PSQL Vx Server の場合は適用されず、常に "0" が返ります。
maxSessionCount
許可される最大同時セッション数。PSQL Server Vx の場合、0(ゼロ)はセッションが無制限であることを示します。PSQL Server および PSQL Workgroup の場合は適用されず、常に "0" が返ります。
maxDatainUseGB
同時に使用できる最大データ量(ギガバイト単位)。PSQL Server Vx の場合、0(ゼロ)はデータ量が無制限であることを示します。PSQL Server および PSQL Workgroup の場合は適用されず、常に "0" が返ります。
platform
対応しているプラットフォーム。
0:ANY
1:WIN
2:WIN32
3:WIN64
4:LINUX
5:LINUX32
6:LINUX64
7:MAC
8:MAC32
9:MAC64
sequence
ライセンス シーケンス番号。
userCount
ライセンスによって許可されるユーザー数。PSQL Server および PSQL Workgroup の場合、-1 はユーザー数が無制限であることを示します。PSQL Vx Server の場合は適用されず、常に "0" が返ります。
sessionCount
ライセンスによって許可されるセッション数。PSQL Vx Server の場合、-1 はユーザー数が無制限であることを示します。PSQL Server および PSQL Workgroup の場合は適用されず、常に "0" が返ります。
dataInUseGB
ライセンスによって許可される使用データ量(ギガバイト単位)。PSQL Vx Server の場合、-1 は使用データ サイズが無制限であることを示します。PSQL Server および PSQL Workgroup の場合は適用されず、常に "0" が返ります。
timeStamp
一時キーの場合、失効日は 2000 年 1月 1日からの日数で表します。
oemId
ベンダー ID。
application
ベンダーのアプリケーション ID。
description
予約済み
isremovable
ライセンス キーは削除可能です。
0:削除できません。
1:削除できます。
gracePeriodEnd
ラインセンスの検証失敗のためエンジンが無効になるまでの日数。検証失敗期間がこの製品に適用されない場合は空。検証失敗期間はこの製品に対し適用可能だが有効になっていない場合は -1。
<?xml version="1.0" encoding='UCS-4' ?>
<!DOCTYPE products [
<!ELEMENT products (product*)>
<!ELEMENT product (name,id,licenses)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT licenses (license*)>
<!ELEMENT license (type,productCode*,productKey*,state*,feature*,edition*,maxUserCount*,maxSessionCount*,maxDataInUseGB*,platform*,sequence*,userCount*,sessionCount*,dataInUseGB*,timeStamp*,oemId*,application*,description*,isremovable*,gracePeriodEnd*)>
<!ELEMENT type (#PCDATA)>
<!ELEMENT productCode (#PCDATA)>
<!ELEMENT productKey (#PCDATA)>
<!ELEMENT state (#PCDATA)>
<!ELEMENT feature (#PCDATA)>
<!ELEMENT edition (#PCDATA)>
<!ELEMENT maxUserCount (#PCDATA)>
<!ELEMENT maxSessionCount (#PCDATA)>
<!ELEMENT maxDataInUseGB (#PCDATA)>
<!ELEMENT platform (#PCDATA)>
<!ELEMENT sequence (#PCDATA)>
<!ELEMENT userCount (#PCDATA)>
<!ELEMENT sessionCount (#PCDATA)>
<!ELEMENT dataInUseGB (#PCDATA)>
<!ELEMENT timeStamp (#PCDATA)>
<!ELEMENT oemId (#PCDATA)>
<!ELEMENT application (#PCDATA)>
<!ELEMENT description (#PCDATA)>
<!ELEMENT isremovable (#PCDATA)>
<!ELEMENT gracePeriodEnd (#PCDATA)>
]>
<products>
  <product>
    <name>DataExchange 5 Server: Real-Time Backup</name>
    <id>78</id>
    <licenses>
      <license>
        <type>1</type>
        <productCode>78</productCode>
        <productKey> ABCDE-55555-FGHIJ-55555-KLMNO-55555</productKey>
        <state>0</state>
        <feature>0</feature>
        <edition>0</edition>
        <maxUserCount>0</maxUserCount>
        <maxSessionCount>0</maxSessionCount>
        <maxDataInUseGB>0</maxDataInUseGB>
        <platform>2</platform>
        <sequence>0</sequence>
        <userCount>1</userCount>
        <sessionCount>0</sessionCount>
        <dataInUseGB>0</dataInUseGB>
        <timeStamp>0</timeStamp>
        <oemId>0</oemId>
        <application>0</application>
        <description></description>
        <isremovable>1</isremovable>
        <gracePeriodEnd>-1</gracePeriodEnd>
      </license>
   </licenses>
  </product>
  <product>
    <name>PSQL 12 Server</name>
    <id>425</id>
    <licenses>
      <license>
        <type>2</type>
        <productCode>425</productCode>
        <productKey></productKey>
        <state>0</state>
        <feature>0</feature>
        <edition>0</edition>
        <maxUserCount>0</maxUserCount>
        <maxSessionCount>0</maxSessionCount>
        <maxDataInUseGB>0</maxDataInUseGB>
        <platform>2</platform>
        <sequence>0</sequence>
        <userCount>10</userCount>
        <sessionCount>0</sessionCount>
        <dataInUseGB>0</dataInUseGB>
        <timeStamp>4489</timeStamp>
        <oemId>8</oemId>
        <application>604</application>
        <description></description>
        <isremovable>0</isremovable>
        <gracePeriodEnd></gracePeriodEnd>
      </license>
      <license>
        <type>4</type>
        <productCode>425</productCode>
        <productKey></productKey>
        <state>0</state>
        <feature>0</feature>
        <edition>0</edition>
        <maxUserCount>0</maxUserCount>
        <maxSessionCount>0</maxSessionCount>
        <maxDataInUseGB>0</maxDataInUseGB>
        <platform>1</platform>
        <sequence>11200</sequence>
        <userCount>20</userCount>
        <sessionCount>0</sessionCount>
        <dataInUseGB>0</dataInUseGB>
        <timeStamp>4429</timeStamp>
        <oemId>0</oemId>
        <application>1</application>
        <description></description>
        <isremovable>0</isremovable>
        <gracePeriodEnd></gracePeriodEnd>
      </license>
      <license>
        <type>1</type>
        <productCode>425</productCode>
        <productKey>ABCDE-55555-FGHIJ-55555-KLMNO-55555</productKey>
        <state>0</state>
        <feature>0</feature>
        <edition>0</edition>
        <maxUserCount>0</maxUserCount>
        <maxSessionCount>0</maxSessionCount>
        <maxDataInUseGB>0</maxDataInUseGB>
        <platform>2</platform>
        <sequence>0</sequence>
        <userCount>10</userCount>
        <sessionCount>0</sessionCount>
        <dataInUseGB>0</dataInUseGB>
        <timeStamp>0</timeStamp>
        <oemId>333</oemId>
        <application>334</application>
        <description></description>
        <isremovable>1</isremovable>
        <gracePeriodEnd>-1</gracePeriodEnd>
      </license>
    </licenses>
  </product>
</products>
関連項目
PvValidateLicenses()
PvConnectServer()
PvStart()
PvStop()