Class EjMessageRow
This table contains the messages listed under tickets.
Row Object for table 'ej_message'. Row objects correspond directly to database tables, and one
instance of a row object represents one row in the corresponding table in the database.
Inherited Members
Namespace: SuperOffice.CRM.Rows
Assembly: SoDataBase.dll
Syntax
public class EjMessageRow : TableRowBase, INestedPersist, ISoDataLookup, ISentryIgnorable, ISoItem, IExtraFieldsHelper
Remarks
Row objects can be created in several ways.
- Use the static CreateNew() method to create a new, empty object. After populating it with values,
you call the
method and a corresponding row in the database is created, and the objects' primary key field updated. This is the preferred way to insert new rows into the database. - You can create a (nested) EjMessageRow EjMessageRow.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(EjMessageRow.CustomSearch) method to apply the query to the database and obtain the result as a Row object. This is how you select existing rows from the database when you have a query that does not correspond to any of the existing database indexes.
- For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy.
Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does
not exist in the database), you will get a Row object with the
and properties set to true. Such a Row object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row. - Finally, if you have an SoDataReader that contains ALL the fields of the table, and you have the EjMessageTableInfo instance used in the query behind the reader, you can use the static GetFromReader(SoDataReader, EjMessageTableInfo) method to create a new row object from the reader and the table info. This is useful when you have a larger, more complex query, for instance one that joins a number of tables, and you wish to use Row objects to process the result set. If your result set corresponds to an entity, consider using the corresponding Entity layer object instead, since entities automatically handle ID allocation and mapping, rights, and other higher-level aspects.
Unique indexes on table EjMessage are:
Index fields | Nested index class name |
---|
Constructors
EjMessageRow(EjMessageRow.EjMessageRowIdxBase)
Constructor for the class taking an index as argument. This table contains the messages listed under tickets.
Declaration
protected EjMessageRow(EjMessageRow.EjMessageRowIdxBase idx)
Parameters
Type | Name | Description |
---|---|---|
EjMessageRow.EjMessageRowIdxBase | idx | The index representing a SELECT command to the database. |
Fields
_currentAuthor
Current value, see property Author.
Declaration
protected string _currentAuthor
Field Value
Type | Description |
---|---|
String |
_currentBody
Current value, see property Body.
Declaration
protected string _currentBody
Field Value
Type | Description |
---|---|
String |
_currentBodyAttachment
Current value, see property BodyAttachment.
Declaration
protected int _currentBodyAttachment
Field Value
Type | Description |
---|---|
Int32 |
_currentCreatedAt
Current value, see property CreatedAt.
Declaration
protected DateTime _currentCreatedAt
Field Value
Type | Description |
---|---|
DateTime |
_currentCreatedBy
Current value, see property CreatedBy.
Declaration
protected int _currentCreatedBy
Field Value
Type | Description |
---|---|
Int32 |
_currentCustomerId
Current value, see property CustomerId.
Declaration
protected int _currentCustomerId
Field Value
Type | Description |
---|---|
Int32 |
_currentDebugInfo
Current value, see property DebugInfo.
Declaration
protected string _currentDebugInfo
Field Value
Type | Description |
---|---|
String |
_currentEjMessageId
Current value, see property EjMessageId.
Declaration
protected int _currentEjMessageId
Field Value
Type | Description |
---|---|
Int32 |
_currentEmailHeader
Current value, see property EmailHeader.
Declaration
protected string _currentEmailHeader
Field Value
Type | Description |
---|---|
String |
_currentHtmlBody
Current value, see property HtmlBody.
Declaration
protected string _currentHtmlBody
Field Value
Type | Description |
---|---|
String |
_currentHtmlBodyAttachment
Current value, see property HtmlBodyAttachment.
Declaration
protected int _currentHtmlBodyAttachment
Field Value
Type | Description |
---|---|
Int32 |
_currentHtmlBodyInlineConverted
Current value, see property HtmlBodyInlineConverted.
Declaration
protected short _currentHtmlBodyInlineConverted
Field Value
Type | Description |
---|---|
Int16 |
_currentImportant
Current value, see property Important.
Declaration
protected short _currentImportant
Field Value
Type | Description |
---|---|
Int16 |
_currentInbox
Current value, see property Inbox.
Declaration
protected int _currentInbox
Field Value
Type | Description |
---|---|
Int32 |
_currentLanguage
Current value, see property Language.
Declaration
protected string _currentLanguage
Field Value
Type | Description |
---|---|
String |
_currentMailSorter
Current value, see property MailSorter.
Declaration
protected string _currentMailSorter
Field Value
Type | Description |
---|---|
String |
_currentMessageCategory
Current value, see property MessageCategory.
Declaration
protected TicketMessageCategory _currentMessageCategory
Field Value
Type | Description |
---|---|
TicketMessageCategory |
_currentMessageId
Current value, see property MessageId.
Declaration
protected string _currentMessageId
Field Value
Type | Description |
---|---|
String |
_currentSearchTitle
Current value, see property SearchTitle.
Declaration
protected string _currentSearchTitle
Field Value
Type | Description |
---|---|
String |
_currentSentiment
Current value, see property Sentiment.
Declaration
protected int _currentSentiment
Field Value
Type | Description |
---|---|
Int32 |
_currentSentimentConfidence
Current value, see property SentimentConfidence.
Declaration
protected int _currentSentimentConfidence
Field Value
Type | Description |
---|---|
Int32 |
_currentSlevel
Current value, see property Slevel.
Declaration
protected TicketSecurityLevel _currentSlevel
Field Value
Type | Description |
---|---|
TicketSecurityLevel |
_currentTicketId
Current value, see property TicketId.
Declaration
protected int _currentTicketId
Field Value
Type | Description |
---|---|
Int32 |
_currentTimeCharge
Current value, see property TimeCharge.
Declaration
protected int _currentTimeCharge
Field Value
Type | Description |
---|---|
Int32 |
_currentTimeSpent
Current value, see property TimeSpent.
Declaration
protected int _currentTimeSpent
Field Value
Type | Description |
---|---|
Int32 |
_currentType
Current value, see property Type.
Declaration
protected TicketMessageType _currentType
Field Value
Type | Description |
---|---|
TicketMessageType |
_persistedAuthor
Persisted value, see property Author.
Declaration
protected string _persistedAuthor
Field Value
Type | Description |
---|---|
String |
_persistedBody
Persisted value, see property Body.
Declaration
protected string _persistedBody
Field Value
Type | Description |
---|---|
String |
_persistedBodyAttachment
Persisted value, see property BodyAttachment.
Declaration
protected int _persistedBodyAttachment
Field Value
Type | Description |
---|---|
Int32 |
_persistedCreatedAt
Persisted value, see property CreatedAt.
Declaration
protected DateTime _persistedCreatedAt
Field Value
Type | Description |
---|---|
DateTime |
_persistedCreatedBy
Persisted value, see property CreatedBy.
Declaration
protected int _persistedCreatedBy
Field Value
Type | Description |
---|---|
Int32 |
_persistedCustomerId
Persisted value, see property CustomerId.
Declaration
protected int _persistedCustomerId
Field Value
Type | Description |
---|---|
Int32 |
_persistedDebugInfo
Persisted value, see property DebugInfo.
Declaration
protected string _persistedDebugInfo
Field Value
Type | Description |
---|---|
String |
_persistedEjMessageId
Persisted value, see property EjMessageId.
Declaration
protected int _persistedEjMessageId
Field Value
Type | Description |
---|---|
Int32 |
_persistedEmailHeader
Persisted value, see property EmailHeader.
Declaration
protected string _persistedEmailHeader
Field Value
Type | Description |
---|---|
String |
_persistedHtmlBody
Persisted value, see property HtmlBody.
Declaration
protected string _persistedHtmlBody
Field Value
Type | Description |
---|---|
String |
_persistedHtmlBodyAttachment
Persisted value, see property HtmlBodyAttachment.
Declaration
protected int _persistedHtmlBodyAttachment
Field Value
Type | Description |
---|---|
Int32 |
_persistedHtmlBodyInlineConverted
Persisted value, see property HtmlBodyInlineConverted.
Declaration
protected short _persistedHtmlBodyInlineConverted
Field Value
Type | Description |
---|---|
Int16 |
_persistedImportant
Persisted value, see property Important.
Declaration
protected short _persistedImportant
Field Value
Type | Description |
---|---|
Int16 |
_persistedInbox
Persisted value, see property Inbox.
Declaration
protected int _persistedInbox
Field Value
Type | Description |
---|---|
Int32 |
_persistedLanguage
Persisted value, see property Language.
Declaration
protected string _persistedLanguage
Field Value
Type | Description |
---|---|
String |
_persistedMailSorter
Persisted value, see property MailSorter.
Declaration
protected string _persistedMailSorter
Field Value
Type | Description |
---|---|
String |
_persistedMessageCategory
Persisted value, see property MessageCategory.
Declaration
protected TicketMessageCategory _persistedMessageCategory
Field Value
Type | Description |
---|---|
TicketMessageCategory |
_persistedMessageId
Persisted value, see property MessageId.
Declaration
protected string _persistedMessageId
Field Value
Type | Description |
---|---|
String |
_persistedSearchTitle
Persisted value, see property SearchTitle.
Declaration
protected string _persistedSearchTitle
Field Value
Type | Description |
---|---|
String |
_persistedSentiment
Persisted value, see property Sentiment.
Declaration
protected int _persistedSentiment
Field Value
Type | Description |
---|---|
Int32 |
_persistedSentimentConfidence
Persisted value, see property SentimentConfidence.
Declaration
protected int _persistedSentimentConfidence
Field Value
Type | Description |
---|---|
Int32 |
_persistedSlevel
Persisted value, see property Slevel.
Declaration
protected TicketSecurityLevel _persistedSlevel
Field Value
Type | Description |
---|---|
TicketSecurityLevel |
_persistedTicketId
Persisted value, see property TicketId.
Declaration
protected int _persistedTicketId
Field Value
Type | Description |
---|---|
Int32 |
_persistedTimeCharge
Persisted value, see property TimeCharge.
Declaration
protected int _persistedTimeCharge
Field Value
Type | Description |
---|---|
Int32 |
_persistedTimeSpent
Persisted value, see property TimeSpent.
Declaration
protected int _persistedTimeSpent
Field Value
Type | Description |
---|---|
Int32 |
_persistedType
Persisted value, see property Type.
Declaration
protected TicketMessageType _persistedType
Field Value
Type | Description |
---|---|
TicketMessageType |
Properties
Author
.NET type: string. A string representing the author of the message. Could be a user's name, or a persons email address.
Declaration
public virtual string Author { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: String[256].
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
Body
.NET type: string. The textbody for the message.
Declaration
public virtual string Body { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: Clob.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
BodyAttachment
.NET type: int. If the body is too long for the database, it's stored in this attachment instead.
Declaration
public virtual int BodyAttachment { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: FK.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
CreatedAt
.NET type: DateTime. When the message was posted.
Declaration
public virtual DateTime CreatedAt { get; set; }
Property Value
Type | Description |
---|---|
DateTime |
Remarks
Original type in dictionary: DateTime.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (DateTime.MinValue)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
CreatedBy
.NET type: int. The id of the user who posted the message. The value 1 (system user) for externally posted messages.
Declaration
public virtual int CreatedBy { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: FK.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
CustomerId
.NET type: int. If the message was created by email or from the customer center, this field will point to that customer. -1 if the message was created by an user
Declaration
public virtual int CustomerId { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: FK.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
DebugInfo
.NET type: string. The debug info for the message.
Declaration
public virtual string DebugInfo { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: Clob.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
EjMessageId
.NET type: int. The primary key (auto-incremented)
Declaration
public virtual int EjMessageId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: PK.
This field is the primary key and can only be read, never written.
This field is not protected by the Sentry system, and can always be read
EjMessageTableInfo
Get the EjMessageTableInfo object associated with the row.
Declaration
public EjMessageTableInfo EjMessageTableInfo { get; }
Property Value
Type | Description |
---|---|
EjMessageTableInfo |
EmailHeader
.NET type: string. The email header is saved in this field as raw text
Declaration
public virtual string EmailHeader { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: Clob.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
HtmlBody
.NET type: string. The html body for the message (if any).
Declaration
public virtual string HtmlBody { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: Clob.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
HtmlBodyAttachment
.NET type: int. If the htmlbody is too long for the database, it's stored in this attachment instead.
Declaration
public virtual int HtmlBodyAttachment { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: FK.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
HtmlBodyInlineConverted
.NET type: short. True if the html_body has converted inline image links.
Declaration
public virtual short HtmlBodyInlineConverted { get; set; }
Property Value
Type | Description |
---|---|
Int16 |
Remarks
Original type in dictionary: Bool.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value ((Int16)0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
Important
.NET type: short. If this message is important or not.
Declaration
public virtual short Important { get; set; }
Property Value
Type | Description |
---|---|
Int16 |
Remarks
Original type in dictionary: Bool.
Setting this field to a new value will not affect the Sentry calculations and your rights
This field is not protected by the Sentry system, and can always be read
This field is not protected by the Sentry system, and can be written to unless other restrictions prevent it
Inbox
.NET type: int. The id of the inbox entry which created this message. Note: inbox entries are regularily deleted.
Declaration
public virtual int Inbox { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: FK.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
InnerFieldValuePairs
The values of all the fields in the row.
The first field is the primary key.
The index of the value corresponds to the name
of the field returned from the Fields property.
Declaration
protected override ArgumentParameterCollection InnerFieldValuePairs { get; }
Property Value
Type | Description |
---|---|
ArgumentParameterCollection |
Overrides
InnerPrimaryKey
The primary key needed to decide which specific row to alter with the current sql-command.
Declaration
protected override FieldInfo InnerPrimaryKey { get; }
Property Value
Type | Description |
---|---|
FieldInfo |
Overrides
InnerPrimaryKeyValue
The actual value the primary key must have.
Declaration
protected override Parameter InnerPrimaryKeyValue { get; }
Property Value
Type | Description |
---|---|
Parameter |
Overrides
IsDirty
Is the row dirty, e.g. been modified since the last time it was saved to the database.
Declaration
public override bool IsDirty { get; }
Property Value
Type | Description |
---|---|
Boolean |
Overrides
IsNew
Is this object new, meaning that it does not exist in the database.
Declaration
public override bool IsNew { get; }
Property Value
Type | Description |
---|---|
Boolean |
Overrides
Item[String]
Get or set a value based on the name of the field.
Declaration
public override object this[string fieldName] { get; set; }
Parameters
Type | Name | Description |
---|---|---|
String | fieldName | Name of the field in the database |
Property Value
Type | Description |
---|---|
Object | Value of the field. |
Overrides
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown if the field is not known. |
Language
.NET type: string. The language this message is in, based on some kind of analysis
Declaration
public virtual string Language { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: String[11].
Setting this field to a new value will not affect the Sentry calculations and your rights
This field is not protected by the Sentry system, and can always be read
This field is not protected by the Sentry system, and can be written to unless other restrictions prevent it
MailSorter
.NET type: string. The name of the mail sorter used when the email was imported. Note: We must use name instead of id since the id's change every time one changes the mail sorter. :-0
Declaration
public virtual string MailSorter { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: String[256].
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
MessageCategory
.NET type: TicketMessageCategory. Defines what kind of message this is.
Declaration
public virtual TicketMessageCategory MessageCategory { get; set; }
Property Value
Type | Description |
---|---|
TicketMessageCategory |
Remarks
Original type in dictionary: Enum.
Setting this field to a new value will reset the Sentry and recalculate your rights based on the new value
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value ((short)0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
MessageId
.NET type: string. The X-Message-Id header value from the email. Used for threading, i.e. connecting messages to existing tickets.
Declaration
public virtual string MessageId { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: String[256].
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
SearchTitle
.NET type: string. A copy of the title of the ticket, for search optimisation and simpler reporting.
Declaration
public virtual string SearchTitle { get; set; }
Property Value
Type | Description |
---|---|
String |
Remarks
Original type in dictionary: String[256].
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (string.Empty)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
Sentiment
.NET type: int. Sentiment index, 100 = completely happy; -100 = suicidally unhappy; 0 = no idea
Declaration
public virtual int Sentiment { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: Int.
Setting this field to a new value will not affect the Sentry calculations and your rights
This field is not protected by the Sentry system, and can always be read
This field is not protected by the Sentry system, and can be written to unless other restrictions prevent it
SentimentConfidence
.NET type: int. Confidence of sentiment index, 0 = no idea, 100 = completely sure
Declaration
public virtual int SentimentConfidence { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: Int.
Setting this field to a new value will not affect the Sentry calculations and your rights
This field is not protected by the Sentry system, and can always be read
This field is not protected by the Sentry system, and can be written to unless other restrictions prevent it
Slevel
.NET type: TicketSecurityLevel. The securitylevel of the message.
Declaration
public virtual TicketSecurityLevel Slevel { get; set; }
Property Value
Type | Description |
---|---|
TicketSecurityLevel |
Remarks
Original type in dictionary: Enum.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value ((short)0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
TableInfo
Get the TableInfo for the table.
Declaration
public override TableInfo TableInfo { get; }
Property Value
Type | Description |
---|---|
TableInfo | The TableInfo for the table. |
Overrides
TicketId
.NET type: int. The ticket this message is a child of.
Declaration
public virtual int TicketId { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: FK.
Setting this field to a new value will reset the Sentry and recalculate your rights based on the new value
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
TimeCharge
.NET type: int. The amount of time (minutes) which should be invoiced for this message.
Declaration
public virtual int TimeCharge { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: Int.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
TimeSpent
.NET type: int. The time spent (minutes) for this message.
Declaration
public virtual int TimeSpent { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
Original type in dictionary: Int.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value (0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
Type
.NET type: TicketMessageType. The type of the message (plaintext/html).
Declaration
public virtual TicketMessageType Type { get; set; }
Property Value
Type | Description |
---|---|
TicketMessageType |
Remarks
Original type in dictionary: Enum.
You need to have Read access to get the value of this field. If you do not have access, you will get a blank value ((short)0)
You need to have Write access to set this field to a new value (Sentry will throw exception otherwise)
Setting this field to a new value will not affect the Sentry calculations and your rights
Exceptions
Type | Condition |
---|---|
SoSentryException | Thrown if the set method is accessed without having the Write access right to the field |
Methods
CreateNew()
Create a new instance of the EjMessageRow object. This table contains the messages listed under tickets.
Declaration
public static EjMessageRow CreateNew()
Returns
Type | Description |
---|---|
EjMessageRow | A new instance of the EjMessageRow object. |
GetExtraFieldsHelper()
Declaration
public ExtraFieldsHelper GetExtraFieldsHelper()
Returns
Type | Description |
---|---|
ExtraFieldsHelper |
GetFromCustomSearch(EjMessageRow.CustomSearch)
Create a new instance of the EjMessageRow object, and populate it with data from a custom search. If the search returns no results, an object with IsNew will be returned; if the result contains one row, an object representing that row will be returned. If the result contains more than one row, the first row will be used and the rest discarded (there is no way of detecting this situation).
Declaration
public static EjMessageRow GetFromCustomSearch(EjMessageRow.CustomSearch query)
Parameters
Type | Name | Description |
---|---|---|
EjMessageRow.CustomSearch | query | The custom search to execute against the database |
Returns
Type | Description |
---|---|
EjMessageRow | A new instance of the EjMessageRow object, reflecting the result of the query. |
GetFromIdxEjMessageId(Int32)
Create a new instance of the EjMessageRow object, by querying the database table via the index 'IDXEj_messageId'. This method is intended to make it easy to use efficient queries that match a database index.
Declaration
public static EjMessageRow GetFromIdxEjMessageId(int ejMessageId)
Parameters
Type | Name | Description |
---|---|---|
Int32 | ejMessageId |
Returns
Type | Description |
---|---|
EjMessageRow | Row object that represents the result of the search. IsNew will be true if the query did not match any row in the table |
Remarks
This method represents one of the unique indexes on the EjMessage table. Non-unique indexes have corresponding inner classes and methods in the EjMessageRows collection, since they may return more than one row.
GetFromReader(SoDataReader, EjMessageTableInfo)
Create a new instance of the EjMessageRow object, and populate it with data from a reader/tableinfo. If the reader has DBNull as the current value of the primary key field, an unpopulated object with IsNew == true will be returned. If any fields are missing or one of the non-primary key fields is DBNull, an exception will be thrown. This table contains the messages listed under tickets.
Declaration
public static EjMessageRow GetFromReader(SoDataReader reader, EjMessageTableInfo tableInfo)
Parameters
Type | Name | Description |
---|---|---|
SoDataReader | reader | SoDataReader positioned to a valid database row. |
EjMessageTableInfo | tableInfo | EjMessageTableInfo instance used in the query that is the source of the reader. The fields used from the reader will be those owned by this tableinfo object. |
Returns
Type | Description |
---|---|
EjMessageRow | A new instance of the EjMessageRow object. |
GetPersistedFieldValue(FieldInfo)
Get the persisted value of a field.
Declaration
public override object GetPersistedFieldValue(FieldInfo field)
Parameters
Type | Name | Description |
---|---|---|
FieldInfo | field | Specification of a field |
Returns
Type | Description |
---|---|
Object | Field value, such as an int, DateTime, string ... Null can be returned if the value is not known. |
Overrides
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown if the field is not known. |
InternalSetValue(String, Object)
Declaration
protected override void InternalSetValue(string fieldName, object value)
Parameters
Type | Name | Description |
---|---|---|
String | fieldName | |
Object | value |
Overrides
IsPersistedFieldValueKnown(FieldInfo)
Check if the persisted value for a field is known.
Declaration
public override bool IsPersistedFieldValueKnown(FieldInfo field)
Parameters
Type | Name | Description |
---|---|---|
FieldInfo | field | Specification of a field |
Returns
Type | Description |
---|---|
Boolean | True if the value is known and sentry permits read. |
Overrides
OnLoad(SoDataReader, TableInfo)
Fill the object with data returned from the database.
Declaration
protected override void OnLoad(SoDataReader reader, TableInfo tableInfo)
Parameters
Type | Name | Description |
---|---|---|
SoDataReader | reader | Object holding the data returned from the database. |
TableInfo | tableInfo | The TableInfo used for the SELECT statement. |
Overrides
OnSave(BatchSave)
Add the object to the BatchSave list if it needs saving.
Declaration
protected override void OnSave(BatchSave batchSave)
Parameters
Type | Name | Description |
---|---|---|
BatchSave | batchSave | Collection of objects to be saved within the transaction. |
Overrides
Remarks
Classes overriding this method should call it.
OnSaved(Boolean)
Method called after the save operation has been performed.
Declaration
protected override void OnSaved(bool bSucceeded)
Parameters
Type | Name | Description |
---|---|---|
Boolean | bSucceeded | True if the save operation succeeded (e.g. transaction committed), or false if the save operation failed (e.g. transaction rolled back) |
Overrides
Reset()
Reset the changes made on the object.
Declaration
protected override void Reset()
Overrides
Remarks
If the row is not persisted to the database (e.g. IsNew is true), all the values will be reset. If the row has been persisted to or loaded from the database, the properties will be set to those of the last persisted or loaded values.
SetDefaults(DefaulterStrategy)
Set default values for the row.
Declaration
public override void SetDefaults(DefaulterStrategy strategy)
Parameters
Type | Name | Description |
---|---|---|
DefaulterStrategy | strategy | Strategy used when applying default values; values depend on where we are in the Create/Fetch/Populate/Save cycle |
Overrides
SetPrimaryKey(Int32)
Set the primary key for the row.
Declaration
protected override void SetPrimaryKey(int primaryKey)
Parameters
Type | Name | Description |
---|---|---|
Int32 | primaryKey | The new primary key for the row. |
Overrides
SetRowAsNew()
Declaration
public override void SetRowAsNew()
Overrides
ToString()
ToString method intended for debugging, returns a string that displays the object type, new/dirty status, primary key and the string fields
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
String |
Overrides
Validate(RowValidator)
Validate this row.
Declaration
public override void Validate(RowValidator rowValidator)
Parameters
Type | Name | Description |
---|---|---|
RowValidator | rowValidator | RowValidator for inserting the result of the validation |
Overrides
Events
_onAuthorChange
Change envent for property Author; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onAuthorChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onBodyAttachmentChange
Change envent for property BodyAttachment; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onBodyAttachmentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onBodyChange
Change envent for property Body; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onBodyChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onCreatedAtChange
Change envent for property CreatedAt; field is of .NET type DateTime.
Declaration
protected event OnFieldChange<DateTime> _onCreatedAtChange
Event Type
Type | Description |
---|---|
OnFieldChange<DateTime> |
_onCreatedByChange
Change envent for property CreatedBy; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onCreatedByChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onCustomerIdChange
Change envent for property CustomerId; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onCustomerIdChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onDebugInfoChange
Change envent for property DebugInfo; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onDebugInfoChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onEmailHeaderChange
Change envent for property EmailHeader; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onEmailHeaderChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onHtmlBodyAttachmentChange
Change envent for property HtmlBodyAttachment; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onHtmlBodyAttachmentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onHtmlBodyChange
Change envent for property HtmlBody; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onHtmlBodyChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onHtmlBodyInlineConvertedChange
Change envent for property HtmlBodyInlineConverted; field is of .NET type short.
Declaration
protected event OnFieldChange<short> _onHtmlBodyInlineConvertedChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int16> |
_onImportantChange
Change envent for property Important; field is of .NET type short.
Declaration
protected event OnFieldChange<short> _onImportantChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int16> |
_onInboxChange
Change envent for property Inbox; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onInboxChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onLanguageChange
Change envent for property Language; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onLanguageChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onMailSorterChange
Change envent for property MailSorter; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onMailSorterChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onMessageCategoryChange
Change envent for property MessageCategory; field is of .NET type short.
Declaration
protected event OnFieldChange<TicketMessageCategory> _onMessageCategoryChange
Event Type
Type | Description |
---|---|
OnFieldChange<TicketMessageCategory> |
_onMessageIdChange
Change envent for property MessageId; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onMessageIdChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onSearchTitleChange
Change envent for property SearchTitle; field is of .NET type string.
Declaration
protected event OnFieldChange<string> _onSearchTitleChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
_onSentimentChange
Change envent for property Sentiment; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onSentimentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onSentimentConfidenceChange
Change envent for property SentimentConfidence; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onSentimentConfidenceChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onSlevelChange
Change envent for property Slevel; field is of .NET type short.
Declaration
protected event OnFieldChange<TicketSecurityLevel> _onSlevelChange
Event Type
Type | Description |
---|---|
OnFieldChange<TicketSecurityLevel> |
_onTicketIdChange
Change envent for property TicketId; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onTicketIdChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onTimeChargeChange
Change envent for property TimeCharge; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onTimeChargeChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onTimeSpentChange
Change envent for property TimeSpent; field is of .NET type int.
Declaration
protected event OnFieldChange<int> _onTimeSpentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
_onTypeChange
Change envent for property Type; field is of .NET type short.
Declaration
protected event OnFieldChange<TicketMessageType> _onTypeChange
Event Type
Type | Description |
---|---|
OnFieldChange<TicketMessageType> |
OnAuthorChange
Event raised when Author is changing.
Declaration
public event OnFieldChange<string> OnAuthorChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnBodyAttachmentChange
Event raised when BodyAttachment is changing.
Declaration
public event OnFieldChange<int> OnBodyAttachmentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnBodyChange
Event raised when Body is changing.
Declaration
public event OnFieldChange<string> OnBodyChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnCreatedAtChange
Event raised when CreatedAt is changing.
Declaration
public event OnFieldChange<DateTime> OnCreatedAtChange
Event Type
Type | Description |
---|---|
OnFieldChange<DateTime> |
OnCreatedByChange
Event raised when CreatedBy is changing.
Declaration
public event OnFieldChange<int> OnCreatedByChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnCustomerIdChange
Event raised when CustomerId is changing.
Declaration
public event OnFieldChange<int> OnCustomerIdChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnDebugInfoChange
Event raised when DebugInfo is changing.
Declaration
public event OnFieldChange<string> OnDebugInfoChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnEmailHeaderChange
Event raised when EmailHeader is changing.
Declaration
public event OnFieldChange<string> OnEmailHeaderChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnHtmlBodyAttachmentChange
Event raised when HtmlBodyAttachment is changing.
Declaration
public event OnFieldChange<int> OnHtmlBodyAttachmentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnHtmlBodyChange
Event raised when HtmlBody is changing.
Declaration
public event OnFieldChange<string> OnHtmlBodyChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnHtmlBodyInlineConvertedChange
Event raised when HtmlBodyInlineConverted is changing.
Declaration
public event OnFieldChange<short> OnHtmlBodyInlineConvertedChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int16> |
OnImportantChange
Event raised when Important is changing.
Declaration
public event OnFieldChange<short> OnImportantChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int16> |
OnInboxChange
Event raised when Inbox is changing.
Declaration
public event OnFieldChange<int> OnInboxChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnLanguageChange
Event raised when Language is changing.
Declaration
public event OnFieldChange<string> OnLanguageChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnMailSorterChange
Event raised when MailSorter is changing.
Declaration
public event OnFieldChange<string> OnMailSorterChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnMessageCategoryChange
Event raised when MessageCategory is changing.
Declaration
public event OnFieldChange<TicketMessageCategory> OnMessageCategoryChange
Event Type
Type | Description |
---|---|
OnFieldChange<TicketMessageCategory> |
OnMessageIdChange
Event raised when MessageId is changing.
Declaration
public event OnFieldChange<string> OnMessageIdChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnSearchTitleChange
Event raised when SearchTitle is changing.
Declaration
public event OnFieldChange<string> OnSearchTitleChange
Event Type
Type | Description |
---|---|
OnFieldChange<String> |
OnSentimentChange
Event raised when Sentiment is changing.
Declaration
public event OnFieldChange<int> OnSentimentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnSentimentConfidenceChange
Event raised when SentimentConfidence is changing.
Declaration
public event OnFieldChange<int> OnSentimentConfidenceChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnSlevelChange
Event raised when Slevel is changing.
Declaration
public event OnFieldChange<TicketSecurityLevel> OnSlevelChange
Event Type
Type | Description |
---|---|
OnFieldChange<TicketSecurityLevel> |
OnTicketIdChange
Event raised when TicketId is changing.
Declaration
public event OnFieldChange<int> OnTicketIdChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnTimeChargeChange
Event raised when TimeCharge is changing.
Declaration
public event OnFieldChange<int> OnTimeChargeChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnTimeSpentChange
Event raised when TimeSpent is changing.
Declaration
public event OnFieldChange<int> OnTimeSpentChange
Event Type
Type | Description |
---|---|
OnFieldChange<Int32> |
OnTypeChange
Event raised when Type is changing.
Declaration
public event OnFieldChange<TicketMessageType> OnTypeChange
Event Type
Type | Description |
---|---|
OnFieldChange<TicketMessageType> |