> ## Documentation Index
> Fetch the complete documentation index at: https://docs.superoffice.com/llms.txt
> Use this file to discover all available pages before exploring further.

# NSArchiveColumnInfo

> Information about the definition and properties of an archive display column. It is used by the archive MDO providers to construct column lists for the configuration dialogs, and by the archive control to know what type (and other properties) each column has. The class is serializable and used on both the application and web server sides.

Information about the definition and properties of an archive display column. It is used by the archive MDO providers to construct column lists for the configuration dialogs, and by the archive control to know what type (and other properties) each column has. The class is serializable and used on both the application and web server sides.

## Constructors

### NSArchiveColumnInfo()

```crmscript theme={null}
NSArchiveColumnInfo
```

Initializes a new instance of the NSArchiveColumnInfo class.

## Methods

## GetCanOrderBy()

```crmscript theme={null}
Bool GetCanOrderBy()
```

**Returns:** [CRMScript.Global.Bool](CRMScript.Global.Bool) - Can this column be used for sorting?

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
Bool canOrderBy = thing.GetCanOrderBy();
```

## GetCanRestrictBy()

```crmscript theme={null}
Bool GetCanRestrictBy()
```

**Returns:** [CRMScript.Global.Bool](CRMScript.Global.Bool) - Can this column be used as a restriction?

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
Bool canRestrictBy = thing.GetCanRestrictBy();
```

## GetDisplayName()

```crmscript theme={null}
String GetDisplayName()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - The column name to show, can be a resource identifier string.

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String displayName = thing.GetDisplayName();
```

## GetDisplayTooltip()

```crmscript theme={null}
String GetDisplayTooltip()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - The column tooltip, used in the column list and in the column headings.

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String displayTooltip = thing.GetDisplayTooltip();
```

## GetDisplayType()

```crmscript theme={null}
String GetDisplayType()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - Type of column, so that the archive knows how to display it (actual display values are always strings, invariant-culture formatted). This name can contain resource tags.

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String displayType = thing.GetDisplayType();
```

## GetHeadingIconHint()

```crmscript theme={null}
String GetHeadingIconHint()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - Icon hint for the archive heading only. If this is a nonempty string, the archive header should use this icon and ignore the DisplayName. Otherwise, the DisplayName should be used as the heading.

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String headingIconHint = thing.GetHeadingIconHint();
```

## GetIconHint()

```crmscript theme={null}
String GetIconHint()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - Icon hint corresponding to the display name.

<Note>
  The icon hint is used in the configuration dialog and other places where we talk about the columns of the archive. The actual heading of the archive may also contain icons in lieu of textual names, the icon hint for that is specified in HeadingIconHint and is a different one.
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String iconHint = thing.GetIconHint();
```

## GetIsVisible()

```crmscript theme={null}
Bool GetIsVisible()
```

**Returns:** [CRMScript.Global.Bool](CRMScript.Global.Bool) - Is this column visible to the user in configuration dialogs and similar?

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
Bool isVisible = thing.GetIsVisible();
```

## GetName()

```crmscript theme={null}
String GetName()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - Unique identity of this column (in this particular context).

<Note>
  The name to be used when requesting the column from a provider, setting restrictions or order by criteria
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String name = thing.GetName();
```

## GetRestrictionListName()

```crmscript theme={null}
String GetRestrictionListName()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - If the restriction data type is list, this property contains the name of the SoList so that choices can be shown.

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String restrictionListName = thing.GetRestrictionListName();
```

## GetRestrictionType()

```crmscript theme={null}
String GetRestrictionType()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - The data type of the restriction; use this to retrieve the legal operators for the restriction.

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String restrictionType = thing.GetRestrictionType();
```

## GetSourceCode()

```crmscript theme={null}
String GetSourceCode()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String)

## GetWidth()

```crmscript theme={null}
String GetWidth()
```

**Returns:** [CRMScript.Global.String](CRMScript.Global.String) - The width specification, if the column info has been extended with GUI-based information. It is either "n%" or "nc", where n is an integer.

<Note>
  Percent-formatted fields grow and shrink; number-of-characters formatted fields have constant width when the whole archive width changes.
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String width = thing.GetWidth();
```

## SetCanOrderBy(Bool)

Sets the CanOrderBy property.

```crmscript theme={null}
Void SetCanOrderBy(Bool canOrderBy)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
Bool canOrderBy;
thing.SetCanOrderBy(canOrderBy);
```

## SetCanRestrictBy(Bool)

Sets whether the column can be used as an restriction.

```crmscript theme={null}
Void SetCanRestrictBy(Bool canRestrictBy)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
Bool canRestrictBy;
thing.SetCanRestrictBy(canRestrictBy);
```

## SetDisplayName(String)

```crmscript theme={null}
Void SetDisplayName(String displayName)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String displayName;
thing.SetDisplayName(displayName);
```

## SetDisplayTooltip(String)

```crmscript theme={null}
Void SetDisplayTooltip(String displayTooltip)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String displayTooltip;
thing.SetDisplayTooltip(displayTooltip);
```

## SetDisplayType(String)

```crmscript theme={null}
Void SetDisplayType(String displayType)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String displayType;
thing.SetDisplayType(displayType);
```

## SetHeadingIconHint(String)

```crmscript theme={null}
Void SetHeadingIconHint(String headingIconHint)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

<Note>
  If this is a nonempty string, the archive header should use this icon and ignore the DisplayName. Otherwise, the DisplayName should be used as the heading.
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String headingIconHint;
thing.SetHeadingIconHint(headingIconHint);
```

## SetIconHint(String)

```crmscript theme={null}
Void SetIconHint(String iconHint)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

<Note>
  This icon hint is used in the configuration dialog and other places where we talk about the columns of the archive. The actual heading of the archive may also contain icons in lieu of textual names, the icon hint for that is specified in HeadingIconHint and is a different one.
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String iconHint;
thing.SetIconHint(iconHint);
```

## SetIsVisible(Bool)

Sets the visibility of the column.

```crmscript theme={null}
Void SetIsVisible(Bool isVisible)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
Bool isVisible;
thing.SetIsVisible(isVisible);
```

## SetName(String)

```crmscript theme={null}
Void SetName(String name)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

<Note>
  The name to be used when requesting the column from a provider, setting restrictions or order by criteria
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String name;
thing.SetName(name);
```

## SetRestrictionListName(String)

```crmscript theme={null}
Void SetRestrictionListName(String restrictionListName)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String restrictionListName;
thing.SetRestrictionListName(restrictionListName);
```

## SetRestrictionType(String)

```crmscript theme={null}
Void SetRestrictionType(String restrictionType)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

<Note>
  Use this to retrieve the legal operators for the restriction.
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String restrictionType;
thing.SetRestrictionType(restrictionType);
```

## SetSourceCode(String)

```crmscript theme={null}
Void SetSourceCode(String code)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

## SetWidth(String)

```crmscript theme={null}
Void SetWidth(String width)
```

**Returns:** [CRMScript.Global.Void](CRMScript.Global.Void)

<Note>
  Percent-formatted fields grow and shrink; number-of-characters formatted fields have constant width when the whole archive width changes.
</Note>

**Example:**

```crmscript theme={null}
NSArchiveColumnInfo thing;
String width;
thing.SetWidth(width);
```


## Related topics

- [NSArchiveRestrictionInfo](/en/automation/crmscript/reference/CRMScript.NetServer.NSArchiveRestrictionInfo.md)
- [NSArchiveOrderByInfo](/en/automation/crmscript/reference/CRMScript.NetServer.NSArchiveOrderByInfo.md)
- [NSArchiveConfiguration](/en/automation/crmscript/reference/CRMScript.NetServer.NSArchiveConfiguration.md)
- [NSFindResults](/en/automation/crmscript/reference/CRMScript.NetServer.NSFindResults.md)
- [NSCriteriaInformation](/en/automation/crmscript/reference/CRMScript.NetServer.NSCriteriaInformation.md)
- [NSArchiveAgent](/en/automation/crmscript/reference/CRMScript.NetServer.NSArchiveAgent.md)
