このメソッドは、Connector のプロパティ値を特定のデータ型で返します。サポートされるデータ型は、Boolean、Currency、Datetime、Float、Int、Numeric、および Text です。
このメソッドでは LCConnection.GetProperty と同様にコネクションのプロパティが取得されますが、フィールドオブジェクトは必要ありません。プロパティ値が指定したデータ型でない場合、データ変換が実行されます。このメソッドではパスワードプロパティの値は取得できず、INVALID_PROPERTY エラーが発生します。
LCConnection
flag = lcConnection.GetPropertyBoolean(propertyToken, default)
Set destCurrency = lcConnection.GetPropertyCurrency(propertyToken)
Set destDatetime = lcConnection.GetPropertyDatetime(propertyToken)
destFloat = lcConnection.GetPropertyFloat(propertyToken)
destInt = lcConnection.GetPropertyInt(propertyToken)
Set destNumeric = lcConnection.GetPropertyNumeric(propertyToken)
Set destStream = lcConnection.GetPropertyStream(propertyToken, streamFormat)
パラメータ |
説明 |
---|---|
propertyToken |
コネクションのプロパティを識別するトークン。プロパティトークンの一覧については、付録 B を参照してください。 |
default |
(GetPropertyBoolean のみ) プロパティを検索できない場合に返される値。デフォルト値は FALSE です。 |
streamFormat |
(GetPropertyStream のみ) ストリームが返される前に変換されるストリーム形式。streamFormat を 0 に設定すると変換は実行されず、プロパティ値と同じ形式でストリーム値がコピーされます。それ以外の場合、第 5 章の「ストリーム形式」で説明されているストリーム形式のフラグを指定します。 |
値 |
説明 |
---|---|
flag |
GetPropertyBoolean のみ。TRUE または FALSE のブール値です。プロパティが存在しない場合は、デフォルトが返されます。 |
dest<Type> |
Connector のプロパティの現在値。 |
Option Public
Uselsx "*lsxlc"
Sub Initialize
Dim connect As New LCConnection ("oracle")
Dim conFld As LCField
Dim propName As String
Dim propDate As LCDateTime
Dim propNumeric As LCNumeric
Dim propStrm As LCStream
Dim propCurr As LCCurrency
Dim propFloat As Double
Dim propInt As Long
Dim propBool As Variant
Dim tokenId As Long
Dim propType As Long
Dim propFlags As Long
' set some connector properties
connect.Server = "Rainbow"
connect.Userid = "JDoe"
connect.Password = "xyzzy"
' it is not necessary to connect to list properties
Call connect.ListProperty (LCLIST_FIRST, _
tokenId, propType, propFlags, propName)
Print "NAME" Tab(20); "ID"; Tab(28); "FLAGS"; _
Tab(36); "TYPE"; Tab(48); "VALUE"
Print "-----------------" Tab(20); "------"; Tab(28); "------"; _
Tab(36); "----------"; Tab(48); "----------"
Do
Set conFld = connect.GetProperty (tokenId)
' match the property to a datatype and fetch it as that datatype
Select Case propType
Case LCTYPE_DATETIME:
Set propDate = connect.GetPropertyDatetime (tokenId)
Print propName; Tab(20); Hex(tokenId); Tab(28); Hex(propFlags); _
Tab(36); "LCDatetime"; Tab(48); propDate.text
Case LCTYPE_NUMERIC:
Set propNumeric = connect.GetPropertyNumeric (tokenId)
Print propName; Tab(20); Hex(tokenId); Tab(28); Hex(propFlags); _
Tab(36); "LCNumeric"; Tab(48); propNumeric.text
Case LCTYPE_TEXT:
Set propStrm = connect.GetPropertyStream (tokenId, LCSTREAMFMT_NATIVE)
Print propName; Tab(20); Hex(tokenId); Tab(28); Hex(propFlags); _
Tab(36); "LCStream"; Tab(48); propStrm.text
Case LCTYPE_CURRENCY:
Set propCurr = connect.GetPropertyCurrency (tokenId)
Print propName; Tab(20); Hex(tokenId); Tab(28); Hex(propFlags); _
Tab(36); "LCCurrency"; Tab(48); propCurr.text
Case LCTYPE_FLOAT:
propFloat = connect.GetPropertyFloat (tokenId)
Print propName; Tab(20); Hex(tokenId); Tab(28); Hex(propFlags); _
Tab(36); "Double"; Tab(48); Cstr(propFloat)
Case LCTYPE_INT:
If (propFlags And LCPROPERTYF_BOOLEAN) Then
propBool = connect.GetPropertyBoolean (tokenId, False)
Print propName; Tab(20); Hex(tokenId); Tab(28); Hex(propFlags); _
Tab(36); "Boolean"; Tab(48); Cstr(propBool)
Else
propInt = connect.GetPropertyInt (tokenId)
Print propName; Tab(20); Hex(tokenId); Tab(28); Hex(propFlags); _
Tab(36); "Long"; Tab(48); Cstr(PropInt)
End If
End Select
Loop _
While connect.ListProperty (LCLIST_NEXT, _
tokenId, propType, propFlags, propName)
End Sub
NAME ID FLAGS TYPE VALUE
----------------- ------ ------ ---------- ----------
Name 30004 4 LCStream oracle
IsConnected 3000C 6 Boolean False
Server 10001 1 LCStream mycyclone
Userid 10003 1 LCStream scott
Metadata 10005 0 LCStream
Index 10006 0 LCStream
MapByName 10007 2 Boolean False
Writeback 10008 2 Boolean False
Condition 1000B 0 LCStream
StampField 1000C 0 LCStream
BaseStamp 1000D 0 LCDatetime
MaxStamp 1000E 0 LCDatetime
TextFormat 1000F 4 Long 65535
CharacterSet 30008 4 LCStream NATIVE
Procedure 10010 0 LCStream
Owner 10011 0 LCStream
AlternateMetadata 10013 2 Boolean False
CommitFrequency 1 0 Long 0
RollbackOnError 2 2 Boolean False
CreateLongColumn 3 0 LCStream
CreateLongByUser 4 0 Long 0
TraceSQL 5 2 Boolean False