Show / Hide Table of Contents

Class UdefFieldTypeProvider

List of UDef field types for a given owner table, and possibly restricted based on the current field type

Inheritance
object
LiteralsOnlyBase
UdefFieldTypeProvider
Implements
ISoListProvider
ISoList
Inherited Members
LiteralsOnlyBase.AddRawRootEnum<TEnum>(TEnum, string, bool)
LiteralsOnlyBase.ConstructAsync(string, string, int[], bool, string, bool, CancellationToken)
LiteralsOnlyBase.GetHistoryItemsAsync(CancellationToken)
LiteralsOnlyBase.ClearHistoryItems()
LiteralsOnlyBase.GetRootItemsAsync(CancellationToken)
LiteralsOnlyBase.GetHeadingItemsAsync(CancellationToken)
LiteralsOnlyBase.ListName
LiteralsOnlyBase.ExtraInfo
LiteralsOnlyBase.SearchValue
LiteralsOnlyBase.ForceFlatList
LiteralsOnlyBase.RawRootItems
LiteralsOnlyBase.RawHeadingItems
LiteralsOnlyBase.RawHistoryItems
LiteralsOnlyBase.HistoryIds
LiteralsOnlyBase.OnlyReadHistory
LiteralsOnlyBase.HistoryInfo
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: SuperOffice.CRM.Lists
Assembly: SoDataBase.BusinessLogic.dll
Syntax
[MDOProviderPlugin("UdefFieldType")]
[MDOAdditionalInfoSeparator(",")]
[MDOAdditionalInfo("UDefType,UDefFieldType,hasBeenPublished", "Contact,Number,true")]
public class UdefFieldTypeProvider : LiteralsOnlyBase, ISoListProvider, ISoList
Remarks

ExtraInfo = "UDefType,UDefFieldType,hasBeenPublished"

For example: "Contact"

"Contact,Number,true"

Constructors

UdefFieldTypeProvider(IUdefHelper)

List of UDef field types for a given owner table, and possibly restricted based on the current field type

Declaration
public UdefFieldTypeProvider(IUdefHelper udefHelper)
Parameters
Type Name Description
IUdefHelper udefHelper
Remarks

ExtraInfo = "UDefType,UDefFieldType,hasBeenPublished"

For example: "Contact"

"Contact,Number,true"

Fields

ProviderName

List of UDef field types for a given owner table, and possibly restricted based on the current field type

Declaration
public const string ProviderName = "UdefFieldType"
Field Value
Type Description
string
Remarks

ExtraInfo = "UDefType,UDefFieldType,hasBeenPublished"

For example: "Contact"

"Contact,Number,true"

Properties

TypeToResource

List of UDef field types for a given owner table, and possibly restricted based on the current field type

Declaration
public static Dictionary<UDefFieldType, string> TypeToResource { get; }
Property Value
Type Description
Dictionary<UDefFieldType, string>
Remarks

ExtraInfo = "UDefType,UDefFieldType,hasBeenPublished"

For example: "Contact"

"Contact,Number,true"

Methods

AddItemsAsync(CancellationToken)

Subclass contract: use the RawRootItems and RawHeadingItems properties to add items to your literals-only list. The base class will then perform any search or flattening required.

Declaration
protected override Task AddItemsAsync(CancellationToken cancellationToken)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task
Overrides
LiteralsOnlyBase.AddItemsAsync(CancellationToken)
Remarks

Lists that only contain literals can be either flat or grouped. If you create a grouped list and the caller specifies a forceFlatList attribute, the base class will do the flattening for you.

Examples

This example shows a typical implementation of a literal list, in this case the date interval list from the Filter dialog:

[MDOProviderPlugin( "FilterFutureDate" )]
public class FilterFutureDateList : LiteralsOnlyBase
{
	protected override void AddItems()
	{
		RawRootItems.Add( new SoListItem( 1, "[SR_DATE_RANGE_3MONTHS]", string.Empty, string.Empty ) );
		RawRootItems.Add( new SoListItem( 2, "[SR_DATE_RANGE_4MONTHS]", string.Empty, string.Empty ) );
		RawRootItems.Add( new SoListItem( 3, "[SR_DATE_RANGE_6MONTHS]", string.Empty, string.Empty ) );
		RawRootItems.Add( new SoListItem( 4, "[SR_DATE_RANGE_1YEAR]", string.Empty, string.Empty ) );
		RawRootItems.Add( new SoListItem( 5, "[SR_DATE_RANGE_2YEAR]", string.Empty, string.Empty ) );
	}
}

Note that using a search in this case yields unexpected results. The search is performed on the raw items, which contains resource tags - and that is not what you actually want to search against. So resources + search do not go together.

Implements

ISoListProvider
ISoList

Extension Methods

EnumUtil.MapEnums<From, To>(From)
Converters.MapEnums<From, To>(From)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top