ArcFM Solution Developer Guide
DisplayString Method (IMMDisplayNamer)


IRow
The DisplayString method determines the attributes that will be visible in a feature's display name when the object is assigned.
Syntax
'Declaration
 
Function DisplayString( _
   ByVal pRow As ESRI.ArcGIS.Geodatabase.IRow _
) As String
'Usage
 
Dim instance As IMMDisplayNamer
Dim pRow As ESRI.ArcGIS.Geodatabase.IRow
Dim value As String
 
value = instance.DisplayString(pRow)
string DisplayString( 
   ESRI.ArcGIS.Geodatabase.IRow pRow
)

Parameters

pRow
IRow

Return Value

String
Remarks
 
Example
The following code sample demonstrates how the IMMDisplayNamer::DisplayString method may be implemented.
Visual Basic Copy Code
Private Function IMMDisplayNamer_DisplayString(ByVal pRow As IRow) As String

    Dim pFields As IFields
    Set pFields = pRow.Fields
    Dim pCVDomain As ICodedValueDomain

    'Get FacilityID, RatedKVA, PhaseDesignation field indices
    Dim lFacilityIDIndex As Long
    lFacilityIDIndex = pFields.FindField(FacilityID)

    Dim lRatedKVAIndex As Long
    lRatedKVAIndex = pFields.FindField(RatedKVA)

    Dim lPhaseDesigIndex As Long
    lPhaseDesigIndex = pFields.FindField(PhaseDesignation)

    'Assemble individual display strings
    Dim sDisplayString As String
    Dim sFacilityID As String
    Dim sRatedKVA As String
    Dim sPhaseDesignation As String

    'Store FacilityID field value
    If VarType(pRow.Value(lFacilityIDIndex)) = vbNull Then
        sFacilityID = g_pLocal.GetString(S101_Null)
    Else
        sFacilityID = CStr(pRow.Value(lFacilityIDIndex))
    End If

    'Store RatedKVA field value
    Dim lRatedKVAValue As Long

    If VarType(pRow.Value(lRatedKVAIndex)) = vbNull Then
        sRatedKVA = g_pLocal.GetString(S101_Null)
    Else
        lRatedKVAValue = pRow.Value(lRatedKVAIndex)

        'Get appropriate RatedKVA code description from subtype domain
        'or default domain
        Set pCVDomain = GetCVDomain(pRow, lRatedKVAIndex)

        If Not pCVDomain Is Nothing Then
            sRatedKVA = GetCVDescFromCode(pCVDomain, lRatedKVAValue)
            sRatedKVA = Mid(sRatedKVA, 1, InStr(1, sRatedKVA, "k", vbTextCompare) - 2)
            sRatedKVA = sRatedKVA & " KVA"
        Else
            sRatedKVA = "KVA Code: " & CStr(lRatedKVAValue)
        End If
    End If

    'store phasedesignation field value
    Dim lPhaseDesignationValue As Long

    If VarType(pRow.Value(lPhaseDesigIndex)) = vbNull Then
        sPhaseDesignation = g_pLocal.GetString(S101_Null)
    Else
        lPhaseDesignationValue = pRow.Value(lPhaseDesigIndex)

        'Get appropriate PhaseDesignation code description from subtype domain
        'or default domain
        Set pCVDomain = GetCVDomain(pRow, lPhaseDesigIndex)

        If Not pCVDomain Is Nothing Then
            sPhaseDesignation = GetCVDescFromCode(pCVDomain, lPhaseDesignationValue)
        Else
            sPhaseDesignation = "Phase Code: " & CStr(lPhaseDesignationValue)
        End If
    End If

    sDisplayString = sFacilityID & " - " & sRatedKVA & " - " & sPhaseDesignation

    'Return display string
    IMMDisplayNamer_DisplayString = sDisplayString

End Function

 

Requirements

Target Platforms: Windows XP SP3 (32-bit and 64-bit), Windows 7 (32-bit and 64-bit)

Not all Operating Systems are supported on all products. Visit the ArcFM Solution Supported Versions page for full details.

See Also

Reference

IMMDisplayNamer Interface
IMMDisplayNamer Members

 

 


Send Comment