SBM ModScript Reference → Programming SBM ModScript → Object Types → VarRecord → VarRecord GetFieldValue() Method
Gets the value of a field in the calling record's variable field list.
bool GetFieldValue( name, string& value [, Variant& fieldList [, Variant& field] ]) bool GetFieldValue( name, int& value [, Variant& fieldList [, Variant& field] ]) bool GetFieldValue( name, int64_t& value [, Variant& fieldList [, Variant& field] ]) bool GetFieldValue( name, double& value [, Variant& fieldList [, Variant& field] ]) bool GetFieldValue( name, TimeT& value [, Variant& fieldList [, Variant& field] ]) bool GetFieldValue( name, Variant& value [, Variant& fieldList [, Variant& field] ])
Parameter | Type | Description |
---|---|---|
name |
string |
The name of the field whose value will be retrieved from the calling record's variable field list. Field names for variable fields should be provided in upper case for database names (TITLE, for example) or in lower/mixed-case for display names (Title, for example). For details on working with different types of database fields, refer to Working with SBM Database Fields. |
value |
string& int& int64_t& double& TimeT& Variant& |
(Output) The internal value for the field. For Text fields, this is the exact value entered in the field. For values that are not Variant or TimeT, this internally gets the value from the field as a Variant, and then tries to convert the value to the requested type. TimeT can be used with Date/Time fields to get the internal date value. Note: If the field is a
Multi-User field for which the
Groups and Users selection mode is
enabled, the value can include both pure integers (TS_IDs from the TS_USERS
table) and group identifiers (TS_IDs from the TS_GROUPS table). The latter are
in the form
G1,
G2, …
|
fieldList |
Variant& |
(Output) Optional. If supplied and equal to the global constant Nothing, this parameter will refer to the calling record's VarFieldList when this method returns. If supplied and not equal to Nothing, this parameter is taken to be the calling record's VarFieldList. Do not set this parameter's value yourself. Always pass a variable set to Nothing and then reuse the variable for subsequent calls to GetFieldValue() and SetFieldValue() on the same VarRecord object. If this parameter is omitted, no functionality changes, but efficiency may suffer. |
field |
Variant& |
(Output) Optional. If supplied and equal to the global constant Nothing, this parameter will refer to the Field object on the calling record's VarFieldList whose name matches the name input parameter when this method returns. If supplied and not equal to Nothing, this parameter is taken to be that Field object. As with the fieldList parameter, you should never set this value yourself. Always pass a variable equal to Nothing and reuse the variable in subsequent calls to GetFieldValue() and SetFieldValue() on the same VarRecord object and the same value for the name input parameter. Passing this parameter only affects the efficiency of repeated GetFieldValue() and SetFieldValue() calls. |
Type | Description |
---|---|
bool | True if the named field was found in the calling record's VarFieldList and its value was successfully retrieved. |
SBM ModScript version: 11.3. Signatures where value is not Variant& were added in 11.4.
var value = ""; // initialize value as a string var fieldList = Variant(); var field = Variant(); fieldList = Nothing; field = Nothing; // Create and retrieve Contact record var myRecord = Ext.CreateAppRecord (Ext.TableId ("TS_CONTACTS")); var ok = myRecord.ReadWithWhere ("TS_CONTACTFIRSTNAME = 'Joe'"); // If no e-mail address, supply default value if ( ok ) { ok = myRecord.GetFieldValue ( "EMAIL", value, fieldList, field); } if ( ok && value == "" ) { ok = myRecord.SetFieldValue ( "EMAIL", "joe@company.com", fieldList, field); } if ( !ok ) { Ext.LogErrorMsg ("Error in Joe's email field"); }
The fieldList and field parameters are optional. If supplied, they can boost efficiency for repeated calls to GetFieldValue() and SetFieldValue(). Note that fields not contained in a variable field list (i.e., system table fields) cannot be accessed with this method.
Also see VarRecord GetFieldValue-type-() Method.
Copyright © 2007–2018 Serena Software, Inc., a Micro Focus company. All rights reserved.