Sets the named property of JsonObject to the given value. On successful execution, the method returns TRUE.
Return type: LOGICAL
Access: PUBLIC
Applies to: Progress.Json.ObjectModel.JsonObject class
Set( INPUT property-name AS CHARACTER, INPUT value AS CHARACTER ) Set( INPUT property-name AS CHARACTER, INPUT value AS COM-HANDLE ) Set( INPUT property-name AS CHARACTER, INPUT value AS DATE ) Set( INPUT property-name AS CHARACTER, INPUT value AS DATETIME ) Set( INPUT property-name AS CHARACTER, INPUT value AS DATETIME-TZ ) Set( INPUT property-name AS CHARACTER, INPUT value AS DECIMAL ) Set( INPUT property-name AS CHARACTER, INPUT value AS HANDLE ) Set( INPUT property-name AS CHARACTER, INPUT value AS INT64 ) Set( INPUT property-name AS CHARACTER, INPUT value AS INTEGER ) Set( INPUT property-name AS CHARACTER, INPUT value AS LOGICAL ) Set( INPUT property-name AS CHARACTER, INPUT value AS LONGCHAR ) Set( INPUT property-name AS CHARACTER, INPUT value AS MEMPTR ) Set( INPUT property-name AS CHARACTER, INPUT value AS RAW ) Set( INPUT property-name AS CHARACTER, INPUT value AS RECID ) Set( INPUT property-name AS CHARACTER, INPUT value AS ROWID ) Set( INPUT property-name AS CHARACTER, INPUT value AS CLASS JsonObject ) Set( INPUT property-name AS CHARACTER, INPUT value AS CLASS JsonArray ) |
A JsonError is raised if:
The data type of the JSON value set by this method call depends upon the ABL data type of the value parameter.
A value parameter of data type | Data type of JSON value |
---|---|
CHARACTER, LONGCHAR |
string |
INTEGER, INT64, DECIMAL | number |
LOGICAL | boolean |
MEMPTR, RAW, ROWID | string with a value as if you had called BASE64-ENCODE( ) on value |
DATE, DATETIME, DATETIME-TZ | string with a value as if you had called ISO-DATE( ) on value |
COM-HANDLE, HANDLE, RECID | number with a value as if you had called INTEGER( ) on value |
Setting a property to an ABL value that maps to a different JSON data type than the current data type changes the elements's data type. For example:
lSuccess = myObj:Add("myProp", "Hello World"). lSuccess = myObj:Set("myProp", TRUE). iType = myObj:GetType("myProp"). |
In the above example, iType is set to Progress.Json.ObjectModel.JsonDataType:BOOLEAN. (See Progress.Json.ObjectModel.JsonDataType class.)
If you set the property to a JsonObject or JsonArray that references this JsonObject or a JSON construct further up the JSON construct tree, a JsonError is raised.