ArcFM Solution Developer Guide
IMMAutoValue Interface
Members 


This interface stores ArcFM configurations such as autoupdaters, custom field editors, and validation rules. The type of configuration stored is determined in the EditEvent property. The mmEditEvent value set in the EditEvent property determines which IMMAutoValue properties are applicable.

In the example below, the code goes through all of the ID8ListItems that are children of the IMMSubtype to find those that are IMMAutoValue. These list items represent the autoupdaters in the order they are assigned.

//Example Implementation of IMMAutoValue
// Specify ObjectClass and SubtypeCode, remember all field properties are by subtype
   IMMSubtype subtype = configTopLevel.GetSubtypeForEdit(objectClass, 1);
            
   // IMMSubtype is an ID8List, with IMMAutoValues (among other things)
   ID8List subtypeList = subtype as ID8List;
   subtypeList.Reset();

   ID8ListItem listItem = subtypeList.Next(false);
   while (listItem != null)
   {
      if (listItem is IMMAutoValue)
      {
         IMMAutoValue autoValue = listItem as IMMAutoValue;
         if (autoValue.AutoGenID != null)
         {
            switch (autoValue.EditEvent)
            {
               case mmEditEvent.mmEventFeatureCreate:
               // Compare AutoValue to some value you are searching for
               if (String.Compare(autoValue.AutoGenID.Value.ToString(), 
                                    "{1B6A3EBD-BE25-4FA0-8818-91C843601B1D}",true) == 0)
                {
                    // Remove the AU
                    autoValue.AutoGenID = null;
                    autoValue = null;
                }
                break;
            case mmEditEvent.mmEventFeatureUpdate:
                break;
            case mmEditEvent.mmEventFeatureDelete:
                break;
          }
        }
     }
     listItem = subtypeList.Next(false);
   }
   configTopLevel.SaveFeatureClassToDB(objectClass);
Available at Version
Product Availability
Required Licenses
.NET Assembly
Syntax
'Declaration
 
<TypeLibTypeAttribute(TypeLibTypeFlags.FOleAutomation)>
<InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
<GuidAttribute("CFA470EE-EFD1-4D4F-8232-2C5CEC2BC61C")>
<ComImportAttribute()>
Public Interface IMMAutoValue 
'Usage
 
Dim instance As IMMAutoValue
[TypeLibType(TypeLibTypeFlags.FOleAutomation)]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
[Guid("CFA470EE-EFD1-4D4F-8232-2C5CEC2BC61C")]
[ComImport()]
public interface IMMAutoValue 
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

IMMAutoValue Members
Miner.Interop Namespace

This interface stores ArcFM configurations such as autoupdaters, custom field editors, and validation rules. The type of configuration stored is determined in the EditEvent property. The mmEditEvent value set in the EditEvent property determines which IMMAutoValue properties are applicable.

In the example below, the code goes through all of the ID8ListItems that are children of the IMMSubtype to find those that are IMMAutoValue. These list items represent the autoupdaters in the order they are assigned.

//Example Implementation of IMMAutoValue
// Specify ObjectClass and SubtypeCode, remember all field properties are by subtype
   IMMSubtype subtype = configTopLevel.GetSubtypeForEdit(objectClass, 1);
            
   // IMMSubtype is an ID8List, with IMMAutoValues (among other things)
   ID8List subtypeList = subtype as ID8List;
   subtypeList.Reset();

   ID8ListItem listItem = subtypeList.Next(false);
   while (listItem != null)
   {
      if (listItem is IMMAutoValue)
      {
         IMMAutoValue autoValue = listItem as IMMAutoValue;
         if (autoValue.AutoGenID != null)
         {
            switch (autoValue.EditEvent)
            {
               case mmEditEvent.mmEventFeatureCreate:
               // Compare AutoValue to some value you are searching for
               if (String.Compare(autoValue.AutoGenID.Value.ToString(), 
                                    "{1B6A3EBD-BE25-4FA0-8818-91C843601B1D}",true) == 0)
                {
                    // Remove the AU
                    autoValue.AutoGenID = null;
                    autoValue = null;
                }
                break;
            case mmEditEvent.mmEventFeatureUpdate:
                break;
            case mmEditEvent.mmEventFeatureDelete:
                break;
          }
        }
     }
     listItem = subtypeList.Next(false);
   }
   configTopLevel.SaveFeatureClassToDB(objectClass);
Syntax
'Declaration
 
<TypeLibTypeAttribute(TypeLibTypeFlags.FOleAutomation)>
<InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>
<GuidAttribute("CFA470EE-EFD1-4D4F-8232-2C5CEC2BC61C")>
<ComImportAttribute()>
Public Interface IMMAutoValue 
'Usage
 
Dim instance As IMMAutoValue
[TypeLibType(TypeLibTypeFlags.FOleAutomation)]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
[Guid("CFA470EE-EFD1-4D4F-8232-2C5CEC2BC61C")]
[ComImport()]
public interface IMMAutoValue 
Inheritance Hierarchy

Miner.Interop.IMMAutoValue

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

IMMAutoValue Members
Miner.Interop Namespace

 

 


Send Comment