ClientPropertyValueType Property

The table property's value type.

Syntax

int GetClientPropertyValueType(int iClientPropertyIndex);
int SetClientPropertyValueType(int iClientPropertyIndex, int iClientPropertyValueType);

Possible Values

FVT_BOOLEAN(0), 
FVT_BYTE(1),
FVT_UBYTE(2),
FVT_SHORT(3),
FVT_USHORT(4),
FVT_INT(5),
FVT_UINT(6),
FVT_LONG(7),
FVT_ULONG(8),
FVT_FLOAT(9),
FVT_DOUBLE(10),
FVT_DECIMAL(11),
FVT_SSTRING(12),
FVT_STRING(13),
FVT_ARRAY(14),
FVT_TIMESTAMP(15),
FVT_TABLE(16),
FVT_NULL(17)

Default Value

17

Remarks

The table field's value type.

This property specifies the table field's value type (and thus, the format of the data in the ClientPropertyValue property). Acceptable value types are:

Value Type JSON Value TypeDescriptionValue Format
fvtBoolean (0) boolean Boolean "True" or "False"
fvtByte (1) byte Byte -128 to 127
fvtUbyte (2) ubyte Unsigned byte 0 to 255
fvtShort (3) short Short -32768 to 32767
fvtUshort (4) ushort Unsigned short 0 to 65535
fvtInt (5) int Integer -2147483648 to 2147483647
fvtUint (6) uint Unsigned integer 0 to 4294967295
fvtLong (7) long Long -9223372036854775808 to 9223372036854775807
fvtUlong (8) ulong Unsigned long 0 to 18446744073709551615
fvtFloat (9) float Float IEEE 754 32-bit floating point number
fvtDouble (10) double Double IEEE 754 64-bit floating point number
fvtDecimal (11) decimal Decimal Hex-encoded byte string
fvtSstring (12) sstring Short string UTF-8 string data, limited to 255 bytes; may not contain null bytes (\0)
fvtString (13) string String String data
fvtArray (14) array Array JSON array of type-value pairs
fvtTimestamp (15) timestamp Timestamp Number of milliseconds since the Unix epoch (January 1, 1970 00:00:00 UTC)
fvtTable (16) table Table JSON object containing name-type-value tuples
fvtNull (17 - default)null Null N/A (ClientPropertyValue is ignored)

Note: The fvtUlong (8) and fvtSstring (12) value types are not supported when the RabbitMQCompatible configuration setting is enabled.

For the fvtArray (14) value type, the ClientPropertyValue should be specified as a JSON array of type-value pairs; for example:

[
  { "type": "int", "value": 23 },
  { "type": "int", "value": -52 },
  { "type": "int", "value": 153325 }
]

For the fvtTable (16) value type, the ClientPropertyValue should be specified as a JSON object containing name-type-value tuples; for example:

{
  { "name": "Test1", "type": "long", "value": 12345678901234 },
  { "name": "Test2", "type": "boolean", "value": "false" },
  { "name": "Test3", "type": "string", "value": "This is a test." }
}

Notes regarding fvtArray (14) and fvtTable (16) type ClientPropertyValues:

  • All "type" fields in the JSON content must be set to one of the value types in the table above.
  • For fvtTable (16) type ClientPropertyValues, all "name" fields must adhere to the rules described by the ClientPropertyKey documentation.
  • Nesting and mixing multiple levels of arrays and tables in the JSON is allowed.

The ClientPropertyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ClientPropertyCount property.

This property is not available at design time.

Data Type

Integer

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks MQ 2020 Qt Edition - Version 20.0 [Build 8155]