Show / Hide Table of Contents

Class SoUser

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Inheritance
object
NestedPersist
NestedPersistFacade
SoUser
Implements
INestedPersist
Inherited Members
NestedPersistFacade.IsDirty
NestedPersist.SetSaveOwner(INestedPersist)
NestedPersist.SaveAsync()
NestedPersist.IsSaving
NestedPersist.OnElementSaved
NestedPersist.OnElementIdUpdate
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
Namespace: SuperOffice.CRM.Administration
Assembly: SoDataBase.dll
Syntax
public sealed class SoUser : NestedPersistFacade, INestedPersist
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Properties

AssociateId

AssociateId of the user. This value is '0' until the user is created.

Declaration
public int AssociateId { get; }
Property Value
Type Description
int
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

CanCreateExternalPerson

Obsolete: Replaced by new license system!

Declaration
[Obsolete("[SR_REPLACED_BY_NEW_LICENSE_SYSTEM]", true)]
public bool CanCreateExternalPerson { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

CanValidatePassword

Is the plugin able to validfate the password.

Declaration
public bool CanValidatePassword { get; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ConfidentialAppointment

Obsolete: Replaced by new license system!

Declaration
[Obsolete("[SR_REPLACED_BY_NEW_LICENSE_SYSTEM]", true)]
public bool ConfidentialAppointment { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Credentials

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public SoUserCredential[] Credentials { get; }
Property Value
Type Description
SoUserCredential[]
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

CredentialsTableInfo

The Credentials TableInfo used in the sentry to talk about password permissions.

Declaration
public CredentialsTableInfo CredentialsTableInfo { get; }
Property Value
Type Description
CredentialsTableInfo
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

CustomFields

Custom fields on ejUser - may be null.

Declaration
public EntityCustomFieldsHelper CustomFields { get; }
Property Value
Type Description
EntityCustomFieldsHelper
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Deleted

Is the user retired (soft-deleted)

Declaration
public bool Deleted { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

EjCategoryIds

Get and set ejCategories per user.

Declaration
public int[] EjCategoryIds { get; set; }
Property Value
Type Description
int[]
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

EjUserId

Get or set primary key in the ejuser table.

Declaration
public int EjUserId { get; set; }
Property Value
Type Description
int
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Ejuser

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public EjuserRow Ejuser { get; }
Property Value
Type Description
EjuserRow
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ExtraFields

Extra fields on ejUser - may be null.

Declaration
public EntityExtraFieldsHelper ExtraFields { get; }
Property Value
Type Description
EntityExtraFieldsHelper
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GroupIdx

Group membership

Declaration
public int GroupIdx { get; set; }
Property Value
Type Description
int
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

IsDeleted

Is the row deleted from the database. Only used by Nested Persist. See the Deleted property for making the user appear as deleted.

Declaration
public override bool IsDeleted { get; }
Property Value
Type Description
bool
Overrides
NestedPersist.IsDeleted
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

IsMarkedForDelete

Gets or sets a value indicating whether this instance is marked for delete.

Declaration
public override bool IsMarkedForDelete { get; set; }
Property Value
Type Description
bool

true if this instance is marked for delete; otherwise, false.

Overrides
NestedPersist.IsMarkedForDelete
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

IsOnTravel

Return true if the user is on travel from THIS database.

Declaration
public bool IsOnTravel { get; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

LastLogin

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public DateTime LastLogin { get; }
Property Value
Type Description
DateTime
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Lastlogout

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public DateTime Lastlogout { get; }
Property Value
Type Description
DateTime
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

LicenseAssocLinkTableInfo

The License TableInfo used in the sentry to talk about role permissions.

Declaration
public LicenseAssocLinkTableInfo LicenseAssocLinkTableInfo { get; }
Property Value
Type Description
LicenseAssocLinkTableInfo
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

LicenseFieldRight

The current user's permissions to read/modify the Licenses.

Declaration
public FieldRight LicenseFieldRight { get; }
Property Value
Type Description
FieldRight
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Licenses

User licenses

Declaration
public AssociateModuleLicenseOwner[] Licenses { get; }
Property Value
Type Description
AssociateModuleLicenseOwner[]
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

LoginRight

Obsolete: Replaced by new license system!

Declaration
public bool LoginRight { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

LogonName

Logon name for the user: Associate.Name. Sets ejUser.Username if not already set.

Declaration
public string LogonName { get; set; }
Property Value
Type Description
string
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

MainTable

The main table info for the associate table storing user information. This is used with Sentries.

Declaration
public AssociateTableInfo MainTable { get; }
Property Value
Type Description
AssociateTableInfo
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

NetServerClient

Obsolete: Replaced by new license system!

Declaration
[Obsolete("[SR_REPLACED_BY_NEW_LICENSE_SYSTEM]", true)]
public bool NetServerClient { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

OtherGroupIds

Get and set secondary groups.

Declaration
public int[] OtherGroupIds { get; set; }
Property Value
Type Description
int[]
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

PasswordFieldRight

The current user's permissions to read/modify the Password

Declaration
public FieldRight PasswordFieldRight { get; }
Property Value
Type Description
FieldRight
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Person

Get the Person associated with the user. Null if there is no person associated with the user.

Declaration
public Person Person { get; }
Property Value
Type Description
Person
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

PersonId

Primary key of the person in the person table.

Declaration
public int PersonId { get; }
Property Value
Type Description
int
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

PocketClient

Obsolete: Replaced by new license system!

Declaration
[Obsolete("[SR_REPLACED_BY_NEW_LICENSE_SYSTEM]", true)]
public bool PocketClient { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Rank

Sort order rank. Only administrators can set.

Declaration
public short Rank { get; set; }
Property Value
Type Description
short
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

RoleIdx

Group membership

Declaration
public int RoleIdx { get; set; }
Property Value
Type Description
int
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Sentries

Sentries governing the underlying tables and fields.

Declaration
public SentryCollection Sentries { get; }
Property Value
Type Description
SentryCollection
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

SkipConsistencyChecks

Set this to true, to skip consistency checks when saving the entity. The caller MUST make sure the consistency is not violated after the the caller has performed the intended operation(s).

Declaration
public bool SkipConsistencyChecks { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Tooltip

Description / Tooltip. Only administrators can set.

Declaration
public string Tooltip { get; set; }
Property Value
Type Description
string
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Travel

Obsolete: Replaced by new license system!

Declaration
[Obsolete("[SR_REPLACED_BY_NEW_LICENSE_SYSTEM]", true)]
public bool Travel { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

UserGroupLinkTableInfo

The UserGroupLink TableInfo used in the sentry to talk about usergroup permissions.

Declaration
public UserGroupLinkTableInfo UserGroupLinkTableInfo { get; }
Property Value
Type Description
UserGroupLinkTableInfo
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

UserName

Associate.UserName, not the Associate.Name

Declaration
public string UserName { get; set; }
Property Value
Type Description
string
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

UserRoleLinkTableInfo

The UserRoleLink TableInfo used in the sentry to talk about role permissions.

Declaration
public UserRoleLinkTableInfo UserRoleLinkTableInfo { get; }
Property Value
Type Description
UserRoleLinkTableInfo
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

UserType

Type of associate (e.g. logon). Can only be set by administrators.

Declaration
public UserType UserType { get; }
Property Value
Type Description
UserType
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

WebClient

Obsolete: Replaced by new license system!

Declaration
[Obsolete("[SR_REPLACED_BY_NEW_LICENSE_SYSTEM]", true)]
public bool WebClient { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

WinClient

Obsolete: Replaced by new license system!

Declaration
[Obsolete("[SR_REPLACED_BY_NEW_LICENSE_SYSTEM]", true)]
public bool WinClient { get; set; }
Property Value
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Methods

AddCredential(string, string, string)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public void AddCredential(string type, string value, string displayValue)
Parameters
Type Name Description
string type
string value
string displayValue
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ChangePasswordAsync(string, string)

Changes the account password from the old password to the new password.

Declaration
public Task ChangePasswordAsync(string oldPassword, string newPassword)
Parameters
Type Name Description
string oldPassword

The old password to change from. This must be the current calid password.

string newPassword

The new password to change to.

Returns
Type Description
Task
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ChangeUserGroupAsync(int, int)

This function is called to change membership of one usergroup to another on the user.

Declaration
public Task ChangeUserGroupAsync(int oldGroupId, int newGroupId)
Parameters
Type Name Description
int oldGroupId
int newGroupId
Returns
Type Description
Task
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

CreateNewAsync(int, UserType, bool, CancellationToken)

Create a new user given it's PersonId

Declaration
public static Task<SoUser> CreateNewAsync(int personId, UserType userType, bool withDefaultCredentials = false, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int personId

Id for the person that is to become a user. Use null (VB: Nothing) for System and Anonymous users.

UserType userType
bool withDefaultCredentials
CancellationToken cancellationToken
Returns
Type Description
Task<SoUser>

A new instance of a user object. This object needs to be primed with appropriate data before saving

Remarks

Administration privileges is required for creating new users.

DemandPermission(PermissionType)

Check that the current user has the permission.

Declaration
public void DemandPermission(SoUser.PermissionType permissionType)
Parameters
Type Name Description
SoUser.PermissionType permissionType

OwnPerson, Administrator, etc

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Exceptions
Type Condition
SoIllegalOperationException

Exception is thrown if the currently logged in user does not meet the demand for permission.

FindUsersFromEJUserAsync(int, CancellationToken)

Method for finding associateId's of eJournal users providing the ejUser.Id

Declaration
public static Task<int[]> FindUsersFromEJUserAsync(int ejUserId, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int ejUserId
CancellationToken cancellationToken
Returns
Type Description
Task<int[]>

AssociateIdd of matching users.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

FindUsersFromPersonAsync(int, CancellationToken)

Method for finding associateId's of user providing the PersonId

Declaration
public static Task<int[]> FindUsersFromPersonAsync(int personId, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int personId

PersonId of the user to find

CancellationToken cancellationToken
Returns
Type Description
Task<int[]>

AssociateIdd of mathing users.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetCanChangePasswordAsync(CancellationToken)

Is this plugin able to change password for the current

Declaration
public Task<bool> GetCanChangePasswordAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<bool>
Remarks

True if the plugin is able to change password.

GetCanSendChangePasswordMailAsync(CancellationToken)

Is this plugin able to send a change password email to the user

Declaration
public Task<bool> GetCanSendChangePasswordMailAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<bool>
Remarks

True if the plugin is able to send the email.

GetCurrentAsync(CancellationToken)

Manage the current user. Must be logged in. Can't manage users anonymously.

Declaration
public static Task<SoUser> GetCurrentAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<SoUser>

SoUser object for the current user.

Remarks

Only named users are permitted to manage their own user. Other kinds of users needs to be maintained by an administrator.

Exceptions
Type Condition
SoIllegalOperationException

The operation requires the logged on user to have an UserType of Employee, ExternalPerson.

GetDefaultAssociateUserNameAsync(CancellationToken)

Ask for the default UserName for Associate

Declaration
public Task<string> GetDefaultAssociateUserNameAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<string>
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetFacadingItems()

Implement this method to expose items that needs to be persisted.

Declaration
protected override IEnumerable<INestedPersist> GetFacadingItems()
Returns
Type Description
IEnumerable<INestedPersist>

Collection of items that needs to be persisted.

Overrides
NestedPersistFacade.GetFacadingItems()
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetForeignKeyHelperAsync(CancellationToken)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public Task<RowForeignKeyHelper> GetForeignKeyHelperAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<RowForeignKeyHelper>
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetLicenseOwner(string)

Get details on a module owner.

Declaration
public AssociateModuleLicenseOwner GetLicenseOwner(string owner)
Parameters
Type Name Description
string owner

Name of the module owner.

Returns
Type Description
AssociateModuleLicenseOwner

Details on a module owner. Null (VB Nothing) is returned if the module owner is not available.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetModuleLicense(string)

Get details on a module license link. i.e. Returns only user licenses.

Declaration
public AssociateModuleLicenseLink GetModuleLicense(string fullName)
Parameters
Type Name Description
string fullName

Full name of the license formatted like [OwnerName].[LicenseName].

Returns
Type Description
AssociateModuleLicenseLink

Details on a module license link. Null (VB Nothing) is returned if the module license is not available.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetModuleLicense(string, string)

Get details on a module license link. i.e. Returns only user licenses.

Declaration
public AssociateModuleLicenseLink GetModuleLicense(string owner, string module)
Parameters
Type Name Description
string owner

Name of the module owner.

string module

Name of the module license

Returns
Type Description
AssociateModuleLicenseLink

Details on a module license link. Null (VB Nothing) is returned if the module license is not available.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetModuleLicenses()

Returns all modules, across all license owners. Some are assigned, some are not.

Declaration
public IEnumerable<AssociateModuleLicenseLink> GetModuleLicenses()
Returns
Type Description
IEnumerable<AssociateModuleLicenseLink>

Associate License links related to the user.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetRequestRestrictionBlockersAsync(CancellationToken)

Return request based reasons for blocking delete of user

Declaration
public Task<string> GetRequestRestrictionBlockersAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<string>

Blank or an error message: "[SR_REQUEST_DEPENDENCY]"

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

GetSupportedChangePasswordTypesAsync(CancellationToken)

Get the supported change password methods

Declaration
public Task<ChangePasswordType[]> GetSupportedChangePasswordTypesAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<ChangePasswordType[]>
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

IsAssociateNameLegal(string, out string)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public bool IsAssociateNameLegal(string associateName, out string reason)
Parameters
Type Name Description
string associateName
string reason
Returns
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

IsAssociateUserNameLegal(string, out string)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public bool IsAssociateUserNameLegal(string associateUserName, out string reason)
Parameters
Type Name Description
string associateUserName
string reason
Returns
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

IsPasswordLegal(string, out string)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public bool IsPasswordLegal(string password, out string reason)
Parameters
Type Name Description
string password
string reason
Returns
Type Description
bool
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

IsPasswordValid(string)

Check if password is valid.

Declaration
public bool IsPasswordValid(string password)
Parameters
Type Name Description
string password

The password to check if if it is valid (e.g. that means that this is the current password.)

Returns
Type Description
bool

True if the right password is passed in.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

MakeRetired(bool)

Retire the given user, meaning removing all licenses and set the person as retired

Declaration
public void MakeRetired(bool retired)
Parameters
Type Name Description
bool retired
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ManageUserAsync(int, CancellationToken)

Manage a user.

Declaration
public static Task<SoUser> ManageUserAsync(int associateId, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int associateId

Id of the user to manage.

CancellationToken cancellationToken
Returns
Type Description
Task<SoUser>

The user.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Exceptions
Type Condition
SoIllegalOperationException

If the user is of a wrong UserType or in any way does not have permission to manage the given user, the exception is thrown.

ManageUserAsync(string, CancellationToken)

Manage a user.

Declaration
public static Task<SoUser> ManageUserAsync(string associateName, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string associateName

UserName Name or UserName of the user to manage.

CancellationToken cancellationToken
Returns
Type Description
Task<SoUser>

SoUser object for the user.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Exceptions
Type Condition
SoIllegalOperationException

If the user is of a wrong UserType or in any way does not have permission to manage the given user, the exception is thrown.

ArgumentNullException

Thrown if associateName does not have a value.

ManageUserFromEjUserIdAsync(int, CancellationToken)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public static Task<SoUser[]> ManageUserFromEjUserIdAsync(int ejUserId, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int ejUserId
CancellationToken cancellationToken
Returns
Type Description
Task<SoUser[]>
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ManageUserFromPersonIdAsync(int, CancellationToken)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public static Task<SoUser[]> ManageUserFromPersonIdAsync(int personId, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int personId
CancellationToken cancellationToken
Returns
Type Description
Task<SoUser[]>
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

OnIdUpdateAsync()

Handle Id Update: ensure that associate.ejUserId = ejUser.ejUserId

Update related objects with correct id's to make sure that relations are consistent before saving to the database.

Declaration
protected override Task OnIdUpdateAsync()
Returns
Type Description
Task
Overrides
NestedPersistFacade.OnIdUpdateAsync()
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

OnPreIdUpdateAsync()

Handle Pre Id Update: Update the implied licenses on the user to match the ExtraInfo "set=..." by removing all hidden licenses and then assigned the ones

Declaration
protected override Task OnPreIdUpdateAsync()
Returns
Type Description
Task
Overrides
NestedPersistFacade.OnPreIdUpdateAsync()
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

OnSavedAsync(bool)

Called after the save operation has completed. A boolean value is passed to notify whether or not the save operation succeeded. The complete save operation is rolled back if Save operation failed.

Declaration
protected override Task OnSavedAsync(bool bSucceeded)
Parameters
Type Name Description
bool bSucceeded

True if the save operation succeeded and false if the save operation failed and rolled back.

Returns
Type Description
Task
Overrides
NestedPersistFacade.OnSavedAsync(bool)
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

RemoveCredential(string)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public void RemoveCredential(string type)
Parameters
Type Name Description
string type
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

RemoveLicenses()

Remove all licenses for given user

Declaration
public void RemoveLicenses()
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

SendChangePasswordMailAsync()

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public Task SendChangePasswordMailAsync()
Returns
Type Description
Task
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

SetGeneratedPassword()

Generate a new password and assign it to the user.

Declaration
public string SetGeneratedPassword()
Returns
Type Description
string

The newly generated password.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Exceptions
Type Condition
SoIllegalOperationException

If the user does not have required permissions.

SetGeneratedPassword(int)

Generate a new password and assign it to the user.

Declaration
public string SetGeneratedPassword(int length)
Parameters
Type Name Description
int length

Ldength of the new password to generate.

Returns
Type Description
string

The newly generated password.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Exceptions
Type Condition
SoIllegalOperationException

If the user does not have required permissions.

SetPassword(string)

Set the password for a user.

Declaration
public void SetPassword(string password)
Parameters
Type Name Description
string password

The password for the user

Remarks

This method requires administration priviledges.

Exceptions
Type Condition
SoIllegalOperationException

If the user does not have required permissions.

SetPersonIdAsync(int, CancellationToken)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public Task SetPersonIdAsync(int id, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int id
CancellationToken cancellationToken
Returns
Type Description
Task
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

SetUserTypeAsync(UserType, CancellationToken)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public Task SetUserTypeAsync(UserType userType, CancellationToken cancellationToken = default)
Parameters
Type Name Description
UserType userType
CancellationToken cancellationToken
Returns
Type Description
Task
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

SetValidAssociateNameAsync(string)

Assign a user name and make sure it is valid.

Declaration
public Task<string> SetValidAssociateNameAsync(string associateName)
Parameters
Type Name Description
string associateName
Returns
Type Description
Task<string>

The valid user name.

Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

SetValidAssociateUserName(string)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public string SetValidAssociateUserName(string associateUserName)
Parameters
Type Name Description
string associateUserName
Returns
Type Description
string
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ToString()

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public override string ToString()
Returns
Type Description
string
Overrides
object.ToString()
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Validate(RowValidator)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public void Validate(RowValidator rowValidator)
Parameters
Type Name Description
RowValidator rowValidator
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

ValidateAsync(Dictionary<string, string>)

SuperOffice CRM User Administration. Use static (VB: shared) methods to to instantiate objects.

Declaration
public Task ValidateAsync(Dictionary<string, string> validator)
Parameters
Type Name Description
Dictionary<string, string> validator
Returns
Type Description
Task
Remarks

Only users with administrative privileges is permitted to work with other users than the currently logged on user. This means that SuperOffice CRM administrators can manage all users.

Named users that does not have administrative privileges (e.g. users that are persons) are only permitted to change their own password.

Anonymous users can not manage own or other users at all.

System users can manage other users, and own user.

Named users, administrators and the system user with the 'CanCreateExternalPerson' permission can manage external persons. External persons with this permission can only manage other external persons belonging to the same company.

Implements

INestedPersist

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