Struct.fieldName Method

Returns the name of the item in the struct at the specified position.

Syntax

public str fieldName(int index)

Run On

Called

Parameters

  • index
    Type: int
    The position in the struct at which you want to retrieve the item name.

Return Value

Type: str
The name of the item at the position specified by index.

Remarks

If index is not found, an empty string is returned.

Examples

The following example creates a struct from a container and then uses the Struct.fields method to iterate through the contents of the container. The fieldName method is used to test the name of each item in the struct, and a specific action is run depending on the value of this name.

boolean unpack(container packed) 
{ 
    Struct      unpackedProperties; 
    container   structCon; 
    Counter     i; 
  
    [#currentList,structCon] = packed; 
  
    unpackedProperties = Struct::create(structCon); 
  
    for (i=1;i<=unpackedProperties.fields();i++) 
    { 
        switch (unpackedProperties.fieldName(i)) 
        { 
            case #closedOk: 
                break; 
            case #PropertyCaption: 
                if (! dialogForm  
                    || dialogForm  
                    && ! dialogForm.form().design().caption()) 
                    this.caption(unpackedProperties.valueIndex(i)); 
                break; 
            case #dialogFormname: 
                // Do nothing 
                break; 
            case #PropertyAlwaysOnTop: 
                this.alwaysOnTop(unpackedProperties.valueIndex(i)); 
                break; 
            case #PropertyWindowType: 
                this.windowType(unpackedProperties.valueIndex(i)); 
                break; 
            case #defaultButton: 
                this.defaultButton(unpackedProperties.valueIndex(i)); 
                break; 
            default: 
                throw error(strfmt( 
                    "@SYS67326",unpackedProperties.fieldName(i), 
                     classId2Name(classidget(this)))); 
        } 
    } 
  
    return true; 
}

See Also

Struct Class

Struct.index Method

Struct.fields Method

Struct.fieldType Method