Class SoDatabase
Hold information about a SuperOffice CRM5 database and its licenses.
Inherited Members
Namespace: SuperOffice.Data
Assembly: SoDataBase.dll
Syntax
public sealed class SoDatabase
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
Constructors
SoDatabase()
Hold information about a SuperOffice CRM5 database and its licenses.
Declaration
public SoDatabase()
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
Properties
AppointmentDocumentRelationDefinitionId
RelDefId in table Relations that identifies an appointment to document link
Declaration
public int AppointmentDocumentRelationDefinitionId { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
AreaManagement
License Info: Has Area Management license.
Declaration
public bool AreaManagement { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
Areas may be connected to satellites, but satellites are not required for Area Management.
Audience
License Info: Audience - the customer portal product.
Declaration
public int Audience { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
CentralDbTag
Common DbTag for the entire installation.
Declaration
public string CentralDbTag { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
CollaborativeCRM
License Info: Collaborative CRM (also known as eCRM) site license
Declaration
[Obsolete("This license is obsolete, consider using ExpanderForCollaboration or ExpanderKey", false)]
public bool CollaborativeCRM { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
CommandTimeout
Timeout [sec] for the command to execute a command to the database.
Declaration
public int CommandTimeout { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
CompanyName
License Info: Company name associate with license. NOTE: The database owner of this database can be different, if this is a satellite
Declaration
public string CompanyName { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
ConnectionString
The connection string formated as a "template".
Declaration
public string ConnectionString { get; }
Property Value
| Type | Description |
|---|---|
| string | The connection string, with tags that can be replaced |
Remarks
[@Server]The server where the database is located.[@Database]The name of the database. Also used for destinct service name.[@User]The user to be used for the connection.[@Password]The password to be used for the connection.
Examples
- MSSQL
Server=[@Server];Database=[@Database];User ID=[@User];Password=[@Password] - Oracle
Data Source=[@Database];User ID=[@User];PASSWORD=[@Password];
DBUser
Database user
Declaration
public string DBUser { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
Database
Name of the database. Also used for destinct service name.
Declaration
public string Database { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DatabaseCountryId
CountryId for the OwnerContact referenced in the license information
Declaration
public int DatabaseCountryId { get; }
Property Value
| Type | Description |
|---|---|
| int | The database country id. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DatabaseMajor
Major name of database provider
Declaration
public string DatabaseMajor { get; }
Property Value
| Type | Description |
|---|---|
| string | MSSQL | Oracle |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DatabaseMinor
Version number of Database
Declaration
public string DatabaseMinor { get; }
Property Value
| Type | Description |
|---|---|
| string | version number. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DatabaseVersion
Version of the database.
Declaration
public SoDatabase.Version DatabaseVersion { get; }
Property Value
| Type | Description |
|---|---|
| SoDatabase.Version |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DbPassword
Database user password
Declaration
public string DbPassword { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DbTag
Unique database tag, from travelcurrent.dbtag
Declaration
public string DbTag { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
Dictionary
The SuperOffice database dictionary
Declaration
public SoDictionary Dictionary { get; }
Property Value
| Type | Description |
|---|---|
| SoDictionary |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EJRegistryExtension
The file extension used to run customer service programs
Declaration
public string EJRegistryExtension { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EJRegistrySOPwd
Hold information about a SuperOffice CRM5 database and its licenses.
Declaration
public string EJRegistrySOPwd { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EJWwwFolder
Hold information about a SuperOffice CRM5 database and its licenses.
Declaration
public string EJWwwFolder { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EJconfigCgiBin
Virtual directory for eJournal CGI files. (e.g. application root)
Declaration
public string EJconfigCgiBin { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EJconfigCgiUrl
Host name for eJournal installation (external URL)
Declaration
public string EJconfigCgiUrl { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EJconfigCgiUrlInternal
Host name for eJournal installation.
Declaration
public string EJconfigCgiUrlInternal { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EXtendedClientAccessLicense
License Info: eXtended Client Access License - Employees allowed to access the SO Database. See documentation for detalis (this numbner is not exact).
Declaration
[Obsolete("Extended Client Access License is obsolete and should be disregarded", true)]
public int EXtendedClientAccessLicense { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
This number is an inexact numer and is rounded up. Hence, SuperOffice
Support should be contactet to obtain the excact number of licenses.
The number is calculated in percentage steps (0, 10, 25, 40, 60, 75, 90, 100)
of total LoginRights.
EnterpriseApplicationIntegration
License Info: Enterprise Application Integration site license
Declaration
[Obsolete("Enterprise Application Integration License is obsolete and should be disregarded", true)]
public bool EnterpriseApplicationIntegration { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
ExpanderForCollaboration
License Info: Expander For Collaboration - enables Anonymous and External users.
Declaration
public bool ExpanderForCollaboration { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
ExpanderKey
License Info: Expander Key - now always available.
Declaration
[Obsolete("Expander Key license is obsolete. Always available now", false)]
public bool ExpanderKey { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
ExpirationDate
License Info: Expiration date.
Declaration
public DateTime ExpirationDate { get; }
Property Value
| Type | Description |
|---|---|
| DateTime |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
HasExpiredBeyondGracePeriod
Used by Sentry to determine if write access should be disabled.
Declaration
public bool HasExpiredBeyondGracePeriod { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
IgnoreADUsernameAuthentication
Ignore Username and Password authentication with Active Directory
Declaration
public bool IgnoreADUsernameAuthentication { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
IsInitialized
Have we connected to the database and has the dictionary been loaded correctly from the database?
Declaration
public bool IsInitialized { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
IsOnTravel
Is the current database on trevel.
Declaration
public bool IsOnTravel { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
IsSatellite
Is the current database a Satellite
Declaration
public bool IsSatellite { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
IsUnicode
Is the database strings formatted as Unicode (i.e. NVARCHAR)
Declaration
public bool IsUnicode { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
LoginRights
License Info: Number of login rights purchased.
Declaration
public int LoginRights { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
This is the total number of employees that are permitted to use SuperOffice CRM.
OwnerContactId
License Info: Owner contact id. The name of this contact must correspond to CompanyName. NOTE: The id of the contact owning this database may be different, if this is a satellite.
Declaration
public int OwnerContactId { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
RemoteTravel
License Info: Number of Remote Travel clients.
Declaration
public int RemoteTravel { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
ReporterStudio
License Info: Number of Reporter studio sites.
Declaration
public int ReporterStudio { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
Saint
License Info: Has Sales Intelligence license.
Declaration
public bool Saint { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
SaleDocumentRelationDefinitionId
RelDefId in table Relations that identifies a sale to document link
Declaration
public int SaleDocumentRelationDefinitionId { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
SatelliteId
Satellite id for the current database.
Declaration
public int SatelliteId { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
Satellites
License Info: Number of Satellites
Declaration
public int Satellites { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
SerialNumber
License Info: License serial number.
Declaration
public string SerialNumber { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
Server
The server where the database is located
Declaration
public string Server { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
ShouldFreetextIndex
Has the "Enable Freetext" preference been set for this database
Declaration
public bool ShouldFreetextIndex { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
ShouldLogTransactions
Has the "Enable Travel" preference been set for this database
Declaration
public bool ShouldLogTransactions { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
SyncEngine
License Info: Number of Sync Engine users.
Declaration
public int SyncEngine { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
Mapped to the 'SuperOffice.Synchronizer-Cal' license.
TablePrefix
The prefix of the SuperOffice CRM tables in the database, usually 'CRM7'.
Declaration
public string TablePrefix { get; }
Property Value
| Type | Description |
|---|---|
| string |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
TravelCurrentId
Is the travel current id from the TravelCurrent table
Declaration
public int TravelCurrentId { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
TravellerId
Traveller id (id of associate who owns this travel database)
Declaration
public int TravellerId { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
WebLoginRights
License Info: Number of login rights purchased for the CRM Web Client.
Declaration
public int WebLoginRights { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
This number is always less than or equal to the LoginRights.
WindowsLoginRights
License Info: Number of login rights purchased for the CRM Windows Client.
Declaration
public int WindowsLoginRights { get; }
Property Value
| Type | Description |
|---|---|
| int |
Remarks
This number is always less than or equal to the LoginRights.
Methods
DecryptData(string)
Decrypt data encrypted with EncryptData(byte[]).
Declaration
public byte[] DecryptData(string data)
Parameters
| Type | Name | Description |
|---|---|---|
| string | data | Base64 encoded encrypted string. |
Returns
| Type | Description |
|---|---|
| byte[] | The decrypted data. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DecryptString(int, string)
Decrypt a string checking if it was encrypted for the provided associateId.
Declaration
public string DecryptString(int associateId, string data)
Parameters
| Type | Name | Description |
|---|---|---|
| int | associateId | Owner of the string. |
| string | data | Base64 encoded encrypted string. |
Returns
| Type | Description |
|---|---|
| string | The decrypted string if the associateId match with the provided associateId, otherwise null. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
DecryptString(string)
Decrypt a string checking if it was encrypted for the current associate.
Declaration
public string DecryptString(string data)
Parameters
| Type | Name | Description |
|---|---|---|
| string | data | Base64 encoded encrypted string. |
Returns
| Type | Description |
|---|---|
| string | The decrypted string if the associateId match with the currently logged in user, otherwise null. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EncryptData(byte[])
Encrypt an array of bytes.
Declaration
public string EncryptData(byte[] data)
Parameters
| Type | Name | Description |
|---|---|---|
| byte[] | data | Data to encrypt. |
Returns
| Type | Description |
|---|---|
| string | Base64 encoded encrypted string. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EncryptString(int, string)
Encrypt a string in such a way that it is only readable by the provided associate.
Declaration
public string EncryptString(int associateId, string data)
Parameters
| Type | Name | Description |
|---|---|---|
| int | associateId | AssociateId of the party the string is encrypted on behalf of. |
| string | data | String to encrypt |
Returns
| Type | Description |
|---|---|
| string | Base64 encoded encrypted string. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
EncryptString(string)
Encrypt a string in such a way that it is only readable by the current associate.
Declaration
public string EncryptString(string data)
Parameters
| Type | Name | Description |
|---|---|---|
| string | data | String to encrypt. |
Returns
| Type | Description |
|---|---|
| string | Base64 encoded encrypted string. |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
GetCurrent()
Obtain reference to the current database.
Declaration
public static SoDatabase GetCurrent()
Returns
| Type | Description |
|---|---|
| SoDatabase |
Remarks
use SoDatabase.GetCurrent() to get information about the current database.
LoadSettingsFromUserPreference()
Load/reload fundamental settings controlled by 'userpreference' rows: TravelTransactionLog, FreetextIndex, AdUsernameAuth
Declaration
public void LoadSettingsFromUserPreference()
Remarks
use SoDatabase.GetCurrent() to get information about the current database.