Class SoDatabase
Hold information about a SuperOffice CRM5 database and its licenses.
Namespace: SuperOffice.Data
Assembly: SoDataBase.dll
Syntax
public sealed class SoDatabase : Object
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 |
---|---|
Int32 |
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 |
---|---|
Boolean |
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 |
---|---|
Int32 |
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
public bool CollaborativeCRM { get; }
Property Value
Type | Description |
---|---|
Boolean |
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 |
---|---|
Int32 |
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];
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 |
---|---|
Int32 | 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.
DBUser
Database user
Declaration
public string DBUser { 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.
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.
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.
EnterpriseApplicationIntegration
License Info: Enterprise Application Integration site license
Declaration
public bool EnterpriseApplicationIntegration { get; }
Property Value
Type | Description |
---|---|
Boolean |
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 |
---|---|
Boolean |
Remarks
use SoDatabase.GetCurrent()
to get information about the current database.
ExpanderKey
License Info: Expander Key - now always available.
Declaration
public bool ExpanderKey { get; }
Property Value
Type | Description |
---|---|
Boolean |
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.
EXtendedClientAccessLicense
License Info: eXtended Client Access License - Employees allowed to access the SO Database. See documentation for detalis (this numbner is not exact).
Declaration
public int EXtendedClientAccessLicense { get; }
Property Value
Type | Description |
---|---|
Int32 |
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.
HasExpiredBeyondGracePeriod
Used by Sentry to determine if write access should be disabled.
Declaration
public bool HasExpiredBeyondGracePeriod { get; }
Property Value
Type | Description |
---|---|
Boolean |
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 |
---|---|
Boolean |
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 |
---|---|
Boolean |
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 |
---|---|
Boolean |
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 |
---|---|
Boolean |
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 |
---|---|
Boolean |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Boolean |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Boolean |
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 |
---|---|
Boolean |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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 |
---|---|
Int32 |
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(Int32, 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 |
---|---|---|
Int32 | 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(Int32, 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 |
---|---|---|
Int32 | 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.